[SCHROTT] Strom sparen im Deepsleep-Modus durch Pullups

Zum optimalen Stromsparen im Deepsleep-Modus brauchen wir externe Pullup-Widerstände an manchen GPIO-Pins. Im wesentlichen geht es dabei um die Pins

  • zum Wägezellen ADC HX711 oder ADS1231 o.ä.
  • zum I²C Bus
  • zu Tastern

Manche MCUs haben jedoch interne Pullups inkl. der Möglichkeit, deren Status auch im Deepsleep-Modus einzufrieren (hold). Das klappt bei all jenen, die dafür vorgesehen sind, in der RTC-Domäne betrieben zu werden – siehe dazu auch die exzellente Erklärung bei Strom sparen beim Einsatz der MicroPython-Firmware im Batteriebetrieb.

Während wir dem

bei Wägezellen-ADC abschalten Aufmerksamkeit schenken, gibt es einige Verweise auf den I²C Bus und die Taster bei Platine für FiPy » Suche nach “pullup”.

Würde ich erst mal mit Vorsicht genießen die Aussage! Den ADS und auch den HX711 nutze ich ohne externe pull-ups! Beim ADS hatte ich den Stromverbrauch gemessen und der war ok, was ich damals - mehr aus Vorsicht als aus Wissen gemacht habe - den ADS mit einem normalen Pin mit Strom versorgt, dann kann man den kompletten Zweig abschalten. Meinen HX711 mit dem ESP8266 bzw. ESP32 und dem C-Code muss ich nochmal durchmessen!

Doof sind immer Pins, die high einen sleep mode oder “ausgeschaltet” triggern. Diese brauchen dann für unsere Verhältnisse recht viel Strom.