ID.nl logo
Zo hack je de software in je hardware
© Reshift Digital
Huis

Zo hack je de software in je hardware

Bij hacken denken we vaak aan software die op een computer draait, maar er draait ook heel wat software in allerlei andere elektronische apparaten, zoals ESP8266- of ESP32-microcontrollerbordjes, een bluetooth-beacon of een Apple AirTag. Hoe haal je daar gevoelige informatie uit of pas je de werking van het apparaat aan?

Hardware-hacken is een heel breed domein en in deze ene masterclass kunnen we daar helemaal geen recht aan doen. Maar we tonen je enkele voorbeelden van wat er zoal mogelijk is. We hopen dat je daardoor geïnspireerd raakt om zelf op onderzoek uit te gaan.

Laten we beginnen met iets eenvoudigs. In PCM hebben we al vaak gewerkt met ESP8266- en ESP32-microcontrollerbordjes. Je schreef je code daarvoor, compileerde die en schreef die dan naar het ontwikkelbordje. Dat deed je bijvoorbeeld met:

- Arduino IDE;

- Arduino IoT Cloud;

- PlatformIO;

- ESPHome;

- esptool.

Wifi-wachtwoorden ontfutselen

Met een ESP8266 of ESP32 wil je bijna altijd met een wifi-netwerk verbinden. In je code geef je dus de SSID en het bijbehorende wachtwoord op van het gewenste wifi-netwerk. Dat wordt door esptool naar het flashgeheugen van je microcontroller geschreven. Vaak is dit gewoon onversleuteld, zodat iedereen met toegang tot de microcontroller je wifi-wachtwoord kan uitlezen. De ESP32 ondersteunt wel flash-encryptie met een sleutel die zich in de registers van de microcontroller bevindt. Maar dit wordt nog niet al te vaak gebruikt.

Je mag er dus van uitgaan dat heel wat ESP8266- en ESP32-bordjes, ook degene die jij in je huis hebt ingezet, je wifi-wachtwoord onversleuteld hebben opgeslagen. Iemand die een van je ontwikkelbordjes steelt, kan hier dus je wifi-wachtwoord uit ontfutselen en zo in je netwerk inbreken. Dit is ook iets om mee rekening te houden als je een defect ontwikkelbordje weggooit: hier kunnen nog allerlei gevoelige gegevens uitgehaald worden. Als je het flashgeheugen niet kunt overschrijven of vernietigen, dan zit er niet anders op dan het bordje bij je te houden tot je je wifi-wachtwoord hebt veranderd.

Flashgeheugen uitlezen

Het flashgeheugen van een ESP8266 of ESP32 uitlezen is even eenvoudig als er firmware naar schrijven. Dat doe je met het programma esptool. Als je de programmeertaal Python hebt geïnstalleerd en de bijbehorende pakketbeheerder pip, dan installeer je esptool eenvoudig met de opdracht:

pip3 install esptool

Sluit nu je ESP8266- of ESP32-ontwikkelbordje via een usb-kabel op je computer aan en identificeer de chip met:

esptool.py flash_id

Je krijgt dan iets te zien als:

esptool.py v3.1

Found 1 serial ports

Serial port /dev/ttyUSB0

Connecting....

Detecting chip type... ESP8266

Chip is ESP8266EX

Features: WiFi

Crystal is 26MHz

MAC: 2c:3a:e8:10:db:a3

Uploading stub...

Running stub...

Stub running...

Manufacturer: ef

Device: 4016

Detected flash size: 4MB

Hard resetting via RTS pin...

Je ziet dat het hier om een ESP8266EX gaat en dat die 4 MB flashgeheugen heeft. Dat laatste is belangrijk als je het hele flashgeheugen wilt uitlezen. Dat doe je nu met de volgende opdracht:

esptool.py read_flash 0x0 0x400000 esp8266.bin

Deze opdracht leest het flashgeheugen van adres 0 tot 0x400000 (hexadecimaal voor 4 MB) uit en slaat dit op in het bestand esp8266.bin.

©PXimport

Firmware analyseren

Je hebt nu een kopie van de firmware die op je ESP8266 draait en deze kun je verder op je computer analyseren. Als je op een Linux-computer werkt, is de tool strings meestal standaard geïnstalleerd (onderdeel van het pakket binutils): die toont je alle leesbare tekenreeksen in een binair bestand. In Windows maakt een gelijknamig en bijna identiek programmaonderdeel uit van Windows Sysinternals.

Je past het als volgt toe in een opdrachtvenster:

strings esp8266.bin

Toen we dit toepasten op ESPHome-firmware in onze ESP8266, vonden we onmiddellijk de SSID en wachtwoord van ons wifi-netwerk. Die kwamen zelfs bij herhaling voor in het bestand.

De opdracht strings is ook handig om te weten te komen met wat voor soort firmware je te maken hebt. Je ziet er snel functieaanroepen, versienummers en zelfs volledige html-code van een ingebouwde webinterface.

Via een entropiegrafiek krijg je een idee in welk deel van de firmware iets versleuteld is

-

Binwalk

Als je wat meer informatie te weten wilt komen over de structuur van het firmwarebestand, is het programma binwalk handig. Dit scant de inhoud van een firmwarebestand op bepaalde signatures, en zo kan het bestandssystemen of bestanden in de firmware detecteren en zelfs uitpakken.

Stel dat je binwalk uitvoert op een firmwarebestand en je krijgt het volgende te zien:

2837765 0x2B4D05 JPEG image data, EXIF standard

Dan weet je dat op adres 0x2B4D05 een jpeg-bestand start. Hoe haal je dit nu uit de firmware? Je kunt eenvoudig alle herkende bestandstypes extraheren met de opdracht:

binwalk -e firmware.bin

Je kunt het extraheren ook beperken tot een specifiek type data waarin je geïnteresseerd bent:

binwalk -D jpeg firmware.bin

Een andere nuttige functie van binwalk is de berekening van entropie (wanorde):

binwalk -E firmware.bin

Dit toont een grafiek met op de horizontale as de geheugenadressen en op de verticale as de entropie van 0 tot 1.

Entropie is een maat voor wanorde of willekeur. De geheugengebieden waar de entropie 0 is, zijn gebieden waar dezelfde byte (bijvoorbeeld 0x00 of 0xFF) herhaald wordt. Gebieden waar de entropie 1 is, bevatten volledig willekeurige bytes. Meestal is dat een teken dat deze gebieden versleuteld zijn. Licht de entropie dicht tegen 1 en schommelt die wat, dan is het gebied waarschijnlijk gecomprimeerd. En zie je dat een specifiek gebied een merkelijk lagere entropie heeft dan andere gebieden, dan weet je dat hierin veel herhaling voorkomt. De entropiegrafiek is dus een handige manier om te onderzoeken welke geheugengebieden in de firmware extra aandacht verdienen.

©PXimport

ImHex

Een grafisch programma om firmware te analyseren is ImHex, het is een hexeditor voor reverse-engineering. Het programma is te downloaden voor Windows, Linux en macOS. Open je firmwarebestand in ImHex en vink in het menu View de weergaven aan die je wilt zien.

Met Hex editor krijg je de data in het bestand te zien, met links de hexadecimale waardes van de bytes en rechts de overeenkomstige leesbare tekens die deze bytes als hun ASCII-code hebben. Met Strings kun je ImHex laten zoeken naar leesbare tekenreeksen van een opgegeven minimumlengte.

©PXimport

Chips identificeren

Niet alle elektronica heeft een eenvoudige seriële aansluiting via usb. Vaak moet je specifieke pinnen of testpunten op een printplaatje verbinden om het geheugen van de microcontroller uit te lezen. Als je geen technische documentatie over het product vindt, dien je eerst de chip te identificeren. Een vergrootglas of een digitale microscoop kan hierbij helpen. Zelf proberen we dit uit met een bluetooth-beacon dat we op AliExpress hadden gekocht.

Wanneer we de chip onder de microscoop leggen, zien we duidelijk dat het om een nRF51822 van Nordic Semiconductor gaat, een populaire ARM-chip met bluetooth-ondersteuning. Er lopen ook duidelijke sporen van de pinnetjes aan de zijkant van de chip naar een rij met testpunten. We willen vervolgens te weten komen waarvoor die testpunten dienen, en of ze ons kunnen helpen om het geheugen van de processor uit te lezen.

©PXimport

Testpunten identificeren

Om de pinnetjes van een microprocessor te identificeren, moeten we in de datasheet van de processor duiken. We zoeken in het InfoCenter van Nordic Semiconductor naar de product specification van de nRF51822. Op pagina 11 vinden we de pinnen van de QFN48-uitvoering van de nRF51822. De labels op de chip begint met QF, net zoals bij ons exemplaar.

Let op het zwarte bolletje in de linkerbovenhoek op de afbeelding met de pintoewijzing (zie boven/onder/plaatsaanduiding). Dit komt overeen met het bolletje op de chipbehuizing op je printplaatje. Oriënteer de chip hetzelfde. Je ziet dan in de afbeelding dat de pin rechtsonder in de onderste rij SWDCLK is en links ernaast SWDIO. Helemaal links zie je VSS, wat de negatieve spanning is (GND). In het rijtje pinnen links zie je twee keer VDD, de positieve spanning. Met deze vier pinnen weten we genoeg om verder te gaan. We hoeven alleen de sporen van die pinnen naar de overeenkomende testpunten te volgen. Voor SWDCLK en SWDIO is dat eenvoudig te zien: dat zijn de twee testpunten aan de rechterkant van de rij.

©PXimport

Serial Wire Debug (SWD)

De nRF51822 is een ARM Cortex-M0 32bit-processor, uitgerust met Serial Wire Debug (SWD). Dit is een debugpoort waarover kleinere ARM-processoren wel vaker beschikken. Ze bestaat uit twee pinnen (SWDIO en SWDCLK of ook wel SWCLK), en dan uiteraard nog een voedingspin en GND. Via SWDIO worden de data uitgewisseld, terwijl SWDCLK het kloksignaal vervoert.

Er is geen algemeen geldende standaardlay-out voor de SWD-pinnen, dus die zul je moeten uitzoeken. Op de meeste printplaatjes in commerciële producten zullen er geen labels bij de pinnen afgedrukt zijn. Zo ook bij het bluetooth-beacon dat we onderzochten. Maar als je de testpunten eenmaal geïdentificeerd hebt, is het een kwestie van een SWD-debugger op de correcte testpunten aan te sluiten.

Positieve en negatieve spanning identificeren

De SWDIO- en SWDCLK-testpunten hebben we al geïdentificeerd, terwijl VDD en GND moeilijker te identificeren zijn. Daarvoor heb je een multimeter nodig. Maar eerst moet je het printplaatje goed fixeren, zodat je er eenvoudig met meetpennen spanningen op kunt meten. Wij zijn zelf fan van de PCBite Kit van Sensepeek. Je plaatst twee of meer standaarden magnetisch op een metalen onderplaat, en bovenaan de standaarden klem je het printplaatje vast.

Plaats de batterij nu in het bluetooth-beacon. Het apparaatje start op en begint bluetooth-signalen uit te zenden. De SWD-testpunten hebben we al geïdentificeerd, dus nu is het enkel belangrijk om VDD en GND te vinden. Stel je multimeter in op een gelijkspanningsbereik rond 3 V, leg de zwarte meetpen van de multimeter op één testpunt en de rode op een ander testpunt. Zodra je een continue spanning van 3,3 V tussen beide punten meet, weet je dat het testpunt met de zwarte meetpen GND is en het testpunt met de rode meetpen VDD. Je hebt nu alle vier de benodigde testpunten geïdentificeerd.

©PXimport

SWD-debugger aansluiten

Om met deze testpunten te verbinden, heb je een SWD-debugger nodig. Wij gebruiken de Black Magic Probe, een JTAG- en SWD-debugger voor ARM Cortex-microcontrollers (Cortex-M en Cortex-A). In tegenstelling tot vele andere SWD-debuggers heb je hiervoor geen speciale software nodig, alleen gdb uit de GNU Arm Embedded Toolchain. Deze kun je op de website van ARM downloaden voor Windows, Linux en macOS.

Voor dit soort bewerkingen op printplaatjes met testpunten is de combinatie van de Black Magic Probe met de testnaalden van de PCBite Kit ideaal. Deze testprobes hebben een heel dunne naald die je op het kleinste testpunt laat rusten en die dan door het gewicht op de juiste plaats blijft liggen. De arm blijft magnetisch op de metalen onderplaat bevestigd. Aan de kop met de testnaald zijn twee pinnen te vinden waarop je jumperwires kunt aansluiten. De andere kant van de jumperwires sluit je aan op de overeenkomstige pinnen van het 7-pins JTAG-adapterbordje waarmee de Black Magic Probe wordt geleverd. Sluit SWDIO aan op TMS/SWDIO, SWDCLK op TCK/SWCLK, VSS op GND en VDD op VCC/tVref.

©PXimport

Continuïteit testen

Soms zijn er meerdere testpunten voor VDD of GND. Je kunt die eventueel nog identificeren door je multimeter in de continuïteitsstand te zetten en één meetpen op een bekend testpunt te zetten en met de andere meetpen onbekende testpunten aan te raken. Laat de multimeter een bliepje horen, dan weet je dat beide testpunten op dezelfde spanning staan omdat ze intern verbonden zijn. Wie weet vind je zo nog een handiger testpunt voor VDD of GND.

De Black Magic Probe en de PCBite Kit vormen de ideale combinatie

-

SWD in GDB

Sluit nu de usb-poort van de Black Magic Probe aan op je computer en kijk welke COM-poort (in Windows) of welk TTY-apparaat (in Linux of macOS) eraan wordt toegekend. De Black Magic Probe geeft zich uit voor twee seriële apparaten: een voor SWD en een voor UART. Start nu de ARM-versie van gdb en verbind met de gdb-server op de Black Magic Probe met de opdracht:

arm-none-eabi-gdb -ex "target extended-remote /dev/ttyACM0"

Gebruik het juiste apparaatbestand voor jouw situatie. Scan daarna in de debugger naar een SWD-apparaat:

monitor swdp_scan

Als je het volgende ziet in het opdrachtvenster, dan heb je geen correcte verbinding met een of meer van de testpunten:

Target voltage: 0.0V

SW-DP scan failed!

Kijk alles dan nog eens na. Mogelijk ligt een van de testnaalden net naast een testpunt.

Je zou iets moeten zien als:

Target voltage: 3.1V

Available Targets:

No. Att Driver

1 Nordic nRF51 M0

Verbind dan met doel 1:

attach 1

De waarschuwing die je dan krijgt, mag je negeren.

Firmware uitlezen via SWD

Je wilt nu de firmware uit het geheugen uitlezen en naar een bestand schrijven. In de productspecificatie van de nRF51822 vinden we dat het flashgeheugen van de microcontroller 256 of 128 KB groot is. Voor de nRF51822-QFAA is dat 256 KB. Dan lezen we de eerste 256 KB van het geheugen uit, omdat de code zich volgens de memory-map in de productspecificatie aan het begin bevindt:

dump binary memory nrf51822-beacon.bin 0x000000 0x040000

Als je een foutmelding krijgt dat je het geheugen niet kunt uitlezen, dan heeft de fabrikant de leesbeveiliging van de nRF51822 ingeschakeld. Er zijn manieren om dit te omzeilen en er bestaan tools die je daarmee helpen, maar dat zou te ver gaan in dit artikel. Zoek maar eens op nRF51822 Read Back Protection Configuration of RBPCONF.

Verlaat nu gdb met quit en bevestig dat je het doel wilt afkoppelen.

Firmware disassembleren met ImHex

Nu kun je het opgeslagen firmwarebestand weer openen met ImHex. In plaats van tekenreeksen te zoeken, gaan we nu de machinecode disassembleren. Kies daarvoor in het menu View de Disassembler View. Vul bij Code region het adresbereik in van 0 tot 3FFFF. Kies bij Settings als architectuur ARM32, Little Endian, Thumb mode en Cortex-M mode.

Klik op Disassemble, waarna je de firmware te zien krijgt als assembler, een min of meer leesbare vorm van machinecode. Je kunt hetzelfde overigens ook op de opdrachtregel doen met de opdracht arm-none-eabi-objdump uit de GNU Arm Embedded Toolchain:

arm-none-eabi-objdump -D -bbinary -marm nrf51822-beacon.bin -Mforce-thumb > nrf51822-beacon.s

Het resultaat vind je in het bestand nrf51822-beacon.s.

Een complete analyse van de code gaat te ver in dit artikel, maar in principe kun je hier nu ook code gaan aanpassen, het firmwarebestand opslaan en daarna de aangepaste firmware met de Black Magic Probe via SWD weer naar het flashgeheugen van de chip schrijven.

©PXimport

Een kleine puls schakelt de leesbeveiliging van de nRF52832 uit

-

Apple AirTags reverse-engineeren

Een groot deel van hardware-hacken bestaat uit het reverse-engineeren van de hardware en de firmware/software die erop draait. Een goed voorbeeld hiervan vind je op de webpagina Apple AirTag Reverse Engineering van Adam Catley. Hierop heeft de beveiligingsonderzoeker alle informatie verzameld die hij over de AirTag heeft gevonden, ook van andere onderzoekers.

Interessant aan de AirTag is dat Apple gebruikmaakt van de functie Access Port Protection (APPROTECT) van de nRF52832-chip, een geavanceerdere bescherming tegen het uitlezen van het interne flashgeheugen via de SWD-poort dan RBPCONF bij de nRF51822. Maar net zoals RBPCONF is ook APPROTECT niet onfeilbaar. Hacker LimitedResults vond in 2020 een manier om APPROTECT te omzeilen.

De truc zit erin om het hardware-initialisatieproces dat de bescherming van het flashgeheugen instelt, tijdens het opstarten uit te schakelen. Dat gebeurt door enkele condensatoren van het printplaatje te verwijderen en op het juiste moment een kleine puls aan te brengen op de juiste pin. Op die manier slaagde hacker Ghidra Ninja erin om het flashgeheugen van de AirTag volledig uit te lezen.

AirTag inbouwen

Adam Catley is nog verder gegaan en hij heeft een AirTag volledig gedemonteerd en in een afstandsbediening ingebouwd. Door de demontage van de behuizing krimpt de diameter van 32 mm tot 26 mm en de hoogte van 8 mm tot 3,3 mm, waardoor het in heel wat apparaten in te bouwen is.

In zijn afstandsbediening krijgt de AirTag stroom via de batterij van de afstandsbediening. De volledige functionaliteit van de AirTag blijft behouden en de ingebouwde microfoon werkt zelfs nog beter omdat de behuizing van de afstandsbediening als diafragma werkt.

©PXimport

BitLocker-decryptiesleutel uit TPM-chip halen

Onderzoekers van de Dolos Group slaagden er onlangs in om de BitLocker-decryptiesleutel uit een TPM-chip te halen van een versleutelde laptop. De onderzoekers merkten dat er geen pincode werd gevraagd, dus de communicatie met de TPM-chip afluisteren zou voldoende moeten zijn om de decryptiesleutel te onderscheppen. In de datasheet zagen de onderzoekers dat de TPM-chip via Serial Peripheral Interface (SPI) communiceerde.  Omdat de pinnetjes van de TPM-chip zelf te klein waren voor een stabiele verbinding, gingen ze op zoek naar andere SPI-chips in de buurt, omdat er vaak meerdere chips op dezelfde SPI-bus aangesloten zijn. Zo vonden ze een CMOS-chip in SOIC-8-formaat en op die grote pinnen konden ze eenvoudig hun logic analyzer aansluiten. Ze registreerden nu alle data die over de SPI-bus gingen tijdens het opstarten van de laptop en haalden de sleutel eruit met het script bitlocker-spi-toolkit.

©PXimport

▼ Volgende artikel
Marketing Grand Theft Auto 6-release deze zomer van start
© Rockstar Games
Huis

Marketing Grand Theft Auto 6-release deze zomer van start

Take-Two Interactive en ontwikkelaar Rockstar beginnen aankomende zomer met de marketing rondom de Grand Theft Auto 6-release. De releasedatum staat nog steeds gepland op 19 november van dit jaar.

Dat liet Take-Two weten bij het bekendmaken van diens fiscale kwartaalcijfers. Aldus de uitgever in een persbericht: "Dit fiscale jaar is uitzonderlijk voor ons en we zijn enorm zeker van onze zaak voor het aankomende fiscale jaar. Die gaat revolutionair voor Take-Two en de gehele entertainmentindustrie worden, geleid door de release van Grand Theft Auto 6. Rockstars marketing rondom de release gaat deze zomer van start."

Take-Two bevestigde wederom dat het langverwachte GTA 6 op 19 november moet uitkomen. Het bedrijf heeft al vaker releasedata voor de game beloofd om het later alsnog uit te stellen. Dat het nu meldt dat de marketing rondom de release van het spel aankomende zomer begint, geeft wel een gevoel van meer zekerheid over de mogelijkheid dat de huidige releasedatum wordt gehaald.

Fysieke release niet uitgesteld

Onlangs gingen er geruchten dat alleen de fysieke release van Grand Theft Auto 6 misschien zou worden uitgesteld. Het idee zou zijn dat de digitale release gewoon op 19 november zou verschijnen, maar de fysieke release in de winkels pas later verschijnt om zo leaks te voorkomen. Aan Variety liet Take-Two-ceo Strauss Zelnick weten dat dit echter "niet het plan is". Daarmee lijkt dit gerucht dus ontkracht.

Watch on YouTube

Switch 2-versie van Borderlands 4

Take-Two geeft ook het populaire spel Borderlands 4 uit. Die game verscheen vorig jaar al op meerdere consoles, maar een Switch 2-versie werd uitgesteld. Tijdens de bekendmaking van de kwartaalcijfers vandaag bleek dat de game geheel uit het releaseschema van de uitgever is gehaald.

"We hebben de moeilijke beslissing gemaakt om de ontwikkeling (van de Switch 2-versie) te pauzeren", zo werd wederom aan Variety gemeld. "We blijven ons richten op het leveren van kwaliteitscontent voor de game en blijven het optimaliseren. We blijven ook nauw samenwerken met onze vrienden bij Nintendo. Zo komen PGA Tour 2K25 en WWE 2K26 voor de Switch 2 uit, en we willen graag meer van onze spellen naar het systeem brengen." Het is niet bekend wanneer en of Borderlands 4 nog uitkomt voor de Switch 2.

Over Grand Theft Auto 6

Grand Theft Auto 6 komt op 19 november uit voor PlayStation 5 en Xbox Series X en S. Het spel draait om twee hoofdpersonages: Lucia Caminos en Jason Duval. Het duo heeft een relatie, en duidelijk is in ieder geval dat Lucia vrijkomt uit de gevangenis en het tweetal vervolgens nog verder het criminele pad op gaat.

De game speelt zich af in Vice City, een fictieve versie van Miami, en omstreken. Dat betekent dat spelers glooiende stranden en met neon verlichte straten kunnen verwachten. Het was ook al de setting van de PlayStation 2-game Grand Theft Auto: Vice City, dat na GTA 3 uitkomt. Naar verwachting zal Grand Theft Auto 6 een ongekende hoeveelheid details vertonen. Lees hier alles over de game.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.

▼ Volgende artikel
Accupaniek: met deze aanpassingen haal je wél het einde van de dag
© Yuliia
Huis

Accupaniek: met deze aanpassingen haal je wél het einde van de dag

Je laptopaccu lijkt altijd leeg te zijn op het moment dat er nergens een stopcontact te bekennen is. Met de juiste software-instellingen pers je echter makkelijk een uur extra uit je apparaat, zonder dat je daarvoor technisch onderlegd hoeft te zijn. Wij leggen uit aan welke knoppen je precies moet draaien voor maximaal resultaat.

Er is weinig irritanter dan een laptop die in de spaarstand schiet of uitvalt terwijl je in de trein net de laatste hand legt aan een belangrijk document. Veel gebruikers denken bij een snel leeglopende batterij direct dat de hardware versleten is en kijken alweer naar een nieuwe laptop. Vaak is de accu zelf echter nog prima in orde, maar gaat het besturingssysteem slordig om met de beschikbare energie. Fabrieksinstellingen zijn namelijk vaak gericht op maximale prestaties en helderheid, niet op uithoudingsvermogen. In dit artikel leer je hoe je de regie terugpakt en de energievreters in toom houdt, zodat je met een gerust hart de dag doorkomt.

Waar die energie eigenlijk naartoe lekt

Om te begrijpen hoe je accucapaciteit bespaart, moet je eerst weten waar de energie aan opgaat. De twee grootste verbruikers in een laptop zijn vrijwel altijd het beeldscherm en de processor. Het scherm vreet stroom om pixels te verlichten; hoe feller het scherm, hoe sneller de teller tikt. Daarnaast speelt de verversingssnelheid een rol. Veel moderne schermen verversen het beeld 120 keer per seconde (120 Hz). Dat kijkt heel rustig, maar kost aanzienlijk meer rekenkracht dan de standaard 60 Hz.

Onder de motorkap is de processor continu bezig met het verwerken van taken. Een veelvoorkomende misvatting is dat je handmatig alle programma's moet afsluiten om stroom te besparen. Dat is maar ten dele waar, want moderne systemen zijn heel goed in het bevriezen van apps die je niet gebruikt. Wat wél energie kost, zijn achtergrondprocessen die actief blijven synchroniseren, zoals cloudopslagdiensten of mailprogramma's die elke minuut checken op nieuwe berichten. Ook randapparatuur die stroom trekt via de usb-poort, zelfs als je deze niet actief gebruikt, snoept procenten van je lading af.

Besparen tijdens eenvoudige taken

De energiebesparende modus is je beste vriend wanneer je taken uitvoert die weinig rekenkracht vereisen. Denk hierbij aan tekstverwerken, e-mailen, webbrowsen of het invullen van spreadsheets. In deze scenario's heb je de volledige kracht van je processor en videokaart simpelweg niet nodig. Door in Windows of macOS te kiezen voor de energiebesparende modus, klokt de processor zichzelf terug. Hij werkt dan letterlijk iets langzamer, maar voor administratieve taken merk je daar in de praktijk niets van. De letters verschijnen nog steeds direct op je scherm zodra je ze typt.

Daarnaast is dit het moment om eens kritisch naar je schermhelderheid te kijken. Binnenshuis is een helderheid van 50 tot 60 procent vaak meer dan voldoende om comfortabel te kunnen werken. Werk je vooral 's avonds? Dan kan het zelfs nog lager. Ook het uitschakelen van toetsenbordverlichting levert in deze context pure winst op. Het zijn kleine percentages per uur, maar op een hele werkdag maakt dit het verschil tussen wel of niet de oplader moeten pakken.

©PXimport

Prestaties boven accuduur

Er zijn momenten waarop je de batterijbesparingsinstellingen beter uit kunt laten, of zelfs agressief moet vermijden. Zodra je aan de slag gaat met zware grafische taken, zoals videobewerking, 3D-rendering of serieuze gaming, werkt een besparingsmodus averechts. De software knijpt de toevoer van stroom naar de componenten af, wat resulteert in een haperend beeld, trage exporttijden en een frustrerende gebruikservaring.

In deze gevallen heeft de hardware ademruimte nodig om te kunnen presteren. Als je probeert te gamen op een besparingsstand, zal het systeem de prestaties van de grafische chip zo ver terugschroeven dat het spel onspeelbaar wordt. Bovendien duurt het renderen van een video in spaarstand veel langer, waardoor het scherm en de schijf langer actief moeten blijven, wat onderaan de streep soms zelfs méér energie kost dan een korte piekbelasting op vol vermogen. Hier geldt: efficiëntie door snelheid is soms zuiniger dan traagheid.

Situaties waarin instellingen het niet meer redden

Hoewel je met software veel kunt optimaliseren, zijn er harde grenzen waarbij geen enkele instelling je meer gaat redden. Je moet realistisch zijn over de fysieke staat van je apparaat.

Ten eerste is er de chemische degradatie. Als de maximale capaciteit van je accu (ook wel battery health geheten) onder de 70 procent is gezakt, kun je instellen wat je wilt, maar de rek is er fysiek uit. De batterijcellen kunnen de lading simpelweg niet meer vasthouden. Ten tweede is oververhitting een doodsteek voor je accuduur. Als de ventilatoren van je laptop continu staan te loeien omdat de koelkanalen vol stof zitten, kost dat enorm veel energie. Warmte is in feite verspilde energie. Tot slot helpt software niet als je zware externe apparaten zonder eigen voeding aansluit. Een externe harde schijf die zijn stroom via de laptop krijgt, trekt de accu leeg alsof het een rietje in een pakje sap is, ongeacht je schermhelderheid.

Creëer je eigen energieprofiel

Om echt grip te krijgen op je verbruik, moet je de instellingen afstemmen op jouw specifieke gedrag. Begin met de slaapstand-instellingen. Veel mensen laten hun laptop openstaan als ze even koffie gaan halen, waarbij het scherm zomaar tien minuten op volle sterkte blijft branden. Stel in dat het scherm al na twee of drie minuten inactiviteit uitgaat. Dat is de makkelijkste winst die je kunt boeken.

Kijk ook naar je randapparatuur. Gebruik je een externe monitor? Zorg dan dat je laptop zo is ingesteld dat het interne scherm volledig uitschakelt, en niet 'zwart maar aan' blijft staan. Gebruik je veel bluetooth-apparaten? Schakel bluetooth uit als je ze niet gebruikt; het constant scannen naar verbindingen kost stroom. Voor gebruikers met een oledscherm is er nog een extra truc: gebruik een donkere modus. Bij oledschermen verbruiken zwarte pixels namelijk helemaal geen energie, in tegenstelling tot traditionele lcd-schermen waar de achtergrondverlichting altijd aan staat.

Balans tussen snelheid en stopcontact

Het verlengen van je accuduur is uiteindelijk een balansspel tussen comfort en noodzaak. De grootste winst behaal je door de schermhelderheid te temperen en de slaapstand agressiever in te stellen, zodat je geen energie verspilt in de pauzes. Wees niet bang om de energiebesparingsmodus standaard aan te zetten voor alledaags werk; de moderne processors zijn krachtig genoeg om dat zonder haperingen op te vangen. Pas als je merkt dat je laptop traag reageert bij zwaardere taken, is het tijd om de teugels weer iets te laten vieren. Zo bepaal jij hoelang de werkdag duurt, en niet je batterij.