Nach dem Einschalten eines Raspberry ist der von mir verwendetet GPIO ein Eingang. Diesen Eingang ziehe ich mit einem externen PullUp auf High. Nachdem der Pi runtergefahren wird, soll dieser Pin per Skript zum Ausgang werden und auf Low gehen. Wie kann ich ein (Python)-Skript als letztes Kommando starten, nachdem das OS alles andere zum Poweroff abgearbeitet hat?
Karl S. schrieb: > Nachdem der Pi runtergefahren wird, soll dieser Pin per Skript zum > Ausgang werden und auf Low gehen. Ein abgeschalteter Prozessor kann keinen Ausgang treiben. Georg
Chris schrieb: > Guck dir mal die Init Scripte an Der Hinweis nutzt mir nichts, da ich praktisch keine Erfahrung mit dem OS habe.
Georg schrieb: > Ein abgeschalteter Prozessor kann keinen Ausgang treiben. Nach dem Kommando poweroff z. B. wird der Raspberry runtergefahren. Da er noch mit dem Netzteil verbunden ist bleiben die GPIO-Zustände erhalten.
Hi, Chris meint die Scripte die beim Start/Shutdown aufgerufen werden. Die stehen unter /etc/init.d/ Karl S schrieb: > Chris schrieb: > >> Guck dir mal die Init Scripte an > > Der Hinweis nutzt mir nichts, da ich praktisch keine Erfahrung mit dem > OS habe.
Ingo D. schrieb: > Hi, > > Chris meint die Scripte die beim Start/Shutdown aufgerufen werden. > Die stehen unter /etc/init.d/ > > > Karl S schrieb: >> Chris schrieb: >> >>> Guck dir mal die Init Scripte an >> >> Der Hinweis nutzt mir nichts, da ich praktisch keine Erfahrung mit dem >> OS habe. Danke für die Präzisierung :)
Welches Skript ist zuständig? Dies sind die Skripte in /etc/init.d:
1 | pi@raspberrypi:/etc/init.d $ ls |
2 | alsa-utils dbus kmod plymouth-log rsyslog |
3 | apparmor dhcpcd lightdm procps ssh |
4 | avahi-daemon dphys-swapfile networking raspi-config sudo |
5 | bluetooth fake-hwclock nfs-common rng-tools triggerhappy |
6 | console-setup.sh hwclock.sh paxctld rpcbind udev |
7 | cron keyboard-setup.sh plymouth rsync x11-common |
Du wirst dich wohl oder übel mit dem Init.d von Linux / raspbery pi ausernander stetzen dürfen, ... Das sind die zwar die Scripte, ... die sind für start stop status / ... zuständig. Werden aber an anderer stelle wieder für die entsprechenden runlevels verwendet, ... Bei einem Shutdown werden dann die entsprechend dort angegebenen Scripte mit stop aufgerufen. PS. meine infos sind teils sehr verarltet, früher da ist das noch alles mit symbolic links auf diese dateien gemacht worden, ... und glaube im linknamen war kodiert in welcher reihenfolge und ob der start oder stop aufgerufen werden sollte, ... aber heutzutage gibt es da verschiedene andere lösungen, ... inkusieve glaubens kriege darüber was jetzt besser ist.
Karl S. schrieb: > Nachdem der Pi runtergefahren wird, soll dieser Pin per Skript zum > Ausgang werden und auf Low gehen. Man kann den TX-Pin dafür nehmen, um zu erkennen, ob der PI runtergefahren wurde. Siehe auch: http://www.netzmafia.de/skripten/hardware/RasPi/Projekt-OnOff/index.html Zitat: "Für das Detektieren, ob der Raspberry Pi aktiv oder heruntergefahren ist, bietet sich der serielle Ausgang an (TX, GPIO 14, Pin 8). Kurz nach dem Hochfahren geht er auf HIGH und erst nach dem Shutdown wieder auf LOW." Du brauchst also überhaupt kein init-Script, das geht mit dem TX-Pin automagisch.
Frank M. schrieb: > http://www.netzmafia.de/skripten/hardware/RasPi/Projekt-OnOff/index.html Hilfe von der Mafia. Was es nicht alles gibt. Vielen Dank für den Link.
Oder einfach das overlay "gpio-poweroff" in config.txt benutzen https://github.com/raspberrypi/firmware/blob/master/boot/overlays/README Damit kann man jeden beliebigen GPIO Pin nach Bedarf dafür konfigurieren.
Bei Debian Linux werden die Init Scripte seit ein paar Jahren nach und nach durch Systemd ersetzt. Schau mal ins Verzeichnis /usr/lib/systemd/system-shutdown Da musst du nur ein eigenes Script hinzufügen und ausführbar machen: chmod a+x meinscript
Andreas M. schrieb: > Oder einfach das overlay "gpio-poweroff" in config.txt benutzen > > https://github.com/raspberrypi/firmware/blob/master/boot/overlays/README > > Damit kann man jeden beliebigen GPIO Pin nach Bedarf dafür > konfigurieren. Super! Vielen Dank für den Link.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.