Überwachung (Sniffing) /dev/ttyUSB0 erstellt von FTDI USB Serial Converter

Ich will monitor (sniff) der Verkehr von meiner /dev/ttyUSB0 erzeugt vom FTDI USB-Serial Converter. Ich habe geschrieben, meine eigene Anwendung in Windows-und jetzt versuche ich, die Portierung auf linux und /dev/tty/USB0. Ich möchte zum Debuggen der Kommunikation, die tatsächlich passiert.

Die software strace ist keine option für mich, weil es nur zeigt die Systemaufrufe an ioctl.

Mithilfe der Windows-software "Free Serial Port Monitor" hat es durch schnüffeln COM1.

Ausgabe von 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

Aber ich versuchte moserial, dies zu tun und den Befehl "echo foobar > /dev/ttyUSB0", um zu überprüfen, ob es funktioniert. Auch meine software nicht schaffen, eine Ausgabe zu moserial.

UPDATE:

Finden Sie heraus, wie monitor, usb-direkt, jetzt muss ich konvertieren Sie USB-Pakete zu RS-232 (was FTDI im Grunde tut).

  1. Setup usbmon

    modprobe usbmon

    1.1 Mit Linux-Kernel vor 2.6.23, werden Sie auch brauchen, um diesen Befehl ausführen zu

    modprobe -t debugfs none /sys/kernel/debug

  2. usbmon0 wird überwachen, den Verkehr aus allen usbmon0 zu usbmonX
    2.1. Finden Sie das richtige usb-Gerät

    cat /sys/kernel/debug/usb/devices|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. Hinweis: Bus-Nummer des Ports (Bus=07), so usbmon überwacht werden usbmon7

    2.3. Die Verwendung von wireshark zur Erfassung der usbmon7-Schnittstelle oder verwenden Sie folgenden Befehl aus, um die Ausgabe in der Konsole (stdout) ... ersetzen Sie die Zahl mit der bus-id

    cat /sys/kernel/debug/usb/usbmon/7u

    Was bedeutet "u"?
    https://www.kernel.org/doc/Documentation/usb/usbmon.txt

    Zwei Formate unterstützt werden derzeit: das original, oder '1t' - format und '1u' - format. Die '1t' - format ist veraltet kernel 2.6.21. Die '1u' - format fügt ein paar Felder, wie ISO frame-Deskriptoren, Intervall, etc. Es produziert etwas mehr lines, aber sonst ist das eine perfekte Obermenge von '1t' - format.

  3. Wie konvertiere ich die USB-Aufnahme RS-232 erfassen?
    Ich weiß es nicht ... TODO

InformationsquelleAutor nodna | 2016-02-19
Schreibe einen Kommentar