Always-On: Das Open Nextion Display

Transparenzhinweis: Beim Open Nextion handelt es sich um ein Produkt, das mir vor einiger Zeit zu Testzwecken kostenfrei zur Verfügung gestellt wurde.

Ich liebe visuell aufbereitete Daten. Egal ob aus meinem Smart Home oder aus meinem Leben als Entwickler. Und wer mich kennt, der weiß, dass das auf so viele Bereiche des Lebens bei mir anwendbar ist. Das Open Nextion ist dafür einer meiner Begleiter auf dem Schreibtisch geworden.

Wenn du dir schon mal ein kleines, lokales Statusdisplay für dein Smart Home gewünscht hast – genau da setzt das Open Nextion an.

Im Terminal-Style präsentiert es mir Daten zu meinem OpenCode, Home Assistant, n8n und auch aus meinem GitHub-Profil. So habe ich die wichtigsten Daten jedes Mal direkt vor Augen, wenn ich mit meiner Arbeit am Schreibtisch beginne.

Was aber für mich noch viel besser daran ist: Ich kann die Daten jederzeit austauschen und mir neue Informationen anzeigen lassen. Denn wir sprechen hier nicht nur von einem Display, sondern von einem voll einsatzfähigen Weg zur Visualisierung von Daten.

Ein Bildschirm zeigt eine Übersicht über GitHub-Aktivitäten mit den aktuellen Statistiken für den heutigen Tag und den Vortag; es sind 0 Commits, 4 Pull Requests und 3 Repositories für heute sowie 3 Commits, 0 Pull Requests und 3 Repositories für gestern angezeigt, zudem sind die Gesamtstatistiken für das Jahr mit 8 Commits und 773 Pull Requests dargestellt.

Vorwort zum Display

Auch wenn ich in meinem Blog sehr gerne viele Dinge für Einsteiger erkläre, bewegen wir uns hier in diesem Artikel definitiv in einem anderen Rahmen.

Die Entwicklung der Software für dieses Display erfordert weit mehr als nur das Einrichten von ein paar Verbindungen, wie wir es vielleicht von Home Assistant kennen. Die Freiheit, die wir durch so ein Display bekommen, hat leider ihren Preis.

Ich rate dir daher dringend, dass du dieses Projekt wirklich nur dann angehst, wenn du entweder Vorwissen hast oder dich lange damit beschäftigen willst. Hier geht nichts mit Plug-and-play. Das Display sowie die Programmierung erfordern weitaus mehr Kenntnisse. Ich freue mich natürlich trotzdem, wenn es den einen oder anderen hier interessiert. Gleichzeitig kann ich aber auch verstehen, wenn es dich damit nicht abholt.

Möglicherweise ist ein kleiner Geheimtipp aber, dass du jederzeit eine KI deiner Wahl zu Rate ziehen kannst. Auch ich habe in diesem Projekt mit Claude gearbeitet und es hat mich wirklich enorm schnell an ein messbares Ziel gebracht. Es kann also nicht nur Abkürzung, sondern auch Start in dieses Projekt sein. Ganz wie du es eben gerne haben willst.

Trotzdem gilt aber immer: Code aus KI-Ausgaben nicht blind flashen. Gerade bei WLAN-Zugangsdaten, API-Tokens und Netzwerkzugriffen solltest du verstehen, was da gerade passiert. Außerdem rate ich zu eigenen API-Token explizit für das Display. Im Problemfall kannst du so schnell den Token deaktivieren, ohne dass andere Systeme beeinflusst werden.

Die Hardware

Das Open Nextion ist ein auf einem ESP32-S3 basierenden Board mit einem integrierten Display. Es ist in der Variante 2,8 Zoll und 3,5 Zoll erhältlich.

Es ist zudem ausgestattet mit 2,4 GHz WiFi, BLE 5 und besitzt einen integrierten 16 MB Flash-Speicher sowie 8 MB PSRAM. Mit der Ausstattung handelt es sich demnach um ein Display zur Darstellung von Informationen. Zum Beispiel aus dem Smart Home. Versorgt wird es per USB-C mit Strom und kann daher sogar mobil über einen externen Akku betrieben werden.

Zur Verfügung stehen dir außerdem noch ein IO Adapter sowie ein Lautsprecher und ein Mikrofon. Mit diesen Gadgets lässt sich das Board um zusätzliche Funktionen erweitern.

Erhältlich ist das Board für rund 30 US-Dollar direkt beim Hersteller. Zubehör muss extra gekauft werden.

Der Vorteil von diesem Board besteht ganz eindeutig darin, dass es schon alle Kernkomponenten enthält, die für den Betrieb nötig sind. Es benötigt keinen extra ESP, sondern kann direkt ausgepackt und genutzt werden. Das senkt die Hemmschwelle aus meiner Sicht enorm und macht es auch mir als Wirtschaftsinformatiker leichter mit dem direkten Umsetzen meiner Ideen und Projekte.

Schaltung mit einem schwarzen Leiterplatten-Design, auf dem mehrere Anschlussbuchsen und Bauteile zu sehen sind, darunter ein USB-Anschluss und verschiedene Steckverbinder, die für die Integration in elektronische Geräte konzipiert sind.

Open Nextion vs Tablet

Nun kannst du dir zurecht die Frage stellen, warum man nicht einfach ein Tablet nimmt und es an der Wand montiert. Tut doch auch seinen Zweck.

Und vermutlich hast du damit Recht. Aber du vergisst einen entscheidenden Punkt.

Mit dem Open Nextion kann ich viele Daten lokal anzeigen lassen, sofern meine Datenquellen lokal erreichbar sind. Und ich kann mich selbst verwirklichen. In alle erdenklichen Richtungen. Während wir auf dem Tablet auf die passende App oder eine minimalistische Ansicht in einem Dashboard angewiesen sind, kann ich das Open Nextion gewissermaßen in alle Richtungen bewegen, wie ich es haben will.

Mein Beispiel, welches du gleich sehen wirst, zeigt dir das eindrucksvoll. Und gleichzeitig sage ich dir aber auch, wenn du es bequem und einfach willst, dann nimm lieber ein Tablet. Wenn du dagegen wirklich selbst basteln willst und dir die Apps auf den gängigen Tablets oft einen Strich durch die Rechnung machen, dann kannst du wirklich gut zum Open Nextion greifen und Freude haben. So wie ich.

Mein Setup, meine Dashboards

Ich habe mich für mein Setup dazu entschieden, dass ich das Display als Blick in meine Software nutzen möchte. Dazu habe ich auf dem Display vier verschiedene Screens, die ich per Wischgeste anzeigen lassen kann.

Mein wohl wichtigster Screen zeigt mir Statusinformationen zu meinem Home Assistant Server an. Dort sehe ich zum Beispiel das aktuelle Wetter, die Temperatur draußen und den Zeitpunkt für den Sonnenuntergang.

Aber wohl viel spannender ist es, dass ich auch die aktuelle Systemversion von Home Assistant sehe und all meine Automationen im Blick habe. Mir wird angezeigt, wie viele Automationen ich im System habe und wie viele davon gerade aktiv sind. Bei mir schwankt das nämlich auch mit der Jahreszeit – zum Beispiel wenn es um die Heizungslogik geht.

Und ich sehe direkt meine Lampen und wie viele davon eingeschaltet sind. Ein herrlicher Nerd-Faktor auf meinem Schreibtisch.

Weitere Screens zeigen mir Statusinformationen zu meinem n8n und meinem GitHub-Account. Diese beiden Systeme sind auch die einzigen, für die ich eine Internetverbindung nutze. Ansonsten läuft alles lokal.

Ein weiteres Goodie für mich ist der Status von meinem OpenCode-Server. Mit dem entwickle ich zum Beispiel innerhalb von kürzester Zeit neue Automationen für mein Smart Home. Inzwischen sogar ganz bequem vom Sofa per Telegram-Chat. Mehr Infos dazu findest du in meinem AI Deep Dive für Home Assistant.

Der Look und das Theme

Damit dieses Projekt so richtig den inneren Nerd in mir berührt, habe ich mich für ein Terminal-Design entschieden. Im Grunde kann man die Visualisierung fast frei anpassen, wie man es haben will. Größere optische Effekte können jedoch schwierig werden. Denn du musst immer im Hinterkopf behalten, dass es sich um eine limitierende Hardware handelt, die keinesfalls mit einem vollwertigen Computer gleichzusetzen ist.

Meine vier Screens zeigen also nun in Terminal-Optik die wichtigsten Informationen zu den oben genannten Systemen an und versprühen so auf meinem Schreibtisch eine angenehme Optik, die Nerds lieben. Also genau für meinen Geschmack. Endlich mal etwas, das nicht auf Hochglanz poliert ist und auch mal so roh sein darf, wie man es eben aus der IT kennt.

Zuvor hatte ich etwas mit dem klassischen iOS-Design experimentiert, musste das jedoch zugunsten der Ausrichtung nochmal ändern. Denn ursprünglich habe ich im Hochformat entwickelt (oder entwickeln lassen), mich dann jedoch für ein Querformat entschieden. Weil das auch praktischer ist für das Case, was noch aus dem 3D-Drucker kam. Doch dazu kommen wir gleich noch.

Interaktives Smart-Home-Display mit Informationen zum Wetter, einschließlich einer Temperatur von 21°C und dem Zustand von Lichtern und Autos, sowie der Anzahl der Personen im Raum, abgebildet auf einem dunklen Hintergrund.

Umsetzung und Programmierung

Lass mich ehrlich sein. Ich bin wirklich mit 0 Ahnung an die Sache rangegangen und habe deshalb direkt Claude Code zu Rate gezogen, um mir bei der Umsetzung zu helfen. Normalerweise arbeite ich mit OpenCode bei meinen Projekten (das auch mein Smart Home programmiert). Aber hier habe ich bewusst mal auf Claude gesetzt, um mich in einem Projekt etwas auszutoben.

Die komplette Entwicklung von meinem Display basiert demnach auf Prompts und mit Hilfe von ein paar Iterationen sind wir dann auch zu einem wirklich guten Ergebnis gekommen. Ich musste lediglich noch die Konfigurationswerte (z. B. Access-Keys) in der Konfiguration setzen. Dann hat sich das Display auch schon wie vorgesehen mit meinen Systemen verbunden und die Daten entsprechend ausgelesen.

Dazu habe ich auf die vordefinierten Projekte zurückgegriffen, die man auf der Nextion-Seite finden kann. Dieses Projekt hat Claude dann so abgewandelt, dass es zu meinen Bedürfnissen und Vorstellungen passt. Insgesamt also kein Hexenwerk, sondern einfach die Kombination aus Mensch und künstlicher Intelligenz.

Wer lieber selbst an die Umsetzung ran will, kann den Code jedoch auch selbst schreiben. Am besten eignen sich dafür Visual Studio Code oder die Arduino IDE. Mit letzterer habe ich auch gestartet, bin dann aber auf Wunsch von Claude zu Visual Studio Code übergegangen. Vom Feeling her würde ich aber sagen, dass die Arduino IDE gerade für Einsteiger etwas einfacher sein dürfte.

Von Haus aus kann dein Windows PC übrigens nicht mit dem Board umgehen. Daher gehört vor dem Start noch ein bisschen was an Einrichtung dazu, die ich aber in meinem Fall recht gut dokumentieren konnte.

Vorbereitung zur Programmierung

Wie bereits erwähnt, arbeite ich auf Windows. Daher werden auch die nachfolgenden Punkte sehr stark auf Windows ausgerichtet sein. Für andere Systeme (macOS oder Linux) musst du selbst etwas in die Recherche gehen.

Zuerst habe ich ESP-IDF installiert. Hierbei handelt es sich um das offizielle Framework von Espressif, welches zur Programmierung benötigt wird. Ich nutze ESP-IDF v6.0.1. Das hat bei mir problemlos funktioniert. Du solltest aber unbedingt die Angaben des Herstellers und deines Projekts prüfen, weil ESP-IDF, LVGL und Board-Support-Komponenten recht zickig auf Versionssprünge reagieren können.

Am einfachsten ist es, wenn du dir den ESP-IDF-Windows-Installer herunterlädst. Er richtet Python, Git und alle Tools in einem Rutsch ein. Nach der Installation kann man über die PowerShell direkt loslegen. Das kannst du mit folgendem Kommando prüfen:

idf.py --version
# ESP-IDF v6.0.1

Natürlich hängt die genaue Ausgabe von deiner Installation ab.

Ich nutze übrigens für das Bauen der Software und das Monitoring die Shortcuts in Visual Studio Code. Dort gibt es auch eine entsprechende Erweiterung, die dann zumindest die terminalbasierten Befehle abnimmt, indem man auf die Icons in der Statusleiste unten klicken kann. Einfach mal nach ESP-IDF in Visual Studio Code unter den Erweiterungen suchen.

Ports und Treiber

Über die offizielle Website lassen sich im Grunde alle wichtigen Teile für die Entwicklung herunterladen. Ganz wichtig für Windows sind dabei die Treiber, so dass das Display auch korrekt erkannt wird. Von Haus aus kann Windows mit diesem Gerät nämlich gar nichts anfangen.

Ebenso wichtig ist es, dass du über den Geräte-Manager den jeweiligen COM-Port raussuchst, über den das Display angeschlossen ist. Denn den musst du in der Konfiguration für den Build angeben, damit die Software auf das Display geschrieben werden kann.

In meinem Fall war es COM3, wobei das für dich nicht unbedingt zutreffend sein muss und du daher selbst in die Recherche gehen musst.

Projektstruktur und Code-Architektur

Da ich mit dem Standardprojekt angefangen habe, lässt sich der Aufbau hier ganz gut beschreiben:

05_wifi_test/
├── main/
│   └── wifi_test.c        ← Einstiegspunkt, WiFi, LVGL-Init, Task-Start
├── components/
│   └── gui/
│       ├── gui.c          ← Alle Screens, UI-Aufbau, Poll-Tasks
│       └── gui.h
├── CMakeLists.txt
└── sdkconfig

Die Datei wifi_test.c ist der Einstiegspunkt für das Projekt. Wie du sehen kannst, stützt sich meine Entwicklung auf das Demo-Projekt 05_wifi_test.

Die gesamte UI befindet sich in der gui.c. Also alles, was für den Nutzer sichtbar ist. In meinem Fall ist die Datei mit rund 1.900 Zeilen nicht gerade klein, aber immerhin sauber strukturiert. Dort wird das Theme definiert, Helper-Funktionen deklariert und alles weitere für die Datenabfrage gemacht.

Das könnte man sicherlich alles noch schön auslagern in eigene Dateien. Aber ich bin ehrlicherweise auch absolut kein Spezialist für Programmierung in C. Das ist weit außerhalb von meinem täglichen Business.

Durch den Code werden dann auch immer wieder die Daten aus meinen Systemen abgefragt und an der entsprechenden Stelle auf dem Display angezeigt. Je nach System unterscheidet sich da das Intervall für Aktualisierungen. Home Assistant und OpenCode rufe ich zum Beispiel öfter ab als GitHub.

Der Screenshot zeigt einen Code-Editor mit einem offenen Python-Skript, das Konfigurationen für einen Server beinhaltet. Farbcodierte Syntax hebt Programmieranweisungen, Importbefehle und Parameter hervor. Der Fokus liegt auf definierten Variablen wie `API_KEY`, `ENVIRONMENT` und `DATABASE_URL`, die wahrscheinlich zur Steuerung der Serverumgebung und Datenbankverbindungen verwendet werden. Auf der rechten Seite sind zusätzlich Informationen zu Erweiterungen und Benutzereinstellungen sichtbar.

Vorteile des Open Nextion

Durch meine Einleitung in diesen Beitrag wurde ja schon klar, dass es sich hierbei eher um eine Sache für Fortgeschrittene oder sogar Experten handelt. Das Board ist aus meiner Sicht stark, insbesondere da man keinen extra ESP einsetzen muss.

Ich zum Beispiel konnte direkt mit der Programmierung anfangen und relativ zügig mein erstes Projekt umsetzen. Was für mich gut ist, denn einen ESP hätte ich an diesem entscheidenden Punkt sowieso nicht mehr übrig gehabt und ich hätte erst neue Hardware bestellen müssen.

Auch die Möglichkeiten zur Gestaltung sind interessant. Denn auch wenn ich auf einen Terminal-Look setze, kann man auch kleinere Oberflächen bauen, die für Endanwender praktikabel nutzbar sind. Solange man eben die Einschränkungen der Hardware betrachtet und im Hinterkopf behält, dass es sich hierbei nicht um ein Gerät mit großer Grafikleistung handelt. Es ist eher ein spezialisierter Mikrocontroller mit Display als ein kleiner Computer.

So kannst du ziemlich praktisch die Daten aus deinen System anzeigen lassen und dir ein kleines Dashboard für die wichtigsten Informationen bauen. In Anbetracht der Größe sollte man aber nicht von einem vollwertigen Dashboard für das Smart Home ausgehen. Sieh es eher als eine Art kleine Erweiterung anstatt einem großen Display für allerlei Daten.

Besonders angenehm ist dabei außerdem, dass alles komplett lokal ablaufen kann. Hier besteht ohne expliziten Wunsch keine Abhängigkeit ins Internet.

Nachteile des Boards

Das führt mich aber auch schon zum größten Nachteil, den ich vor allem für Einsteiger oder Hobby-Bastler sehe. Denn es ist wirklich nicht in wenigen Schritten getan.

Wenn du also nach einem Projekt suchst, dass du an einem einzigen Abend zwischen Abendessen und Lieblings-Serie abarbeiten kannst, wirst du damit definitiv nicht glücklich werden. Alleine die Installation der notwendigen Software nimmt schon ein paar Minuten in Anspruch und erfordert einige Downloads. Je nach Internetverbindung kann das schon mal einige Zeit in Anspruch nehmen.

Außerdem ist es definitiv nichts für jemanden, der kein Interesse an Programmierung hat. Du findest hier nämlich keinen fertigen Editor, bei dem man die Elemente nur an die richtige Stelle schieben muss. Hier ist wirklich Arbeit mit C und FreeRTOS angesagt. Wenn das nichts für dich ist, dann kann ich dir nicht guten Gewissens zu diesem Board raten. Vielleicht solltest du dann in diesem Fall lieber ein anderes Element für dein Smart Home herauspicken, das du in Betrieb nehmen kannst.

Projektideen zur Umsetzung

Neben meinen Ideen kann man das Display natürlich auch noch für vielerlei anderer Zwecke nutzen, die ziemlich gut auf das Smart Home ausgerichtet sind. Wenn du also Lust zum Basteln hast, dann solltest du jetzt die Ohren spitzen bzw. die Lesebrille gerade rücken.

Kleines Statusdisplay: Vor allem für die wichtigsten Informationen (z. B. Anwesenheit) kann das Display optisch wirklich was her machen. Wie ein Mini-Bilderrahmen für den Flur oder den Eingangsbereich.

Lichtstatus: Ein schneller Überblick über das Licht im Raum gibt dir sofort einen direkten Einblick in dein Smart Home.

Stromverbrauch: Die Anzeige von Erzeugungsdaten und Verbrauchsdaten kann mitunter ein echter Game-Changer sein, wenn es um den vernünftigen Umgang mit Strom geht. Dafür eignet sich das Display hervorragend.

Alarmstatus: Wenn du eine Alarmanlage im Smart Home betreibst, kann dieses Display dir den aktuellen Status anzeigen und dich direkt auf den aktuellsten Stand bringen.

Müllkalender: Schon mal vergessen den Müll rauszubringen? Dann lass dir doch einfach die nächsten Abholtermine anzeigen und du wirst den richtigen Zeitpunkt nicht mehr verpassen.

Mein persönliches Fazit

Das Open Nextion ist eine wirklich coole Sache. Und obwohl es einiges an Arbeit erfordert, kann man wirklich tolle Sachen damit umsetzen. Ich persönlich hatte damit wirklich unfassbar viel Freude. Zwischendrin zwar auch mal so meinen Frust, aber das Ergebnis ist erstaunlich.

Ich habe jetzt auf meinem Schreibtisch ein kleines Display stehen, das per USB-Verbindung zu meiner Docking-Station mit Strom versorgt wird und mir die wichtigsten Informationen aus meinen Systemen anzeigt. Und auch das Entwickler-Herz schlägt höher, wenn ich meine Statistiken zu GitHub sehe. Alleine dafür hat es sich schon gelohnt.

Allerdings ist es gerade in einem vollwertigen Smart Home mit Home Assistant auch gewissen Grenzen unterworfen. Du solltest es keinesfalls als vollwertige Lösung für Visualisierungen betrachten. Dafür reicht schlichtweg der Platz nicht aus. Es ist eher eine nette Ergänzung, die vor allem Spaß bringen kann. Und sicherlich gibt es da draußen viele nützliche Anwendungsfälle. Vor allem solche, die über das reine Anzeigen von irgendwelchen Daten hinausgehen.

Wenn du also ein fertiges Dashboard suchst, nimm ein Tablet. Wenn du ein lokales, nerdiges Mini-Display bauen willst und keine Angst vor Code hast, ist das Open Nextion ein spannendes Bastelprojekt.

Inhaltsverzeichnis
Hat dir der Beitrag gefallen ?

Ein Emoji genügt – oder schreib kurz, was du denkst.

Mehr zum Autor
Bild von Lukas
Ich bin Lukas – Softwareentwickler, Projektmanager und Gründer von hobbyblogging.de, einem der persönlichsten Smart Home Blogs in Deutschland. Mit einem Master in Wirtschaftsinformatik und über 7 Jahren Erfahrung teile ich hier meine Leidenschaft für Automationen, ioBroker, Home Assistant und Co.Mein Smart Home ist kein Showroom – es ist mein echtes Zuhause. Ich teste, dokumentiere und schreibe über das, was wirklich funktioniert – praxisnah, transparent und ehrlich. Besonders im Fokus: die Plattformen ioBroker und Home Assistant. Insbesondere mit letzterer steuere ich mein gesamtes Zuhause.Du suchst smarte Inspiration, Tipps oder eine Anleitung, die dir wirklich hilft? Dann bist du hier genau richtig.
Bild von Lukas
Ich bin Lukas – Softwareentwickler, Projektmanager und Gründer von hobbyblogging.de, einem der persönlichsten Smart Home Blogs in Deutschland. Mit einem Master in Wirtschaftsinformatik und über 7 Jahren Erfahrung teile ich hier meine Leidenschaft für Automationen, ioBroker, Home Assistant und Co.Mein Smart Home ist kein Showroom – es ist mein echtes Zuhause. Ich teste, dokumentiere und schreibe über das, was wirklich funktioniert – praxisnah, transparent und ehrlich. Besonders im Fokus: die Plattformen ioBroker und Home Assistant. Insbesondere mit letzterer steuere ich mein gesamtes Zuhause.Du suchst smarte Inspiration, Tipps oder eine Anleitung, die dir wirklich hilft? Dann bist du hier genau richtig.
Smart Home monthly

Dein Monatsrückblick 🏡

Einmal im Monat erhältst du meine besten Tipps, Automationen und Tests aus der Smart Home Welt.

Plus: Mein nützliches PDF als Willkommensgeschenk 🎁

Keine Produkte gefunden.

Was klappt bei dir - was nicht ?

Teile deinen Weg oder stell deine Frage – ich lese mit und antworte.

0 Kommentare

Schreibe einen Kommentar

Avatar-Platzhalter

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Kurz ehrlich: Warum gehst du gerade?

Hilf mir, die Inhalte für dich besser zu machen.

🎁 Dein Smart Home verdient mehr

Einmal im Monat erhältst du meine besten Tipps, Automationen und Tests aus der Smart Home Welt.

+ Gratis: meine 10 besten Alltagsautomationen als PDF

Kein Spam. Kein Marketing-Blabla.
Sondern: Praxistipps, Setups, Automationen & Tools – aus meinem Technik-Keller direkt zu dir.

Abgewickelt durch Brevo in Europa.

Später weiterlesen 🔍

Ich erinnere dich genau an diese Stelle, wenn du wieder Zeit hast.

Einmalige Erinnerung. Kein Newsletter.