← Alle cases

Een meetopstelling voor honderden bluetooth-tags tegelijk

Wat
Meetopstelling en dataverwerking
Stack
BLE Gateway · PostgreSQL · Next.js

De vraag

De tags van een fabrikant sturen met een afgesproken frequentie hun bluetooth-broadcast uit. Die frequentie bepaalt zowat alles: batterijduur, nauwkeurigheid en betrouwbaarheid in het veld. De vraag was simpel: levert de productie wat er besteld is?

De uitdaging

Eén tag naast een telefoon leggen en meten, dat is simpel. Maar een afwijking in zendfrequentie zie je niet in vijf minuten. Die komt pas boven als je honderden tags tegelijk, dagen aan een stuk logt, met achteraf een cijfer per tag.

Daar bestaan gespecialiseerde analysetoestellen voor, maar die kosten een veelvoud van wat nodig was.

Wat ik gedaan heb

Ik gebruikte een BLE Gateway, een goedkope standaard bluetooth-ontvanger, eigenlijk gemaakt om beacons door te sturen. Ik stelde die zo in dat alle ruwe broadcasts ongefilterd in een databank belandden.

Daarbovenop schreef ik de verwerking die per tag de echte zendfrequentie berekent over de volledige meetperiode.

  1. GatewayAlle ruwe broadcasts opvangen
  2. DatabankOngefilterd bewaren, dagen aan een stuk
  3. VerwerkingZendfrequentie per tag berekenen
  4. ResultaatEén cijfer per tag

Wat er nu staat

Een meetopstelling die honderden tags tegelijk doormeet. Afwijkingen komen aan het licht vóór de tags in gebruik genomen worden, niet erna bij de klant.