UART en el Beaglebone Black

Estoy batallando bastante para habilitar los puertos UART (seriales) en la tarjeta Beaglebone Black.

dmesg parece indicar que los puertos estan habilitados como ttyS0 ~ 4

root@beaglebone:~# dmesg | grep serial
[    3.492343] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 158, base_baud = 3000000) is a 8250
[    3.500859] 48022000.serial: ttyS1 at MMIO 0x48022000 (irq = 159, base_baud = 3000000) is a 8250
[    3.501830] 48024000.serial: ttyS2 at MMIO 0x48024000 (irq = 160, base_baud = 3000000) is a 8250
[    4.146913] 481a8000.serial: ttyS4 at MMIO 0x481a8000 (irq = 201, base_baud = 3000000) is a 8250
[    4.149254] 481aa000.serial: ttyS5 at MMIO 0x481aa000 (irq = 202, base_baud = 3000000) is a 8250

pero cuando uso minicom, no veo nada

Seguí la indicacion de este link pero no pude ver una comunicacion directa entre ttyS1 y ttyS2.

pero de acuerdo a este otro link, en realidad dmesg muestra que mis puertos ttyO* no han sido habilitados…

root@beaglebone:/# dmesg | grep ttyO
[    0.000000] Kernel command line: console=ttyO0,115200n8 bone_capemgr.enable_partno=BB-UART1,BB-UART2,BB-UART4,BB-UART5 root=UUID=dd7dc0de-9815-49bc-9c8c-46c77665d56d ro rootfstype=ext4 rootwait coherent_pool=1M quiet cape_universal=enable
[    0.000393] WARNING: Your ‘console=ttyO0’ has been replaced by ‘ttyS0’

este ha de ser el problema…

Finalmente!!! ya lo arregle!

Pues el problema fue que tenia que seguir la siguiente instrucción de introducir el comando para agregar el puerto en mi archivo de slots.

echo ‘BB-UART4’ > /sys/devices/platform/bone_capemgr/slots

pero cuando lo ejecutaba, no funcionaba, el error que decía era:

“File already exists”

Entonces decidí probar otro metodo a traves de cambiar el archivo uEnv.txt en el folder /boot. Entonces ahí me dí cuenta que cuando programé esta tarjeta Beaglebone yo había modificado este archivo para pasar la imagen de la SD card a la eMMC o memoria interna de la tarjeta Beaglebone. Entonces precisamente esa linea que yo había habilitado era la que aparecía en el archivo slots.

Al deshabilitar de nuevo la linea en cuestión, a decir la siguiente abajo, ya pude ejecutar el comando echo BB-UART4 y el archivo slots se reescribió y con el programa minicom ya pude constatar la comunicación. Yei!!!

Linea del archivo uEnv.txt que estaba habilitada pero hay que mantener como comentario.

#cmdline=coherent_pool=1M quiet cape_universal=enable

 

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s