LTE-Modem des Pycom FiPy komplett stilllegen

Bei Strom sparen beim Einsatz der MicroPython-Firmware im Batteriebetrieb geht es um die Abschaltung möglichst vieler Peripheriekomponenten des Pycom FiPy.

Gerade mit dem LTE-Modem gab/gibt? es Probleme und widersprüchliche Aussagen im Pycom-Forum. Hier wollen wir dem auf die Spur kommen.

Bei der Bewertung der Dinge kann man denken was man will. Ich will jedoch darauf hinweisen, dass der Start der Reise noch gar nicht so lange her ist:

Länger brauchts immer ;].

Chronologie

2017

20. Dezember 2017

1. Februar 2018

16. April 2018

19. April 2018

20. April 2018

22. April 2018

30. April 2018

2. Mai 2018

24. Mai 2018

2. Oktober 2018

1 Like

10. Dezember 2018 ff.

Diese Diskussion zwischen v.a. Daniel Campora und Robert ist hochinterssant, v.a. wird hier mal richtig gemessen.

12. Dezember 2018

18. Dezember 2018, 11:55

18. Dezember 2018, 12:08

19. Dezember 2018

16. Januar 2019

17. Januar 2019

20. März 2019

8. Mai 2019

Mai / Juni 2019

1 Like

Da jener Beitrag vom 3. Mai 2019 recht aktuell ist und am Ende eine konkrete Frage aufwirft…

… und uns auch @MKO bereits darauf hingewiesen hatte …

… wollte ich das noch einmal aufgreifen, obwohl das Thema bereits ursprünglich Anfang 2018 erstmalig aufkam …

… und daher vermutlich längst behoben / verbessert sein müsste.

Allerdings weiß man ja nie, schließlich gibt es gerade in diesem Bereich scheinbar weitere Verbesserungen, die es bis jetzt nicht in ein Release geschafft haben:

Andere im Pycom Benutzerforum berichten zu diesem Thema:

Recap lte.deinit()

Einleitung

Dank @pinguin kam drüben bei WIP: Merge Hiverize/FiPy and hiveeyes/hiveeyes-micropython-firmware by pinguin999 · Pull Request #11 · hiveeyes/hiveeyes-micropython-firmware · GitHub das Thema “To lte.deinit() or not to lte.deinit()?” nochmal auf den Tisch. Das ist fein, weil ich es gedanklich auch noch nicht abgeschlossen hatte, siehe auch LTE-Modem ordentlich deaktiviert?.

Retrospektive

Status quo

Die Routine def power_off_lte_modem() wird aktuell bei jedem Systemstart aufgerufen.

Fragestellung

However, we are wondering whether this single line actually does something reasonable.

These

Wenn das LTE-Modem gar nicht erst hochfährt, gilt dann o.g. Faustregel bzgl. lte.deinit() überhaupt?

Ausblick

Erstmal bleibt alles so wie es ist. Sehr schade ist allerdings, dass die o.g. Routine ungefähr 6 Sekunden bei jedem Systemstart in Anspruch nimmt.

Wenn also nochmal jemand Fleißarbeit in Richtung Stromverbrauchsmessungen mit/ohne unternehmen will… Top!

Auch wenn wir das noch nicht(?) 100%ig überprüft haben, weisen Beiträge im Pycom Benutzerforum darauf hin, dass es nach der ersten deep sleep Phase mit der Reduktion des Stromverbrauchs gut klappt, aber nicht mehr bei allen Folgenden.

Ähnliche Beobachtungen wurden hier bei uns u.U. bereits von @clemens, @MKO und @didilamken gemacht.

Hier wollen wir noch einmal auf entsprechende Beiträge/Zitate hinweisen.

Auch dies passt zum Thema:

Ein weiterer Beitrag von @robert-hh aus dem Pycom Benutzerforum:


Wir sollten vielleicht einfach kurzerhand

lte.send_at_cmd('AT!="powerOff"')

senden und lte.deinit() komplett umgehen?

Erschließung von LTE Cat M1 und NB1 mit dem Pycom FiPy

1 Like

gibt es schon erkenntnisse, was das dann an Energieeinsparung bringt?

Wo stecke ich die Deaktivierung hin?

Ich habe ja nur die main und die settings bei der annapurna vorliegen.

1 Like

Das ist noch “research” wir müssen erst mal messen ob und was das bringt und dann wird es sicher auch in die “frozen” firmware einfließen. Hättest du denn die Möglichkeit den Stromverbrauch mit und ohne zu messen? Dann müssten wir den FiPy am besten über die sandbox flashen?

1 Like

Also ich kann über mein Multimeter das hier messen… klar.
Ich habe nur keine Möglichkeit das auf eine Zeitachse zu setzen … also mit Messintervallen.

NOCH ist der Test Pi auf Grund von Zeitmangel wegen Kampf mit meiner Wärmepumpe und meinen Stockdämmkisten nicht am Stock verbaut

Das braucht es auch nicht! Ich habe hier das sleep-Intervall so lange eingestellt, dass man das per Multimeter eindeutig identifizieren kann. Im Optimalfall noch kurz die LED blinken lassen, damit man den Start der Messphase oder der sleep-Phase mitbekommt dann kann man den Verbrauch im sleep mode mit und ohne die Änderung oben messen. Ich denke Andreas würde sich sehr freuen, wenn wir hier Messwerte liefern können. Häufig sind das ja Vermutungen oder Messungen mit anderer / alter firmware, die bei den vielen Änderungen bei PyCom heute nicht mehr so sein müssen wie zum Zeitpunkt des Berichts.

2 Likes