There are plenty of bike computers I could have bought and nothing is wrong with them. I built it because I wanted to see if the idea in my head could turn into a real thing.
So I built it. Or more accurately, I described it to Tovan.
The prompt
I opened Tovan and typed out:
I want to build a bike computer to measure speed and distance. It should be rechargeable, have an on/off switch or button. I don't think I need a screen since I can just read the data off of my phone. Thoughts? Not really sure where to start
That's it.
20 minutes later
I was looking at a completed circuit board. Tovan picked the parts, placed them, routed the traces, and handed me a 2 layer PCB about 40 by 32 mm. Here is more detail on what it landed on:
The brain is a Seeed XIAO nRF52840, a tiny Bluetooth microcontroller with USB-C built in. Wheel speed comes from a reed switch on a header, the kind you mount near the fork so a magnet on the spoke trips it once per revolution. There is also a small accelerometer on board so it can tell when the bike is actually moving. Power is a single LiPo battery through a physical slide switch, and it charges over the XIAO's own USB-C port.
The build
I ordered the boards, and they arrived the next week. First power-on, it ran an RGB LED sweep across the colors. So far so good!
The firmware was written using Claude Code and was done in a matter of minutes. I took screenshots of the schematic out of Tovan and pasted them into Claude Code, which wrote the firmware for me.
A couple of touches I'm happy with. It drops to a low-power state after sitting still for half a minute and wakes itself the moment it feels motion, so there's no power button dance before a ride. And a double tap on the case flashes the battery level on the onboard LED.

Does it work?
Yes. For the magnet I grabbed one off my fridge and taped it to a spoke. The reed switch sits by the fork. Each time the magnet passes, it closes and tells the microcontroller another revolution has happened. I paired the board to the Wahoo app (per Claude's recommendation) on my phone. Spin the wheel and the speed climbs on screen.
I keep my phone in a handlebar pack with a clear pocket on top, so the screen sits right there where I can see it.
Why this matters
I could have laid this board out by hand. Pick the parts, draw the schematic, route the traces, all of it. I have done it plenty of times, and it is slow, tedious work. The kind of effort that quietly turns "this would be fun" into "maybe some other weekend."
That gap is the thing I care about. I made this for no reason other than it sounded fun, and normally that is not enough to get anyone to actually build hardware. The idea is too small to justify the work, so it dies on the shelf.
Not this time. I described what I wanted, had a manufacturable board in minutes, and a working speedometer within a week. Nothing stood between the idea and the thing.
That is why I built Tovan. Not so engineers can skip the tedious parts, although we happily will. It is so a half-serious "this would be cool" is enough to make something real, whether you can route a board or not.
The idea should be enough. That's the thread running through everything I'm going to write here. I build real hardware by describing it, and I show you the boards. This speedometer is the first. More are coming.
Tech specs
MCU: Seeed XIAO nRF52840 (nRF52840, Cortex-M4F, BLE 5.0, USB-C)
Speed: reed switch on a magnet-and-spoke setup, hardware interrupt with debounce
Motion: ST LIS3DH 3-axis accelerometer over I2C
Power: single LiPo, onboard BQ25101 charger, USB-C charging, hardware power slide switch
Board: custom 2-layer PCB, roughly 40 by 32 mm
0 comments