ID.nl logo
Zo maak je je eigen bewegingssensor
© Gorodenkoff Productions OU
Huis

Zo maak je je eigen bewegingssensor

BTHome is een nieuwe open standaard voor sensors en knoppen die data via bluetooth doorsturen, ontstaan via het opensource-project Home Assistant. Elk apparaat dat het BTHome-protocol implementeert, wordt automatisch door Home Assistant herkend. Dat is handig als je zelf een bluetooth-sensor wilt maken.

In dit artikel leggen we uit hoe BTHome werkt en programmeren we in CircuitPython een sensorbordje dat detecteert wanneer het beweegt en zijn toestand via bluetooth aan Home Assistant doorstuurt.

Lijkt dit je interessant, maar weet je nog maar weinig van Home Assistant, lees dan eerst dit artikel: Maak je huis slim met Home Assistant

Code downloaden In dit artikel worden best lange voorbeelden van stukken code gegeven. Omdat overtikken van code erg foutgevoelig is, kun je die code beter downloaden en daarna bekijken of kopiëren. Zie het bestand code-bthome.txt voor de code-snippets die in dit artikel genoemd worden. De volledige code van dit project vind je op GitHub.

Heel wat goedkope sensors sturen via bluetooth low-energy data rond naar iedereen in de buurt die het maar wil oppikken. Dat heet broadcasting. Zo’n sensor doet een meting, stuurt de data rond, gaat even in slaap, wordt wakker en stuurt dan de volgende meting door.

Een domoticacontroller zoals Home Assistant kan die bluetooth-pakketjes oppikken via de bluetooth-chip in bijvoorbeeld de Raspberry Pi waarop je de software draait. Maar met alleen het datapakketje ben je nog nergens: je hebt nog een decoder nodig die het formaat van de data kent en er de nuttige sensorwaarden uit haalt. Omdat elke fabrikant zijn eigen formaat gebruikt, heb je daardoor allerlei integraties nodig in Home Assistant: voor Xiaomi, ThermoPro, Inkbird, Govee, Qingping enzovoort. 

Eén standaard voor alle sensors

De makers van Home Assistant besloten daarom om een formaat te bedenken dat allerlei soorten sensors ondersteunt: BTHome. Apparaten die bluetooth-data uitsturen volgens dit formaat, worden dan automatisch door Home Assistant herkend aan de hand van de BTHome-integratie.

Het BTHome-formaat waarmee compatibele apparaten hun data uitzenden, is uitgebreid gedocumenteerd. Dit kun je raadplegen als je in je eigen apparaten van BTHome wilt gebruikmaken. Hiervoor kun je de programmeertaal van jouw keuze voor jouw hardware gebruiken, zolang je maar BLE-advertisements kunt uitsturen.

BTHome is een open standaard voor bluetooth-sensors. Klik op de afbeeldingen voor een grotere weergave.

Bluetooth in Home Assistant inschakelen

Voor je met BTHome aan de slag gaat, dien je eerst na te gaan of je bluetooth-adapter door Home Assistant wordt herkend. Heb je een ingebouwde bluetooth-adapter, bijvoorbeeld op je Raspberry Pi, dan wordt die normaal gesproken al herkend op de pagina Instellingen / Apparaten & Diensten / Integraties. Zo niet, bijvoorbeeld als je een externe bluetooth-adapter via usb aansluit, klik dan rechts onderaan op die pagina op Integratie toevoegen en kies Bluetooth. Bevestig met Opslaan dat je de herkende adapter wilt toevoegen.

Als dit werkt, zul je in de integraties doorgaans al allerlei bluetooth-apparaten herkend zien worden. Dat is dankzij de integraties voor Xiaomi, ThermoBeacon, Qingping, ThermoPro, RuuviTag en vele andere die standaard al ingeschakeld zijn. De ondersteuning voor BTHome dien je nog expliciet in te schakelen, maar daarvoor hebben we eerst een werkend BTHome-apparaat nodig.

Zorg dat Home Assistant je bluetooth-adapter herkent.

Energiezuinig bluetooth-bordje

Voor bluetooth alleen hebben we geen ESP32-microcontrollerbordje of een Raspberry Pi Pico nodig, die immers ook een wifi-chip hebben en daardoor meer energie verbruiken. Daarom kiezen we voor een microcontrollerbordje gebaseerd op de nRF52840, een populaire bluetooth-chip van Nordic Semiconductor. Dit soort bordjes zijn energiezuinig en worden door talloze programmeeromgevingen ondersteund.

In dit artikel gebruiken we als sensorbordje een XIAO nRF52840 Sense van Seeed Studio. Het is een uiterst compact bordje (21 bij 17,5 mm) waarin een microfoon, accelerometer en gyroscoop zijn ingebouwd. Met die twee laatste kun je detecteren wanneer het bordje beweegt. Kies je een ander bordje, dan zul je de instructies in dit artikel wellicht hier en daar moeten veranderen, maar de aanpak blijft hetzelfde.

De Seeed XIAO nRF52840 Sense is een uiterst compact microcontrollerbordje met bluetooth en sensors.

CircuitPython op de Seeed XIAO nRF52840 Sense

Eerst dienen we CircuitPython op het bordje te installeren, een op Python gebaseerde programmeertaal voor microcontrollers. Download op de website van CircuitPython het firmwarebestand voor je bordje, in ons geval CircuitPython 8.0.2 voor de Seeed Studio XIAO nRF52840 (Sense). Het bordje bestaat ook in een versie zonder de sensors maar met dezelfde firmware, maar voor dit artikel hebben we de Sense-versie met sensors nodig.

Sluit daarna het bordje via usb aan op je computer en druk twee keer snel na elkaar op het minuscule resetknopje (aangeduid met RST) naast de usb-aansluiting.

Op je computer verschijnt nu een schijf met de naam XIAO-SENSE. Sleep het gedownloade bestand adafruit-circuitpython-Seeed_XIAO_nRF52840_Sense-nl-8.0.2.uf2 naar de schijf. Daarna koppelt je computer de schijf af en koppelt hij een nieuwe schijf met de naam CIRCUITPY aan. Je bordje is nu klaar om te programmeren.

©Seeed Studio

Druk twee keer snel na elkaar op het minuscule resetknopje naast de usb-aansluiting.

Mu-editor

De eenvoudigste manier om je bordje in CircuitPython te programmeren, is met de code-editor Mu, die zowel voor Windows als voor macOS en Linux beschikbaar is. Start Mu op, klik bovenaan links op Mode, kies CircuitPython uit de lijst en klik op OK. Doorgaans wordt nu je aangesloten bordje herkend. Klik bovenaan op Serial om dit te controleren. Dit opent onderaan een tekstveld van de REPL (read–eval–print-loop). Druk je daarin op Enter, dan krijg je de CircuitPython-versie te zien die je bordje draait, samen met de naam van het bordje.

In het grotere tekstveld bovenaan kun je nu je code typen die je op je bordje wilt uitvoeren. Om te testen of de hardware werkt, typ je daarin de volgende code die de ingebouwde led doet knipperen:

De code kun je overnemen vanuit dit bestand.

Klik bovenaan op Save, selecteer code.py en bevestig dat je dit bestand wilt overschrijven. Als je nu in de REPL op Ctrl+D drukt om het bordje te herstarten, draait je CircuitPython-code en knippert de led.

Met de code-editor Mu programmeer je je microcontrollerbordje in CircuitPython.

Te ingewikkeld?

Een bewegingsmelder kopen hoeft ook niet duur te zijn

Sensordata uitlezen

Door de led te laten knipperen, weten we dat je bordje werkt. Maar we willen de sensordata uitlezen. We gebruiken de IMU (Inertial Measurement Unit), die een accelerometer en gyroscoop bevat. Deze wordt ondersteund door een bibliotheek van Adafruit. Download dus de CircuitPython-bibliotheken, met name de bundel voor CircuitPython 8.x. Pak het zip-bestand uit en kopieer de mappen adafruit_bus_device, adafruit_lsm6ds en adafruit_register naar de map lib van de drive genaamd CIRCUITPY. Die map bevat nu dus drie mappen.

Schrijf nu in het bestand code.py het volgende programma:

De code kun je overnemen vanuit dit bestand.

Deze code schakelt de IMU in, wacht 50 ms tot de sensor is ingeschakeld, stelt de I2C-bus in en initialiseert dan de IMU. Daarna lezen we elke seconde de versnelling en hoeksnelheid over de drie assen in en tonen deze. Sla je dit bestand op met Ctrl+S, dan krijg je in de REPL de sensorwaardes te zien. Als je wat zwaait met het bordje, zie je onmiddellijk het effect op de metingen.

We lezen de versnelling van de accelerometer en hoeksnelheid van de gyroscoop in.

Bewegingsdetectie

Dan moeten we nu uit deze data, die continu veranderen, beweging detecteren. We willen een eenvoudig signaal: het bordje beweegt of het bordje beweegt niet. Dat kun je op allerlei geavanceerde manieren doen, met de accelerometer, gyroscoop of een combinatie van de twee. Voor de eenvoud gebruiken we hier gewoon de gyroscoopwaardes. We kwadrateren elk van de drie componenten en tellen ze op, en we beschouwen het resultaat als beweging wanneer dit groter is dan 0,01.

Onze while-lus wordt dan eenvoudig:

De code kun je overnemen vanuit dit bestand.

We verminderen het slaapinterval tot 100 ms om een snellere reactie te krijgen. Elke keer dat je nu het bordje beweegt, krijg je “Moving” te zien in de REPL. Pas indien nodig de drempelwaarde 0.01 aan.

Apparaten die BTHome ondersteunen Grote fabrikanten blijven hun eigen formaat gebruiken, maar er bestaan wel diverse opensource-projecten die ondertussen BTHome ondersteunen. Het bekendste is ATC_MiThermometer, alternatieve firmware voor sommige bluetooth-thermometers van Xiaomi. Als je deze firmware op een apparaat hebt geïnstalleerd, kun je instellen dat deze de temperatuur in BTHome-formaat uitstuurt.

Ook de b-parasite, een grondvochtigheidssensor waarvan het ontwerp van de hardware én de firmware opensource is, kan zijn data in BTHome-formaat uitsturen.

©Raphael Baron

De opensource-grondvochtigheidssensor b-parasite ondersteunt het BTHome-formaat om zijn sensordata via bluetooth uit te sturen.

Bluetooth-advertenties

Ons bordje detecteert nu beweging en toont dat in de REPL, maar nu willen we dit signaal via bluetooth uitsturen. Daarvoor dienen we eerst in de specificatie van het BTHome-formaat te duiken. In bluetooth kunnen we via een advertentie data uitsturen naar iedereen in de buurt. Zo’n advertentie bestaat uit meerdere elementen en elk element op zijn beurt uit een aantal bytes: eerst de lengte van het element (dit lengtebyte uitgezonderd), dan het type element en daarna data waarvan de betekenis van het element afhangt.

Een advertentie die door BTHome wordt begrepen, kan uit drie elementen bestaan. Eén element is verplicht: Service Data (16bit-UUID). Hierin komen de sensordata te staan. Een element Flags is sterk aangeraden. En optioneel is een element Local Name, waarmee het apparaat zijn naam adverteert.

De website van BTHome legt het formaat van de bluetooth-advertenties byte voor byte uit.

Structuur BTHome-advertentie

Laten we dus eens byte voor byte de advertentie samenstellen, met deze drie elementen. Eerst nemen we de flags op en die bytes zijn altijd hetzelfde voor BTHome: [0x02, 0x01, 0x06]. We gebruiken hier de Python-notatie voor een lijst (met rechte haken rond de elementen van de lijst) en de hexadecimale notatie van de bytes, elk voorafgegaan dor 0x. De 2 staat voor de lengte van het element (het aantal bytes erna), de 1 duidt aan dat het element van het type Flags is en 6 betekent LE General Discoverable Mode en BR/EDR Not Supported. Samengevat: dit is een apparaat met alleen bluetooth low-energy dat algemeen te vinden moet zijn.

Daarna komt een element met de eigenlijke sensordata. De lengte weten we nog niet, dus die laten we even open. Het type is 0x16, wat betekent dat het om service data met een 16bit-UUID gaat.

Daarna komen de data zelf. Die beginnen met het UUID en dat zijn altijd de bytes [0xD2, 0xFC]: het UUID van Allterco Robotics (de maker van Shelly-apparaten), dat gebruikers een licentie geeft om dit UUID te gebruiken voor BTHome.

Daarna komt een byte met apparaatinformatie. Als het om versie twee van het BTHome-formaat zonder encryptie gaat, is dit byte altijd 0x40.

Dan komen nog twee bytes: één met het type data (beweging wordt voorgesteld door 0x22) en één met de data zelf: 0 voor geen beweging, 1 voor wel beweging.

En nu kunnen we dus de bytes voor de sensordata aanmaken: [0x06, 0x16, 0xD2, 0xFC, 0x40, 0x22, 0x01]. Het eerste byte is 6, omdat het de lengte is van de bytes erna.

Tot slot voegen we nog een element met de naam van het apparaat toe, bestaande uit de lengte, 0x09 voor het type en dan de bytes van de naam.

Klasse voor BTHome-advertentie

Om dit wat overzichtelijker te maken, definiëren we een klasse in onze CircuitPython-code die deze elementen samenneemt en ze daarna eenvoudig naar de bytes omzet die we in de bluetooth-advertentie kunnen uitsturen. De code ziet er als volgt uit:

De code kun je overnemen vanuit dit bestand.

Je ziet hier dat we de elementen voor de flags en service data definiëren. In de methode __init__ (die een object van de klasse aanmaakt) zetten we de naam die je aan het object doorgeeft om naar een element voor de local name. Op het moment dat we de bewegingstoestand van de sensor willen adverteren, kunnen we dan eenvoudigweg de methode adv_data van het object roepen met als argument 1 voor beweging en 0 voor geen beweging. Die methode plakt al die reeksen bytes op de juiste manier aan elkaar en vervangt het laatste byte van de service data door de bewegingstoestand.

Beweging adverteren

Dan komt nu de laatste stap, de bewegingsdetectie via bluetooth adverteren. Daarvoor importeren we in het begin van de code eerst de adapter van de module _bleio):

from _bleio import adapter

We maken dan op het einde van onze code een object van de klasse BTHomeAdvertisement met de naam van ons apparaat, en de while-lus breiden we uit om de bewegingstoestand telkens te adverteren:

De code kun je overnemen vanuit dit bestand.

Bij beweging vragen we aan het object bthome de advertentiedata voor beweging op en anders de advertentiedata voor geen beweging. We tonen de data in de REPL en adverteren ze via de bluetooth-adapter. Na 100 ms stoppen we met adverteren en doen we weer een meting. Daarna adverteren we weer met de nieuwe data en zo blijft dat aan de gang. Zoals eerder gezegd vind je op GitHub de volledige code.

Integratie in Home Assistant

Dan nu de test: detecteert Home Assistant onze sensor? Ga in het dashboard van Home Assistant naar Instellingen / Apparaten en Diensten / Integraties. Klik rechts onderaan op Integratie toevoegen en kies BTHome. Als je bordje aan het adverteren is, wordt het hier al onmiddellijk herkend. Klik op Opslaan, ken het eventueel aan een ruimte toe en klik dan op Voltooien. Daarna kun je het apparaat bekijken en de bewegingssensor erin toevoegen aan je dashboard of automatisaties.

Onze BTHome-bewegingssensor wordt automatisch herkend in Home Assistant.

Flexibel formaat

We hebben in dit artikel een eenvoudig voorbeeld gemaakt van een sensor die één type data uitstuurt: 1 of 0 voor wel of geen beweging. Maar het BTHome-formaat ondersteunt tientallen datatypes, waaronder temperatuur, luchtvochtigheid, batterijpercentage, stroom en snelheid.

BTHome is ook een flexibel formaat: je kunt de data van meerdere sensors tegelijk in één advertentie uitsturen. Stel dat we op onze XIAO nRF52840 Sense na de beweging ook de temperatuur willen uitsturen, dan voegen we aan de service data gewoon 0x02 voor de temperatuur toe en dan twee bytes die de temperatuur in honderdsten van een graad Celsius voorstellen. En we kunnen er ook nog 0x01 voor het batterijpercentage aan toevoegen en dan een byte met een waarde van 0 tot 100. De BTHome-integratie van Home Assistant pikt al die types en bijbehorende data op. Als je dus ooit een eigen bluetooth-sensor wilt maken, probeer dan BTHome eens uit.

13 Een greep uit de types sensors die BTHome ondersteunt.

 

Sensordata versleutelen Het BTHome-formaat dat we in dit artikel hebben gebruikt, stuurt alle sensordata onversleuteld uit. Iedereen in de buurt met een bluetooth-ontvanger kan deze data dus meelezen. Heb je dat liever niet, dan moet je gebruikmaken van de versleuteling in BTHome. De service data bevatten dan na de formaataanduiding 0x41 (BTHome v2 met versleuteling) versleutelde data, een teller en een Message Integrity Check (MIC). Alleen wie de sleutel heeft waarmee de data zijn versleuteld, kan de oorspronkelijke sensordata uit deze geadverteerde data reconstrueren. De BTHome-integratie in Home Assistant vraagt je om de sleutel in te voeren als je een BTHome-apparaat met encryptie wilt toevoegen.

BTHome ondersteunt ook versleuteling om pottenkijkers tegen te houden.

▼ Volgende artikel
Review HP OmniBook X Flip 14 – Vlotte laptop is ook tablet
© Jeroen Boer - ID.nl
Huis

Review HP OmniBook X Flip 14 – Vlotte laptop is ook tablet

De HP OmniBook X Flip 14 is een nieuw model binnen de OmniBook X-reeks die bestaat uit luxere AI-laptops. Ten opzichte van de eerdere OmniBook X kun je de Flip ook gebruiken als tablet. Verder valt op dat deze nieuwe variant weer gewoon een Intel-processor heeft. Hoe bevalt deze laptop?

Uitstekend
Conclusie

De HP OmniBook X Flip 14 is een fraaie laptop voorzien van krachtige hardware die je kunt gebruiken als laptop én als tablet. Voor een compacte laptop heeft de OmniBook X Flip 14 opvallend veel aansluitingen: we kunnen ons niet voorstellen dat je met tweemaal usb-c, tweemaal usb en HDMI iets tekort zult komen. Helemaal perfect is de OmniBook X Flip 14 echter niet, want het volledig vlakke toetsenbord met weinig ruimte tussen de toetsen vinden we niet heel fijn tikken. Ook is de behuizing erg gevoelig voor vingerafdrukken, waardoor de fraai ontworpen laptop er al snel wat smoezelig uitziet.

Plus- en minpunten
  • Mooi scherm
  • Goede accuduur
  • Veel aansluitingen
  • Goede webcam
  • Prima prestaties
  • Vingerafdrukgevoelig
  • Tikcomfort toetsenbord

De HP OmniBook X Flip 14 is een convertible laptop die je dankzij een omklapbaar scherm ook als tablet kunt gebruiken. De stevige behuizing is gemaakt van aluminium en afgewerkt in een fraaie kleur die HP atmosferisch blauw noemt. Het materiaal is helaas wel erg vingerafdrukgevoelig en de laptop zat al direct na het uitpakken vol met zichtbare vingerafdrukken. De laptop is ook in het zilver verkrijgbaar; wellicht vallen op die kleur vingerafdrukken minder op. De OmniBook X Flip weegt 1,38 kilogram en dat zeker voor een convertible lekker licht.

©Jeroen Boer - ID.nl

De aluminium behuizing is uitgevoerd in een fraaie donkerblauwe kleur.

Ondanks de compacte vormgeving krijg je behoorlijk wat aansluitingen waaronder twee usb-c-aansluitingen. Die zijn opvallend genoeg niet identiek qua mogelijkheden. Al is het functionele verschil in veel gevallen niet merkbaar, want beide poorten ondersteunen data, video en opladen. De snelste poort is een Thunderbolt 4-variant met een maximale snelheid van 40 Gbit/s en DisplayPort 2.1. De andere poort ondersteunt usb 3.2 op maximaal 10 Gbit/s in combinatie met Displayport 1.4a. DisplayPort 2.1 biedt veel hogere verversingssnelheden voor 4K-schermen tot 240 Hz en ondersteunt 8K-schermen.

©Jeroen Boer - ID.nl

De meeste aansluitingen vind je aan de linkerkant.

Daarnaast is ook voorzien in HDMI 2.1, een 3,5mm-headsetaansluiting en twee normale usb3.2-poorten met een maximale snelheid van 10 Gbit/s. Op het gebied van aansluitingen kom je kortom niks tekort. Zeker omdat de laptop ook nog eens wifi 7 inclusief ondersteuning voor de 6GHz-band heeft.

©Jeroen Boer - ID.nl

Op de rechterkant vind je een usb-poort en de headsetaansluiting.

In het startmenu vinden we ten opzichte van een normale Windows-installatie relatief veel extra pictogrammen. Veel daarvan zijn van HP zelf in de vorm van documentatie en wat eigen tooltjes zoals een virtuele lichtring om jezelf beter te belichten tijdens videogesprekken en een eigen AI-assistent. Daarnaast is een proefversie van McAfee geïnstalleerd en zien we aanbiedingen van Adobe en Dropbox.

Verschillende varianten

De OmniBook X Flip 14 is te koop in verschillende configuraties en is leverbaar met zowel Intel- als AMD-processors. Dat is overigens een groot verschil ten opzichte van de HP OmniBook X die we vorig jaar getest hebben, want dat was ondanks de vrijwel identieke naam een laptop voorzien van een ARM-processor van Qualcomm. Afhankelijk van de configuratie is de OmniBook X Flip 14 voorzien van een oled- of ips-scherm. Ons testexemplaar met volledig typenummer HP OmniBook X Flip 14-fm0685nd is de duurste uitvoering met een oledscherm en beschikt over een Intel Core Ultra 7 258V met geïntegreerde 32 GB RAM. Deze processor uit Intels Lunar Lake-generatie is voorzien van een npu (neural processing unit) die krachtig genoeg is om de laptop te classificeren als Copilot+-pc. Alle AI-extraatjes in Windows zoals live-ondertitels, webcameffecten en simpele beeldgeneratie in Paint zijn dan ook aanwezig. De processor wordt in de geteste configuratie gecombineerd met een 1 TB-ssd afkomstig van Samsung. Het geïntegreerde werkgeheugen kun je logischerwijs niet uitbreiden. De M.2-ssd en het wifi-kaartje zijn eventueel wel verwisselbaar. 

Toetsen zonder uitsparing

Waar veel duurdere laptops een toetsenbord hebben waarbij er per toets individuele uitsparingen in het metaal zijn gemaakt, gebruikt HP op deze laptop een grote uitsparing waar het toetsenbord in verwerkt is. Om toch een premiumuitstraling te krijgen zijn de toetsen wat groter dan normaal waardoor er vrijwel geen uitsparing tussen de toetsen zichtbaar is. In combinatie met het extra grote lettertje ziet het er lekker robuust uit. Toch zijn we niet heel enthousiast. De toetsen zijn geheel vlak en doordat er nauwelijks een uitsparing tussen de toetsen zit, is het soms lastig om te voelen welke toets je gebruikt. De aanslag had ook wat duidelijker gekund. Het tikcomfort is wat ons betreft minder goed dan het toetsenbord dat we vorig jaar op de OmniBook X zagen. Dat toetsenbord had wel los uitgesneden toetsen in de behuizing en zag er met zijn toetsen in verschillende kleuren ook wat leuker uit.

©Jeroen Boer - ID.nl

Er zit weinig ruimte tussen de platte toetsen.

Het toetsenbord heeft verlichting die je in twee standen kunt instellen. In de rij met functietoetsen valt een functietoets op voor het invoegen van emoji. Wellicht voor veel mensen overbodig, maar deze emoji-toets is niet ten koste gegaan van andere functionaliteiten. Waar je op andere laptops bijvoorbeeld een toets hebt om de webcam mee uit te zetten, is er hier een schuifje ingebouwd waardoor een knopje niet nodig is. Ook een muteknop voor de microfoon is gewoon aanwezig.

Onder het toetsenbord is een ruime touchpad geplaatst die prima werkt en gebaren met drie en vier vingers ondersteunt. Wel lijkt het erop dat het geen glazen touchpad is en dat voelt wat goedkoop aan. 

Mooi oledscherm

Het 14inch-aanraakscherm is voorzien van een oledpaneel met een resolutie van 2880 x 1800 pixels. Er wordt een hoge verversingssnelheid van 120 Hz ondersteund die volgens Windows dynamisch kan worden aangepast tussen 48 en 120 Hz (VRR) om energie te besparen. Een beetje vreemd is dat je handmatig alleen uit 48 of 120 Hz kunt kiezen. Buiten die eigenaardigheid om heeft de laptop een uitstekend scherm met goede kleuren en een indrukwekkend contrast. De maximale helderheid is voor binnen meer dan genoeg, maar er zijn (dure) laptops die meer schermhelderheid bieden. Wel ondersteunt het scherm HDR waarbij de piekhelderheid wat hoger ligt dan de algemene schermhelderheid. Het paneel is glanzend afgewerkt met Gorilla Glass 3.

©Jeroen Boer - ID.nl

De laptop heeft een 360graden-scharnier waardoor je het scherm kunt omklappen.

Die afwerking is niet voor niks, want de laptop heeft een aanraakscherm en kun je ook als tablet gebruiken. Het omklappen van het scherm naar de tabletmodus gaat soepel en ook als tablet voelt het geheel solide. Het scharnier is stijf genoeg om te voorkomen dat het scherm in de tabletmodus klappert, iets dat je soms wel eens ziet op dit soort convertibles. Het platte en goed gevulde toetsenbord blijkt in de tabletmodus juist erg prettig te zijn, want hiermee heeft je tablet een vlakke achterkant waardoor je het apparaat fijn kunt vasthouden. We hebben het niet kunnen testen, maar het scherm is compatibel met een optionele stylus die je magnetisch aan de behuizing kunt plakken. Deze HP 700 pen kost 100 euro en komt uiteraard vooral in de tabletmodus van pas. 

©Jeroen Boer - ID.nl

Als je het scherm omklapt, kun je de OmniBook X Flip 14 gebruiken als tablet.

Boven het scherm heeft HP een 5megapixel-camera geplaatst. Behalve in Full HD kan de camera ook filmen in 1440p. De beelden zijn prima en je bent altijd duidelijk in beeld tijdens een videogesprek. Handig is dat HP de webcam heeft voorzien van een ingebouwd schuifje. Je kunt dankzij een patroontje ook duidelijk zien of het schuifje gesloten is. De camera is geschikt voor biometrisch inloggen via Windows Hello. Dat is direct je enige biometrische mogelijkheid, want een vingerafdrukscanner ontbreekt. 

©Jeroen Boer - ID.nl

De webcam is voorzien van een ingebouwd privacyschuifje.

Uitstekende prestaties

De Intel Core Ultra 7 258V is een mobiele processor met in totaal acht cores waarvan vier volwaardige en vier energiezuinige cores. Uiteraard is dit vergeleken met processors met een hoger energieverbruik geen heel indrukwekkende processor, maar voor een laptop is dit wel een krachtige chip. De laptop zet dan ook een uitstekende score neer van 6822 punten in PCMark 10. Ook de scores in Cinebench R23 zijn met een single-core-score van 1841 en een multi-core-score van 10372 punten uitstekend. Het verval bij langdurige belasting blijft beperkt. Tijdens alledaagse werkzaamheden als surfen en het bewerken van documenten doet de koeling stil zijn werk. Als je de laptop zwaardere taken laat uitvoeren, hoor je de koeling wel aanslaan. 

Het is geen verrassing, want dit is niet de eerste laptop met deze cpu die we testen, maar de Intel Arc 140V is een capabele geïntegreerde gpu. In 3DMark Time Spy scoort deze laptop 4457 punten en dat betekent dat wat oudere spellen prima speelbaar zijn. Zo halen we in Shadow of the Tomb Raider op de voorinstelling lowest gemiddeld 69 fps terwijl als we AI-upscaler XeSS inschakelen dat 84 fps wordt. Zelf op de voorinstelling High in combinatie met XeSS halen we een speelbare 60 fps. Je kunt een hoop spellen spelen als je de grafische instellingen wat beperkt.

De accu met een capaciteit van 59 Wh biedt een uitstekende werktijd. In onze test houdt de laptop het maar liefst 15 uur uit en dat is in lijn met wat HP zelf opgeeft. De ssd is een exemplaar van Samsung dat goed presteert. De maximale lees- en schrijfsnelheden bedragen een uitstekende 5012,20 en 3284,23 MB/s. Belangrijker is hoe de ssd presteert tijdens werkzaamheden met veel bewerkingen op kleine bestanden tegelijkertijd. In de Quick System drive Benchmark van PCMark 10 die precies dat test, haalt de ssd een snelheid van 273,04 MB/s. Dat is op zich geen slechte score, maar er zijn tegenwoordig ssd's die hier een veelvoud van scoren.

Conclusie

De HP OmniBook X Flip 14 is een fraaie laptop voorzien van krachtige hardware die je kunt gebruiken als laptop én als tablet. Voor een compacte laptop heeft de OmniBook X Flip 14 opvallend veel aansluitingen: we kunnen ons niet voorstellen dat je met tweemaal usb-c, tweemaal usb en HDMI iets tekort zult komen. Helemaal perfect is de OmniBook X Flip 14 echter niet, want het volledig vlakke toetsenbord met weinig ruimte tussen de toetsen vinden we niet heel fijn tikken. Ook is de behuizing erg gevoelig voor vingerafdrukken, waardoor de fraai ontworpen laptop er al snel wat smoezelig uitziet.

▼ Volgende artikel
Waar voor je geld: 5 slimme deurbellen met camera en online opslag
Zekerheid & gemak

Waar voor je geld: 5 slimme deurbellen met camera en online opslag

Bij ID.nl zijn we dol op kwaliteitsproducten waar je niet de hoofdprijs voor betaalt. Daarom speuren we een paar keer per week binnen een bepaald thema naar zulke deals. Ga je op vakantie maar wil je toch weten wat er bij je voordeur gebeurt? Een slimme deurbel laat je ook als je niet thuis bent zien wie er voor de deur staat. Wij vonden een vijftal betaalbare exemplaren.

Met een slimme deurbel krijg je een seintje als er iemand aanbelt en kun je vaak ook terugzien wie er voor de deur heeft gestaan. Je kunt daarbij kiezen om de video's lokaal op te slaan, maar de hier besproken deurbellen bieden ook online opslag. En dat is handig, want zo kun je ook tijdens je vakantie in de gaten houden welke (ongenode) gasten er voor de deur staan.

D230S1

Wat handig is aan de Tapo D230S1, is dat hij wordt geleverd met een compacte gong die tevens functioneert als een internet tussenpunt. Hierin kun je een microSD-kaart plaatsen voor lokale opslag van videobeelden, wat betekent dat een abonnement voor cloudopslag niet strikt noodzakelijk is om beelden te bewaren. Mocht je toch liever de flexibiliteit van cloudopslag hebben, dan biedt TP-Link hiervoor een optionele dienst aan. De installatie is over het algemeen eenvoudig en hij werkt op een batterij, wat veel vrijheid geeft qua plaatsing zonder gedoe met bedrading. De beeldkwaliteit is voldoende voor het dagelijks gebruik en de deurbel is uitgerust met slimme detectiefuncties om je op de hoogte te stellen van activiteit voor je deur. Dit maakt het een goede keuze voor wie een complete set zoekt zonder direct vast te zitten aan maandelijkse kosten voor opslag.

Ring Video Doorbell Wired

De Ring Video Doorbell Wired is een van de meest budgetvriendelijke opties van Ring. Deze deurbel sluit je bedraad aan op je bestaande deurbelbedrading, Dit betekent dat je je geen zorgen hoeft te maken over het opladen van batterijen of het leegraken ervan. De deurbel biedt 1080p HD-video en tweeweg-communicatie, zodat je met de bijbehorende app kunt praten met wie er voor de deur staat. Een belangrijk punt om te overwegen bij de Ring Video Doorbell Wired is dat voor de meeste functionaliteiten, waaronder het opslaan en terugkijken van videobeelden, een Ring Protect-abonnement nodig is. Zonder dit abonnement zijn de mogelijkheden vrij beperkt tot livebeeld en notificaties.

Arlo Essential 2 2K Video Doorbell

Deze draadloze videodeurbel van Arlo heeft focus op scherpe beeldkwaliteit en gebruiksgemak. De Arlo Essential 2 filmt in 2K resolutie, waardoor je een beter beeld krijgt dan met de meeste Full-HD-camera's. Een opvallend kenmerk is de 180 graden kijkhoek en de 1:1 beeldverhouding, waardoor je een volledig 'hoofd-tot-teen' beeld krijgt van je bezoekers en pakketjes op de grond. De installatie is bijzonder makkelijk en geheel draadloos. Voor het opslaan van opgenomen videobeelden maakt Arlo gebruik van een cloudgebaseerd systeem, waar je wel een abonnement voor nodig hebt.

Xiaomi Smart Doorbell 3

Ook deze deurbel filmt in 2K resolutie en heeft een indrukwekkende kijkhoek van 180 graden, waardoor je een breed overzicht krijgt van wat er voor je deur gebeurt. Een van de handige eigenschappen is de meegeleverde gong die ook functioneert als basisstation. Deze gong is uitgerust met een interne opslag van 64 GB, wat voldoende is voor de meeste gebruikers en maakt het overbodig om een apart cloudabonnement te nemen, iets wat overigens wel mogelijk is. De deurbel heeft een ingebouwde batterij die lang meegaat en is eenvoudig te installeren. Ook beschikt hij over AI-gestuurde persoonsdetectie, wat helpt om valse meldingen te verminderen.

Imou Doorbell 2S Kit

De Imou Doorbell 2S Kit is een draadloze videodeurbel met nachtfunctie Imou biedt een optionele cloudopslagdienst, maar je kunt de video's ook lokaal opslaan. De deurbel werkt op een ingebouwde, oplaadbare batterij, wat de installatie zeer eenvoudig maakt omdat je geen bedrading nodig hebt. De AI-gestuurde persoonsdetectie zorgt ervoor dat je geen ongewenste meldingen van beweging krijgt, dus niet bij elke langslopende kat.