Batterijverbruik komt ter sprake in discussies van bestuurders over apps voor ritregistratie. Mensen beschrijven warme telefoons, vaak moeten opladen en twijfel of de registratie na een rit wel is gestopt. Dat zijn individuele ervaringen, geen gecontroleerde vergelijkingen. Maar de zorgen doen ertoe.
Bij het bouwen van Orphie moesten we over meer nadenken dan een locatie bepalen en mijlen optellen. We moesten ook beslissen hoeveel werk we met elke locatie doen, wanneer we die opslaan en wat er moet gebeuren als de telefoon warm wordt.
Dit zijn enkele van die keuzes.
Een rechte weg vraagt om iets anders dan een scherpe bocht
Met locatiepunten reconstrueert een registratie-app je route. Als ze te ver uit elkaar liggen, wordt een bocht een rechte lijn die de hoek afsnijdt. Als je elke kleine beweging bewaart die de telefoon meldt, kun je ruis bewaren zonder veel meer over de rit te weten te komen.
Orphie gebruikt een adaptief registratiebeleid. Het houdt rekening met snelheid en richtingsveranderingen, in plaats van één afstandsregel op de hele dienst toe te passen.
Bij normale temperaturen gebruikt het beleid kleinere afstanden, tot 15–25 meter, bij langzaam rijden en richtingsveranderingen. Op snellere, rechtere stukken kan het 100 meter tussen bewaarde punten toelaten.
Bewaar detail waar de route verandert
Deze aanpak heeft een grens. We kunnen alleen reageren op beweging die de telefoon heeft gemeld. Bij grotere afstanden kan detail verloren gaan. Deze drempels zijn technische keuzes die we moeten toetsen aan gereden routes, geen garantie op een volledig nauwkeurige afstandsregistratie.
We gebruiken het locatiesysteem van de telefoon
Orphie ontvangt locatie-updates op de achtergrond via Core Location van Apple op iPhone en de gecombineerde locatieservice van Google op Android. Het besturingssysteem regelt het aanleveren van locaties. Orphie verwerkt de ontvangen updates en vraagt niet telkens zelf in een eigen lus om een positie.
De platforms geven ons verschillende mogelijkheden. Op Android bepaalt ons registratiebeleid mede de aangevraagde update-intervallen en de minimale verplaatsingsafstand. Op iPhone gebruiken we de locatie-updates van Apple voor autorijden en passen we ons beleid toe op de punten die we accepteren.
Dat verschil doet ertoe. Minder punten bewaren op een iPhone betekent niet dat we de gps-hardware opdracht hebben gegeven minder vaak actief te worden. We kunnen onze eigen verwerking regelen, maar mogen niet meer controle over de hardware claimen dan het platform ons geeft.
We slaan punten gebundeld op
Een locatie ontvangen en die naar de opslag schrijven zijn aparte taken. Elk punt in een eigen databasetransactie opslaan levert herhaald werk op.
Orphie verzamelt geaccepteerde punten in een buffer en slaat ze samen op. Tijdens de registratie leidt een nieuw geaccepteerd punt tot een tussentijdse opslag zodra de buffer 50 punten bevat, of het oudste nog niet opgeslagen punt minstens 60 seconden oud is.
Bundel punten voordat ze naar de opslag gaan
50 punten of een oudste punt van minstens 60 seconden oud
In een rustige periode zonder geaccepteerde punten kan de buffer langer onopgeslagen blijven. Parkeren en de bedieningsknoppen voor registratie bieden ook momenten om op te slaan.
Bundelen heeft een nadeel. Als de app abrupt wordt afgesloten voordat het schrijven klaar is, kunnen nog niet opgeslagen punten verloren gaan. Alleen aan het eind van een dienst opslaan zou te veel risico opleveren. Elk punt apart schrijven zou meer opslagwerk kosten. Tussentijds gebundeld opslaan is de afweging.
Warmte verandert het registratiebeleid, maar stelt opslaan niet uit
Orphie luistert naar temperatuurwaarschuwingen van het besturingssysteem. Op Android is deze reactie beschikbaar vanaf Android 10; oudere versies blijven het normale registratiebeleid gebruiken.
Als de telefoon ernstige warmte meldt, vergroot het registratiebeleid de afstand tussen bewaarde punten. Bij kritieke warmte wordt die afstand nog groter. Daardoor blijft er minder routedetail over. Dat nadeel moeten we benoemen.
Reageer op warmte zonder tussentijds opslaan uit te stellen
We houden die beslissing gescheiden van het opslaan van de registratie. Temperatuurwaarschuwingen voegen geen vertraging toe aan tussentijdse schrijfacties. Op een telefoon die te warm wordt, kan achtergrondwerk worden onderbroken. Opslaan uitstellen zou een groter deel van de onvoltooide registratie in gevaar brengen.
Dit alles kan oververhitting door zonlicht, opladen of andere apps niet voorkomen. Het geeft onze recorder een manier om op de toestand van de telefoon te reageren.
Een deel van het werk hoeft niet tijdens het rijden te gebeuren
Op het ritscherm van Orphie staat geen bewegende routekaart. Je kunt de route bekijken nadat je de dienst hebt beëindigd. De recorder hoeft de kaart niet gedurende de hele rit opnieuw te tekenen.
Ook het opzoeken van plaatsnamen wacht tot na Beëindig dienst en gebeurt alleen als je die optie hebt ingeschakeld. Om een route te registreren hoeft niet voor elk punt een adres te worden opgezocht. Als de optie aanstaat, gebruikt het opzoeken van de eindpunten de service van Apple of Google, geen adressendatabase op het toestel.
We kozen ook voor expliciete knoppen Start dienst en Pauze, in plaats van de hele dag automatisch ritten te detecteren. Dat betekent dat je eraan moet denken om te starten. Daar staat tegenover dat Orphie buiten een registratiesessie je locatie niet hoeft te volgen om te ontdekken of je werk misschien is begonnen.
Pauze zet de locatieregistratie van Orphie uit. Beëindig dienst geeft tijdens het registreren een kort venster waarin de registratie doorloopt: maximaal tien minuten of twee minuten onafgebroken stilstaan, wat het eerst gebeurt. Dienst opslaan zet de registratie uit en verwijdert dat voorlopige extra stuk. De registratie tot het moment van beëindigen blijft behouden. Beëindig dienst vanuit Pauze laat de locatie uit. De handleiding voor diensten legt de bediening uit.
Wat we nog moeten meten
Dit zijn concrete manieren waarmee we onnodig werk proberen te beperken. We hebben nog geen percentage batterijbesparing gemeten, dus noemen we er ook geen.
Een bruikbare test moet het energieverbruik meten en de bijbehorende ritregistratie onder dezelfde rijomstandigheden onderzoeken. Minder batterijverbruik zou geen verbetering zijn als we dat bereiken door een deel van de route te missen.
Voorlopig kunnen we de uitvoering en de afwegingen uitleggen. De metingen moeten nog volgen.
Dit is algemene informatie over administratie, geen belastingadvies. Vraag een belastingadviseur naar je eigen aangifte.

