ID.nl logo
Zo krijg je stembesturing op de Raspberry Pi
© Reshift Digital
Huis

Zo krijg je stembesturing op de Raspberry Pi

Met slimme assistenten zoals Google Assistant, Amazon Echo en Apple geef je opdrachten met je stem. Leuk, maar je stemopnames worden wel naar de cloud gestuurd voor verwerking. Met een Raspberry Pi en de opensource-software Rhasspy kun je stembesturing volledig lokaal realiseren, zelfs zonder internet. Je stemopdrachten koppel je dan aan Node-RED of een domoticasysteem zoals Home Assistant, en dat zonder dat Google, Amazon of Apple de hele tijd meeluistert. Zelfs in het Nederlands.

1 Raspberry Pi

Rhasspy heeft minstens een Raspberry Pi 2 nodig, maar we raden toch minstens model 3 aan. Als je complexe zaken wilt gaan doen, is een Raspberry Pi 4 zelfs aan te raden. Daarnaast heb je ook een microfoon en luidspreker nodig. Deze workshop hebben we met de ReSpeaker 2 Mics pHAT van Seeed uitgeprobeerd. Deze prik je op de gpio-header van de Raspberry Pi. De HAT heeft twee microfoons ingebouwd en een luidspreker sluit je aan via de 3,5mm-audiojack of de JST2.0-stekker. Wij gebruiken die laatste, waarop we een 3inch-luidspreker van 8 ohm en 1 watt aansluiten.

2 Audiodrivers

We gaan ervan uit dat je op je Raspberry Pi al de nieuwste Raspbian hebt geïnstalleerd, en via ssh (of een toetsenbord en scherm) opdrachten kunt intypen. Als je de ReSpeaker 2 Mics pHAT of andere audiohardware van Seeed gebruikt, dien je eerst een driver te installeren. Dat doe je met deze drie opdrachten:

git clone https://github.com/respeaker/seeed-voicecardcd seeed-voicecardsudo ./install.sh

Herstart daarna je Raspberry Pi met sudo reboot. Als je daarna weer inlogt, zou je in de uitvoer van de commando’s arecord -l (de lijst van microfoons) en aplay -l (de lijst van luidsprekers) de ReSpeaker-hardware moeten zien.

©PXimport

3 Installeer Rhasspy

Rhasspy kun je installeren in een Docker-container, in een virtuele Python-omgeving of als een Hass.io-add-on voor Home Assistant. In deze workshop voeren we de installatie uit met Docker Compose. Volg onze basiscursus Docker op Raspberry Pi elders in dit nummer om Docker en Docker Compose te installeren, en maak het volgende bestand docker-compose.yml aan:

version: '3.7'services:rhasspy:image: rhasspy/rhasspy:2.5.0-precontainer_name: rhasspyrestart: alwaysvolumes:- /home/pi/containers/rhasspy/profiles:/profilesports:- 12101:12101devices:- /dev/snd:/dev/sndcommand: --user-profiles /profiles --profile nl

Bekijk op het forum van Rhasspy wat de nieuwste versie is en pas het image indien nodig aan. Op het moment van schrijven was dat rhasspy/rhasspy:2.5.0-pre.

©PXimport

4 Webinterface

Maak de Docker-container van Rhasspy met het commando docker-compose up -d. Nadat Rhasspy is opgestart, kun je de webinterface bereiken via http://IPADRES:12101 met in plaats van IPADRES het werkelijke ip-adres van je Raspberry Pi. Dat laatste kom je te weten met de opdracht ip a op je Pi. Kijk naar het ip-adres bij eth0 als je ethernet gebruikt of wlan0 als je wifi gebruikt. In de webinterface zie je rechts bovenaan in het blauw nl staan: dat is het teken dat Rhasspy het Nederlandse profiel gebruikt. Je ziet bovenaan ook een link naar de Getting Started Guide: de documentatie wordt gewoon door dezelfde webserver getoond.

©PXimport

5 Audio-instellingen

Klik links op het icoontje van de gereedschapskist. Je krijgt nu alle services van Rhasspy te zien en die zijn standaard allemaal uitgeschakeld. Rhasspy is eigenlijk een toolkit om een stemassistent mee te maken en voor elk van deze services heb je meerdere keuzes. Selecteer PyAudio bij Audio Recording, en aplay bij Audio Playing. Klik onderaan op Save Settings, waarna Rhasspy herstart. Klik op Audio Recording / Test en kies de microfoon, bijvoorbeeld seeed-2mic-voicecard. Klik op Audio Playing en Refresh en kies je luidspreker, bijvoorbeeld Direct hardware device without any conversions. Sla je wijzigingen nog eens op.

©PXimport

6 Kies een activatiewoord

In de volgende stap kies je een ‘wake word’: het woord dat je tegen Rhasspy dient te zeggen om je stemassistent te activeren. Selecteer Porcupine bij Wake Word en sla je wijzigingen op. Klik dan op Wake Word en Refresh. In de lijst voor de knop Refresh kun je nu uit een tiental activatiewoorden kiezen, zoals porcupine (de standaard) en hey pico. Als je je eigen activatiewoord wilt aanmaken, dan kan dat met de Picovoice Console. Maak een directory genaamd porcupine in je profielmap van Rhasspy en plaats het bestand daar. Daarna kun je het in de instellingen selecteren. Vergeet niet op Save Settings te klikken.

©PXimport

7 Spraak naar tekst en andersom

Stel Speech to Text in op Kaldi (als je een Raspberry Pi 4 hebt, want dit vraagt meer rekenkracht) of Pocketsphinx (voor eerdere modellen). Zet Text to Speech op Espeak en sla je wijzigingen op. Als je de pagina daarna ververst, krijg je de melding dat Rhasspy bestanden moet downloaden. De speech-to-text-engine heeft immers een akoestisch model en basiswoordenboek nodig. Klik bovenaan op Download. Als alles gedownload is, krijg je de melding Training Profile. Je krijgt ook de melding dat Rhasspy niet zeker is van enkele woorden hoe het die moet uitspreken.

©PXimport

8 Woordenboek

Klik op View bij de melding over onbekende woorden of klik in de zijbalk links op het icoontje met de twee aanhalingstekens. Rhasspy heeft al een gok gedaan over de uitspraak van de onbekende woorden, door er hun fonetische transcriptie bij te zetten. Klik op check to be sure om de beschikbare fonemen te bekijken. Klopt er iets niet, pas dit dan aan. Klik tot slot op Confirm Guesses. De woorden worden dan samen met hun uitspraak toegevoegd aan je lijst met Custom Words. Merk je later dat je een verkeerde uitspraak hebt toegevoegd, dan kun je deze altijd op deze pagina nog aanpassen.

©PXimport

9 Je bedoeling herkennen

Dan rest er nog één component die we moeten instellen: Intent Recognition. Stel die in op Fsticuffs en sla je wijzigingen op. Na de herstart zou Rhasspy je opdrachten moeten herkennen. Welke zinnen Rhasspy exact herkent, vind je op de pagina Sentences. De inhoud daarvan heeft de syntaxis van een ini-bestand, en elke sectie is een ‘intent’ of bedoeling. Bekijk bijvoorbeeld de regel [GetTime] met daarna de regel hoe laat is het. Dat betekent: als je de zin “hoe laat is het” uitspreekt, verstaat Rhasspy dit als de bedoeling GetTime. Je kunt hier ook complexere regels invullen, op de pagina staat een link naar de volledige syntaxis.

©PXimport

10 Test!

Ga nu naar de pagina Test en typ een van de zinnen uit de pagina Sentences in het tekstveld naast Recognize. Klik op de knop ernaast. Als je bijvoorbeeld “zet de woonkamerlamp aan” invoert, verschijnt er na een druk op de knop ChangeLightState onder, de waarde woonkamerlamp bij het slot name en de waarde aan bij het slot state. Als je op Show JSON klikt, krijg je gedetailleerdere informatie over wat Rhasspy herkent. Als dit werkt, is de ultieme test het daadwerkelijk uitspreken: spreek het activatiewoord uit (bijvoorbeeld “hey pico”) en daarna je zin. Als alles goed gaat, toont de testpagina nu je woorden in tekst, inclusief de herkende intent en slots.

©PXimport

Rhasspy verstaat me niet!

Het succes van Rhasspy hangt van allerlei factoren af. Allereerst van de kwaliteit van je microfoon. De hier voorgestelde ReSpeaker 2 Mics pHAT is oké, maar geen hoogvlieger en hij heeft een beperkt bereik. Vermijd ook stoorzenders zoals achtergrondgeluid. Als Rhasspy moeilijk je activatiewoord (wake word) verstaat, probeer dan een ander uit (een zelfgetraind activatiewoord werkt het best). Als Rhasspy je opdrachten na het activatiewoord moeilijk verstaat, probeer dan eens een andere speech-to-text engine. Als het daarna echt nog niet goed werkt, overweeg dan om naar het Engels over te schakelen: de spraaktechnologie voor het Engels werkt doorgaans beter dan die voor het Nederlands.

©PXimport

11 Actie!

Rhasspy herkent nu wat je zegt en achterhaalt de bedoeling daarachter, maar doet er nog niets mee. Gelukkig ondersteunt Rhasspy diverse manieren om op je ‘intents’ te reageren. Standaard stuurt Rhasspy bij het herkennen van een intent een event met JSON-code uit via een WebSocket. Je kunt dan in een ander programma naar deze WebSocket-events luisteren en daarop reageren. Een handig programma daarvoor is Node-RED, dat je ook eenvoudig op je Raspberry Pi met Docker installeert.

©PXimport

12 WebSockets

Kies in Node-RED uit het palet links onder het kopje network een node websocket in en versleep die naar de werkruimte in het midden. Dubbelklik erop, laat het type op Listen on staan en klik bij Path op het icoontje van het potlood naast Add new websocket-listener. Vul bij Path de url ws://rhasspy:12101/api/events/intent in, of vervang rhasspy in de url door de hostname of het ip-adres van je Raspberry Pi als je Node-RED op een andere computer hebt draaien. Laat Send/Receive op payload staan en klik op Add. Geef dan je node websocket in een naam en klik op Done.

13 Debug

Sleep nu een node debug (in het onderdeel common helemaal bovenaan) naar de werkruimte. Verbind het rechtse grijze vakje van je websocket-node met het linkse grijze vakje van de debug-node. Klik dan op Deploy om je flow in Node-RED uit te rollen. Klik nu op het menu helemaal rechts bovenaan en dan op View / Debug messages. Rechts krijg je nu alle boodschappen van de debug-node te zien. Als je nu tegen Rhasspy praat en die de intent herkent, krijg je in het debug-venster de JSON-code van de intent te zien.

©PXimport

14 Van string naar object

Maar eerst dienen we de JSON-string (een reeks tekens) naar een JSON-object om te zetten. Sleep een node json uit het onderdeel parser en plaats die tussen de websocket- en debug-nodes. Daarvoor dien je de bestaande verbindingen te verwijderen (selecteer en druk op Delete) en nieuwe verbindingen te maken. Als je nu weer op Deploy klikt en tegen Rhasspy praat, zie je in het debug-venster de intent in de vorm van een object in plaats van een string. Onderdelen kun je nu uitklappen, bijvoorbeeld het deelobject intent met daaronder name die de naam van de herkende intent bevat, zoals “GetTime”.

©PXimport

15 Wat zei je?

Hang nu een node switch (uit function) achter de json-node en dubbelklik erop. Vul bij Property de eigenschap msg.payload.intent.name in en vul bij de regel onderaan achter == niets in, omdat een niet herkende zin een intent zonder naam krijgt. Klik op Done. Voeg achter de switch-node een node change (uit function) toe, dubbelklik erop en zet de payload op Wat zei je?. Geef de node eventueel een naam en klik op Done. Hang achter deze node een node http request (uit network), verander de methode naar POST en vul bij de url http://rhasspy:12101/api/text-to-speech in. Klik op Done en dan Deploy.

©PXimport

16 Intents herkennen

Als je nu iets zegt dat Rhasspy niet verstaat, antwoordt hij “Wat zei je?”. Door nu aan de switch andere regels toe te voegen, kun je voor elke herkende intent een andere actie laten uitvoeren. Klik in de eigenschappen van de switch-node op het knopje +add onderaan om een regel toe te voegen en vul in het veld na het isgelijkteken GetTime in. Er verschijnt nu een extra uitgang aan de switch-node. Hang daar een node function (in het onderdeel function) achter en verbind die ook met je http request. Dubbelklik op de intent en geef die de naam GetTime.

©PXimport

17 Hoe laat is het?

In de function-node schrijf je een javascript-functie, die de tijd uitvoer als een tekst, die door de http request aan Rhasspy wordt doorgegeven om uit te spreken. In die functie maak je eerst een variabele timeString, waaraan je de uitvoer van de methode toLocaleTimeString op een nieuw Date-object toekent. Op het einde van de functie geef je de payload terug, waaraan je de string “Het is” en de tijd toekent. In die tijd vervang je de dubbele punt (:) door de string “ uur “. Als je deze node nu opslaat en de flow uitvoert via Deploy, antwoordt Rhasspy je op je vraag hoe laat het is.

©PXimport

18 Slots

GetTime is een eenvoudige intent, maar complexere intents zoals ChangeLightState bevatten ook slots. Die kun je eenvoudig uit de JSON-code halen in Node-RED. Voeg een nieuwe regel in de switch-node toe en test op ChangeLightState. Hang hieraan een node template (in het onderdeel function) en verbind die ook weer met de http request. Vul in het tekstveld template de code Ik zet de {{ payload.slots.name }} {{ payload.slots.state }} in. Hiermee antwoordt Rhasspy je “Ik zet de woonkamerlamp aan”, als je “Zet de woonkamerlamp aan” vraagt, en hetzelfde voor andere apparaten en toestanden die voor de intent zijn gedefinieerd.

©PXimport

19 Apparaten aansturen

Uiteraard kun je Rhasspy op deze manier ook acties laten uitvoeren, zoals je lampen daadwerkelijk in- en uitschakelen. Hoe dat precies gebeurt, hangt af van wat voor lampen je hebt en welke API deze aanbieden. Voor een REST API gebruik je een http request, voor apparaten die MQTT spreken gebruik je mqtt out en definieer je een mqtt-broker. Uiteraard kun je ook allerlei nodes toevoegen voor extra functionaliteit en dan kun je zo bijvoorbeeld je Philips Hue-lampen via spraak aansturen.

©PXimport

20 En verder

Rhasspy is een heel flexibel systeem voor spraakbesturing. Bijna elk onderdeel kun je wel vervangen of aanpassen. Bekijk zeker de interne documentatie van je installatie. We hebben ons in deze workshop gefocust op de integratie met Node-RED, maar ook met het domoticasysteem Home Assistant is er een uitstekende integratie. Via de http en de WebSocket API en MQTT-boodschappen die het Hermes-protocol volgen, kun je bovendien in principe elk systeem met Rhasspy koppelen. Bezoek zeker ook het Rhasspy-forum waar een behulpzame community actief is.

©PXimport

Meerdere apparaten met Rhasspy

Je kunt Rhasspy ook op meerdere Raspberry Pi’s verspreid in je huis installeren. Eén Raspberry Pi is dan de base of master, en die neemt de spraakherkenning, spraaksynthese en herkenning van de intents op zich. Op de andere Raspberry Pi’s (dat kunnen zelfs Raspberry Pi Zero’s zijn) activeer je alleen de audioverwerking van de microfoon en luidspreker en de herkenning van het wake word. Je spreekt dan tegen een van de satellieten, die herkent het activatiewoord en stuurt je audioboodschap naar de base, die er een intent in herkent. Als je Node-RED-flow dan een antwoord naar de spraaksynthese stuurt, wordt die audio op zijn beurt naar de luidspreker van de juiste satelliet gestuurd.

©PXimport

▼ Volgende artikel
Review Panasonic TV-55Z90BE6 -  Kwaliteit met een hoog prijskaartje
Huis

Review Panasonic TV-55Z90BE6 - Kwaliteit met een hoog prijskaartje

De Panasonic TV-55Z90BE6 is een premium OLED-tv, net onder het topmodel. Hij mikt op uitmuntende beeldkwaliteit en zal heel wat kijkers aantrekken, ongeacht wat hun favoriete kijkvoer is. Maar de concurrentie is zwaar en we vragen ons af of de tv iets extra te bieden heeft.

Fantastisch
Energy label
Samenvatting

De Panasonic Z90B levert prachtige beelden dankzij het heldere Master OLED Pro-paneel en uitstekende kalibratie. De tv ondersteunt alle HDR-formaten en is met snelle HDMI 2.1-poorten ideaal voor gamers. Het geluid is prima en de draaivoet handig. Minpunten zijn het gebrek aan DTS en ontbrekende Belgische apps op Fire TV.

Plus- en minpunten
  • Zeer goede piekhelderheid
  • OLED-contrast en zeer goed schaduwdetail
  • Goede kalibratie af fabrikant
  • Goede bewegingsscherpte
  • Gebrek aan lokale smart tv-apps voor België
  • Geen ondersteuning voor DTS
  • Hoge adviesprijs
Panasonic TV-55Z90BE6

Adviesprijs: 2.199 euro
Wat: Ultra HD 4K 144Hz W-OLED-tv
Schermformaat: 55 inch (139cm)
Aansluitingen: 4x HDMI (2x v2.1 48Gbps, 2x v2.0 18GBps, ARC/eARC, ALLM, 4K144 HFR, VRR), 3x USB, 1x optisch digitaal uit, 1x hoofdtelefoon/subwoofer, 3x antenne, 1x Ethernet, WiFi 5, Airplay2, Bluetooth
Extra’s: HDR10, HLG, Dolby Vision IQ, HDR10+ Adaptive, Dolby Atmos, Fire TV, USB/DLNA-mediaspeler, dual DVB-T2/C/S2, CI+-slot, HCX Pro AI Mk II Processor
Afmetingen: 1225 x 787 x 348 mm (incl. voet)
Gewicht: 23 kg (incl. voet)
Verbruik (per 1000 uur): SDR 84 kWh/1000h (G) / HDR 147 kWh/1000h (G)

Panasonic heeft nooit voor opvallende designs gekozen en dat is dit keer niet anders. Het zwarte toestel combineert een slank scherm met een relatief grote behuizing voor de elektronica en aansluitingen achteraan. De afwerking is piekfijn in orde. In tegenstelling tot veel concurrenten staat de Z90B op een draaivoet, een detail dat voor velen handig kan zijn. Opvallend is dat de Z90B voorwaarts gerichte luidsprekers heeft die in een balk onderaan het scherm zitten. Het toestel staat nauwelijks 2cm boven het meubel, maar wie een soundbar wil gebruiken kan die toch voor de tv zetten als de luidsprekerbalk in dat geval toch niet wordt gebruikt.

De aansluitingen staan allemaal zijwaarts of naar onder gericht zodat ze wandmontage niet bemoeilijken. De vier HDMI-poorten zijn onderverdeeld in twee HDMI 2.0-poorten en twee HDMI 2.1-poorten. Die laatste twee leveren 48Gbps bandbreedte en ondersteunen alle belangrijke gamerfuncties, ALLM, HDMI VRR, AMD FreeSync en NVIDIA G-Sync en kunnen gebruikt worden voor gaming in 4K120 (consoles) of 4K144 (pc). Gamers genieten van een lage input-lag, 6,0ms in 2K120 en 10,5ms in 4K60. Verder vinden we drie usb-poorten, ethernet, WiFi 5, Bluetooth, een optische digitale audio-uitgang en hoofdtelefoonaansluiting. Die laatste is via het menu om te schakelen naar een subwoofer-uitgang. Voor live tv is er een dubbele tuner (DVB-T2/C/S2) met een CI+-slot. 

De achterzijde met alle aansluitingen.

Referentie kalibratie en goede piekhelderheid

De Z90B is verder voorzien van een Master OLED Pro paneel, dat is hetzelfde of een gelijkwaardig paneel die we ook op de Philips OLED810 of LG C5 aantreft. Het paneel in ons testexemplaar toonde een bijzonder goede uniformiteit in heldere en donkere beelden, er is geen spoor van verticale strepen. De kijkhoek is zeer goed, zoals bij alle OLED-tv’s, en de anti-reflectielaag is degelijk, al blijft het van belang om sterke reflecties in het scherm te vermijden. Het toestel pakt uit met een bijzonder goede piekhelderheid. In HDR10 Filmmaker mode meten we 1316 nits op het 10%-venster, en 220 nits op het volledig wit scherm.

Lees ook: Zo testen we televisies voor ID.nl

Wat HDR-piekhelderheid betreft steekt de Z90B daarmee zelfs de LG C5 voorbij, al is het verschil klein. In SDR liggen de resultaten dichter bij elkaar, maar neem de LG C5 de leiding op het volledig wit veld waar hij 265 nits haalt, terwijl de Z90B op 202 nits zit. Voor SDR zal de C5 daardoor iets helderder lijken. Het kleurbereik van 98,3% P3 is wat we ondertussen al even gewend zijn van OLED-tv’s. Dat is zeer goed, en met die specificaties staat de Z90B uitstekend in de startblokken voor top HDR-beelden.

Veel hangt ook af van de kalibratie, en op dat vlak kunnen we de Z90B echt niets verwijten. We gebruiken graag Filmmaker Mode, in SDR is die erg donker ingesteld. Zet de Verlichtingssterkte op 70, en laat de lichtsensor aan en je bent klaar. De fouten die we meten zijn zo klein dat ze op een referentiemonitor niet zouden misstaan. Reken dan ook op mooie natuurlijke beelden, met veel kleurexpressie en goede schaduwdetails. Ook voor HDR10 is de Filmmaker Mode de beste keuze. De tv levert bijzonder goed schaduwdetail, zelfs in onze moeilijkste testscène, de strandscène uit House of Dragons.

Heb je iets meer detail nodig dan kan dat nog steeds door de ‘Dark Visibility’ instelling te gebruiken. Kleurweergave is erg goed, en heldere nuances blijven uitstekend bewaard. Enkel in de helderste tinten verliezen ze wat kleurintensiteit, dat is typisch voor W-OLED. De Z90B ondersteunt bovendien HDR10+ Adaptive en Dolby Vision IQ Precision Detail, voor de beste HDR-beeldkwaliteit. 

Beeldverwerking

De HCX Pro AI MkII processor die Panasonic ook in vorige modellen gebruikte levert bijzonder mooie prestaties. Deinterlacing van live tv (1080i) beeld en ruisonderdrukking scoren goed. Al dient gezegd dat Panasonic erg voorzichtig is met beeldverwerking. De ‘Min’ instelling is voor de meeste beeldverwerking een veilige keuze. Bevat de bron duidelijk ruis, dan zal dat vermoedelijk wat te voorzichtig zijn, de ‘Med’ instelling (voor ruisonderdrukking) levert dan betere resultaten. Upscaling zorgt voor mooie, scherpe beelden en met Resolutie Remasteren kan je zelfs wat extra accent leggen. Dat laat je echter best uitstaan bij erg oud (dvd-) beeldmateriaal, de processor accentueert immers ook ruis op dat soort bronnen.

In HDR was de processor erg goed in het vermijden van kleurstroken in zachte kleurovergangen. In SDR zien we nog wat ruimte voor verbetering op dat vlak. Zet ‘Vloeiende schakering’ op ‘Min’, eventueel kan je voor heel zware gevallen naar ‘Med’ schakelen. De processor vermijdt relatief goed dat er te veel detail verloren gaat. De bewegingsscherpte is uitstekend, en met Intelligent Frame Creation kan je de sportbeelden mooi vloeiend maken, of het schokken van het 24fps camerabewegingen in film wegwerken. 

Audiokwaliteit

De Z90B is uitgerust met een redelijk krachtige 2.1-audioconfiguratie van 60W. De stereoluidsprekers staan bovendien voorwaarts gericht, altijd een goed punt voor de audiokwaliteit. Hij ondersteunt Dolby Atmos, maar geen DTS. Voor wie de tv-luidsprekers gebruikt is dat geen belangrijk minpunt. Wie echter een soundbar of andere audio-oplossing gebruikt, moet weten dat de tv geen DTS-signalen doorgeeft via eARC/ARC. Sluit je bron in dat geval dan rechtstreeks aan op de soundbar. Onze filmfragmenten klonken vrij goed, met prima stereoscheiding en een vleugje surround. De woofermodule zorgt voor voldoende bas. De muziekpreset blies onze muziektesten wat extra leven in. De tv kan voldoende volume leveren, maar boven een bepaald niveau hoor je wel wat vervorming. 

Fire TV

Fire TV, het smart tv-systeem van Amazon, vervangt sinds vorig jaar het in huis ontwikkelde My Home Screen. De layout loopt gelijk met die andere smart tv-systemen. Op het Home-scherm neemt een content-caroussel de bovenste helft van het scherm in. Fire TV toont daar op dit moment enkel content-aanbevelingen, geen ongerelateerde reclame. We hopen dat dit zo blijft. Centraal in beeld vind je snelkoppelingen naar het ingelogde profiel, ingangen, bookmarks en de zoekfunctie. Daarnaast is er ruimte voor zes pictogrammen van favoriete apps. Heb je er meer, dan moet je even doorklikken. Verder naar onder zijn er talrijke rijen met aanbevelingen uit verschillende streamingdiensten al krijgt Prime Video duidelijk meer aandacht. De app-store bevat alle belangrijke internationale streamingdiensten, en ook Nederlandse lokale apps zijn vrij goed vertegenwoordigd. Belgische kijkers vinden helaas geen enkele lokale app, een onbegrijpelijk minpunt in 2025. Lees het artikel over Fire TV voor alle details.

De overstap naar Fire TV heeft Panasonic niet aangezet om voor een modernere afstandsbediening te kiezen. De grote afstandsbediening met afgeronde vorm ligt goed in de hand, en de aangename toetsen hebben een lichte aanslag met goede feedback. We zijn ook erg tevreden over de “My App”-toets die je zelf kunt toewijzen aan een app naar keuze, en de “Picture”-toets waarmee je snel van beeldmode verandert. Het ontwerp heeft echter ook nadelen. Door de afmetingen kan je niet alle toetsen bereiken zonder je hand te verplaatsen. En de veelheid aan toetsen is toch wat verouderd. Een compactere versie, met minder toetsen en een oplaadbare batterij zou beter scoren.

De afstandsbediening van de TV-55Z90BE6.

Conclusie

Dat de Panasonic TV-55Z90BE6 uitstekende beeldkwaliteit levert, daar mag je van op aan. Wat jammer dan dat de prijs zo hoog is, dat kost hem een half punt. Als we even vergelijken met concurrenten, dan is de Z90B zonder meer de duurste terwijl hij geen exclusieve features biedt. Minpunten zijn er vooral voor Belgische kijkers die geen enkele lokale app op Fire TV vinden. Het gebrek aan DTS-ondersteuning, daar tillen we minder zwaar aan. Deze tv levert prachtige beelden, zowel in SDR als HDR en hij ondersteunt dan ook nog eens alle belangrijke HDR-formaten. De audio-oplossing levert goede geluidskwaliteit en zorgt samen met de knappe beelden voor een hele mooie filmbeleving. Fire TV heeft alle internationale streaming-apps in huis. Gamers zullen deze televisie ook waarderen want ook voor hen heeft hij alle belangrijke features.

▼ Volgende artikel
Review Motorola Edge 70 – Licht toptoestel leg gewicht in de schaal
© Wesley Akkerman
Huis

Review Motorola Edge 70 – Licht toptoestel leg gewicht in de schaal

De Motorola Edge 70 volgt de recente trend van dunne, lichte smartphones, maar dan met een zachter prijskaartje van net geen 800 euro. Hoewel het geen directe concurrent is van vlaggenschepen als de S25 Edge, bewijst de Edge 70 dat een uniek premium ontwerp niet de hoofdprijs hoeft te kosten.

Uitstekend
Conclusie

De Motorola Edge 70 is een slimme aankoop als je een slank en licht toestel zoekt voor minder dan 1000 euro. De bouwkwaliteit, het scherm, de lange batterijduur en de robuustheid maken dit een fijne smartphone voor dagelijks gebruik. Ondanks de bloatware en de onvolwassen Moto AI bewijst dit toestel dat je geen duur vlaggenschip nodig hebt voor een vooruitstrevend ontwerp en vlotte prestaties.

Plus- en minpunten
  • Licht en slank ontwerp
  • Fijn en kleurrijk amoledscherm
  • Lange batterijduur
  • Robuust en duurzaam
  • Unieke kleurenopties
  • Geen telelens
  • Beperkte opties voor video-opnamen
  • Plaatsing vingerafdrukscanner
  • Onnatuurlijke foto's
  • Veel vooraf geïnstalleerde apps

Met een dikte van nét iets minder dan 6 millimeter en een gewicht van slechts 159 gram is de Edge 70 een van de lichtste en slankste telefoons op de markt. Desondanks voelt het toestel niet goedkoop aan, en dat is te danken aan een stevig aluminium chassis en een op nylon geïnspireerde bekleding. De Edge 70 biedt bovendien uitstekende duurzaamheid: hij heeft een MIL-STD-810H-certificering (MIL staat voor military grade), IP68- en IP69-ratings én is voorzien van Gorilla Glass 7i.

Het 6,7-inch amoledscherm heeft een resolutie van 2712 bij 1220 pixels en een adaptieve verversingssnelheid van 1 tot 120 Hz. Het vlakke oledpaneel biedt daarnaast een hoog contrast. Vooral de levendige, licht verzadigde kleuren, mogelijk gemaakt door de Pantone-nabewerking, vallen positief op. Het enige nadeel aan het display is de laag geplaatste vingerafdrukscanner; om die te gebruiken moet je je duim in een oncomfortabele positie buigen.

©Wesley Akkerman

Uitstekende middenklasser

De Edge 70 wordt aangedreven door de middenklasse Qualcomm Snapdragon 7 Gen 4-processor, bijgestaan door 12 GB werkgeheugen en 256 GB aan opslagruimte. Vooral de cpu is op papier minder krachtig dan die van de duurdere vlaggenschepen, maar in de praktijk maakt dat weinig uit. Apps worden snel geopend en multitasking gaat het apparaat goed af. Een groot voordeel is dat de processor niet erg heet wordt onder hoge druk en zijn werk dus zonder morren doet.

Een ander voordeel is dat de 4800mAh-batterij het opvallend lang volhoudt; zelfs bij matig tot zwaar gebruik is dat al snel een volledige dag. Daarmee overtreft hij de duurdere concurrentie van Samsung en Apple. Opladen gaat eveneens vlot, met 68 W bedraad, waardoor je binnen 50 minuten weer een volledig opgeladen batterij hebt. Ook op dit punt scoort Motorola flink wat punten.

©Wesley Akkerman

©Wesley Akkerman

Typisch Motorola

Traditioneel doet Motorola het goed op het gebied van software dankzij de bijna stock Android 16-ervaring. Helaas treffen we deze keer behoorlijk wat bloatware aan en zijn er advertenties zichtbaar in de weerapp; dubieus voor een toestel van 800 euro. Tijdens de installatie word je bovendien meermaals gevraagd om voorgestelde apps te installeren. En als je daar nee op zegt, kom je alsnog applicaties tegen waar je niet om vroeg, zoals TikTok en Perplexity AI.

Wat betreft ondersteuning kan de Motorola Edge 70 rekenen op vier Android-upgrades (tot Android 20) en vijf jaar aan beveiligingspatches. Hoewel dat voldoende is voor een middenklasser, blijft het wel iets achter bij de langere support die Samsung en Google bieden. Daarnaast voelt Moto AI nog aan als een achtergesteld project. De functies werken niet allemaal in het Nederlands, waardoor de AI-knop op het toestel eigenlijk nog maar weinig waarde heeft.

Groothoeklens

1x zoom

2x zoom

Foto's maken gaat prima

Het camerasysteem bestaat uit een 50MP-hoofdcamera met optische beeldstabilisatie, een 50MP-ultragroothoeklens en een 50MP-selfiecamera. Bij voldoende licht leveren deze camera's prettig ogende foto's met een ruim dynamisch bereik. Vooral in het donker verrast het toestel: dankzij de grote sensoren blijven beelden helder en gedetailleerd. Jammer is wel dat de software kleuren soms te nadrukkelijk verzadigt, waardoor foto's iets minder natuurlijk overkomen. Voor gebruik op sociale media zijn ze echter meer dan prima.

Toch kent het camerasysteem duidelijke beperkingen. Video's kunnen slechts in 4K met 30 fps worden opgenomen, terwijl beeldstabilisatie alleen werkt bij 1080p en 30 fps. Daarnaast kan de handmatige scherpstelling onverwacht invloed hebben op de helderheid. En doordat er geen telelens aanwezig is, ben je volledig aangewezen op digitale zoom. Begrijpelijk gezien de slanke behuizing van de Edge 70, maar alsnog een teleurstellend compromis.

Macrostand

Motorola Edge 70 kopen?

De Motorola Edge 70 is een slimme aankoop als je een slank en licht toestel zoekt voor minder dan 1000 euro. De bouwkwaliteit, het scherm, de lange batterijduur en de robuustheid maken dit een fijne smartphone voor dagelijks gebruik. Ondanks de bloatware en de onvolwassen Moto AI bewijst dit toestel dat je geen duur vlaggenschip nodig hebt voor een vooruitstrevend ontwerp en vlotte prestaties.