Connected product
Water Quality Monitor
Continuous water testing with a calibration history behind every reading, built on the same platform and ingest contract, so the project was almost entirely the part that was new.
- Year
- 2023
- Our role
- Product, firmware, calibration workflow
- Stack
- Next.js, TypeScript, Python, Raspberry Pi
The problem
Water testing is usually a person, a handheld meter, and a clipboard, which means readings happen as often as someone walks out there. Everything between visits is invisible.
The harder problem is trust. Probes drift. A reading with no calibration history behind it is a number, not evidence, and evidence is the entire reason anyone is testing.
How we built it
Every stored reading references the calibration event that was in force when it was taken. Recalibrating does not quietly rewrite the past; it opens a new segment, and older readings stay attributable to the instrument state that produced them. The history is auditable rather than merely present.
Corrections are applied when data is read rather than baked in when it is written, so the raw value survives. If the compensation model turns out to be wrong, it can be fixed without going back out to re-collect a year of samples.
Where it landed
Sampling went from whenever-someone-had-time to continuous, and every reading can be traced to a known instrument state.
Because the platform, ingest, and dashboard shell all carried over, the engagement was spent on calibration and the domain, not on rebuilding a product from zero.
Have something similar in mind? The first call is free.
Start a project