>>"To remedy this, we connected the UART_TX pin in our code to the receive pin on the miniprog4 and we are receiving garbage characters on putty."
--> Please check the BAUD rate in your terminal software. Set it according to your project settings.
>>"Does data travel through the SWDIO and SWDCLK on the minprog4?"
--> The I2C/SPI/UART communication happens only through 12 pin port of the Miniprog 3. Please refer page number 12 of the Miniprog 4 user guide from the link below:
>>"Is there a way to send UART data strictly from the minprog4?"
--> Could you please elaborate this? Miniprog 4 can only be used as a USB bridge between devices. And the procedure that you mentioned as remedy is correct and it should work.
We've tried this and my output is still garbage characters on putty despite making sure baudrates are equal. I'm curious, is there a way to just printf data to the console on Psoc Creator or output it to a file to read somewhere? That would solve my issue
MiniProg4 can be used as UART - USB Bridge. It is working at my end. Make sure you have the following connections:
1. Gnd of MiniProg4 - Ground of PSoC
2. 6x2 Connector (RX Pin) to Tx Pin of PSoC
3. Vtarg to PSoC VDD (Optional - If there is no dedicated external supply to PSoC)
Both the software UART component and SCB UART component works with MiniProg4.
If you are using SCB UART, please be aware of the actual data rate displayed in the component. Because Miniprog4 can handle only till 115200. If the actual data rate is more than 115200, adjust oversampling number to achieve the correct baud rate.
You can use printf in PSoC Creator by adding the following code in main.c based on your compiler. Refer PSoC 4 SCB component datasheet, section Printf() function Usage Model. Remember to include <stdio.h>. Also, make sure you have sufficient heap memory to use printf. Increase heap using the systems tab in PSoC Creator.
Both the software UART component and SCB UART component works with printf.
Useful Reference: CE224431 PSoC 4 UART printf