What is the recommended method to enable UARTS


I’ve been working on a Beaglebone Green Wireless for a few weeks and have been using USB FTDI for serial communication. I now need to use the onboard UART1, UART2 and UART4.

I have been googling and reading through all the topics on the Forum and ended up wrecking my image twice so I really need help.

I’m using the latest bone-debian-9.5-iot-armhf-2018-10-07-4gb.img

When I try using config-pin 911 uart I get a message that P9_11 pinmux file not found. Pin has no cape: P9_11

I have also tried updating the uEnv file with the following

This caused my BBG to throw errors on boot and I wasn't able to access the device
After a rebuild I made the above change to uEnv.txt and then added the overlays but on boot I got errors that they could not be loaded.

Try adding them under Additional custom capes part not the Override cape with EEPROM

###Additional custom capes

Thanks MG,

I ended up doing the following

  • Updating Uboot to latest version

  • cd /opt/scripts/tools/developers/
    sudo ./update_bootloader.sh
    sudo reboot

  • Updating kernel to latest version

  • cd /opt/scripts/tools/
    git pull
    sudo ./update_kernel.sh
    sudo reboot

  • Unblock Uboot Overlays - apparantly the eMMC can block them…

  • sudo dd if=/dev/zero of=/dev/mmcblk1 bs=1M count=10

  • Updating the Overlays

  • sudo apt update

    sudo apt install --only-upgrade bb-cape-overlays

    sudo reboot

  • Adding in the additional capes to uEnv.txt

  • uboot_overlay_addr4=/lib/firmware/BB-UART4-00A0.dtbo

I can now get access to dev/tty04 and send / receive. I now need to work out why when I Open and Close the serial port and try to reopen it hangs on the Open command. I have to reboot each time I try my application… It works fine on dev/ttyUSB0 ftdi lead.