USB zu UART keine Kommunikation

Hast Du Probleme mit Hardware, die durch die anderen Foren nicht abgedeckt werden? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
gagosoft
Beiträge: 4
Registriert: 10.10.2016 11:56:39

USB zu UART keine Kommunikation

Beitrag von gagosoft » 10.10.2016 12:24:37

Hallo Leute!

Ich bin neu hier im Forum und möchte Euch alle mal herzlich begrüßen! :mrgreen:

Seit meiner Umstellung meines Linux-Systems auf debian (x86-64 Jessie 8.2) ist schon etwas Zeit vergangen und ich hab meine USB->Seriell Adapter nicht gebraucht. Leider funktionieren diese nun nicht mehr mit diesem System. Auch mit einem 32-Bit-System der selben Version und einem x86-64 System mit Jessie 8.6 habe ich das gleiche Verhalten. All diese Adapter funktioniern auf einem anderem Linux (aktuelles openSuSE) ohne Probleme.

Ich bekommen einen Eintrag in /dev/ttyUSB0 ... und kann mit minicom oder anderen Programmen darauf zugreifen, nur es findet keine Kommunikation statt.
Getestet mit CP2102, einem CP2104, einem PL2303 und einem TF232 Adapter.

Im Netz hab ich einen Hinweis auf ein Problem mit dem ModemManager bei Ubuntu gefunden. Leider kann ich mit den da beschriebene udev-rules mein Problem nicht lösen.
https://bugs.launchpad.net/ubuntu/+sour ... bug/700316

Wer weis da Rat?
Wo kann ich da ansetzen?

Code: Alles auswählen

[ 2095.635454] usb 1-2: new full-speed USB device number 3 using xhci_hcd
[ 2095.785534] usb 1-2: New USB device found, idVendor=10c4, idProduct=ea60
[ 2095.785544] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2095.785550] usb 1-2: Product: CP2102 USB to UART Bridge Controller
[ 2095.785554] usb 1-2: Manufacturer: Silicon Labs
[ 2095.785558] usb 1-2: SerialNumber: 0001
[ 2095.792547] cp210x 1-2:1.0: cp210x converter detected
[ 2095.906475] usb 1-2: reset full-speed USB device number 3 using xhci_hcd
[ 2096.044320] xhci_hcd 0000:06:00.0: xHCI xhci_drop_endpoint called with disabled ep ffff88003662bd48
[ 2096.044330] xhci_hcd 0000:06:00.0: xHCI xhci_drop_endpoint called with disabled ep ffff88003662bd00
[ 2096.046696] usb 1-2: cp210x converter now attached to ttyUSB0

...   disconnect and connect the next adapter...

[ 2178.352980] usb 1-2: new full-speed USB device number 4 using xhci_hcd
[ 2178.498799] usb 1-2: New USB device found, idVendor=067b, idProduct=2303
[ 2178.498808] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 2178.498813] usb 1-2: Product: USB-Serial Controller
[ 2178.498817] usb 1-2: Manufacturer: Prolific Technology Inc.
[ 2179.598882] usbcore: registered new interface driver pl2303
[ 2179.598923] usbserial: USB Serial support registered for pl2303
[ 2179.598973] pl2303 1-2:1.0: pl2303 converter detected
[ 2179.626352] usb 1-2: pl2303 converter now attached to ttyUSB0

...   disconnect and connect the next adapter...

[ 2222.358385] usb 1-2: new full-speed USB device number 5 using xhci_hcd
[ 2222.514000] usb 1-2: New USB device found, idVendor=10c4, idProduct=ea60
[ 2222.514011] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2222.514016] usb 1-2: Product: CP2104 USB to UART Bridge Controller
[ 2222.514021] usb 1-2: Manufacturer: Silicon Labs
[ 2222.514025] usb 1-2: SerialNumber: 009F1920
[ 2222.520140] cp210x 1-2:1.0: cp210x converter detected
[ 2222.632938] usb 1-2: reset full-speed USB device number 5 using xhci_hcd
[ 2222.770826] xhci_hcd 0000:06:00.0: xHCI xhci_drop_endpoint called with disabled ep ffff88003662b940
[ 2222.770836] xhci_hcd 0000:06:00.0: xHCI xhci_drop_endpoint called with disabled ep ffff88003662b988
[ 2222.773170] usb 1-2: cp210x converter now attached to ttyUSB0

...   disconnect and connect the next adapter...

[ 2283.650950] usb 1-2: new full-speed USB device number 6 using xhci_hcd
[ 2283.828033] usb 1-2: New USB device found, idVendor=0403, idProduct=6001
[ 2283.828042] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2283.828047] usb 1-2: Product:  usb serial converter
[ 2283.828051] usb 1-2: Manufacturer:   FTDI
[ 2283.828055] usb 1-2: SerialNumber: FTCW1VMH
[ 2284.996044] usbcore: registered new interface driver ftdi_sio
[ 2284.996074] usbserial: USB Serial support registered for FTDI USB Serial Device
[ 2284.996239] ftdi_sio 1-2:1.0: FTDI USB Serial Device converter detected
[ 2284.996295] usb 1-2: Detected FT232BM
[ 2284.996298] usb 1-2: Number of endpoints 2
[ 2284.996302] usb 1-2: Endpoint 1 MaxPacketSize 64
[ 2284.996305] usb 1-2: Endpoint 2 MaxPacketSize 64
[ 2284.996308] usb 1-2: Setting MaxPacketSize 64
[ 2285.001478] usb 1-2: FTDI USB Serial Device converter now attached to ttyUSB0

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: USB zu UART keine Kommunikation

Beitrag von rendegast » 10.10.2016 14:41:47

In Deinem dmesg haben die beiden CP210X keinen Eintrag "usbserial".
Zudem produzieren sie einen Fehler "xhci_hcd".



Im verlinkten Bug-Report wird auf network-manager / gnome verwiesen.
Wie ist es denn ohne diese Pakete, zBsp. wenn das System im recovery-Modus gestartet wird?
(Also ohne modemmanager / network-manager)



Sollte nm das Device als Netzwerk-device übernehmen:
Das Netzwerk-device vielleicht in /etc/network/interfaces eintragen in der Art

Code: Alles auswählen

allow-hotplug <usbinterface>
iface <usbinterface> inet manual
iface <usbinterface> inet6 manual
(Obwohl modemmanager den "Schaden" dann wohl schon angerichtet hat)
Ermittlung des <usbinterface>

Code: Alles auswählen

ip link

ifconfig
resp.
ifconfig -a
Wenn Dein System persistent-names verwendet,
könnte <usbinterface> je nach Buchse anders heißen.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

r4pt0r
Beiträge: 1237
Registriert: 30.04.2007 13:32:44
Lizenz eigener Beiträge: MIT Lizenz

Re: USB zu UART keine Kommunikation

Beitrag von r4pt0r » 10.10.2016 15:07:00

Wenn der ModemManager nicht installiert ist, macht er normal auch keine Probleme (=blockiert das ttyUSB0 device).
Nutzt man kein Modem mehr, kann man den auch einfach entsorgen, dann pfuscht er garantiert nicht dazwischen.

Worauf genau willst du mit den Adaptern verbinden? Der FT232BM ist ein RS232-, die anderen sind reine UART-Controller, die haben keine Pegelumsetzer für RS232, also nur TTL-UART und oft nur an Rx und Tx konnektiert.

Bei USB/RS232-Adaptern muss *meistens* keine Baudrate angegeben werden, ich bin aber auch schon auf mehrere Geräte gestoßen, die sich ohne definierte Baudrate seltsam verhalten - sei es Zeichenfehler, fehlende Zeilenumbrüche oder mehrfaches erkennen von Tasteneingaben. Daher immer die baudrate festlegen.
Bei (UART) Verbindung auf einfachere Geräte oder zum flashen von z.B. Atmel AVRs *MUSS* die Baudrate angegeben werden. Erfahrungsgemäß ist flashen mit den einfachen UART-Adaptern aber sowieso mehr Glücksspiel als ernsthaftes arbeiten. Da sollte man besser in nen richtigen Programmieradapter investieren die es auch schon ab 15-20 EUR gibt.

Welches Kabel wird für die Verbindung verwendet? Es sind leider immer mehr Kabel mit falschen Belegungen im Umlauf - speziell wenn diese als Nullmodem bezeichnet werden habe ich schon die irrsinnigsten durchverdrahtungen gesehen.
Wenn "APC Kompatibel" aufgeführt wird sollte man die Konnektierung ebenfalls prüfen - APC hat nämlich mehrere nicht Standardgemäße Varianten für verschiedene USV-Generationen. Selbes spiel bei Konsolenkabeln von Cisco - da fehlen teilweise Adern und man kommt nicht auf die Konsole an ner "normalen" Schnittstelle...
Ich hab mir ne sammlung aus "known good" Kabeln angelegt, neue (mitgelieferte) Kabel werden dagegen verglichen und ggf direkt entsorgt oder deutlich markiert.

Zu guter letzt muss natürlich der user r/w zugriff auf das tty haben, sonst geht nix.

Ich nutze Debianscreen für Serielle Verbindungen - damit hatte ich bisher die wenigsten Probleme.

Benutzeravatar
gagosoft
Beiträge: 4
Registriert: 10.10.2016 11:56:39

Re: USB zu UART keine Kommunikation

Beitrag von gagosoft » 10.10.2016 20:59:12

rendegast hat geschrieben: Im verlinkten Bug-Report wird auf network-manager / gnome verwiesen.
Wie ist es denn ohne diese Pakete, zBsp. wenn das System im recovery-Modus gestartet wird?
(Also ohne modemmanager / network-manager)
Sollte nm das Device als Netzwerk-device übernehmen:
Hab sowohl ModemManager als auch network-manager mal via Synaptic deinstalliert.
Beim ModemManager hat sich für mich keine Änderung ergeben, beim network-manager war nur das Netzwerk beeinträchtigt- sonst nichts.
rendegast hat geschrieben: Das Netzwerk-device vielleicht in /etc/network/interfaces eintragen in der Art

Code: Alles auswählen

allow-hotplug <usbinterface>
iface <usbinterface> inet manual
iface <usbinterface> inet6 manual
(Obwohl modemmanager den "Schaden" dann wohl schon angerichtet hat)

Code: Alles auswählen

gago@ilona:~$ cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback
gago@ilona:~$ ls /etc/network/interfaces.d/
gago@ilona:~$ 
rendegast hat geschrieben: Ermittlung des <usbinterface>

Code: Alles auswählen

ip link

ifconfig
resp.
ifconfig -a
Wenn Dein System persistent-names verwendet,
könnte <usbinterface> je nach Buchse anders heißen.

Code: Alles auswählen

gago@ilona:~$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
    link/ether e8:11:32:6f:ec:ed brd ff:ff:ff:ff:ff:ff
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
    link/ether e0:ca:94:2d:68:01 brd ff:ff:ff:ff:ff:ff
auch ifconfig verweist nur auf diese drei Interfaces

Benutzeravatar
gagosoft
Beiträge: 4
Registriert: 10.10.2016 11:56:39

Re: USB zu UART keine Kommunikation

Beitrag von gagosoft » 10.10.2016 21:43:53

r4pt0r hat geschrieben:Wenn der ModemManager nicht installiert ist, macht er normal auch keine Probleme (=blockiert das ttyUSB0 device).
Nutzt man kein Modem mehr, kann man den auch einfach entsorgen, dann pfuscht er garantiert nicht dazwischen.
Tja, das hatte ich auch gehofft.... :cry:
r4pt0r hat geschrieben: Worauf genau willst du mit den Adaptern verbinden? Der FT232BM ist ein RS232-, die anderen sind reine UART-Controller, die haben keine Pegelumsetzer für RS232, also nur TTL-UART und oft nur an Rx und Tx konnektiert.
Bei USB/RS232-Adaptern muss *meistens* keine Baudrate angegeben werden, ich bin aber auch schon auf mehrere Geräte gestoßen, die sich ohne definierte Baudrate seltsam verhalten - sei es Zeichenfehler, fehlende Zeilenumbrüche oder mehrfaches erkennen von Tasteneingaben. Daher immer die baudrate festlegen.
Als Hard- und Softwareentwickler für embedded-systems brauche ich diese Adapter um mit Mircocontrollern (AVR und STM32) zu kommunizieren. Da sind die 5V bzw 3V3 Pegel genau richtig. Hier ist es auch immer von Nöten, die richtige Baudrate einzustellen.
Ich habe die Pegel der Microcontrollerplatine mit einem Oszilloskop gemessen und diese Signale sind korrekt.
Wobei ich bei den USB->Seriell Adaptern keine Ausgabe bekomme und keine Eingabe sehe. Hier ist der einfachste Test mit einem Jumper ein loopback von Tx auf Rx zu machen. Die funktioniert beim anderen Linux-System, nur am Debian leider nicht. Also kann ich einen Hardware-Defekt am Adapter bzw Kabel ausschließen.
r4pt0r hat geschrieben: Zu guter letzt muss natürlich der user r/w zugriff auf das tty haben, sonst geht nix.
Ich nutze Debianscreen für Serielle Verbindungen - damit hatte ich bisher die wenigsten Probleme.
screen hab ich noch nicht probiert, ich arbeite schon lange mit minicom, das hat bisher die wenigsten Probleme gemacht.

...jetzt hab ich screen installiert und siehe da, ich hab damit eine Kommunikation am loopback ... :? :? :?
zumindest die CP210x und das FT232 Device reagieren. Die Prolific wollen noch nicht, dem muss ich auf den Grund gehen ---- (die udev-Rules hab ich ja noch im System)
jedenfalls mal
V I E L E N D A N K :THX:

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: USB zu UART keine Kommunikation

Beitrag von rendegast » 10.10.2016 22:16:32

gagosoft hat geschrieben: Hab sowohl ModemManager als auch network-manager mal via Synaptic deinstalliert.
...
auch ifconfig verweist nur auf diese drei Interfaces
War ein Schuß ins Blaue, weil Dein Link das erwähnte.

modemmanager schaltet zBsp. bei einem Handy modem<->storage.
nm greift sich ein per modemmanger aktiviertes modem.
Beides hat imo aber erstmal nichts mit der seriellen Schnittstelle selbst zu tun.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
gagosoft
Beiträge: 4
Registriert: 10.10.2016 11:56:39

Re: USB zu UART keine Kommunikation

Beitrag von gagosoft » 10.10.2016 22:41:25

Danke für die Infos!
Der ModemManager war auch bei mir erstmal ein Schuß in's blaue. Das war die einzige gefundene Fehlerbeschreibung, auf die das Verhalten meiner Adapter zu passen schien:
* Eintrag in /dev/ttyUSBx ist da und die Zugriffsrechte passen
* Terminalprogramm kann ohne Fehlermeldungen darauf zugreifen
* es finde keine Kommunikation mit der Hardware statt

ob die uDev-Einträge hier eine Änderung ausmachen werd' ich in nächster Zeit mal checken...

Antworten