Enabling UART in BeagleBone

hi, i am having trouble sending data using UART1 to my BeagleBone kernal 4.19 debian version 10.
my PC is sending the data but it is not being registered on the beagle bone. if i use usb-usb connection to uplaod the code it works completely fine. however not via UART1 pins

Did you enable the uart overlay, which 3 specific pins are you using? tx/rx/gnd?

I am also curious about this, as I’m having similar challenges with accessing UART4. Hopefully we can get help together, as documentation for this seems to be rather thin.

In /boot/uEnv.txt I have: enabled the UART overlay (BB-UART4-00A0), disabled video, audio, wireless & adc overlays, set Cape Universal Enable to 1, and included optargs=quiet drm.debug=7 capemgr.enable_partno=BB-UART4. When I run show-pins I see:

P9.11                             28 fast rx      6 uart 4 rxd       serial@481a8000 (pinmux_bb_uart4_pins)
P9.13                             29 fast         6 uart 4 txd       serial@481a8000 (pinmux_bb_uart4_pins)

Also, to view the serial ports:

root@beaglebone:~# dmesg | grep serial
[    0.991352] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 30, base_baud = 3000000) is a 8250
[    1.002659] 48022000.serial: ttyS1 at MMIO 0x48022000 (irq = 31, base_baud = 3000000) is a 8250
[    1.003819] 48024000.serial: ttyS2 at MMIO 0x48024000 (irq = 32, base_baud = 3000000) is a 8250
[    1.004847] 481a6000.serial: ttyS3 at MMIO 0x481a6000 (irq = 33, base_baud = 3000000) is a 8250
[    1.005898] 481a8000.serial: ttyS4 at MMIO 0x481a8000 (irq = 34, base_baud = 3000000) is a 8250
[    1.006864] 481aa000.serial: ttyS5 at MMIO 0x481aa000 (irq = 35, base_baud = 3000000) is a 8250

However, if I try accessing the UART I get the following:

user@beaglebone:~$ python -m serial.tools.miniterm /dev/ttyS4 9600
could not open port '/dev/ttyS4': [Errno 13] could not open port /dev/ttyS4: [Errno 13] Permission denied: '/dev/ttyS4'

Is there a step I’m missing? @areejk101 from what I’ve dug up, the above steps should be followed at least (or close to it), hopefully this is helpful. @RobertCNelson what pointers can you provide? In case it matters, my ultimate goal is to get RS-485 working on my Comm Cape, but for now just trying to get a small step of success with a UART.

Use user part of the dialout group?

I think that worked! I was able to start that miniterm session on /dev/ttyS4
Interestingly, I took a look at dmesg | grep serial (as root) and nothing came back. So, running just dmesg, I see a TON of messages like this:

[ 3757.060216] configfs-gadget gadget: Wrong NDP SIGN
[ 3757.122062] configfs-gadget gadget: Wrong NDP SIGN
[ 3757.636470] configfs-gadget gadget: Wrong NDP SIGN
[ 3757.666675] configfs-gadget gadget: Wrong NDP SIGN

Probably hundreds of 'em. Is that anything to worry about?

that’s the usb gadget… i’m guessing v4.14.x or v4.19.x based kernel?


Yeah, 4.19.94-ti-r74