Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

628
Vistas
Monitoreo (Sniffing) /dev/ttyUSB0 creado por FTDI USB Serial Converter

Quiero monitorear (olfatear) el tráfico de mi /dev/ttyUSB0 que es creado por FTDI USB Serial Converter. He escrito mi propia aplicación en Windows y ahora trato de portarla a Linux y uso /dev/tty/USB0. Quiero depurar la comunicación que realmente sucede.

El software strace no es una opción para mí porque solo muestra las llamadas del sistema a ioctl.

Usando Windows, el software "Free Serial Port Monitor" lo hizo olfateando COM1.

Salida de dmesg:

 [16975.000221] usb 7-1: new full-speed USB device number 5 using uhci_hcd [16975.193543] usb 7-1: New USB device found, idVendor=0403, idProduct=6001 [16975.193548] usb 7-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [16975.193552] usb 7-1: Product: FT232R USB UART [16975.193555] usb 7-1: Manufacturer: FTDI [16975.193558] usb 7-1: SerialNumber: A400BJII [16975.200550] ftdi_sio 7-1:1.0: FTDI USB Serial Device converter detected [16975.200599] usb 7-1: Detected FT232RL [16975.202604] usb 7-1: FTDI USB Serial Device converter now attached to ttyUSB0

Sin embargo, probé moserial para hacer esto y el comando "echo foobar > /dev/ttyUSB0" para verificar si funciona. Además, mi software no crea una salida para moserial.

ACTUALIZAR:

Descubrí cómo monitorear usb directamente, ahora necesito convertir paquetes USB a RS-232 (lo que básicamente hace FTDI).

  1. Configurar usb mon

    modprobe usbmon

    1.1 Con kernels de Linux anteriores a 2.6.23, también deberá ejecutar este comando

    modprobe -t debugfs ninguno /sys/kernel/debug

  2. usbmon0 monitoreará cualquier tráfico de todos los usbmon0 a usbmonX 2.1. Encuentre el dispositivo USB correcto

    cat /sys/kernel/depuración/usb/dispositivos|grep FTDI -A 7 -B 4

     T: Bus=07 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 12 Spd=12 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0403 ProdID=6001 Rev= 6.00 S: Manufacturer=FTDI S: Product=FT232R USB UART S: SerialNumber=A400BJII C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 90mA I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms

    2.2. Tenga en cuenta el número de bus del puerto (Bus = 07), por lo que usbmon para monitorear será usbmon7

    2.3. Use wireshark para capturar la interfaz usbmon7 o use el siguiente comando para obtener salida a la consola (stdout) ... reemplace el número con bus-id

    gato /sys/núcleo/depuración/usb/usbmon/7u

    ¿Qué significa 'u'? https://www.kernel.org/doc/Documentation/usb/usbmon.txt

    Actualmente se admiten dos formatos: el original, o formato '1t', y el formato '1u'. El formato '1t' está en desuso en el kernel 2.6.21. El formato '1u' agrega algunos campos, como descriptores de fotogramas ISO, intervalo, etc. Produce líneas un poco más largas, pero por lo demás es un superconjunto perfecto del formato '1t'.

  3. ¿Cómo convierto la captura USB a captura RS-232? no lo se... TODO

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Con tu pista logré resolver mi problema, así que ahí está mi pista para el último punto:

  1. Usando Wireshark, abra usbmon0 y use este filtro

     usb.capdata or at

Emitir dos veces el comando echo asd > /dev/ttyUSB0 produce el siguiente resultado en Wireshark

Resultado de Wireshark

Puede extraer todos los datos de captura sobrantes de un archivo de captura usando tshark:

tshark -r capture.pcapng -T fields -e usb.capdata

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda