Skip to content
Code2Pixels
← All work

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.

Next

Code2Pixels API

Multi-tenant product platform

Have something similar in mind? The first call is free.

Start a project