Moin,
Ich bin totaler Neuling hier und brauch mal kurz eure Hilfe.
Ich muss beim Neustart des PIs einer USB Schnittstelle gewisse Parameter setzten.
stty -F /dev/ttyUSB0 speed 19200 cs8 -cstopb -parenb min 40
Wie kann ich das genau machen?
VG
Moin,
Ich bin totaler Neuling hier und brauch mal kurz eure Hilfe.
Ich muss beim Neustart des PIs einer USB Schnittstelle gewisse Parameter setzten.
stty -F /dev/ttyUSB0 speed 19200 cs8 -cstopb -parenb min 40
Wie kann ich das genau machen?
VG
Ich muss beim Neustart des PIs einer USB Schnittstelle gewisse Parameter setzten.
Wie machst Du es manuell, _nach_ dem (Neu)start? Kannst Du es manuell nach dem Neustart, auch mit einem shell-Script machen? Wenn ja, dann kannst Du auch eine service-unit (plus evtl. timer-unit) benutzen.
Manuell gebe ich das genauso in die Console ein nach dem Neustart.
Möchte das gerne automatisch machen nach jedem Neustart.
Habe aber wirklich keinen Plan und bräuchte etwas Anleitung.
Da gibt es verschiedene Möglichkeiten:
- Mit einer systemd Service-Unit < man systemd.service > + SEE ALSO
- Mit einem @reboot Eintrag in die (System-) crontab < man 5 crontab > + SEE ALSO
- Mit einem Eintrag in /etc/rc.local (veraltet)
Nicht vollständig.
Servus !
Die Möglichkeiten habe ich gelesen.
Probiert mit rc.local habe ich
Habe da einfach den obigen Befehl reinkopiert vor dem exit 0
Aber leider klappt das nicht
Probiert mit rc.local habe ich
Habe da einfach den obigen Befehl reinkopiert vor dem exit 0
Aber leider klappt das nicht
Evtl. ist rc.local, für dein Befehl "zu früh" ausgeführt worden.
Du könntest mit einer drop-in-Datei versuchen, die Ausführung von rc.local mit Abhängigkeiten zu beeinflussen (d. h. zu verzögern).
Vielleicht ist root (der die rc.local ausführt) auch der falsche User.
/etc/rc.local soll dem User root gehören und muss "ausführbar" (x-Bit gesetzt) sein.
Laut < man systemd-rc-local-generator > wird das Script nach dem "network.target" ausgeführt.
Servus !
Ok, ich erweitere meine Aussage:
Vielleicht ist root (der die rc.local ausführt) in dem Fall auch der falsche User für stty.
Eine Systemd Service Unit wäre ggf. besser geeignet.
... wird das Script nach dem "network.target" ausgeführt.
Ja, aber das kann man ändern bzw. optimieren.
Hallo,
Da gibt es verschiedene Möglichkeiten:
- Mit einer systemd Service-Unit < man systemd.service > + SEE ALSO- Mit einem @reboot Eintrag in die (System-) crontab < man 5 crontab > + SEE ALSO
- Mit einem Eintrag in /etc/rc.local (veraltet)
Nicht vollständig.
- Mit udev sollte es auch gehen z.B so:
Mit nano /etc/udev/rules.d/80-setttyusb0.rules Datei erstellen mit folgendem Inhalt:
KERNEL=="ttyUSB0", SUBSYSTEM=="tty", RUN+="/usr/bin/stty -F /dev/ttyUSB0 speed 19200 cs8 -cstopb -parenb min 40" und reboot. (alles als root oder mit sudo).
Gruß Martin
KERNEL=="ttyUSB0", SUBSYST ....
Wenn denn das Gerät sich immer so am System anmeldet, nicht dass die Gefahr besteht, dass ein zweites USB-TTY-Gerät angesteckt wird. Hier wäre zum Beispiel eine Zuweisung nach Typ und Seriennummer besser.
Ich habe nun mal probiert, aber ich denke es liegt an der Benutzer Berechtigungen.
Wie kann ich mir die Benutzer angucken mit ihren rechten?
Als welcher User gibst Du den Befehl aus Beitrag #1 im Terminal ein? (Was sagt da whoami)
Bist Du dann root oder bist Du der Standanduser (früher war das pi)?
Verwendest Du dann sudo vor dem Befehl oder schreibst Du den genau so hin wie oben?
Ich muss immer zuvor mich als Root User einloggen sonst geht es nicht.
Dh vor dem Befehl gebe ich sudo su ein
Ein "einfaches" sudo davor, also sudo stty -F /dev/ttyUSB0 speed 19200 cs8 -cstopb -parenb min 40 fuktioniert da nicht?
Btw. Soweit ich das verstehe funktioniert ohne angemeldetem User auch nichts. Vielleicht ist es zu diesem Zeitpunkt doch zu früh für den Befehl.
Was ich brauche ist ja bei einem Ggf Stromausfall, dass der RasPi beim wieder starten automatisch diesen Befehl ausführt.
Das kann auch gerne x min nach dem Hochfahren passieren
UPDATE - mit einem sudo vorab klappt es leider auch nicht
Nabend,
UPDATE - mit einem sudo vorab klappt es leider auch nicht
Was genau versuchst du im Moment? Den Autostart über rc.local oder einen anderen Lösungsansatz aus #4 oder #11?
Bitte gebe mal genau an, was du wie genau gemacht hast und wie die Ergebnisse oder Fehlermeldungen aussehen, (copy & paste).
Ich kann im Moment nicht sehen, wo dein Problem ist. (Vielleicht gehts aber nur mir so)
Gruß Martin
Moin,
Ich habe ein Device an der RS232 auf USB am Raspberry hängen.
Die Programmierung läuft über IPSymcon.
Nun braucht diese Schnittstelle die Parameter aus dem obigen Befehl. Und das nach jedem Neustart des PIs.
Dh eben auch bei Ggf einem ReBoot / Stromausfall etc.
Da es aber auch so automatisch laufen soll - Strom weg / keiner Zuhause / Strom wieder da, soll sich die Schnittstelle von selbst wieder „parametrisieren“.
Ich muss mich im das manuell zu machen immer mit sudo su als Root User einloggen und dann den Befehl von oben benutzen.
Ich suche nun eben nach einer Möglichkeit das es von alleine passiert.
Fehlermeldungen bekomme ich keine - außer dass d Device nach einem Reboot nicht das tut was es soll bei der rc.local Lösung.
Auch bei der #11 Lösung geht es nicht.
Auch beide Lösungen mit einem sudo vorab geht nichts.