kk logo

 Neben der grafische Programmierung Ardublock für den Arduino, der grafischen Programmierung Poblock für den Pokeys gibt es noch die grafische Programmierung UiFlow für den M5Stack. Wer keine Programmiersprache wie die Arduino IDE, Python, C oder andere beherrscht und dennoch nicht auf die Arbeit oder das basteln mit Microkontrollern verzichten, will für den bleibt nur eine dieser 3 grafischen Programmiersprachen übrig. Was nicht weiter "schlimm" ist, denn seit Jahren realisiere ich viele große und kleine Basteleien aber auch Automatisierungs- Regelung- und Steuerungaufgaben mit einer grafischen Programmierung. Ardublock habe ich schon ausführlich vorgestellt, Poblock wird wohl ein Nischenprodukt bleiben und UiFlow möchte ich auf dieser Seite vorstellen. Dabei muss sich M5Stack was die Hardware, die externen Module, die Leistung, den Preis und auch die grafische Programmierung angeht nicht verstecken.

M5Stack Hardware 

Als der Ingenieur und das technische Genie Jimmy Lai die Notwendigkeit sah, die Lücke zwischen Entwicklung und Endprodukt zu überbrücken, war er entschlossen, die ultimative Lösung zu finden. Inspiriert von seiner Vision, innovative Produkte zu schaffen, die die Entwicklungsgeschwindigkeit beschleunigen und hochwertiges Prototyping in industrieller Qualität ermöglichen, gründete er 2016 M5Stack. Voller frischer und intelligenter Ideen wird M5Stack von einem leidenschaftlichen und enthusiastischen Team aus Hardcore-Ingenieuren, Machern, Designern und Hackern unterstützt, die mit Eifer und Begeisterung den Entwicklern helfen, ihre kreativsten Träume zu verwirklichen. Jetzt bietet M5Stack die führende IoT-Entwicklungsplattform für industrielle Automatisierung, STEAM-Schulungen, Rapid Prototyping und mehr mit seinem robusten Open-Source-Entwicklungskit, das unglaublich erschwinglich, voll funktionsfähig, vollständig anpassbar und für Entwickler einfach zu handhabende neue Produktentwicklung auf allen Stufen ist.

M5Stack steht für M=modular, 5=5x5 cm (Größe des Moduls 5,4 x 5,4 cm), Stack= stapelbar.

M5Stack vs. Arduino

Es gibt verschiedene M5Stack, wobei sich das Display, die Größe und die Tasten nicht ändern. Es gibt Unterschiede in der Hardware "Ausstattung" , so haben die Unterschiedlichen Kits, verschiedene Sensoren oder Anschlüsse. Die M5Stack Basic besteht aus zwei trennbaren Teilen. Der obere Teil enthält alle Arten von Prozessoren, Chips und einige andere Steckplatzkomponenten. Das Unterteil verfügt über eine Lithium-Batterie, M-BUS-Buchse und den Pins.       Links --> Unterteil, rechts --> Oberteil. M5Stack mit UIFlow testbericht

Neben den Buchsen und Steckern an der Seite gibt es noch die Möglichkeit zwischen Ober-und Unterteil verschiedene "Shields" zu stecken. Auf dem Bild sind auch die Öffnungen des Lautsprechers zu sehen. 
M5Stack Proto

 Das M5Stack-Entwicklungsboard ist hocheffizient in einem industrietauglichen Gehäuse und ist mit einem ESP32-basierten Chip ausgestattet. Es lässt sich mit Wi-Fi, Bluetooth und IR verbinden und hat 16 MB SPI-Flash. Es gibt mehr als 30 stapelbare M5Stack-Module und über 40 erweiterbaren Einheiten. Damit lassen sich nicht nur viele kleine Bastelprojekte umsetzen, sondern auch Steuerungen und Regelungen die eine IoT Anbindung haben. 
M5 Stack anschlüsse

Mit dem roten Taster kann der M5 eingeschaltet, ausgeschaltet und resettet werden. Der M5 verfügt zudem über einen Stecker aus der GROVE (SEEED) Serie an den viele Bauteile direkt und "sicher" angeschlossen werden können.  

M5 Stack vorstellung test und schnellstart

UIFlow Software

Unterstützende Entwicklungsplattformen und Programmiersprachen sind: Arduino IDE, Blockly mit UIFlow und Micropython. Wie eingangs erwähnt verwende ich die grafische Programmierung UIFlow, wo über drag&drop verschiedene Programmierblöcke eingefügt werden. So entfallen zudem auch alle Syntax Fehler und es kann gleich mit dem Programmieren gestartet werden.  

 Das Programm ist sehr einfach aufgebaut. Links befinden sich die Elemente mit denen man das LCD Display programmiert und direkt daneben sieht man auch gleich wie das "programmierte" im Display aussieht. Iuiflow m5stack erste schritte 1

In der Mitte wird das eigentliche Programm dann per drag&drop programmiert.  Dazu werden einfach die Blöcke (oder auch Funktionen) in das Feld in der Mitte gezogen und los gelassen. uiflow m5stack erste schritte 2

Über das (+) Feld unter "Units" kannst du dann die verschiedene Hardware hinzufügen. Das macht die Programmierung wirklich sehr einfach, weil keine Bibliotheken installiert werden müssen. Die einzelnen Funktionen die die Hardware hat, erscheinen das als Blöcke im Programmierfeld. 

uiflow m5stack erste schritte 3

 Wer möchte kann ja ab und zu mal zwischen "Blockly" und Python" umschalten, hier ist der Code der durch die Blöcke erzeugt wird zu sehen. 

uiflow m5stack erste schritte 4

Vorteile und Nachteile gegenüber Ardublock und Arduino

Anders als bei der Arduino Programmierung mit ARDUBLOCK hat man bei UiFlow größere "Sicherheit". Bei Ardublock gibt viele verschiedene Versionen und es muss immer über die Arduino IDE kompiliert werden. Das entfällt bei UiFlow vollständig. Kann es bei Ardublock vorkommen dass Bibliothek fehlen, einzelne Blöcke nicht funktionieren oder ähnliches. Kann man das bei UiFlow zu fast 100% ausschließen. Zudem kann mit UiFlow und dem M5Stack ohne Probleme ein Display aber vor allem IoT Projekte realisiert werden. 

Der Nachteil von UiFlow und M5Stack ist natürlich das fast keine Hardware angeschlossen werden kann die nicht von M5Stack kommt, Schalter, Taster, LEDs usw. ausgenommen. So kann bei Ardublock und beim Arduino natürlich der ganze Hardware Kosmos ausgenutzt werden.  

by grace

By grace alone somehow I standWhere even angels fear to treadInvited by redeeming loveBefore the throne of God aboveHe pulls me close with nail-scarred handsInto His everlasting arms

Ronnie

schwäbischer tüftler und bastler, kraftsportler, 41 Jahre, 1 Frau, 5 Kinder und 1003 Ideen. 

ronnie berzins at mee