Si te encuentras con algo que no entiendes puedes dejarnos un comentario y haremos todo lo necesario de ayudarte lo mas rápido que podamos.
Solución:
Creo que es este comando:
dmesg | grep tty
Ejecutar eso en mi propia caja de Linux (que solo tiene 1 puerto serie) produce una sola línea de salida ttyS0. Pruébalo por tu cuenta, verás lo que quiero decir.
Vea qué UART se detectaron en /proc/tty/driver/serial
. una linea con uart:unknown
significa: nada detectado (y probablemente no existe).
# cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A port:000003F8 irq:4 tx:0 rx:0
1: uart:16550A port:000002F8 irq:3 tx:111780 rx:1321 RTS|DTR|DSR
2: uart:unknown port:000003E8 irq:4
3: uart:unknown port:000002E8 irq:3
Si algo está conectado y maneja las líneas CTS, DSR o CD (estas son líneas de entrada), incluso puede estar bastante seguro de que realmente hay algo… Lo mismo es true para el rx-byte-count.
Si necesita hacer esto mediante programación, leer la salida de dmesg puede ser problemático, en su lugar, la carpeta /dev/serial/by-id tiene enlaces simbólicos que llevan el nombre de datos identificables de su dispositivo y apuntan al /dev/tty* específico que están conectados a.
No estoy seguro de si esta es una regla especial de udev que es específica de la distribución, pero funciona bien en Ubuntu, avíseme si funciona.
Nos puedes defender nuestra publicación fijando un comentario y puntuándolo te lo agradecemos.