Raspberry PI ttyUSB0 umbiegen

Der chaotische Hauptfaden

Moderatoren: Heaterman, Finger, Sven, TDI, Marsupilami72, duese

Antworten
Benutzeravatar
Easyrider
Beiträge: 203
Registriert: Do 20. Feb 2014, 21:44

Raspberry PI ttyUSB0 umbiegen

Beitrag von Easyrider »

Hi,
Ich habe ein GPS-Modul an der Himbeere dranne.
Steck ich dran -> ttyUSB0 vorhanden.
Wenn ich dann screen /dev/ttyUSB0 9600 eintippe sehe ich auch den erwarteten output.
Dumm ist nur: Das eigentliche programm was ich zu laufen habe (Stratux) sucht nach dem GPS an ttyAMA0.
Kann ich das per symlink irgendwie umbiegen?
Thx
Benutzeravatar
Hightech
Beiträge: 11456
Registriert: So 11. Aug 2013, 18:37

Re: Raspberry PI ttyUSB0 umbiegen

Beitrag von Hightech »

Du legst im Verzeichniss
/etc/udev/rules.d/
Eine Datei an mit dem Namen: 20_USB_DEVICES.rules
Dort kommt rein:
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015", SYMLINK+="ttyUSBAMA0"

Vorher schaust du mit lsusb nach welche idVendor und IdProdukt dein Teil hat, das sieht dann so aus:
Bus 003 Device 026: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC

Dann setzt du die Zahlen oben in die Zeile ein:

SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", SYMLINK+="ttyUSBAMA0"

Dann leitet er diesen Adapter, bzw von der Firma immer auf ttyUSBAMA0 um
sirell
Beiträge: 606
Registriert: Mi 8. Apr 2015, 13:38
Wohnort: DE/Herzogenaurach

Re: Raspberry PI ttyUSB0 umbiegen

Beitrag von sirell »

Theoretisch ja,
Bei den Himbeeren ist halt ama die serielle des ARM Cores.
Über eine udev-regel müsstest du es sauber umbiegen können.

Ein einfacher Symlink geht nicht weil /dev beim boot neu erzeugt wird.
Zum testen kannst du es aber probieren. Vorher muss aber ttyAMA0 frei sein.
Das kannst du mit enable_uart=0 in der config.txt machen.

Wenn es klappt kannst du einfach ln -s /dev/ttyAMA0 /dev/ttyUSB0 in die /etc/rc.local oder ins Script von deiner Software eintragen.

Die saubere Lösung ist aber eine udev-regel weil die auch klappt wenn es mal ttyUSB1 oder so ist (passiert öfters, beim Umstecken oder so )
Benutzeravatar
Hightech
Beiträge: 11456
Registriert: So 11. Aug 2013, 18:37

Re: Raspberry PI ttyUSB0 umbiegen

Beitrag von Hightech »

https://wiki.ubuntuusers.de/udev/

Dann sollte auch mit ls /dev/tty* der ttyUSBAMA0 zusätzlich zum ttyUSB0 auftauchen
udev.png
udev.png (4.13 KiB) 1124 mal betrachtet
Benutzeravatar
Hightech
Beiträge: 11456
Registriert: So 11. Aug 2013, 18:37

Re: Raspberry PI ttyUSB0 umbiegen

Beitrag von Hightech »

Das mit den udev rules ist super.
Besonders wenn die Teile eine Seriennummer haben.
Dann kann man jedem Adapter einen festen Port zuweisen, egal in welchen Port und in welcher Reihenfolge die man hineinsteckt. Der hat dann immer zb ttyUSB101.
Oder für wine dann ./.wine/dosdevices/com1
sirell
Beiträge: 606
Registriert: Mi 8. Apr 2015, 13:38
Wohnort: DE/Herzogenaurach

Re: Raspberry PI ttyUSB0 umbiegen

Beitrag von sirell »

Hightech:
Er braucht ttyAMA0 - nicht ttyUSBAMA0
Das ttyAMA0 wird bereits so früh (initrd) aktiv wegen der Shell auf selbigen.
Deswegen kann man das auch nicht klassisch mit setserial umbiegen.

Deine Regel passt, bis auf den Symlink (der sollte ttyAMA0) sein.
Und die config.txt nicht vergessen sonst geht es schief weil der Descriptor schon "in use" ist.

Die Software erwartet wohl ein GPS-Modul über den Pinheader vom Raspberry. Nicht USB.
Ich wage zu behaupten das man das (die Software) sicher umstellen kann, aber das war nicht die Frage ;)
Benutzeravatar
Easyrider
Beiträge: 203
Registriert: Do 20. Feb 2014, 21:44

Re: Raspberry PI ttyUSB0 umbiegen

Beitrag von Easyrider »

Hey , danke für die schnelle Antwort.
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015", SYMLINK+="ttyUSBAMA0"
Ich will auf ttyAMA0 umleiten, nicht ttyUSBAMA0

Code: Alles auswählen

SUBSYSTEM=="tty", SUBSYSTEMS=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", SYMLINK+="ttyAMA0" 
in

Code: Alles auswählen

/etc/udev/rules.d/9_USBGPS.rules
Hab so getan wie du sagtest, funktioniert allerdings nicht, screen /dev/ttyAMA0 bleibt leer.
Gibt es irgendwelche logs an denen ich sehen kann ob er das gefressen hat?
Benutzeravatar
Hightech
Beiträge: 11456
Registriert: So 11. Aug 2013, 18:37

Re: Raspberry PI ttyUSB0 umbiegen

Beitrag von Hightech »

Ohne das
SUBSYSTEMS=="usb"
Ich habe es selber eben getestet, sollte gehen.
Benutzeravatar
Easyrider
Beiträge: 203
Registriert: Do 20. Feb 2014, 21:44

Re: Raspberry PI ttyUSB0 umbiegen

Beitrag von Easyrider »

Jungs, ihr seid zu schnell :-)
ich hab das mit der config.txt erst jetzt gesehen, mal schauen. werde berichten.
Benutzeravatar
Easyrider
Beiträge: 203
Registriert: Do 20. Feb 2014, 21:44

Re: Raspberry PI ttyUSB0 umbiegen

Beitrag von Easyrider »

Läuft! :-)
Danke Jungs, Ihr seid unschlagbar!
Antworten