M5Stack baut Hardware, die man in einer Hand halten und sofort nutzen kann — ein Bildschirm, Tasten, ein Lautsprecher und ein Akku sind bereits vorhanden, wenn man die Verpackung öffnet. Genau diese Art von Platine muss ein Simulator in jedem Detail richtig hinbekommen, sonst ist er nutzlos, denn es gibt kein Steckbrett, dem man die Schuld geben kann. Dieser Beitrag handelt davon, wie M5Stack-Hardware in Velxio gelandet ist, was heute läuft, und dem kleinen Test, den wir uns dabei gestellt haben — können M5Stacks eigene Beispiel-Sketche ohne eine einzige Änderung im Browser laufen?
Das können sie. Beginnen wir dort.
M5Stacks eigener Display-Test, unverändert
M5Stack liefert ein Display-Beispiel mit der Cardputer-Bibliothek aus — zufällig farbige Rechtecke und Text, der über den Bildschirm verstreut ist, endlos, als schneller Weg, den LCD-Pfad mit voller Geschwindigkeit zu sehen. Wir haben es genau so in die Galerie aufgenommen.

Um es selbst zu sehen:
- Öffnen Sie velxio.dev/example/cardputer-adv-m5-display. Eine Anmeldung ist nicht erforderlich.
- Klicken Sie in der Symbolleiste oben auf die Play-Taste. Der Sketch wird gegen denselben arduino-esp32-Kern und dieselbe M5Cardputer-Bibliothek kompiliert, die Sie auch in der Arduino-IDE verwenden würden. Ein Kaltstart dauert ein paar Minuten — ein warmer ist viel schneller.
- Wenn die Platine bootet, füllt sich der Bildschirm mit Rechtecken in der vollen 240x135-Auflösung des Panels.
- Klicken Sie auf die Tastatur, oder klicken Sie auf die Platine und verwenden Sie Ihre eigene Tastatur, und öffnen Sie eines der am Ende des Beitrags aufgeführten Tastatur-Beispiele, um zu sehen, wie Tastendrücke im Sketch ankommen.
Dieser Sketch ist eines von fünfzehn offiziellen M5Stack-Beispielen in der
Galerie. Auf dem Cardputer ADV sind das die Beispiele für Text-Terminal, Taste,
Summer, Display, IR-NEC-Senden, Einzeltaste, Mehrfachtaste, Texteingabe, microSD
und das REPL-Ratespiel. Auf dem Core sind es HelloWorld, Button, Display, Speaker
und TFCard. Wo ein Beispiel die klassische M5Stack-Bibliothek verwendete, die
auf dem arduino-esp32-3.x-Kern nicht mehr kompiliert (in der Arduino-IDE oder
anderswo), wurde es auf M5Unified portiert, die Bibliothek, die M5Stack heute
empfiehlt. Alles andere ist unangetastet.
Die beiden Platinen

M5 Cardputer ADV. Der kartenförmige Computer — ein ESP32-S3, ein 1,14-Zoll- 240x135-Bildschirm, eine 56-Tasten-Tastatur, eine IMU, ein Mikrofon und ein Lautsprecher über einen ES8311-Codec, ein IR-Emitter, ein microSD-Steckplatz und ein Akku. In Velxio zeichnet der Bildschirm auf der Platine, die gesamte Tastatur tippt (klicken Sie auf die Tasten, oder fokussieren Sie die Platine und tippen Sie auf Ihrer eigenen Tastatur), der Lautsprecher spielt über Ihren Computer, und das Mikrofon streamt das Mikrofon Ihres Computers, wenn Sie den Mic-Schalter in der Canvas-Kopfzeile aktivieren. Die Schaltfläche „Sensoren” daneben neigt die BMI270-IMU und stellt den Akkuladestand ein, sodass Code, der auf beides reagiert, getestet werden kann. Der IR-Emitter antwortet ebenfalls — ein Punkt auf der Platine blinkt bei jeder dekodierten Übertragung. Die microSD ist eine echte FAT-Karte mit einem Upload-Panel. Wi-Fi und MicroPython funktionieren — das BLE-Funkmodul ist nicht emuliert.

M5Stack Core (Basic v2.7). Der klassische, stapelbare 54x54-mm-ESP32 mit einem 2-Zoll-320x240-Bildschirm hinter Glas, drei Fronttasten, einem Lautsprecher, einem TF-Steckplatz und einem Grove-Port. Der Bildschirm zeichnet, die drei Tasten klicken (active-low, wie verdrahtet), Lautsprechertöne spielen mit der tatsächlichen Tonhöhe des Sketches, und der TF-Steckplatz ist eine echte Karte. Die M-Bus-Pin-Karte ist auf allen vier Kanten der Platine aufgedruckt, farbcodiert wie beim echten Gehäuse, und jeder Pin darauf ist verdrahtbar, sodass der Core ein ebenso guter Host für externe Teile ist wie jedes DevKit.
Beide Platinen unterstützen Arduino C++ und MicroPython, und beide werden im Komponenten-Picker mit Hover-Datenblättern geliefert, die den Pinout auflisten und auf M5Stacks Shop verlinken.
Die Chain-Matrizen

Zwei M5Stack-Chain-Module sind ebenfalls im Katalog — die Chain RGB Matrix (64 WS2812E-LEDs) und die Chain Mono Matrix (64 weiße LEDs). In Velxio werden sie als einfache WS2812-Matrizen über ihren DIN-Pin angesteuert, so verwenden sie die fünf Galerie-Beispiele von einem Arduino Uno aus — ein Regenbogen, ein weißer Sweep, zählende Ziffern, ein springender Ball und ein Feuereffekt. Das echte UART-basierte Chain-Protokoll ist zu diesem Zeitpunkt noch nicht emuliert — das steht auf der Liste.
Zusammenarbeit mit M5Stack
M5Stack hat diese Arbeit unterstützt und die Hardware bereitgestellt. Das war hier wichtiger als sonst, denn so viel von dem, was diese Platinen nützlich macht, befindet sich auf der Platine selbst. Der Cardputer ADV in Velxio wurde gegen ein physisches Gerät entwickelt — die Panel-ID, die M5GFX liest, um das Display zu erkennen, die GPIO-Signatur, die die ADV-Revision vom Original unterscheidet, der Tastatur-Scan, der Codec auf I2C. Wenn die simulierte Platine diese Fragen so beantwortet wie die echte, erledigen M5Stacks Bibliotheken den Rest, und genau deshalb laufen ihre Beispiele ohne Änderungen.
Wir sind dem M5Stack-Team dankbar, dass es ein Projekt unterstützt, das es Menschen ermöglicht, ihre Hardware in einem Browser-Tab auszuprobieren, bevor sie sie kaufen, und für die Open-Source-Bibliotheken (M5Unified, M5GFX, M5Cardputer), die die Integration zu einer Frage der korrekten Hardware statt des Umschreibens von Software gemacht haben.
Wenn Sie die physischen Platinen möchten, finden Sie sie auf shop.m5stack.com: den Cardputer ADV, den Basic Core v2.7, die Chain RGB Matrix und die Chain Mono Matrix. Die M5Stack-Dokumentation finden Sie unter docs.m5stack.com.
Alles M5Stack in Velxio läuft im kostenlosen Plan. Öffnen Sie den Komponenten-Picker, wählen Sie „Platinen”, und der Cardputer ADV und der Core sind dort neben den anderen ESP32-Platinen zu finden.
Jedes M5Stack-Beispiel in der Galerie
Jeder Link öffnet das Projekt startbereit.
M5 Cardputer ADV
- M5 Cardputer ADV — LCD + Tastatur-Echo
- M5 Cardputer ADV — Text-Terminal (offizielles M5Stack-Beispiel)
- M5 Cardputer ADV — Hardware-Tour (Display, Tastatur, microSD, IMU, LED, Akku, Mikrofon)
- M5 Cardputer ADV — Brick Blaster, ein Spiel mit Ton
- M5 Cardputer ADV — Taste (offizielles Beispiel)
- M5 Cardputer ADV — Summer (offizielles Beispiel)
- M5 Cardputer ADV — Display (offizielles Beispiel)
- M5 Cardputer ADV — IR-NEC-Senden (offizielles Beispiel)
- M5 Cardputer ADV — Einzeltastendruck (offizielles Beispiel)
- M5 Cardputer ADV — Mehrfachtastendruck (offizielles Beispiel)
- M5 Cardputer ADV — Texteingabe (offizielles Beispiel)
- M5 Cardputer ADV — microSD (offizielles Beispiel)
- M5 Cardputer ADV — REPL-Ratespiel (offizielles Beispiel)
M5Stack Core
- M5Stack Core — Hello LCD + Tasten
- M5Stack Core — LCD (Adafruit_ILI9341)
- M5Stack Core — integrierte microSD + LCD
- M5Stack Core — Tasten-Klavier (Lautsprecher)
- M5Stack Core — HelloWorld (offizielles Beispiel)
- M5Stack Core — Button (offizielles Beispiel)
- M5Stack Core — Display (offizielles Beispiel)
- M5Stack Core — Speaker (offizielles Beispiel)
- M5Stack Core — TFCard (offizielles Beispiel)
Chain-Matrizen (auf einem Arduino Uno)
- M5Stack Chain RGB Matrix — Regenbogen
- M5Stack Chain RGB Matrix — zählende Ziffern
- M5Stack Chain RGB Matrix — springender Ball
- M5Stack Chain RGB Matrix — Feuer
- M5Stack Chain Mono Matrix — weißer Sweep
Die Platinenseiten in der Dokumentation enthalten die vollständigen Pinouts: M5 Cardputer ADV und M5Stack Core. Der vorherige Beitrag dieser Serie behandelte Seeed Studio.