2023-05-25 05:26 AM - edited 2023-11-20 04:36 AM
This question uses the STM32H723
So I am transmitting data at 7MB/s over UART to a PC. Currently, it uses UART3, which is connected to the ST-LINK. When I view the data on the Windows PC it is fine but every now and then the received data is wrong, and it misses quite a few transmissions. I believe the error is from the UART data passing through the ST-LINK. (Please let me know if UART3 does not actually pass through the ST-LINK when transmitting)
To check if this is true I am using a TTL to USB cable (https://thepihut.com/products/usb-to-ttl-serial-cable) to send the data to the PC. This all works fine, and when I use a Raspberry Pi, the data can be viewed and is correct. However, I am struggling to replicate the result on a Windows PC.
When I connect the TTL to the USB cable to the PC it appears as a USB-Serial-Controller, and I need to assign it a driver. I've tried the STM drivers to make it into an STMicroelectronics STLink Virtual port, but this does not work. So I was wondering if anyone knows what driver is needed? I've looked into FTDI drivers, but they don't seem to work either.
I've struggled to find help online as most tutorials have the device automatically set to COM port as they are using the main connection.
Any help would be great thank you!
2023-05-25 05:38 AM
>>So I am transmitting data at 7MB/s over UART
That kinda strains credulity, but whatever..
With the ST-LINK you're going thru two UART connections, asynchronous serial isn't known for reliability or speed, you'd need to use some kind of protocol to manage flow, integrity and retrying.
Using a SiLabs or FTDI USB-to-CMOS Serial would involve less intermediaries, perhaps speeds to 1Mbps in the normative sense.
For higher speeds perhaps Ethernet, or USB-HS connectivity, using a class of USB device better suited to data transfer in the direction of interest.
I think I'd be hard pushed to get the volume of data you're talking about on to an SD card
2023-05-25 05:48 AM
maybe : B -> Bit : >transmitting data at 7MBit/s over UART < :)
2023-05-25 08:46 AM
Thank you.
7MB/s was working correctly, but it seems the Windows could not process it quickly enough. I swapped to a Linux OS and it still had the same issue.
The options at the moment are:
Thanks for your thought on the topic
UPDATE: I could also be using the wrong cable. It seems that the cable I am using, which I linked above, may be unable to do a high baud rate. This could lead to the error I have found.