Auf der Webpräsenz der Raspberry Pi Foundation ist zu lesen, dass das Modell A explizit für batterie- und solarbetriebene Anwendungen gedacht ist. Mit den hier vorgestellten Lösungen ist zudem eine weitere drastische Reduzierung des Energieumsatzes möglich. Gleichwohl führt dies noch nicht zu solchen Low-Power-Lösungen, wie man sie von den Mikrocontrollerplattformen her kennt, die lange Zeit in den verschiedenen Sleep-Modi verweilen dürfen und nur dann aufwachen müssen, wenn die Anwendung dies erfordert. Vergleichbare Low Power Modes, wie sie etwa bei der MSP430-Familie oder auch bei ARM-Prozessoren wie den EFM32-Typen (Energy Micro, jetzt SiliconLabs) zur Verfügung stehen, lassen sich beim Raspberry Pi nicht programmieren, was zunächst an fehlenden Informationen zu den implementierten Power Modes des eingesetzten ARM-Prozessors BCM2835 liegt. Die Firma Broadcom gibt hierzu offiziell keinerlei verwertbare Informationen preis. Die Originaldokumentation zum ARM1176JZF-S führt auch nicht wirklich weiter, weil sowohl die an den Raspberry Pi angepasste Firmware als auch der Kernel beim Registerzugang dazwischensitzen. Beide Software-Komponenten unterstützen mit den typischen Betriebssystemen (vgl. Tabelle 1) momentan keine speziellen Low-Power-Modi. Deshalb kann nur eine - eher beschwerliche - direkte Registerprogrammierung von der Anwenderebene aus auf die ARM11-Register noch Aussicht auf Erfolg haben, wobei man schnell Gefahr läuft, das Betriebssystem dabei abzuschießen, was deshalb Linux-Programmierexperten vorbehalten bleibt. Die radikale Methode, den Raspberry Pi einfach komplett von der Spannungsversorgung zu trennen, wenn er nichts zu tun hat, funktioniert jedoch auf jeden Fall ohne jeglichen Programmieraufwand. Hierfür wird dann typischerweise eine externe Real Time Clock (RTC) eingesetzt, die das System zeitgesteuert aktivieren kann, wofür sich beispielsweise die RTC (RV-2123) mit Lithium-Akku (EnerChip CBC3112) eignet, die von der Firma Cymbet als CBC Eval 06 angeboten wird, was zusätzlich noch einen Schalttransistor erfordert und in [3] erläutert ist. Die Spannungsversorgung von 5 V muss nicht zwingend über den Micro-USB-Anschluss erfolgen, sondern kann praktischerweise auch an die GPIO-Pins 2 oder 4 (5 V, GND z.B. an Pin 6) angeschlossen werden, was eine einfachere Verschaltung mit einer externen Steuerschaltung ermöglicht. Eine alleinige Versorgung mit lediglich 3,3 V funktioniert im übrigen nicht, auch wenn der Plan (Bild 3) dies vermuten lässt. Den Raspberry Pi aus seinem Schlaf aufzuwecken kann natürlich programmgesteuert erfolgen oder aber durch eine fallende Signalflanke (kurz an GND schalten) am GPIO Pin 3, was somit einer Hardware-Steuerung entspricht.
Literatur
[1] Dembowski, K.: Raspberry Pi - Das Handbuch. Springer Vieweg-Verlag, 2013.
[2] Würth Elektronik, MagI3c-Modul. http://katalog.we-online.de/de/pm/search/Power_Module/mit_fixer_Ausgangsspannung.
[3] Dembowski, K.: Energieeffiziente WLAN-Sensorknoten, Elektronik ecodesign, WEKA Fachmedien GmbH, 2013.
[4] https://github.com/dwelch67/raspberrypi