Question about use high uart baud rate

Hello,there is some question about uart.
The hardware is Jetson carrier,jetson module is agx orin 64G.
I use the uarta by the hdr40 pins to communicate with PC.
When I use the baud rate is not bigger than 1Mbps, the communication is all normal. I can recvieve completly by minicom in jetson what I send by PC.

This is my test send examples.“55 AA 88 05 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8b 8c 8d 8e 8f 05 AA 55”.

But when I changed the baud rate bigger than 1Mbps,for example 1152000 , I receive the wrong datas.

I show these wrong datas below,
“00 00 00 00 00 00 55 aa 88 05 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13
14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 27 28 29 2a 2b 2c 2d 2e 2f 30 31 32 33 34 3
5 36 37 38 39 3a 3b 3c 3d 3e 3f 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51
52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e
6f 70 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e 7f 80 81 82 83 84 85 86 87 88 89 8a 8
b 8c 8d 8e 8f 05 aa 55”

I don’t know how to analysis the questions.

This is not an answer, but some comments may be of interest…

Higher baud rates require better signal quality. This includes waveform rise and fall times, but because there is no specific clock, this especially means jitter. Each end of the UART has its own clock, and if the two do not match exactly (including from line length delays), then you are bound to get more errors. The first way of dealing with it is to use properly shielded cable of the shortest possible length.

I am assuming you are not using flow control. If you use the CTS and RTS pins, and set CTS/RTS flow control, then you will get better results with either long cables or lower quality RF. This might require you to send in smaller bursts. The default is no CTS/RTS flow control.

Incidentally, if a buffer fills and time is needed for the CPU or other hardware to process the data, then CTS/RTS flow control will prevent overruns.

If the clocks at each end are slightly off, then you might get better results with two stop bits. There are a lot of drones and other devices out there that don’t offer any ability to set stop bits. The default is one stop bit.

Hi sqalex,

Do you mean that you are using the devkit board for AGX Orin?

For the higher baud rate use case, we would suggest enabling HW flow control (i.e. RTS/CTS) for reliable transaction.

Thank you for your analysis.

Thank you for your suggetion.I will try it.

If possible also try two stop bits.

I’ve already try this way before I questioned,it’s not work for me.And my customed hardware only have rx/tx for this uart,so we have to decrease the baudrate to avoid this problem.Thank you for your reply.

A shorter and better shielded cable might also do the job, but in the end, without CTS/RTS flow control, and if two stop bits won’t help, then you are indeed limited to reducing the rate.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.