ID.nl logo
Maak een smarthome-dashboard met UIFlow
Huis

Maak een smarthome-dashboard met UIFlow

M5Stack ontwikkelt ESP32-microcontrollerbordjes met behuizing en scherm die je zo in je woonkamer zou kunnen zetten. Het zijn de ideale producten om een dashboard voor je smarthome van te maken. Met UIFlow is dat ook vrij eenvoudig te programmeren, op een grafische manier. Zo hoef je geen kaas gegeten te hebben van programmeercode.

UIFlow is een grafische ontwikkelomgeving voor de producten van M5Stack, ESP32-microcontrollerbordjes met behuizing en scherm. Met UIFlow kun je op een visuele manier een programma opbouwen door blokjes te verslepen, zonder dat je een letter programmeercode hoeft te schrijven. Ook de grafische interface op het scherm kun je zo eenvoudig met drag-and-drop instellen. Op deze manier maken we in deze masterclass een dashboard voor je smarthome.

Hardwarekeuze

UIFlow ondersteunt alleen de hardware van M5Stack, maar gen willekeurig ESP32-microcontrollerbordjes. Het voordeel is dat de drivers van hun eigen producten allemaal ingebouwd zijn. Voor onze toepassing van een smarthome-dashboard kies je een van de M5Stack-producten met ingebouwd scherm.

Ga je voor een klassiek tft-scherm, dan kom je uit bij de M5Stack Core2 of de voorganger M5Stack Core. De Core2 heeft een aanraakscherm, zodat je je slimme producten ook eenvoudig kunt bedienen via het scherm. De Core heeft geen aanraakscherm, maar wel drie fysieke knoppen onder het scherm, waarmee je ook acties in je smarthome kunt aansturen.

Gaat je voorkeur uit naar een e-ink-scherm, dan heeft M5Stack de Core Ink (1,54 inch) en de M5Paper (4,7 inch). Dit laatste product heeft een aanraakscherm met een hoge resolutie van 960 bij 540 pixels, terwijl de Core Ink aan te sturen is via een knop aan de zijkant. Beide e-ink-apparaten zijn voorzien van een batterij en een magneet. Daardoor kun je ze eenvoudig tegen je koelkast of een ander metalen voorwerp bevestigen.

De M5Stack Core Ink is het ideale apparaatje voor een smarthome-dashboard.

UIFlow-firmware installeren

We gaan aan de slag met de Core Ink om de binnen- en buitentemperatuur van ons huis op het e-paperscherm te tonen. Die lezen we via MQTT in. Onder Windows en macOS moet je eerst nog een driver downloaden voor de USB-naar-UART-chip van het apparaatje. Afhankelijk van het model is dat de CP210x of de CH910x. De drivers zijn ook in de downloadsectie van de website van M5Stack te vinden. De Linux-kernel heeft die drivers al ingebouwd.

Na de installatie van de driver (voor de Core Ink is dat de CP2104) heb je ook nog de software nodig om de UIFlow-firmware op je apparaatje te installeren. Dat is M5Burner, en ook deze software vind je op de downloadpagina van M5Stack, zowel voor Windows als macOS en Linux. In M5Burner kies je links je apparaat en rechts klik je bij UIFlow op Download.

Verbind nu je Core Ink via de usb-kabel met je computer en klik op Burn om de firmware naar je apparaat te schrijven. In het volgende venster vul je de SSID en het wachtwoord in van het wifi-netwerk waarmee je het apparaat wilt verbinden, en klik je op Next. Daarna kies je de juiste seriële poort en snelheid, en klik je op Start.

Download de seriële drivers en M5Burner van de website van M5Stack.

UIFlow verkennen

Wanneer de firmware op je apparaatje staat, verbindt het met je wifi-netwerk en toont het een API-sleutel. Bezoek nu de website van UIFlow, vul daar de API-sleutel van je apparaat in en klik op het model Core Ink. Bevestig met OK. Daarna krijg je links een voorstelling van je Core Ink te zien, in het midden een balk met blokjes in allerlei categorieën, en rechts je ‘code’ in Blockly, die initieel alleen uit een blokje Setup bestaat.

Als eerste test kun je een tekst op het scherm van je Core Ink tonen. Sleep uit de zijbalk helemaal links een Label naar het midden van het scherm van je Core Ink. Klik in het midden op UI, op Label en dan op Label label0 show "Hello M5". Dat blokje verschijnt dan op het canvas rechts. Klik het vast onder het blokje Setup. Klik dan onder UI op Screen, vervolgens op Set screen show en klik dit vast onder het vorige blokje. Klik dan helemaal onderaan op Run. Je code wordt nu op de Core Ink uitgevoerd.

En als je op Download klikt, wordt de code definitief als firmware op het bordje geschreven, zodat die na een herstart ook nog blijft draaien. Om je code dan te laten starten in plaats van de UIFlow-programmeermodus, moet je eerst in M5Burner bij UIFlow op Configurate klikken, je poort kiezen en dan bij Start Mode voor App Mode kiezen en op Save klikken. Wil je daarna je apparaatje weer programmeren, zet dit dan terug op Internet Mode.

Toon een tekst op het scherm met ‘programmeercode’ die je gewoon als LEGO-blokjes bij elkaar klikt.

Verbinden met MQTT

Om van de Core Ink een dashboard voor je smarthome te maken, hebben we een manier nodig om aan de data van bijvoorbeeld sensoren te komen. Dat doen we met MQTT. We gaan er hier vanuit dat je al een MQTT-broker zoals Mosquitto hebt draaien op een Raspberry Pi, bijvoorbeeld als add-on in Home Assistant. Houd de gegevens van je MQTT-broker bij de hand.

Klik in UIFlow op Advanced / MQTT en dan op het blok dat begint met set client id. Vul een unieke client ID in en dan de gegevens voor de server, zoals de hostname, het poortnummer, de gebruikersnaam en het wachtwoord. Verwijder het blokje van het label door erop te klikken en op Delete te drukken. Klik het MQTT-blok dan onder de Setup vast, voeg daaronder nog een blokje mqtt start toe en daaronder Set screen show. Als je deze code op je Core Ink draait, zou je in de logs van Mosquitto iets moeten zien als:

"New client connected from 192.168.0.215:58048 as Core Ink (p2, c1, k300, u'home')."

MQTT-onderwerp

We willen nu dat de Core Ink een sensorwaarde toont die binnenkomt op een specifiek MQTT-onderwerp. Dat doe je door een blokje Advanced / MQTT / mqtt subscribe toe te voegen. Dit klik je niet aan de rest van je blokjes vast, maar staat los daarvan. Vul het MQTT-onderwerp tussen de aanhalingstekens in.

Binnen dit blokje vind je de gegevens die op het gegeven MQTT-onderwerp worden ontvangen in de variabele topic_data. We gaan die waarde eerst in een variabele steken. Klik op Variables / Create variable, noem die bijvoorbeeld buitentemperatuur en klik op OK. Sleep Set buitentemperatuur to in het MQTT-blokje en plak daarachter het blokje Advanced / MQTT / get topic_data.

Temperatuur tonen

Dan rest ons nu nog om de temperatuur te tonen in een label. Omdat we met een e-ink-scherm werken mogen we het scherm niet te snel na elkaar verversen. Dat is de reden waarom we niet in het blok mqtt subscribe onmiddellijk de temperatuur op het scherm tonen, want sommige sensoren sturen elke seconde een nieuwe waarde via MQTT.

Daarom maken we een lus aan die elke minuut het label aanpast. Sleep de lus uit Event / Loop achter mqtt start en verwijder het blokje Set screen show dat er eerst stond. Voeg in de lus het blokje UI / Label / Label show toe. Vervang het blokje met de standaardtekst "Hello M5" door het blokje Variables / buitentemperatuur. Voeg dan het blokje Screen / Set screen show onder het label toe en daaronder Timer / Wait 1 s. Vervang de 1 door 60 voor een update elke minuut.

Update het scherm elke minuut met de buitentemperatuur.

Meerdere interface-elementen

We zijn begonnen met één label, maar we willen uiteraard meerdere sensorwaardes tonen. Gelukkig kun je de interface eenvoudig uitbreiden. Sleep uit de linkerzijbalk een Title, drie keer een Label en één keer een Line naar het scherm van de Core Ink. Je hebt nu vier labels: twee voor sensorwaardes en twee voor een begeleidende tekst. Met de lijn delen we het scherm op in twee vakken.

Sleep naar elke hoek van het scherm (linksboven, rechtsboven, linksonder en rechtsonder) een label. De exacte locatie pas je dadelijk aan. Klik dan op de lijn. Vul achtereenvolgens voor X1, Y1, X2 en Y2 de coördinaten 0, 110, 200 en 110 in. Dat levert een horizontale lijn op die ongeveer het midden van het scherm van 200 bij 200 pixels doorkruist. Klik op het kruisje om de eigenschappen van de lijn te verlaten.

Positioneer de lijn in het midden van het scherm.

Tekst aanpassen

Klik op elk van de labels om hun eigenschappen aan te passen. Het label linksboven geef je de tekst Buiten en lettertype DejaVuSans 18. Het label rechtsboven geef je hetzelfde lettertype. Het label linksonder geef je de tekst Binnen en ook hetzelfde lettertype. Dit lettertype ken je ook aan het label rechtsonder toe. De tekst van de labels rechtsboven en rechtsonder maakt niet uit: die gaat ons programma vervangen door de sensorwaardes. Ook bij de titel laten we de tekst door het programma aanpassen.

Laten we eerst de tekst van de titel aanpassen naar de huidige tijd. Daarvoor ga je naar Advanced / NTP en sleep je het blokje getiteld Init ntptime with host "cn.pool.ntp.org" and timezone 8 naar je canvas. Plaats het tussen Setup en de initialisatie van MQTT. Verander de host naar een server die zich dichterbij bevindt, zoals nl.pool.ntp.org, en verander de tijdzone naar 2. Sleep dan uit UI / Title het blokje Title title0 show "Title" en vervang de aanduiding "Title" door het blokje Get date format with "-" and time format with ":" uit Advanced / NTP. Sleep dan dit titelblokje binnen je lus, vóór het blokje dat je label toont.

Met een titel, labels en lijn bouw je eenvoudig je gebruikersinterface op.

JSON inlezen

Als je nu nog de buitentemperatuur op het juiste label toont en deze code op je Core Ink draait, krijg je in de titelbalk de huidige datum en tijd te zien, en in het bovenste gedeelte de buitentemperatuur. Nu kunnen we in het onderste gedeelte nog een andere temperatuur tonen als we daarvoor een extra variabele aanmaken die we in een ander mqtt-subscribe-blok een waarde geven. Dat blok kan ook complexer zijn, bijvoorbeeld als de MQTT-boodschap in JSON-formaat is (zie ook het kader ‘JSON’).

Maak daarvoor twee variabelen aan: één om de JSON-string in op te slaan (binnenjson), en één om de binnentemperatuur in op te slaan (binnentemperatuur). Voeg dan in een nieuw blok mqtt subscribe met het juiste MQTT-onderwerp het blok Variables / Set binnenjson to toe en vul het ontbrekende slot met JSON / loads json. In het ontbrekende slot van dit laatste plaats je Advanced / MQTT / get topic_data. Op deze manier lees je de MQTT-boodschap als JSON-structuur in en zet je die om naar een ‘map’ die je aan de variabele binnenjson toekent.

Waardes uit JSON halen

Voeg na dit blok dat de JSON-structuur inleest een blok Variables / set binnentemperatuur to toe en vul het ontbrekende slot met Map / get key … in map …. Na get key voeg je Text / " " toe en daar vul je de sleutel in waarin de temperatuurwaarde zit, zoals tempc. Na in map voeg je Variables / binnenjson toe.

Deze opdracht haalt dus de waarde van de sleutel tempc uit de map die de JSON-structuur bevat en kent deze toe aan de variabele met de binnentemperatuur. Als je nu in je lus ook de binnentemperatuur aan het juiste label toekent, zal je apparaatje elke minuut niet alleen de buitentemperatuur maar ook de binnentemperatuur updaten. Vergeet overigens niet je code op te slaan met het icoontje bovenaan rechts, zodat je hem later opnieuw kunt inladen en aanpassen.

Onze volledige UIFlow-code bestaat uit deze blokken.

JSON

JSON (JavaScript Object Notation) is een dataformaat dat zowel voor software als voor mensen eenvoudig is om aan te maken en te lezen. Er zijn twee basiscomponenten in JSON. De eerste is de collectie van paren naam/waarde. Zo’n JSON-code ziet er bijvoorbeeld als volgt uit: {"id":"16:2A:04:CE:19:72","rssi":-52}. Die heeft dus de naam id met waarde 16:2A:04:CE:19:72 en de naam rssi met waarde -52. De tweede basiscomponent is de lijst van waardes. Een waarde in een collectie kan immers ook een lijst van waardes zijn, die tussen rechte haken staat. Zo heeft het volgende voorbeeld de naam identifiers als waarde een lijst met drie strings: {"identifiers":["56847C365278","41CED86E4798","216B02CA25A5"]} Wil je meer weten over de exacte regels voor JSON-data, bekijk dan de website van JSON (www.json.org).

Meer blokjes

In deze masterclass hebben we maar een beperkt aantal blokjes geïntroduceerd om een eenvoudig dashboard voor je smarthome te maken. Maar UIFlow heeft nog veel meer types blokjes met allerlei mogelijkheden. Zo vind je onder Event de mogelijkheid om op het drukken op de knoppen van je Core Ink te reageren. Zo zou je een bericht naar je MQTT-broker kunnen verzenden (Advanced / MQTT / publish topic) als je de knop aan de zijkant naar boven of onder drukt.

En in de categorie Hardware krijg je dan weer toegang tot allerlei hardwarefunctionaliteit. Je spreekt hier de luidspreker aan, leds, batterij, GPIO-pinnen, UART, I²C, wifi enzovoort, afhankelijk van het model van je M5Stack-apparaat. En als je units en hats op je apparaat hebt aangesloten, vind je die functionaliteit in de gelijknamige categorieën.

De Core Ink heeft talloze hardwarematige uitbreidingsmogelijkheden die ook met UIFlow aan te sturen zijn.

Programmeren in blokjes

Onder Advanced vind je ook de mogelijkheid om een http-aanvraag te doen. Je geeft daarbij een methode, url, headers en data op en vult de blokjes in die bepalen wat er gebeurt bij het slagen of falen van de aanvraag. Je kunt ook meer low-level netwerkcommunicatie uitvoeren door een UDP-server of UDP-client op te zetten.

Ook van de echte programmeerconcepten hebben we nog niet veel getoond. Er zijn allerlei blokjes voor wiskundige berekeningen, diverse soorten lussen en vergelijkingen. Je kunt ook teksten manipuleren en met lijsten werken. En je kunt zelfs een functie in een afzonderlijk blok definiëren, die je dan in andere blokjes kunt oproepen. Blockly geeft je dus krachtige grafische programmeermogelijkheden.

MicroPython

Ook krachtig aan UIFlow is dat je Blockly-code onderliggend in MicroPython wordt omgezet, een lichtgewichtversie van de programmeertaal Python voor microcontrollers. Als je bovenaan op Python klikt, krijg je de MicroPython-code te zien die overeenkomt met je blokkenconstructie in Blockly. Klik je daarna op Blockly, dan krijg je weer je blokken te zien.

Tip: bestel ook de cursus Programmeren in Python!

Soms zul je misschien ook externe hardware willen aansturen die niet door UIFlow wordt ondersteund, of andere functionaliteit gebruiken die niet is voorzien. Dan kun je in Blockly onder Advanced / Execute een blokje Execute code toevoegen. Hierin typ je dan MicroPython-code. Die wordt dan rechtstreeks op die plaats uitgevoerd, wat je ook zult zien als je de Python-versie van je programma bekijkt.

Achter je Blockly-programma van UIFlow schuilt MicroPython-code.

Meer inzicht in het energieverbruik van je slimme huis? Bestel dan een energiemeter bij Bol.com.

▼ Volgende artikel
Review Ninja Slushi – Vrolijk stemmende gadget voor warme dagen
© Ninja
Huis

Review Ninja Slushi – Vrolijk stemmende gadget voor warme dagen

Wie heeft er nu geen zin in een lekker verfrissende slushi op warme dagen? Kinderen worden gillend enthousiast bij het idee, en menig volwassene lust best een opwekkende frozen cocktail om de dag mee af te sluiten. De meest uiteenlopende slushi's maak je met de gelijknamige machine van Ninja. ID.nl testte hem.

Uitstekend
Conclusie

De Ninja Slushi is een verrassend leuke aanvulling voor wie van zomerse drankjes houdt. Het apparaat is eenvoudig in gebruik, doet wat het belooft, en levert smaakvolle resultaten zonder gedoe. Niet iets wat iedereen dagelijks zal gebruiken, maar absoluut een aanrader voor gezinnen, feestjes of iedereen die graag zelf experimenteert met ijskoude combinaties. Het is geen onmisbaar keukenapparaat – maar wel een gadget die zijn plek weet te verdienen.

Plus- en minpunten
  • Veelzijdig te gebruiken
  • Simpele bediening
  • Prima resultaat
  • Makkelijk schoon te maken
  • Prijzig
  • Groot en hoog apparaat
  • Werkt het best bij grote hoeveelheden

De Ninja Slushi is precies zo'n apparaat dat je in huis haalt voor het plezier – en waar je daarna stiekem vaker gebruik van maakt dan je vooraf had gedacht. Op het eerste gezicht lijkt het vooral een speelse gadget voor warme dagen, maar eenmaal aan de slag blijken er toch best wat mogelijkheden te zijn om lekkere drankjes te maken voor kinderen en volwassenen.

Mogelijkheden

Wat je ermee kunt? Best veel. De Ninja Slushi biedt vijf programma's voor verschillende soorten drankjes: van granita's tot milkshakes en van frappés tot frozen cocktails. Je hoeft geen ijsblokjes toe te voegen – wat je erin giet, wordt direct verwerkt tot een slushi. Daardoor blijft de smaak van het originele drankje behouden, zonder verdunning. Frisdrank, sap, yoghurt of een zelfgemaakte cocktailbasis: bijna alles verandert in een ijskoud verfrissend drankje, al dan niet met een rietje te nuttigen.

Montage en afmetingen

De Slushi komt in een grote doos en is zorgvuldig verpakt. Monteren en uit elkaar halen voor de schoonmaak is een makkie: je beweegt een hendel aan de bovenzijde naar je toe om het reservoir vaste te maken of los te halen, en een opvangbakje eronder trek je er simpelweg uit.

Het apparaat is best groot en vooral hoog:  41,35 cm lang, 42,98 cm hoog en 16,56 cm breed, met een gewicht van 11 kilo. Het bestaat uit een basis met het bedieningspaneel en erboven een reservoir, voorzien van een klepje om de drank in te gieten en een kraantje om de slushi mee te tappen.

Watch on YouTube

Ninja Slushi bedienen

Het bedieningspaneel is simpel: links de aan-uitknop, vijf tiptoetsen voor de verschillende soorten dranken en een knop om de machine door te spoelen: Rinse. Rechts een indicator om in te stellen hoe sterk de drank gekoeld moet worden. Deze hoef je bij de voorkeuzeprogramma's niet te veranderen, maar kun je wel aanpassen als je dat nodig vindt. Bijvoorbeeld als je de slushi te stroperig of juist te vloeibaar vindt. Hoe sterker de koeling, hoe langer de bereidingstijd. De standaardinstelling voor een slushi van fruitsap of frisdrank doet er ongeveer 30 minuten over.

©Ninja

Niet alleen het bedieningspaneel is simpel, de bediening is dat ook. Je kiest wat je wilt maken en zorgt ervoor dat de dranken flink gekoeld zijn, bijvoorbeeld door ze een paar uur in de koelkast te leggen. Dan giet je je mengsel via het klepje in het reservoir en kies je het programma. De Slushi werkt met een ronddraaiende schoep die om een enorm koelelement beweegt, waarin de vloeistof zit. Een pieptoon geeft aan wanneer het programma klaar is. Je kunt dan eventueel de koeling verhogen als de slushi nog te dun is, en wachten tot het resultaat naar wens is, of je begint met tappen. De machine blijft in principe doordraaien tot alle slushi getapt is of je de machine uitzet.

©Saskia van Weert

Het tappen zelf doe je door een glas onder het kraantje te zetten en dat open te doen. In klodders komt de slushi eruit. Dat kan even duren – de verschillende soorten die we getest hebben varieerden sterk in het gemak waarmee de slushi uit de kraan kwam. Is het glas vol, dan even doorroeren en klaar!

Opvallend is dat de Slushi het best werkt als je een flinke hoeveelheid vloeistof gebruikt. Bij de minimale hoeveelheid kan de slushi zich ophopen aan de voorkant van het reservoir, waarna de schoep hem niet meer goed door kan roeren. Maak dus een flinke hoeveelheid. Houd je over, dan kun je de machine uitzetten en de bevroren massa laten smelten en aftappen.

©Ninja

Schoonmaken

Na gebruik, als het reservoir zo leeg mogelijk is, moet je de machine doorspoelen met schoon warm water om achtergebleven deeltjes los te weken van het ijskoude element. Dat werkt goed. Daarna is het zaak de onderdelen af te wassen. De onderdelen zouden in de vaatwasser kunnen, maar dat is niet praktisch want dan blijft er water in staan. Handiger is ondersteboven met de grote opening naar boven een sopje erin te maken, dit goed uit te spoelen, ook het kraantje, en dan alles op een doek aan de lucht laten drogen.

Een lekker drankje hoort in een mooi glas

Met deze set cocktailglazen geniet je nog meer van je slushi!

Handige inspiratiegids

Bijzonder fijn zijn de uitgebreide handleiding die Ninja bij de Slushi levert en de inspiratiegids met recepten. Het is de moeite waar deze goed door te lezen. Zo leer je onder meer dat je best slushi's kunt maken van light-/zero-dranken, maar dat er dan wel zoetstof bij moet. Om goed te bevriezen, dienen mengsels minimaal 5 gram suiker per 100 ml te bevatten. Dat is zinvolle informatie om mislukkingen te voorkomen. Ook staan er 'recepten' en tips voor milkshakes en frozen cocktails, met de aanbevolen hoeveelheid (sterke) drank.

Lees ook: Dit zijn dé BBQ-trends voor 2025: van oervuur tot slimme grills

©Saskia van Weert

Testperiode

Het testen ging goed en foutloos. Het is soms wel wat pielen om de slushi uit het kraantje te laten lopen. Als de aanvoer stokt, helpt het om het kraantje even dicht en weer open te doen. Bij stijf bevroren mengsels kan het nodig zijn om de temperatuur wat te verhogen (door een streepje minder te kiezen op het rechterdeel van het bedieningspaneel).

Toch zijn er ook wat kleine nadelen. De Ninja Slushi is vrij fors. Met een inhoud van 2,5 liter kun je wel zeven glazen per keer maken, wat handig is voor feestjes of gezinnen. Maar daar staat tegenover dat het apparaat flink wat aanrechtruimte inneemt. Daarnaast is de prijs aan de hoge kant. Dit is geen essentiële keukenmachine, maar een gadget – eentje die goed werkt en veel plezier oplevert, maar je moet er wel ruimte én budget voor hebben.

Conclusie

Alles bij elkaar is de Ninja Slushi een verrassend leuke aanvulling voor wie van zomerse drankjes houdt. Het apparaat is eenvoudig in gebruik, doet wat het belooft, en levert smaakvolle resultaten zonder gedoe. Niet iets wat iedereen dagelijks zal gebruiken, maar absoluut een aanrader voor gezinnen, feestjes of iedereen die graag zelf experimenteert met ijskoude combinaties. Het is geen onmisbaar keukenapparaat – maar wel een gadget die zijn plek weet te verdienen.

▼ Volgende artikel
Waar voor je geld: 5 uitstekende surround-receivers voor minder dan 450 euro
© Oleksii Zelivianskyi
Huis

Waar voor je geld: 5 uitstekende surround-receivers voor minder dan 450 euro

Bij ID.nl zijn we gek op producten waar je niet de hoofdprijs voor betaalt. Een paar keer per week speuren we daarom binnen een bepaald thema naar zulke deals. Met een receiver voeg je supergoed geluid toe aan je woonkamer en met de juiste aangesloten speakers bereik je de mooiste surround audio voor de beste films, series en muziek. Wij zochten vijf mooie receivers voor je uit.

Voor goede audio hoef je niet altijd de hoofdprijs te betalen. Van verschillende bekende merken koop je een receiver geschikt voor surround geluid en voor een schappelijke prijs. Wij hebben er vijf voor je op een rijtje gezet.

Disclaimer

De hier besproken receivers hadden ten tijde van schrijven een prijs onder 450 euro bij de goedkoopste bij Kieskeurig.nl aangesloten winkels. De prijzen kunnen echter per dag verschillen.

Sony STR-DH590

Als je gewoon lekker film wilt kijken met stevig geluid, zonder meteen een halve maandhuur uit te geven, zit je met de STR-DH590 van Sony helemaal goed. Hij heeft 5.2-kanalen, dus genoeg voor een surroundopstelling zonder dat je je woonkamer hoeft te verbouwen. En de bluetooth-functionaliteit is ook handig; even snel je telefoon koppelen en je favoriete afspeellijst doorjassen, ideaal. Deze receiver kent verder geen gedoe met eindeloze menu's of apps die je eerst moet installeren. Alles voelt logisch aan en in deze prijsklasse presteert deze receiver erg goed.

🎬 Surround-configuratie: 5.2-kanaals

Marantz NR1510

De Marantz NR1510 is zo'n apparaat waarvan je niet meteen doorhebt hoeveel erin zit. Hij is slank, past makkelijk in je tv-meubel en oogt alsof hij geen vlieg kwaad doet, maar schijn bedriegt. Gooi er een film op of zet een concert aan, en je merkt meteen dat hij z'n mannetje staat. Vooral qua detail in het geluid – alles klinkt helder, van zachte achtergrondmuziek tot explosies in een actiefilm. Deze receiver heeft AirPlay 2, Spotify Connect en HDMI-ARC. Ook handig: hij heeft genoeg HDMI-ingangen voor je consoles, mediaspelers en wat je er verder nog aan wilt hangen. Het voelt allemaal gewoon doordacht en degelijk.

🎬 Surround-configuratie: 5.2-kanaals

Pioneer VSX-534

Deze VSX-534 van Pioneer is wat stoerder qua uiterlijk. Films komen echt tot leven, met een diepe bas en een lekker ruimtelijk effect. Zelfs bij gewoon tv-kijken geeft hij alles net wat meer pit. Wat opvalt, is hoe makkelijk alles ingesteld is. Je sluit je speakers aan, volgt het installatiestapje op het scherm, en je bent klaar. Geen urenlange handleidingen doorspitten. Hij ondersteunt ook Dolby Atmos, dus als je je setup uitbreidt met hoogtekanalen, haal je nog meer uit je luisterervaring.

🎬 Surround-configuratie: 5.2-kanaals

Denon AVR-X1800H

De Denon AVR-X1800H ondersteunt de nieuwste audioformaten, zoals Dolby Atmos en DTS\:X, en dat merk je direct als je een film aanzet. De explosies, stemmen, omgevingsgeluiden – het komt allemaal precies op de juiste plek. Echt een bioscoopgevoel thuis. Bedien je alles liever met je telefoon? Geen probleem. Alles werkt soepel via de app, en het verbinden met je netwerk is in een paar tellen geregeld. Als enige in dit overzicht heeft deze Denon 7.2-kanaals surroundgeluid.

🎬 Surround-configuratie: 7.2-kanaals

Onkyo TX-SR3100

Wat Onkyo met de TX-SR3100 laat zien, is dat je ook zonder tierelantijntjes een goede AV-receiver kunt hebben. Hij laat zien wat belangrijk is: degelijk geluid en een soepele bediening. Het is gewoon een no-nonsense apparaat waar je op kunt rekenen, of je nu een serie kijkt of een game speelt. Deze Onkyo ondersteunt Dolby Atmos en 4K-passthrough, wat hem ook toekomstbestendig maakt. Handig voor wanneer je later je tv of speakers upgradet – deze receiver kan het aan. Alles bij elkaar is het een betrouwbare receiver waar je jarenlang plezier van hebt, zonder dat je eerst een cursus AV-techniek hoeft te volgen.

🎬 Surround-configuratie: 5.2-kanaals