Meine neue UPS Geekworm X728 V2.5 arbeitet inzwischen ganz gut auf meinem Pi 4B.
Ich hatte mich entschlossen, nicht das ganze Software-Paket:
X728-script – Geekworm Wiki
... zu installieren, sondern dtoverlay zu nutzen. Dazu habe ich in die config.txt eingetragen:
# Settings for Geekworm X728 V2.5
# Cut power after shutdown
dtoverlay=gpio-poweroff,gpiopin=26,timeout_ms=6000
# Shutdown automatically on power loss detected, wait 3s before shutdown
dtoverlay=gpio-shutdown,gpio_pin=6,active_low=0,gpio_pull=down,debounce=3000
# Report battery status from X728 to the OS
dtoverlay=i2c-sensor,max17040
Jetzt habe ich das schon ein paar Tage getestet:
1. Ich kann den RPi über Desktop oder Terminal normal herunterfahren, wenige Sekunden danach schaltet die UPS die Power aus. Ich denke, gpio-poweroff scheint also zu funktionieren. Auch die Werte (Akkuspannung und -kapazität) der UPS kann ich gut auslesen.
2. Bei Power Loss, also AC Netzteil abgeschaltet, fährt die UPS nicht herunter, sondern der RPi wird von ihr weiter mit Strom versorgt, bis die Akkus "leer" sind. Ich schließe daraus, dass gpio-shutdown NICHT funktioniert.
3. Entgegen der Aussage des Lieferanten Geekworm wird der RPi NICHT heruntergefahren, wenn die Akkuspannung 3,0V unterschreitet, sondern die UPS bleibt an. Ich habe dann irgendwann bei 2,8V abgebrochen, um die Akkus nicht zu beschädigen. Ich schließe daraus, dass ein automatischer Shutdown (ASD) bei leerem Akku NICHT erfolgt (z.B. ausgelöst durch die Firmware der UPS?).
4. Was auffällt ist aber, dass wenn ich bei leerem Akku (<3,0V) das AC-Netzteil wieder einschalte, sofort auf dem Desktop das Menü "Herunterfahroptionen" erscheint, über das ich mich dann abmelden oder neu starten könnte. Diese Funktion ist mir unklar,- evtl. über GPIO6 gesteuert, aber dann ggf. über eine falsche Flanke am GPIO6 !? Müsste ich also an den Optionen active_low und/oder gpio_pulldown etwas ändern, damit zumindest das Herunterfahr-Menü schon bei leerem Akku erscheint und nicht erst beim Wiedereinschalten des AC Netzteils?
5. Und: warum erscheint das Herunterfahr-Menü überhaupt? Eigentlich sollte doch der RPi bei leerem Akku und ohne AC Power sofort heruntergefahren werden und die UPS sich ausschalten.
Viele Fragen. Hat jemand Erfahrungen mit der X728 UPS und die Basis-Funktionen schon ohne mehrere Skripts hinbekommen? Kann man überhaupt alle o.g. Funktionen über dtoverlay erreichen?
Was könnte ich testen, um etwas weiter zu kommen?