Wer schon einmal mit Python gearbeitet hat, kennt den Ablauf ganz genau:
Ein neues Projekt, ein import requests – und direkt danach geht’s in die Konsole:
pip install requests
Natürlich vorher noch die richtige virtuelle Umgebung aktivieren.
Denn wer sauber arbeitet, installiert seine Abhängigkeiten nicht global, sondern projektbezogen.
Moderne IDEs wie PyCharm nehmen einem das sogar ab. Dort gibt es einen integrierten Paketmanager, der das Installieren von Python-Modulen komfortabel und übersichtlich regelt. Ein Klick – fertig.
Und dann kommt das Arduino App Lab.
Kein Paketmanager.
Kein sichtbarer venv-Dialog.
Und pip install in der Shell? Führt nicht zum gewünschten Ziel.
Zwar können wir wie gewohnt Bibliotheken für unsere Sketche auf der MCU installieren – aber für Python-Module auf der Linux-Seite des UNO Q funktioniert das anders.
Hier brauchen wir einen kleinen, aber entscheidenden Umweg.
Die Lösung heißt: requirements.txt.
Eine einzige Datei im Ordner python, in der wir sauber alle projektabhängigen Module definieren.
Der Rest passiert automatisch beim Start des Projekts.
Wie genau das funktioniert – und warum dieser Weg sogar Vorteile hat – zeige ich dir in diesem Beitrag Schritt für Schritt.
Python-Module im App Lab: Wo liegt das Problem?
Nehmen wir ein einfaches Beispiel.
Du möchtest in deinem Python-Projekt im Arduino App Lab ein zusätzliches Modul verwenden – zum Beispiel rich, um formatierte Konsolenausgaben zu erzeugen.
Also ganz normal:
import rich
print("[bold green]Test erfolgreich[/bold green]")
Du klickst auf Run – und bekommst: „ModuleNotFoundError: No module named ‚rich'“
Nur wie installiert man nun das benötigte Modul?
Einen integrierten Paketmanager wie für die Sketch-Bibliotheken, die auf der MCU laufen und die wir bereits aus der klassischen Arduino IDE kennen, gibt es für Python im App Lab leider nicht.
Die Lösung: requirements.txt anlegen
Statt pip install verwenden wir im Arduino App Lab eine projektbezogene Datei mit dem Namen:
requirements.txt
Diese Datei wird im Ordner python deines Projekts abgelegt.


Modul rich eintragen
Öffne die Datei requirements.txt und trage dort das gewünschte Modul ein.
Du kannst auch nur den Modulnamen eintragen:
rich
Die Angabe einer Versionsnummer ist jedoch empfehlenswert.
So stellst du sicher, dass dein Projekt reproduzierbar bleibt und bei zukünftigen Updates keine unerwarteten Änderungen auftreten.
Versionsangaben in der requirements.txt erklärt
Beim Eintragen eines Moduls kannst du festlegen, welche Version installiert werden soll.
Dafür stehen verschiedene Operatoren zur Verfügung.
== – Exakte Version
rich==14.3.3
Installiert genau diese Version.
✔ Maximale Reproduzierbarkeit
✔ Ideal für Tutorials und produktive Projekte
>= – Mindestens diese Version
rich>=14.1.0
Installiert Version 14.1.0 oder höher.
✔ Gut, wenn du neue Features brauchst
⚠ Kann bei größeren Updates zu Änderungen führen
Kombination mit Versionsbereich
rich>=14.1.0,<15.0.0
Installiert eine Version innerhalb der 14er-Reihe, verhindert aber ein Major-Upgrade auf 15.
~= – Kompatible Version
rich~=14.3.0
Installiert mindestens 14.3.0, aber nur innerhalb derselben Minor-Version.
Das entspricht sinngemäß:
>=14.3.0,<14.4.0
✔ Erlaubt Bugfixes
✔ Verhindert größere API-Änderungen
Ausführen des Programms
Wenn wir nun auf die Schaltfläche Run klicken wird das Programm gestartet und die benötigten Module inkl. der Abhängigkeiten nachgeladen, das können wir aus dem Reiter „Python“ entnehmen:
Activating python virtual environment
Using Python 3.13.9 environment at: .cache/.venv
Resolved 4 packages in 634ms
Downloading pygments (1.2MiB)
Downloading pygments
Prepared 4 packages in 1.01s
Installed 4 packages in 27ms
+ markdown-it-py==4.0.0
+ mdurl==0.1.2
+ pygments==2.19.2
+ rich==14.3.3
Clearing cache at: .cache/uv
Removed 557 files (6.0MiB)
Modul erfolgreich installiert
exited with code 0
Anschließend startet das Python Skript und die erwartete ausgabe von „Modul erfolgreich installiert“ wird ausgegeben.
Leider unterstützt das Arduino App Lab keine formatierten Ausgaben daher bleibt hier die Farbe weiß. Würde wir das ganze auf der Shell ausführen so würden wir formatierten Text erhalten.
Fazit
Damit weißt du nun, wie du Python-Module im Arduino App Lab korrekt installierst.
Statt pip install in der Shell zu verwenden, definierst du deine Abhängigkeiten projektbezogen über eine requirements.txt im python-Ordner.
Beim Start des Projekts wird automatisch eine virtuelle Umgebung aktiviert und alle benötigten Module inklusive ihrer Abhängigkeiten installiert.
Das sorgt für reproduzierbare Projekte und einen sauberen Workflow – genau so, wie man es aus professionellen Python-Umgebungen kennt.
Ausblick
Im nächsten Beitrag gehen wir einen Schritt weiter.
Dann programmieren wir die Modulinos direkt auf der MCU-Seite und übertragen die Sensordaten über die Bridge an ein Python-Programm im Arduino App Lab.
Dort werden wir die empfangenen Daten nicht nur ausgeben, sondern auch strukturieren und visualisieren – und damit eine saubere Grundlage für Monitoring- oder IoT-Projekte schaffen.
Der spannende Teil beginnt also erst jetzt.
Letzte Aktualisierung am: 25. Februar 2026




