Samengevat
De Button+ V2 is een modulair smarthomewandpaneel dat vooral mikt op smarthome-eigenaren die maximale controle willen over hun bediening. Dankzij de modulaire opbouw met een display en configureerbare knoppenbalken kun je het paneel fysiek en functioneel aanpassen aan je eigen wensen. De hardware voelt degelijk aan en de nieuwe matte glazen afwerking voorkomt vingerafdrukken en krassen. Integratie via MQTT of ESPHome maakt het breed inzetbaar binnen platforms zoals Home Assistant, maar vraagt wel technische kennis en tijd om alles goed in te richten. De configuratie is complex: veel functies vereisen handmatig instelwerk, automatiseringen en soms aanpassingen aan SVG‑iconen. Voor enthousiaste smarthomebouwers is dat juist onderdeel van de charme, maar voor minder technische gebruikers kan het snel omslachtig worden.
Pluspunten
Minpunten
Bediening voor je smarthome komt in vele vormen. De keuze loopt uiteen van een simpele knop of schakelaar, een uitgebreid touchdisplay of app tot spraakbediening. Wat we altijd belangrijk vinden, is dat de overstap naar een slim huis niet ten koste gaat van de bedieningsmogelijkheden voor oningewijde huisgenoten of gasten.
Jaren geleden liep Ronald Wijnsema, wijnsema op Tweakers, tegen dit probleem aan bij de opbouw van zijn smarthome. Simpele schakelaars voldeden niet, maar een paneel met tien ongemarkeerde knopjes maakte de bediening weliswaar veelzijdiger, maar niet vriendelijker en duidelijker. In plaats van je te ergeren kun je er ook wat aan doen, wat in dit geval resulteerde in de Button+.
Wat is de Button+?
De Button+ is een modulair wandpaneel, bedoeld om je smarthomeapparatuur mee te bedienen. De Button+ stel je zelf samen, waarbij je de keuze hebt uit een grotere displaymodule en losse knoppenbalken die voorzien zijn van ledverlichting en kleinere ingebouwde displays. De knoppenbalken en het hoofddisplay zijn aangesloten op een basis-pcb die plaats biedt voor maximaal vier modules. Daarvoor gebruiken de modules allemaal dezelfde connector, waardoor je ze vrij kunt indelen. Wil je een knoppenbalk boven en onder het hoofddisplay, dan kan dat. Wil je wel of geen display, één, drie of geen knoppenbalken? Dat is allemaal mogelijk.
De Button+ is al enige tijd verkrijgbaar en heeft ook een eigen Tweakers-topic bomvol ervaringen en voorbeelden van hoe de Button+ wordt ingezet. Omdat perfectie enkel benaderd kan worden, maar vrijwel nooit wordt bereikt, is het hardwareontwerp van de Button+ opnieuw onder de loep genomen, wat heeft geleid tot de Button+ V2.
De verwachting is dat de eerste leveringen rond de publicatie van dit artikel zullen plaatsvinden, maar wij kregen al een previewexemplaar opgestuurd. Ik heb mijn eigen Sonoff NSPanel van de wand gehaald om deze tijdelijk te vervangen door de Button+ V2. In dit artikel bekijken we de Button+ V2 en de mogelijkheden ervan.
Integratie
Via het MQTT-protocol kan de Button+ worden gekoppeld aan elk smarthomeplatform met voldoende mogelijkheden. De structuur van de firmware biedt veel vrijheid om het paneel volledig naar je eigen hand te zetten, maar daarvoor bestaat inmiddels ook een alternatieve optie: forumleden DiXY en balk gingen aan de slag met de Button+ en kwamen met ESPHome-firmware die geen MQTT meer vereist, maar de hardware van de Button+ via de ESPHome-integratie laat communiceren met Home Assistant.
Hardware
De ruggengraat van de Button+ is de basismodule. Dit is een combinatie van het frame waarop de knoppen en het display worden gemonteerd en een basis-pcb die alle componenten aan elkaar koppelt. De basismodule bevat een ESP32 met wifi en Thread-ondersteuning en is uitgerust met een lichtsensor en temperatuursensor met een praktische nauwkeurigheid van 0,2 graden Celsius. Naast de aansluitingen voor de displays en balken zijn meer connectors aangebracht op de pcb. De achterzijde bevat de stroomaansluiting waarbij gekozen kan worden om de Button+ te voeden met exact 3,3V of een voeding binnen het bereik van 4,5 tot 28V. Daarnaast is een USB-C-aansluiting aanwezig, is er een uart-aansluiting en zijn er connectors voor ethernet (met Power over Ethernet-ondersteuning) en Stemma QT. De displays in de Button+ V2 zijn ips-tft-paneeltjes.
Het frame van de basismodule schroeft vast op een metalen basisplaat die je kunt monteren op een inbouwdoos of strak tegen een wand kunt schroeven waarachter je de bedrading verbergt, bijvoorbeeld op de plaats van een thermostaat.
Onderaan het frame vind je twee haakjes die je uit kunt trekken; hiermee ontgrendel je het mechanisme dat de balkjes en het grote display vasthoudt.
De basis heeft vier connectors voor balken en het display. Het display zelf heeft twee connectors. Je kunt deze op een uiteinde van de basis prikken en uit laten steken, zodat er nog drie connectors beschikbaar zijn voor knoppenbalken. Je kunt het display door de tweede connector ook zo vastklikken dat twee connectors van de basisplaat worden overlapt. Dan blijft één aansluiting over voor een knoppenbalk, wat de Button+ heel compact maakt. De grootte is dan ongeveer vergelijkbaar met een gemiddelde lichtschakelaar.
Een van de veranderingen die direct opvallen aan het display en de knoppenbalkjes, is de matte afwerking van de voorzijde. De eerste Button+ heeft aan de voorzijde polycarbonaat met een glanzende afwerking. Dat bleek in de praktijk erg kras- en vingerafdrukgevoelig.
Button+-knoppenbalkjes (links) en achterzijde Display
De nieuwe voorzijde is van gematteerd glas. Dit geeft de Button+ een luxere uitstraling, en – wat misschien nog belangrijker is – er komen minder snel vette vingers op en het oppervlak is ook stukken minder gevoelig voor krassen. De bouwkwaliteit van het geheel voelt erg stabiel aan en vertoont geen speling op plaatsen waar je dit niet zou willen.
Hoewel ik geen praktijkervaring heb met de eerdere variant, vind ik de knoppenbalken van de Button+ V2 prettig klikken met goede, hoorbare en voelbare feedback.
Installatie en webinterface
De Button+ heeft een USB-aansluiting op de achterzijde, waarmee je het paneel makkelijk van voeding kunt voorzien in de instelfase, zonder de labvoeding onder het stof vandaan te hoeven halen. De eerste fase van het instellen is het instellen van het wifinetwerk. Dit werkt door te verbinden met het netwerk van het apparaat, waarna je in een webpagina de wifigegevens invoert. De Button+ geeft op het scherm aan met welk netwerk verbonden moet worden. Na het verbinden toont het display het IP-adres waarop je de webinterface kunt bereiken voor verdere instellingen.
De webinterface zal in de instelfase van het apparaat een vertrouwde omgeving worden voor de gebruiker. Je kunt hier per knop en displaysegment instellen wat er moet worden weergegeven. Sommige basisinstellingen, zoals de indeling van het scherm, kun je alleen in de webinterface doen, maar voor veel instellingen en elementen geldt dat ze ook een MQTT-topic hebben. Zo kun je de titel, de inhoud, het pictogram, de ledverlichting en de klikactie van een knop lokaal instellen, maar ook volledig beheren vanuit je smarthomeplatform.
De webinterface van de Button+
De instelmogelijkheden zijn zeer uitgebreid en vaak diepgaand, en die instellingen moeten allemaal een plek krijgen. De indeling van de webinterface is vrij logisch, maar het aantal instellingen per sectie past vaak niet op het scherm, waardoor je veel scrollt. Het helpt dat ongebruikte secties inklappen.
Veranderingen in de webinterface worden pas toegepast als je ze opslaat en de Button+ opnieuw opstart. Om te voorkomen dat dat vaak moet gebeuren, toont de webinterface een preview van de schermindeling van de Button+.
SVG-iconen
De Button+ kan afbeeldingen weergeven, maar alleen in SVG-formaat. Je kunt die in SVG-XML naar de Button+ sturen via MQTT of in de webinterface in een tekstveld plakken. De button.plus-website levert wat voorbeelden, maar je zult al snel naar publieke repository's grijpen voor dat ene perfecte icoontje. Je loopt er dan tegenaan dat de Button+ zich kan verslikken in SVG-bestanden die te uitgebreid zijn of te veel exotische syntaxis bevatten.
Er zijn nu eenmaal beperkingen aan de verwerkingskracht van een ESP32-microcontroller. Toch is daar, eventueel geholpen door een llm, vaak een mouw aan te passen. De afbeeldingen die in dit artikel te zien zijn, zijn vrijwel allemaal gegenereerd of aangepast door een llm om de juiste kleur en syntaxis te verkrijgen. Val niet in de valkuil om te denken dat de pictogrammen nu met een druk op de knop kunnen veranderen van kleur; elke aanpassing vereist graven in SVG-syntaxis.
Gebruik met Home Assistant
Ik test het product met Home Assistant. Het smarthomeplatform dat je gebruikt kleurt voor een groot deel de ervaring, vooral door hoe MQTT is geïntegreerd in het platform. Met Home Assistant werkt dat grotendeels prima. Wel heeft MQTT, zoals veel protocollen, wat unieke eigenschappen – of eigenaardigheden, afhankelijk van hoe je ze ervaart – die je moet doorzien om er goede resultaten mee te halen.
Om goed vertrouwd te raken met alle aspecten van het paneel heb ik de route gekozen om het paneel volledig via MQTT te bedienen vanuit Home Assistant, zonder de MQTT Discovery-functie te gebruiken. Daardoor moest ik soms dieper in de code en uitgebreide automatiseringen duiken dan anders nodig was geweest.
Wellicht is het ook om die reden dat ik best wat plezier haalde uit het instellen, personaliseren en verfijnen van het wandpaneeltje. Hoewel niet alles direct werkt en er best een zucht en vloek zal vallen, komt dat vaak door eigen dommigheid.
Sommige ideeën bleken wel beperkt of onmogelijk om uit te werken; soms kwam dat door praktische beperkingen, soms doordat dingen te bewerkelijk werden. Een voorbeeld is het uitwerken van een complete menustructuur met meerdere pagina's. Om nog toe te komen aan het schrijven van een review bleek die klus veel te lijvig.
Een mooi voorbeeld van hoe een simpele wens ingewikkeld kan worden, is het weergeven van tijd op het paneel. Aan de Button+-zijde is het instellen zo gebeurd: in de webinterface van de Button+ reserveer je op het display een segment en geef je dit de juiste positie, het juiste formaat en de juiste lettergrootte. Je kunt daarna een MQTT-topic aangeven waarvan de waardes moeten worden weergegeven. Andersom kan ook: bijna elk onderdeel van de Button+ heeft al een topic en je platform kan dat gebruiken om er informatie naartoe te sturen.
Automatiseringen om displays en leds aan te sturen
Home Assistant biedt standaard geen topic met de tijd en datum via MQTT. Je kunt dat wel zelf opzetten met een automatisering die de tijd naar het juiste topic publiceert.
Dat vereist een template dat de uitvoer van de systeemtijd van JJJJ-MM-DD UU:MM:SS omzet naar UU:MM. De automatisering trigger je elke minuut, 30 seconden of vaker, afhankelijk van hoe nauwkeurig je wilt dat het paneel de tijd weergeeft.
Hier duikt direct een nadeel op, want als dat minder dan een seconde is, betekent dat veel spam in de logboeken, op je MQTT-server en op je wifinetwerk. Doe je het te weinig, dan loopt je klok niet altijd op de minuut nauwkeurig.
Personalisatie en automatiseringen
Andere spontane ingevingen waren met wat Home Assistant-knutselwerk wel te koppelen. De helderheid van de verlichting van het paneel draait in mijn testopstelling nu bijvoorbeeld mee met de Adaptive Lighting-integratie. Een automatisering gebruikt de globale dimwaarde van deze integratie. Die wordt met een stapel formules naar verschillende waarden uitgesplitst en aangepast naar een curve die bij de onderdelen van de Button+ past. De gepersonaliseerde dimwaarden worden vervolgens per onderdeel naar het juiste MQTT-topic gestuurd.
Als mijn smartwatch detecteert dat ik ga slapen, doen alle lampjes en displays in het paneel dat ook en schakelen ze uit. Je kunt het idioterie vinden, maar ik geniet van dat soort knutselwerk en de Button+ faciliteert dat in overvloed. In een paar dagen was mijn MQTT-kennis weer vers, heb ik wat geleerd over SVG-syntaxis, heb ik werkelijke gedrochten van Home Assistant-automatiseringen gebouwd en ben ik daarbij lekker vaak geconfronteerd met de beperkte verwerkingscapaciteit van mijn brein en vingers ten opzichte van een llm.
De indeling en het design van de Button+ is aan te passen (maar dat kost ongeveer 6 minuten).
Wellicht kan deze oplossing nog verfijnder worden, bijvoorbeeld door de operaties op de achtergrond te laten draaien in een script dat continu actief blijft zolang het paneel online is, maar de tijd die ik aan een review kan besteden is ruim, maar niet oneindig.
De combinatie van een uitgebreid smarthomeplatform en dit paneel geeft je veel verschillende manieren om een 'simpele' taak als tijdsweergave voor elkaar te krijgen. Voor een casual gebruiker kan dat de hel op aarde zijn; voor een tweaker zit juist in het verfijnen daarvan vaak de meerwaarde die een product biedt.
Verbeterpunten
Is de Button+ V2 dan nu perfect? Die vraag kan ik ronduit met 'nee' beantwoorden. Hoewel er zeker geen sprake is van een mank product, valt er duidelijk nog best wat bij te schaven. Technisch onderlegde smarthomefans en installateurs met MQTT-kennis zullen dit paneel uiteindelijk wel temmen.
De backlightfunctie is nieuw op de V2 en hier is nog wat werk aan de winkel. De backlight verlicht de muur asymmetrisch, hoewel dat ook een bepaalde charme heeft. De regenboogeffecten aan de rand van de backlight, die zichtbaar worden bij het weergeven van mengkleuren bij hoge helderheid, zijn dan weer minder charmant, maar daarvoor is een diffuser in ontwikkeling. Ook de aansturing van het backlight is nog niet volledig geïmplementeerd in de firmware met alle mogelijkheden die we zien bij de andere leds. De ontwerper is continu bezig met kleinere en grotere aanpassingen en geeft regelmatig updates over de ontwikkeling van de hardware en software in het blog op de website. Uitgebreidere backlightfuncties zullen dan ook ongetwijfeld op termijn worden toegevoegd, alleen zal dat geduld vereisen aangezien de kar door één man wordt getrokken.
Er is genoeg gekkigheid te verzinnen om aan dit paneel toe te voegen, zoals ondersteuning voor animaties op het scherm en in de verlichting (pulseren), vierzijdige Ambilight en meer onboardsensoren voor bijvoorbeeld luchtvochtigheid, CO2 en PM2,5. Wat ik persoonlijk miste, was een simpel speakertje of buzzer. Dat zou ik handig vinden om de deurbel of wasmachinenotificatie wat kracht bij te zetten.
Conclusie
Het hardwareontwerp van de Button+ staat vast; dat vind je mooi of niet. Het uiterlijk en de functionaliteit worden voornamelijk bepaald door je eigen wensen, inzet, inventiviteit en creativiteit. Als dat goed slaagt, mag je een compliment van een huisgenoot of buitenstaander over het paneel ook deels zelf incasseren voor al het instelwerk dat het vergt om het goed te laten ogen en functioneren. Dat MQTT de communicatiebasis vormt van het apparaat is ook iets wat voor de een een zegen is en voor de ander iets om 'mee te dealen'.
De Button+ is open hardware waar je je als tweaker enorm op uit kunt leven. Het is duidelijk dat de ontwikkeling zorgvuldig tot stand komt en je kunt dit ook op de voet volgen in de blog op button.plus. De Button+ is relatief vriendelijk geprijsd. Voor zo'n 90 euro krijg je de basis met een display en knoppenbalk thuisgestuurd. Een fullstack Button+ met voeding, display en drie knoppenbalken kost zo'n 135 euro. Wat niet te koop is, is de dosis doorzettingsvermogen die nodig is om de Button+ helemaal naar je eigen hand te zetten; beschik je daarover, dan is de lol van het configureren onbetaalbaar en betaalt de aanschafprijs zich al snel terug in knutselplezier.
Redactie: Olaf Weijers • Eindredactie: Monique van den Boomen
:strip_exif()/i/2008086600.jpeg?f=imagenormal)
:strip_exif()/i/2008086610.jpeg?f=imagemedium)
:strip_exif()/i/2008086612.jpeg?f=imagemedium)
:strip_exif()/i/2008086788.jpeg?f=imagemedium)
:strip_exif()/i/2008086790.jpeg?f=imagemedium)
/i/2008086746.png?f=imagemedium)
/i/2008086748.png?f=imagemedium)
/i/2008086738.png?f=imagemedium)
/i/2008086736.png?f=imagemedium)