Adding Smarts to a Dumb Exercise Bike with BLE
Folding exercise bike augmented with an Arduino Nano 33 BLE sense to work with riding apps.
Today, with the COVID-19 pandemic in effect, home exercise equipment can be a great way to keep fit while minimizing your exposure. After purchasing a cheap folding indoor bike with a rather basic interface, computer engineer Thomas Schucker decided to enhance it with BLE communication capabilities.
To its credit, the bike’s cadence sensor was easily accessible via a headphone jack. However, it only provides RPM data, not anything about the resistance level, and thus your power output. Although one might be tempted to throw a lot of hardware at the problem, Schucker instead did a bit of research on how the sensor works, and found that it was a simple magnetic sensor that picks up on a demagnetized spot on the flywheel. Measuring this with the PhysicsToolbox app, he discovered that he could not only pick up on the wheel’s RPM, but detect a change in the magnetic field's amplitude as the resistance was modified.
With this knowledge in-hand, he attached an Arduino Nano 33 BLE Sense near the flywheel to pick up on these changes, analyzing the results in Matlab for tension calibraton. Hardware-wise, it’s an incredibly straightforward project, yet seems there was a bit of fiddling to get BLE communications working properly. With this worked out, however, he’s able to virtually ride on apps like Zwift and RGT, effectively creating an advanced training rig in the sub-$200 range! Code for the hack can be found on GitHub, and you can see the results in the video below!