Up the road and back. That's all it was — a few minutes of pedalling on the cargo bike, a power bank zip-tied on, the CYCPLUS sensors stuck to the wheel and crank. And in those few minutes GearSense did the thing it was named for: it watched a real drivetrain turning under a real rider on a real road, and it found the gears. All seven. I shifted up, it followed. I shifted down, it followed. A month and a half ago this was a number scribbled on a napkin. Today it sat on my handlebars and read my bike.
From pencils to pavement
The last time I wrote, GearSense had met real sensors for the first time — taped to pencils, spun by hand on the bench. The honest question hanging over that was whether a steady hand-spin would survive the road, which is nothing like steady: vibration, coasting, snap shifts, the soft-pedal as you ease off to change. A bench is a polite place. A bike is not.
So I put the CYCPLUS sensors on the bike for real, powered the head unit off a pocket battery, and rode. And it just... worked. The moment the wheels and cranks were turning, it began doing exactly what it did on the pencils — dividing the two frequencies, watching ratios settle, minting gears. Within the first stretch of road it had built the whole seven-speed ladder, and from then on it tracked every shift I made, up and down the cassette, and it called 1st correctly every single time.
The honest asterisk: two extra gears
I'll tell it straight, because telling it straight is the whole point of this log. As I kept riding, it found two more gears — nine, on a seven-speed bike. Phantoms. They're the exact thing we flagged for tuning: a snap shift, a half-second of soft-pedalling, a coast-and-resume can throw a ratio that matches nothing it knows and lingers just long enough for the algorithm to decide it's real and mint it.
But here's what makes that an asterisk and not a failure: even with the phantoms, it never lost the plot. It still tracked every shift. It still nailed 1st. The extra entries didn't corrupt the real ones — they just sat there, surplus. That tells me the core is sound and the classifier is merely a touch too eager to call a transient a new gear. That's a knob, not a redesign.
That realisation, out on the road, is the one I'm happiest about. The part of the project that was ever truly unknown — can it sense gears from nothing, on a real bike? — is now known. Answered. Everything left is engineering: longer rides for bigger datasets, a longer dwell before it commits to a new gear, a tighter match tolerance. Tuning, not discovery.
A solid foundation
So where does today leave GearSense? On bedrock. The sensing works. The paradigm works. It works with hardware I didn't make and never configured. And it hands me exactly the thing I was building toward all along: a trustworthy, continuous read of the drivetrain ratio, live, on a moving bike — the foundation that speed-control-by-ratio gets built on next.
Injecting control into the bike is still ahead, and it's real work — but it's a technical problem now, not a question of whether the idea holds. The idea holds. I rode it.
No comments yet — be the first.