-
Ich meld mich mal wieder, nach längerer Abwesendheit :) Hatte ein kleines Motivationsloch.
@Ceos
18 Sek auf einem RPI B+ klingen eigentlich sehr gut. Mit einem RPI2 oder dem RPI3 müsste das ja noch schneller ablaufen. Aktuell nutze ich noch das normale Raspbian, das braucht ca. 2-3 Min zum booten. Schon heftig.
Ansonsten arbeite ich aktuell an einem Menü, mit dem ich mir die anderen Python Dateien im Ordner auf der LED Matrix anzeigen lassen und ausführen kann. Dabei werden immer nur die ersten zwei Buchstaben angezeigt und unten drunter ist eine kleine Scrollbar.
Das Script wird dann automatisch nach dem Booten ausgeführt. Jedenfalls bin ich gespannt, wie schnell das mit Jessi Lite ablaufen wird.
Was mir allerdings noch aufgefallen ist, das Ausführen von Python Dateien dauert oft mehrere Sekunden. (zum Teil sogar 10-15 Sekunden) Gibt es eine Möglichkeit das zu beschleunigen? Mit dem RPI2 war das kein Problem, da wurden die Scripte nach 1-2 Sekunden ausgeführt. Allerdings hat er ja auch einen Quadcore.
-
die Verzögerung kann ich mir beim besten Willen nciht erklären, ich habe einen RPI-Zero der per I2C einen Drucknehmer abfragt und dann auf einem WS2812 Strip den Füllstand eines Fass anzeigt, der Script startet bei meinem Zero innerhalb von maximal 22 sek, je nachdem wie die laune des hakeligen WLAN Sticks ist! Wenn ich den WLAN Stick weglasse sind es sogar nur 16 Sekunden
mach dir doch mal spaßeshalber ein paar debugausgaben und lass dir die zeiten angeben die so drauf gehen!
-
Ich bin jetzt auf Jessie Lite umgestiegen und damit ist das Problem auch verschwunden. Bootet in ca. 20 Sekunden, Skripte werden nach 1-2 Sekunden ausgeführt. Super :)
So wie es aussieht, kann ich mich dann demnächst endlich mit dem interessanten Teil bei diesem Projekt beschäftigen, der Sprachsteuerung.
-
Gibt es eigentlich eine Möglichkeit ein Pythonscript während des Bootvorgangs auszuführen? (Z.B: Bootscreen für die Matrix)
-
hi,
ein rc.local Eintrag z.b. könnte das machen.
cYa
-
@piggituX
das Skript wird dann aber erst ziemlich am Ende des Bootvorgangs ausgeführt. Ich habe hier ein Skript mit einer einfachen Ladeanimation. Der Bootvorgang dauert 20 Sekunden. Ich hätte gerne, dass das Skript schon wenige Sekunden, nachdem ich den RPI eingeschaltet habe, ausgeführt wird. Ist das Möglich?
-
ja, Jessi Lite startet mit systemd im entsprechenden Pfad könnte man den Skript schon sehr sehr früh starten lassen!
autorun als Systemd script http://www.raspberrypi-spy.co.uk/201...using-systemd/
wenn du dir den systemd config pfad ansiehst, findest du dort dateien die aufsteigend nummeriert sind und mit unterschiedlichen buchstaben
ich hab leider gerade nicht mehr auf dem schirm was für was war, aber entweder waren die zahlen für die reihenfolge und die buchstaben für den core oder umgekehrt!
Die skripts werden auf den größeren RPIs mit mehr als einem Kern parallel ausgeführt und z.B. auf dem Zero einfach nur sequentiuell der Numerierung nach.
Wenn du dich mit dem Scripts ein wenig genauer auseinandersetzt kannst du sicher rausfinden ab wann PYthon verfügbar ist und deinen Script noch früher starten lassen.
-
Danke für den guten Tipp :)
Hab es bisher allerdings nur geschafft, das Script 2 Sekunden früher starten zu lassen. Wann genau Python schon verfügbar ist, konnte ich bisher nicht herausfinden.
Ich hab dann einfach verschiedene targets ausprobiert z.B. basic.target oder auch rescue.target. Mit sysinit.target wollte es dann schon nicht funktionieren.
rescue.target war ja glaube ich schon Runlevel 1
Code:
[Unit]
Description=Bootanimation
[Service]
Type=idle
ExecStart=/usr/bin/python /home/pi/bootfiles/bootScreen.py
[Install]
WantedBy=basic.target
Also wenn sich das nicht noch ein wenig früher ausführen lässt, werde ichs weglassen.
-
Mal ein Update :)
Video im Startpost