M5Stack – Prototyping mit ESP32

Wissenswertes zum M5Stack-Entwicklungssystem

Was ist M5Stack?

M5Stack ist ein modulares, stapelbares Entwicklungssystem, ausgestattet mit dem leistungsstarken ESP32 Microcontroller.

Anders als bei den bekannten Entwicklungs-Plattformen wie Arduino oder Raspberry Pi, ist in der M5Stack-Entwicklungsumgebung sämtliche Peripherie in einem robusten Gehäuse aus Kunststoff verbaut. So sind der integrierte LCD-Display und die empfindliche Elektronik auf der Platine gegen äußere Einflüsse geschützt.

Der Mikrocontroller ESP32 ist ein WLAN- und Bluetooth-Chip mit Dual-Core-Prozessor und 4 MB SPI-Flash. Zusammen mit über 30 stapelbaren Modulen, über 40 erweiterbaren Einheiten und den unterschiedlichsten Programmiersprachen wie Arduino, C++, MicroPython u.v.m., lässt sich der M5Stack schnell, einfach und gezielt für jeden Anwendungsfall konfigurieren.

M5Stack ist die perfekte Lösung für schnellstes IoT-Prototyping.

Das sensible Innenleben ist durch ein robustes Gehäuse bestens geschützt.

Cores, Modules, Units und mehr: Ein Überblick aller Bauteile

Cores

M5Stack Core mit ESP32-Controller und Display.

Die M5Cores sind die Herzstücke der M5Stack-Entwicklungsumgebung.

Sie beinhalten die Hauptplatine und das TFT-Display.

Auf dem Board befinden sich alle nötigen Bauteile um den M5Stack betreiben zu können: ESP32-Mikrocontroller, Lautsprecher, microSD-Card-Reader, viele verschiedene Schnittstellen, eine WLAN-Antenne und - je nach Ausführung - verschiedene Sensoren.

Die Bodenplatte der M5Cores beinhaltet den Akku und weitere Schnittstellen.


Modules

Die Erweiterung beim M5Stack-System erfolgt über steckbare Module.

Mit den Modules lässt sich der Funktionsumfang der M5Cores spielend leicht erweitern.

Es handelt sich dabei um Module mit den exakt gleichen Außenmaßen wie die M5Cores, somit können die Bauteile einfach zwischen Hauptplatine und Bodenplatte ins Gehäuse eingebaut werden.

Die Daten werden per integrierter Stiftleiste übertragen.

So lassen sich ohne Mühen GPS-Modul, Prototyping Board, Servomotor-Treiber u.v.m. integrieren. 


Units

Sensoren und Aktoren werden per Bus-Leitung mit am M5Core angeschlossen.

Units sind kleine Sensor- und Aktor-Elemente die per I²C-Schnittstelle an den M5Core angeschlossen werden können.

Mit Hub-Units lassen sich so viele verschiedene Einheiten kombinieren und über einen einzigen I²C-Anschluss abfragen.


Die M5Cores im Vergleich

Die M5Cores sind in drei unterschiedlichen Hardware-Ausstattungen erhältlich: “Basic”, “Gray” und “Fire”. Sie unterscheiden sich sowohl im Arbeitsspeicher, als auch in der integrierten Peripherie. Die jeweilige Version ist ganz einfach an der Gehäusefarbe erkennbar: 

Basic = Schwarz, Gray = Grau, Fire = Rot.  (Der M5Core im weißen Design ist nur als Sonderedition im IoT-Starter-Kit erhältlich und ist baugleich mit dem M5Core Fire).

M5Core Basic

  

Nicht mehr lieferbar.

M5Core Gray

  

Nicht mehr lieferbar.

M5Core Fire

  

Technische Daten in der Übersicht:

  M5Core Basic M5Core Gray M5Core Fire
Arbeitsspeicher RAM 520 kB 520 kB + 4 MB 520 kB + 4 MB
Flash-Speicher 4 MB 16 MB 16 MB
Akku 150 mAh 150 mAh 600 mAh
Mikrofon BSE3729 Nein Ja Ja
Lagesensor MPU6886 Nein Ja Ja
RGB-LED-Leisten Nein Nein Ja
Zubehör USB-C-Kabel USB-C-Kabel USB-C-Kabel & magn. Ladestation

 

Im Handumdrehen zum ersten eigenen M5Stack Project

Dank dem offenen Entwicklungssystem kann mit M5Stack in nahezu allen gängigen Programmiersprachen entwickelt werden. M5Stack bietet mit “UIflow” eine eigene Entwicklungsumgebung, die auf Scratch und MicroPython basiert.

Es können aber auch die beliebte Arduino IDE, sowie C++ und andere Programmiersprachen verwendet werden. Auf der Dokumentationsplattform docs.makerfactory.io finden Sie viele weitere hilfreiche Informationen und Installationsanleitungen für den M5Stack.

Häufig gestellte Fragen zum Thema M5Stack

M5Stack – Wozu brauche ich das?

Vielen Tüftler gelingt es sehr schnell, einen funktionsfähigen Prototyp zu entwickeln. Dank Breadboard, Steckbrücken und Breakout Boards lässt sich die Hardware recht einfach aufbauen. Doch sobald man dann noch Bildschirm, Tasten zur Bedienung, Akku und andere Bauteile integriert, wird der Aufbau sehr schnell unübersichtlich und fehleranfällig. Außerdem sind Development Boards wie Arduino, Raspberry PI und Co. immer nur blanke Platinen, die grundsätzlich erstmal gegen unsachgemäße Berührung geschützt werden sollten. Bei M5Stack ist dies alles nicht notwendig, da der Inhalt bereits vorinstalliert und gut geschützt im Gehäuse verbaut ist. Trotzdem sind alle wichtigen Schnittstellen nach außen geführt, um zusätzliche Peripherie einfach anschließen zu können, ohne dass das Gehäuse geöffnet werden muss.
 

Ist M5Stack auch mit anderen Komponenten kompatibel?

Ja. Im M5Stack-Universum sind zwar viele Sensoren, Aktoren und andere Teile enthalten, die direkt angeschlossen werden können. Der Vorteil besteht aber darin, dass es auch genauso gut möglich ist, Breakout Boards und andere Zubehörteile zu verwenden. So können bereits im Besitz befindliche Bauteile einfach weiter verwendet werden. Ähnlich gestaltet es sich mit der Programmiersprache: Dank der offenen Entwicklungsumgebung muss keine neue Programmiersprache erlernt werden. Egal ob C++, Arduino, MicroPython oder Scratch, es lassen sich nahezu alle gängigen Sprachen verwenden.
 

Welche Software muss ich installieren?

Der Vorteil von M5Stack liegt darin, dass man über viele verschiedene Entwicklungsumgebungen programmieren kann. Die gängigsten Systeme sind die von M5Stack entwickelte Programmierumgebung „UIflow“ und die bekannte Arduino IDE. Beide Tools können sowohl als Software zur Installation auf dem Rechner heruntergeladen werden oder online, direkt über den Browser verwendet werden. Beide Tools findet man als Freeware im Internet.
 

Kann M5Stack mit anderen Geräten kommunizieren?

Es bieten sich viele verschiedene Möglichkeiten eine Kommunikation zwischen M5Stack und einem weiteren Gerät, wie z.B. Raspberry Pi,  aufzubauen. Dank der Wifi Konnektivität des M5Stack ESP32 Chips lassen sich Protokolle wie P2P oder MQTT zur Übermittlung von Informationen verwenden. Interessant ist auch die Möglichkeit, Werte und Variablen per App (z.B. Blynk) an den M5Stack zu senden. Gerade zur Fernsteuerung von Robotern oder zum Ablesen von Messdaten ist dies eine einfache und unkomplizierte Lösung. Mit der M5Stack Kamera ist es sogar möglich Bild und Video per Wifi zu übertragen.