Schlagwort-Archive: M5StickC

M5StickC Handheld Thermometer

Der M5StickC hat einen internen LiPo-Akku mit einer Kapazität von 80 mAh, der dem mobilen Einsatz dann doch gewisse Grenzen setzt. Bei meinen Experimenten zur Messung der Wassertemperatur hatte ich das zu berücksichtigen.

Kurz vor dem Jahresende 2019 kam Post aus Shenzen mit dem 18650C HAT, einem Batterieteil für den M5SticKC mit integriertem wiederaufladbaren LiPo-Akku 18650 mit einer Kapazität von 2000 mAh.

Das Batterieteil ist mit den Steckern der HAT-Serie ausgestattet, mit denen eine zuverlässige Verbindung zum M5StickC hergestellt werden kann. Die Unterseite ist mit einer USB-Ladeschnittstelle ausgestattet. Der USB-C-Anschluss des Batterieteils wird nur als Ladeschnittstelle verwendet und hat keine UART-Funktion. Auf der Rückseite des Batterieteils befinden sich zahlreiche Befestigungslöcher, die eine einfache Befestigung des gesamten Devices ermöglicht.

Handheld-Thermometer

Ich habe mit dem ENV Hat und dem M5StickC ein Handheld-Thermometer aufgebaut.

Über den BMP280 im ENV Hat werden Temperatur, relative Luftfeuchte und barometrischer Druck gemessen und im Sekundentakt auf dem M5StickC Display zur Anzeige gebracht.

Ich werde die Laufzeit einer Batterieladung in der Folge testen und hier berichten.

Überwachungsmassnahmen für den Batteriezustand sind nicht implementiert.

Tastaturerweiterung für M5StickC

Die Eingabemöglichkeiten über die zwei Tasten des M5StickC sind zwangsläufig limitiert. Möchte man eine voll ausgestatteten QWERTY-Tastatur für den M5StickC zur Verfügung haben, dann ist das CardKB HAT eine gute Möglichkeit.

Das CardKB HAT bietet auch Unterstützung für verschiedene Tastenkombinationen (Shift + Taste, Fn + Taste), mit denen praktisch viele verschiedene Tasten hinzugefügt werden können. Der Tastaturstatus wird mit einer RGB-LED angezeigt. Leider ist diese in der Ecke links oben nicht sehr günstig angeordnet, da sie durch den M5StickC abgedeckt wird. Das Keyboard meldet sich als I2C-Device mit der I2C-Adresse 0x5F.

Das die unten angezeigten Ausgaben erzeugende Testprogramm M5StickC_Keyboard.ino steht auf Github zum Download zur Verfügung. Die Tastatureingaben werden hier auf dem M5StickC-Display in grün dargestellt.

Messung der Wassertemperatur

Auf meiner Website http://ckuehnel.ch/WetterVitte.html habe ich Temperaturangaben für Vitte auf der Insel Hiddensee.

Die Angaben aus dem Netz für die Wassertemperatur der Ostsee zeigen erhebliche Differenzen. Gelistet sind auf der Website Wassertemperaturen aus folgenden Quellen:

Mit dem im Post Rapid Prototyping mit M5Stack beschriebenen M5StickC und einem wasserdichten DS18B20-Temperatursensor mit einer Zuleitungslänge von 1 m habe ich ein portables Messgerät aufgebaut, mit dem die Wassertemperatur in 1 m Tiefe gemessen werden kann.

Die Messwerte für den Zeitraum 4.06. bis 13.06.2019 sind als Excel-Sheet abrufbar.

Gemessen wurde am Wasserrand nahe der Oberfläche und im Wasser (Strandnähe) bei 1 m Wassertiefe. Interessant sind für mich folgende Feststellungen:

  • die Messwerte schwanken viel stärker als vom BSH für Kloster angegeben
  • bei Ostwind sinkt die Wassertemperatur erheblich, was in den BSH Daten kaum sichtbar wird
  • bei Wellengang unterscheiden sich die Messwerte am Rand nur wenig von denen in 1 m Tiefe, was sich durch die Durchmischung des Wassers erklärt.
  • es erscheint dennoch recht schwierig, von solchen Messungen verallgemeinerungsfähige Aussagen abzuleiten
  • definierte Messbedingungen und die Einhaltung dieser sind unabdingbare Voraussetzungen für die Vergleichbarkeit solcher Messwerte
Lage der Messstelle

Rapid Prototyping mit M5Stack

Wem es bislang an Baugruppen mit einem vernünftigen Gehäuse für die Entwicklung seiner Prototypen gemangelt hat, dem wird mit M5Stack Komponenten eine ansprechende Lösung angeboten.

Hier sind aus dem Angebot von M5Stack zwei Core Module:

Generell weisen beide Core Module einen ESP32 als Controller auf.

Die M5Stack Komponenten werden von zahlreichen Lieferanten angeboten und sind nicht nur bei Bezug aus Fernost sehr preiswert.

KomponenteAliexpress
M5Stack CoreUS$ 27.60
M5StickCUS$ 9.90
ENV UnitUS$ 3.20

Ich habe mit dem M5StickC erste Versuche unternommen, um seine Eignung für ein portables Messgerät zu testen. Der M5StickC ist mit einem 80 mAh LiPo-Akku ausgerüstet, was keine großen Akkulaufzeit erwarten lässt.

Der M5StickC ist mit einem Power System Management Chip AXP192 ausgestattet, der ein USB-kompatibles Ladegerät, DC-DC-Wandler, Low-Dropout-Linearregler, Spannungs- /Strom- /Temperaturüberwachung und Multi-Kanal 12-Bit ADC aufweist. Die Überwachung des Ladezustand des LiPo-Akkus kann über diesen Chip erfolgen.

Der ESP32 weist zwei I2C-Busse auf. Über den ersten werden die internen Chips AXP32 (0x34), BM8563 (0x51) und SH200Q (0x6C) angesteuert. Der zweite I2C-Bus ist am GROVE-Connector verfügbar.

Für einen ersten Test schließe ich eine ENV Unit über den GROVE-Connector an. Dieses Modul beinhaltet einen DHT12 (0x5C) und einem BMP280 (0x76) Sensor und erfasst damit Temperatur, relative Luftfeuchte und barometrischen Druck.

Das Programmbeispiel M5StickC_ENV.ino erfüllt zwei Aufgaben:

  1. Erfassen von Temperatur, relativer Luftfeuchte und barometrischem Druck über die angeschlossene ENV Unit.
  2. Erfassen von Batteriespannung und Ladestrom für den LiPo-Akku

Das Programmbeispiel ist auf Github abgelegt.

Ausgehend von einem voll aufgeladenen LiPo-Akku habe ich die USB-Verbindung getrennt und das angegebene Programmbeispiel batterie-betrieben laufen lassen. Es hat sich folgender Entladevorgang gezeigt.

Nach reichlich 60 Minuten war die Kapazität des Akkus erschöpft und das System schaltete sich ab. Die folgenden Bilder demonstrieren diesen Vorgang.

Beginn mit voll aufgeladenem LiPo-Akku
Entladung nach 10 Minuten
Erneutes Aufladen des LiPo-Akkus

Es soll an dieser Stelle noch ausdrücklich darauf hingewiesen werden, dass für den Betrieb hier keine WiFi-Verbindung genutzt wurde. Eine WiFi-Verbindung erhöht den Stromverbrauch deutlich, so dass wesentlich geringere Laufzeiten erwartet werden müssen.