Im Arduino-Umfeld ist die Idee, die Stärken eines Mikrocontrollers mit den Möglichkeiten eines Linux-Systems zu verbinden, nicht neu. Bereits vor einigen Jahren verfolgte Arduino mit dem Arduino Yún diesen Ansatz. Die Kombination aus Mikrocontroller und Linux-Prozessor eröffnet interessante Möglichkeiten, etwa die direkte Anbindung von Sensoren und Aktoren bei gleichzeitigem Zugriff auf Netzwerkdienste, Webserver und höhere Programmiersprachen. Details zum Arduino Yún finden Sie z.B. unter Arduino für die Cloud.
Obwohl das Konzept vielversprechend war, konnte sich der Yún nie in dem Maße etablieren wie klassische Arduino-Boards. Die Hardware war ihrer Zeit wahrscheinlich teilweise voraus, das Ökosystem noch überschaubar, und viele Entwickler griffen stattdessen zu getrennten Lösungen aus Mikrocontroller und Einplatinencomputer, wie etwa Arduino und Raspberry Pi.
Mit dem Arduino UNO Q steht heute eine moderne und deutlich leistungsfähigere Plattform zur Verfügung. Sie vereint die Vorteile einer Mikrocontroller-Architektur mit den Möglichkeiten eines Linux-Systems auf einer einzigen Hardwareplattform, programmierbar mit nur einer Softwareplattform. Angesichts der gestiegenen Anforderungen an IoT-Anwendungen, lokale Weboberflächen, Datenverarbeitung und Cloud-Anbindung lohnt es sich, diesen Ansatz erneut zu betrachten.
In diesem Beitrag werfen wir einen Blick auf die Architektur des Arduino UNO Q und auf eine Anwendung, die die Möglichkeiten einer solchen Kombination aus Mikrocontroller und Linux-System aufzeigt.
Das Blockdiagramm und die verfügbaren Schnittstellen verdeutlichen die Ausstattung des Arduino Uno Q. Da er den klassischen Arduino-Uno-Formfaktor samt dessen Pinbelegung beibehält, bleibt die Kompatibilität mit bestehenden Arduino-Shields vollständig gewahrt. Darüber hinaus lässt sich das Board über einen Qwiic-Anschluss flexibel um Modulino-Nodes erweitern und über integrierte Buchsenleisten nahtlos auf Carrier-Boards aufstecken.

Das Arduino App Lab ist die IDE zur Entwicklung von Arduino-Apps. Eine solche App basiert auf einer modularen Softwarearchitektur, die mehrere Komponenten zu einer funktionalen Einheit zusammenfasst. Im Gegensatz zu einem traditionellen Arduino-Sketch bildet eine High-Level-Python-Logik den Kern, die auf dem Linux-Subsystem des Boards läuft. Dennoch bleibt die Anwendung hochgradig erweiterbar: Sie lässt sich durch das Hinzufügen von Bricks (vorgefertigten Komponenten wie KI-Modellen oder Datenbanken etc.) sowie durch einen optionalen C++-Sketch für die Hardware-Echtzeitsteuerung der MCU ergänzen.
In der Anwendung „Arduino Uno Q Climate“ wird ein Modulino Thermo über das Qwiic-Interface mit dem Board verbunden.

Die MCU übernimmt die Kommunikation mit dem Sensor über den I2C-Bus, erfasst die Messwerte für die Temperatur und die relative Luftfeuchtigkeit und gibt diese zur Kontroller über die Console aus. Zur Übergabe an das Linux-Device werden die Messwerte in ein JSON-Paket codiert, das ebenfalls ausgegeben wird, bevor es an die Bridge gesendet wird.

Auf der Linux-Seite werden die über die Bridge übermittelten Daten decodiert und zwischengespeichert. Auch hier erfolgt zu Kontrollzwecken eine Ausgabe der decodierten Daten über die Console.

Außerdem wird mithilfe des WebUI-HTML-Bricks ein Webserver installiert, der über die HTML-Seite index.html die Visualisierung der Messwerte übernimmt.

Die Dateistruktur der Arduino App zeigt das nebenstehende Bild.
Die Datei sketch.ino ist das C++-Programm für die MCU, also das eigentliche Arduino-Programm. Es verwendet die Libraries ArduinoJson und Arduino_Modulino.
Die Datei main.py ist das Python3-Programm der Linux-Seite, welches über die Brick WebUI – HTML den Webserver zur Verfügung stellt. Das Dashboard selbst ist im Responsive Design in der Datei index.html definiert. Es wird also eine dynamische Anpassung an die Grösse des Bildschirms von PC oder Smartphone vorgenommen. Die Screenshots weiter unten zeigen das.
Das folgende Bild zeigt die gesamte Software-Architektur.

Die folgenden Screenshots zeigen die Visualisierungen der Messwerte im Webbrowser des PCs bzw. auf dem Smartphone.


2026-06-15/CK















Du muss angemeldet sein, um einen Kommentar zu veröffentlichen.