You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What should I expect to be able to get? The docs seem to imply that 115,200 is reasonable. My real need is for 9-bit serial (this is for an addressing protocol so not a real 9 bits of data). The source of the data runs at 115,200 and is very chatty, so it puts out a lot of data frequently. I was using an esp8266 and reading whole characters in the ISR (which is a really bad idea, but required to get a reasonable error rate). I figured the esp32 with its dual cores would be better able to handle the load.
I wrote a sample program that outputs random data (only 8bits) using the HW UART and reading it with software serial. It works fine if the amount of data is small (under 30bytes) or I reduce the baud rate significantly.
starting to send something: 99
available: 31 sent: 99
.start wait..done wait.
got : 94
ERROR missing: 5 got: 94 != send: 99
sent:
0000 - E4 9D 24 ED B1 CC E5 50 9F 10 2C C7 9E 2E 86 85 ..$....P..,.....
0010 - 6E 70 E0 1C AF 35 B0 21 9E 1F 4F 96 55 6A 50 B3 np...5.!..O.UjP.
0020 - 7F 1D 5D 1A 47 14 4B D0 EB C6 DC C8 3A AB 09 D3 ..].G.K.....:...
0030 - 27 06 70 56 C9 8B C1 8C 03 BE 83 8C FB F9 39 7C '.pV..........9|
0040 - 4A 36 EA 5A C7 54 E3 ED 29 23 44 8B 67 08 CA 70 J6.Z.T..)#D.g..p
0050 - BE 92 35 EA 5F 9D BB 24 10 6E E9 BA D4 82 FD 52 ..5._..$.n.....R
0060 - 07 14 30 ..0
got:
0000 - 52 E5 50 9F 10 2C C7 9E 2E 86 85 6E 70 E0 1C AF R.P..,.....np...
0010 - 35 B0 21 9E 1F 4F 96 55 6A 50 B3 7F 1D 5D 1A 47 5.!..O.UjP...].G
0020 - 14 4B D0 EB C6 DC C8 3A AB 09 D3 27 06 70 56 C9 .K.....:...'.pV.
0030 - 8B C1 8C 03 BE 83 8C FB F9 39 7C 4A 36 EA 5A C7 .........9|J6.Z.
0040 - 54 E3 ED 29 23 44 8B 67 08 CA 70 BE 92 35 EA 5F T..)#D.g..p..5._
0050 - 9D BB 24 10 6E E9 BA D4 82 FD 52 07 14 30 00 00 ..$.n.....R..0..
0060 - 00 00 00 ...
It is missing the first 5 and got the 6th one wrong, but then it did quite well, but again near the end it got a byte or two wrong. I am just expecting too much?
The text was updated successfully, but these errors were encountered:
What should I expect to be able to get? The docs seem to imply that 115,200 is reasonable. My real need is for 9-bit serial (this is for an addressing protocol so not a real 9 bits of data). The source of the data runs at 115,200 and is very chatty, so it puts out a lot of data frequently. I was using an esp8266 and reading whole characters in the ISR (which is a really bad idea, but required to get a reasonable error rate). I figured the esp32 with its dual cores would be better able to handle the load.
I wrote a sample program that outputs random data (only 8bits) using the HW UART and reading it with software serial. It works fine if the amount of data is small (under 30bytes) or I reduce the baud rate significantly.
Here is a sample program that demonstrates it:
There is an example of the output:
It is missing the first 5 and got the 6th one wrong, but then it did quite well, but again near the end it got a byte or two wrong. I am just expecting too much?
The text was updated successfully, but these errors were encountered: