uart performance flaky with BB 9.1 OS, works great with 7.11 version, same HW

I am connecting 2 bb blacks via serial uart, /dev/ttyO1. or /dev/ttyS1. they are symlinked. I need to use them at the fastest speeds, i.e. B3000000 or more. When i use the older 7.11 image (straight off beagleboard downloads site), the BB’s communicate rock solid, no losses. When i upgrade the image to the current 9.1, the non-IoT image, and use the same code and the same HW, i can’t get reliable data xfer’d across the serial link. A lot of errors in comparison to the almost none using the old image. It finally was working reliably at B500000.

My dilemma is i don’t want to remain with effectively an obsolete image (i.e… debian 7.11). It makes everything else harder to keep up. I’ve played with uEnv.txt options. Nothing seems to matter.

I didn’t find any thread in the forum discussing this kind of problem. Clearly something is different about 9.1 and the serial subsystem from the earlier 7.11 version. I was having same problem with latest version 8 as well.

has anyone experienced this, and better, found a fix. Driver, device tree configuration, whatever.


You can install the old "3.8.x" based kernel in 9.x or 8.x via:

cd /opt/scripts/tools/
git pull
sudo ./ --bone-channel --stable
sudo reboot

BTW, newer images us U-Boot Overlays, so remember to double check
/boot/uEnv.txt and "disable it":



Then you can verify if it's a kernel or new lib issue..