Pixoo-64 Node-RED + MQTT: Bouw slimmere pixelmeldingen

Pixoo-64 Node-RED + MQTT: Bouw slimmere pixelmeldingen

Mijn wasmachine had me technisch gezien laten weten dat hij klaar was. De melding kwam binnen, maar mijn telefoon begroef die onder twee berichten en een agendaherinnering, waarna de natte kleren er nog een uur in bleven liggen. Dat is het kleine, ietwat absurde probleem dat deze opzet oplost. Een Divoom Pixoo-64 kan de paar smart-home-gebeurtenissen die er echt toe doen omzetten in iets wat je vanaf de andere kant van de kamer opvalt.

Eerst één belangrijke afbakening: dit is geen handleiding voor een native MQTT-functie. MQTT is de inbox, niet de driver van het scherm, en de Pixoo-64 is geen native MQTT-eindpunt. Node-RED bepaalt of een gebeurtenis op het scherm thuishoort en zet dat bericht om in een HTTP-verzoek voor de Pixoo-64. Zie Node-RED als de vertaler en het scherm als het heldere kleine bordje aan de deur. Die extra brug is het hele trucje - en de reden dat je het veel slimmer kunt maken dan “elke melding weergeven”.

De video geeft je een goed beeld van de Pixoo-64 als smart-home-eindpunt. Wij kiezen een iets andere aanpak: in plaats van een volledig dashboard te bouwen, maken we een gerichte waarschuwingsketen die stil blijft totdat er iets gebeurt dat het zien waard is.

De brug in drie delen: inbox, vertaler, pixelscherm

De verleiding is groot om meteen knooppunten naar een canvas te slepen. Houd die gedachte nog even vast. Als elk onderdeel één duidelijke taak heeft, blijft de flow over zes maanden nog begrijpelijk. Als elk onderdeel alles probeert te doen, krijg je automatisering die prachtig werkt tot de eerste herstart van de router.

Laag De enige taak Wat het niet moet doen
MQTT-broker Gebeurtenissen ontvangen van sensoren, Home Assistant of andere uitgevers Iets weten over pixels, lettertypen of schermindeling
Node-RED Elke waarschuwing filteren, opmaken, prioriteren en begrenzen Elke sensorupdate zonder beoordeling doorsturen
Pixoo-64 Eén overzichtelijke status tonen op het ledscherm van 64×64 pixels Fungeren als een native MQTT-eindpunt of een volledig dashboard vervangen

Deze scheiding voorkomt ook dat de nieuwe opzet een goede configuratie die je misschien al hebt, in de weg zit. Als je eigenlijk Home Assistant-pagina's, entiteitskaarten en HACS-configuratie wilt rouleren, begin dan met onze handleiding voor het Pixoo-64 Home Assistant-dashboard. Blijf hier als je doel eenvoudiger en duidelijker is: “wanneer deze gebeurtenis plaatsvindt, zet dit bericht dan op het fysieke scherm.”

De kleinst mogelijke bruikbare Node-RED-flow maken

Begin met één topic en één waarschuwing. Ik zou home/laundry/state kiezen, omdat er een duidelijk moment is waarop het scherm nuttig wordt. De eenvoudigste flow ziet er zo uit:

MQTT-in
  → JSON
  → Switch (alleen DONE)
  → RBE (herhalingen negeren)
  → Function (waarschuwing maken)
  → Delay (snelheidsbeperking)
  → HTTP Request (Pixoo-besturingslaag)
  → Debug / Catch

De MQTT-in-node abonneert zich op het topic. JSON zet een payload als tekenreeks om in een object. Switch gooit de statussen weg die je niet nodig hebt. RBE, oftewel ‘report by exception’, laat een waarde alleen door als die verandert. Vervolgens maakt de Function-node één klein, voorspelbaar bericht voor het scherm:

msg.alert = {
  title: "WAS",
  value: "DONE",
  color: "#55E6A5",
  priority: 2,
  ttl: 120
};

msg.method = "POST";
msg.headers = { "Content-Type": "application/json" };
msg.url = "http://PIXOO_IP/post";
msg.payload = {
  Command: "Draw/SendHttpText",
  TextId: 1,
  x: 0,
  y: 24,
  dir: 0,
  font: 2,
  TextWidth: 64,
  speed: 20,
  TextString: msg.alert.title + " " + msg.alert.value,
  color: msg.alert.color,
  align: 1
};

return msg;

Gebruik in de HTTP Request-node de methode en URL die al in het bericht staan en laat een geparseerd JSON-object terugsturen. Een geslaagd Pixoo-verzoek retourneert normaal gesproken een error_code, maar er is een belangrijke kanttekening bij de weergavemodus: scrollende tekst is een overlay en verschijnt mogelijk niet over elke bestaande klok- of galerijweergave. Maak voor een betrouwbaar waarschuwingsscherm eerst een achtergrondframe klaar of laat een Pixoo-helperbibliotheek de buffer-en-verzendstap afhandelen. De bovenstaande code is een nette brug; beschouw die als de payload voor de laatste stap, niet als een garantie dat elke firmware en het huidige kanaal zich hetzelfde gedragen.

Doe een saaie helderheidstest voordat je iets tekent

Stuur {"Command":"Channel/SetBrightness","Brightness":50} naar http://PIXOO_IP/post. Als de helderheid verandert, kan Node-RED het apparaat bereiken en komt je JSON aan. Als dat niet zo is, controleer dan eerst het IP-adres, het VLAN of de firewall. Lettertypen debuggen terwijl de netwerkverbinding niet werkt, is een uitstekende manier om een avond te verspillen.

Als Node-RED-berichten nog steeds ongrijpbaar aanvoelen, is de officiële pagina met Node-RED-concepten de link die ik een vriend zou sturen voordat ik meer Function-code toevoeg. De pagina legt het berichtobject en de gedeelde brokerconfiguratie uit zonder je te begraven onder een enorme cursus.

Drie meldingen die 4.096 pixels waard zijn

Een scherm van 64×64 wordt beter als je er minder van vraagt. Een volledig dashboard probeert een kleine tablet te zijn. Een goede omgevingsmelding geeft je één zelfstandig naamwoord, één status en misschien één kleur. Met deze drie patronen heb je de meeste meldingen die ik zelf op een bureau of keukenmuur zou willen.

1. Deur niet dichtgedaan: hoge prioriteit, gebaseerd op status

Abonneer je op een topic van een contactsensor en toon DEUR OPEN pas nadat de deur bijvoorbeeld twee minuten open is gebleven. Stel de prioriteit in op 3, gebruik een rode of amberkleurige achtergrond en houd de melding zichtbaar totdat de status weer gesloten is. RBE is hier belangrijk: het scherm moet veranderen wanneer de status verandert, niet telkens wanneer de sensor opnieuw ‘open’ meldt.

2. Was klaar: gemiddelde prioriteit, eenmalige gebeurtenis

Dit is een momentopname, geen aanhoudende status. Toon WAS KLAAR gedurende twee minuten en herstel daarna het vorige display. Bewaar deze melding niet op de broker, tenzij je flow ook vastlegt dat deze is afgehandeld. Anders kan Node-RED morgen opnieuw opstarten en trots de was van gisteren aankondigen.

Divoom Pixoo-64 met een weerdashboard op een bureau in een thuiskantoor
Het canvas van 64×64 werkt het best met informatie die je in één oogopslag begrijpt: één pictogram, één getal en één beslissing.

3. Binnenkort regen: lage prioriteit, informatie met vervaldatum

Veranderingen in het weer zijn nuttig, maar niet dringend. Publiceer iets als REGEN OVER 20 MIN, geef het prioriteit 1 en stel een TTL in die overeenkomt met de weersverwachting. Komt er een deurmelding binnen, dan maakt de regenmelding plaats. Verloopt de weersverwachting voordat het display weer vrij is, dan laat Node-RED de melding vallen in plaats van verouderd advies te tonen.

Home Assistant kan een van je publishers zijn, maar hoeft niet het display aan te sturen. De officiële MQTT-pagina is vooral handig als je moet kiezen tussen statustopics, eenmalige publicaties en retained messages. De praktische regel is eenvoudig: bewaar de huidige waarheid, niet een oude gebeurtenis.

Voorkom dat je display een eindeloze stroom meldingen wordt

De eerste versie van een automatisering laat meestal zien dat iets kan gebeuren. De tweede versie bepaalt of je dat volgende week nog steeds wilt. Vier kleine aanpassingen maken het verschil.

  1. Voorkom dubbele berichten met RBE. Als de temperatuur 22 °C blijft, hoeft het scherm niet nóg een 22 °C te tonen. Laat gewijzigde waarden door en negeer herhalingen.
  2. Voeg een snelheidslimiet toe. Plaats vóór het HTTP-verzoek een Delay-node en beperk updates tot een tempo dat het scherm goed aankan. Een sensor die elke seconde wordt bijgewerkt, hoort van de Pixoo geen netwerkmetronoom te maken.
  3. Gebruik prioriteit en TTL samen. Prioriteit bepaalt wat als eerste komt; TTL bepaalt of een wachtend bericht nog steeds het tonen waard is.
  4. Zorg dat fouten ergens terechtkunnen. Sluit Catch- en Status-nodes aan. Probeer een mislukte HTTP-aanroep één keer opnieuw, leg de fout vast en schakel daarna over op de telefoonmelding die je al vertrouwt. Eindeloos opnieuw proberen is geen veerkracht; het is een lus vol zelfvertrouwen.

Zorg dat de Node-RED-host en de Pixoo-64 op netwerksegmenten zitten die elkaar kunnen bereiken, reserveer het IP-adres van het scherm in je router en stel het lokale HTTP-eindpunt nooit rechtstreeks bloot aan het openbare internet. Als je IoT-apparaten op een VLAN isoleert, sta dan alleen het specifieke Node-RED-naar-Pixoo-verkeer toe dat je nodig hebt.

Als je uitgebreidere pictogrammen, een voorbereide achtergrond of een simulator wilt voordat je het echte scherm aanraakt, is deze Pixoo-bibliotheek het volgende konijnenhol dat de moeite waard is. De tekenhulpmiddelen maken ook de belangrijkste praktische les duidelijk: bouw het beeld en verstuur het vervolgens in een verstandig tempo.

Voor wie is deze opstelling bedoeld - en wie kan hem beter overslaan?

Deze opstelling is bedoeld voor iemand die al een broker of een Node-RED-canvas heeft en het leuk vindt om van een handig idee een klein systeem te maken dat je blijft onderhouden. De Pixoo-64 geeft dat systeem veel meer uitstraling dan nog een tabblad in je dashboard: 4.096 leds, genoeg ruimte voor een woord, een getal en een klein pictogram, en de mogelijkheid om hem op een bureau te zetten of aan de muur te hangen.

Sla dit over als je een kant-en-klaar, officieel ondersteund MQTT-apparaat wilt dat met één tik werkt. Sla dit over als je melding alinea's, camerabeelden of historische grafieken nodig heeft. Sla dit ook over als een IP-adres reserveren en een mislukte flow controleren klinkt als onbetaald huiswerk. Een telefoon of wandtablet is misschien minder charmant, maar vraagt ook minder van je.

Als het knutselen deel uitmaakt van het plezier, gaat onze beginnershandleiding voor de Pixoo-64-API dieper in op de directe bedieningsroute. Divoom bundelt ook de officiële producthandleidingen op één plek. Dat zijn betere volgende stappen dan nog eens 80 regels toevoegen aan een flow die je nog niet nodig hebt.

Divoom Pixoo-64 ledscherm voor pixelkunst, 64x64

Divoom Pixoo-64Ⅱ

Een Wi-Fi-pixelscherm van 64×64 voor op je bureau of aan de muur. Het wordt een slimthuis-meldingsscherm als je bereid bent de brug met Node-RED en lokale bediening te verzorgen.

Pixoo-64 bekijken

Nog niet klaar om het te automatiseren? De collectie pixeldisplays is een rustigere manier om formaten te vergelijken voordat je aan een ontwikkelaarsproject begint.

Veelgestelde vragen

Ondersteunt Pixoo-64 MQTT standaard?

Deze handleiding behandelt Pixoo-64 niet als een native MQTT-eindpunt. Een MQTT-broker ontvangt de gebeurtenis, Node-RED abonneert zich erop en filtert de melding, waarna Node-RED de uiteindelijke opdracht verstuurt via een lokale HTTP-bedieningsroute van Pixoo of een compatibele hulplibrary.

Kan Home Assistant de meldingen publiceren?

Ja. Home Assistant kan een korte JSON-payload naar een MQTT-topic publiceren, waarop Node-RED zich kan abonneren. Home Assistant is echter optioneel; elke sensor, elk script of elke service die naar je broker publiceert, kan dezelfde flow starten.

Wat gebeurt er als Pixoo-64 offline is?

De HTTP-aanvraag moet bij een fout uitkomen op een Catch- of Status-pad. Probeer het één keer opnieuw als dat bij de melding past en gebruik daarna een terugvaloptie, zoals een telefoonmelding. Voeg een TTL toe, zodat de flow geen verlopen bericht toont wanneer het display weer online komt.

Moet elke melding een GIF gebruiken?

Nee. Korte tekst, een eenvoudig pictogram en één achtergrondkleur zijn sneller te begrijpen en minder belastend voor de updateverbinding. Bewaar animaties voor de zeldzame melding die echt baat heeft bij beweging en beperk de frequentie van elke pushmelding.

Geef één melding een vaste plek op het scherm

Begin met de gebeurtenis die je vorige week hebt gemist, niet met de twintig gebeurtenissen die je systeem technisch gezien kan publiceren. Geef die een duidelijk onderwerp, één prioriteit, één vervaltijd en één terugvaloptie. Laat die ene melding zeven dagen draaien. Kijk je nog steeds even naar de Pixoo-64 nadat de nieuwigheid eraf is, dan verdient hij een tweede melding. Zo wordt een pixeldisplay onderdeel van de kamer in plaats van nog een dashboard waar je niet meer naar kijkt.

Pixelkunst voor kerst vinden in de Divoom-app App Guide Pixelkunst voor kerst vinden in de Divoom-app Find Christmas trees, Santa, snowmen, and winter pixel art in the Divoom app. Learn wha... Je eerste Divoom gekocht op Black Friday? Begin met deze appfuncties App Guide Je eerste Divoom gekocht op Black Friday? Begin met deze appfuncties Make your first Divoom yours: apply community artwork, create an animation, choose a cl... Foto's lokaal opslaan op Pixel-schermen: een privacyvriendelijke handleiding App Guide Foto's lokaal opslaan op Pixel-schermen: een privacyvriendelijke handleiding Learn how to store and display photos on Divoom pixel displays without cloud sync. Time...
Terug naar de blog
Laat een reactie achter

Houd er rekening mee dat opmerkingen goedgekeurd moeten worden voordat ze worden gepubliceerd.