James Montemagno
James Montemagno

Live, Love, Bike, and Code.

Live, Love, Bike, and Code



James Montemagno

Introducing My Cadence for Arduino, a DIY Cadence Display for Indoor Cycling

It is official, my holiday hacking is officially complete! This past week I started and  launched a brand new app called My Cadence for both iOS & Android. This simple cadence display app is a perfect pair for my recent $400 DIY spin bike that I have been using for Peloton and Apple Fitness+ classes. However, my holiday hacking wasn't complete until I brought My Cadence to a third and final platform... Arduino! What sparked my interest was when snowzach posted on HackerNews his Arduino project that displayed Echelon Bike sensor data on an ESP32. His project was brilliant as it had all of the logic to scan, connect, and read data from the Echelon bike. With his code in hand I set off to fork it and get it working for any cadence sensor, and the result is My Cadence for Arduino!

My Cadence running on an ESP32 displaying cadence and time

That is right! What you see above is live sensor data reading off my Moofit Cadence sensor on my spin bike. The app will automatically scan for devices for 10 seconds and then automatically connect to a sensor if it is detected. After that it will display your current cadence and a cadence bar that goes from 0-120. What is really awesome is that this beautiful little ESP32 Arduino boards costs just $18!

Here is what you will need to get it up and running:

Hardware Required

First, you will need the ESP32 board that has Bluetooth low energy. I recommend the MakerFocus ESP32 Arduino board, and optionally batteries and a USB micro cable if you don't have one:

Compatible Sensors

Of course, you will need a sensor for your bike. Any of the main line sensors should work just fine:

Clone, Build, & Run

Then just follow the simple setup & install procedures over on my GitHub project. This will guide you through setting up Arduino Studio, ESP32 libraries and board, and additional libraries required. After that deploy to your device and you are off to the races!

Happy Spinning

Hopefully now there is a version of My Cadence that is right for you and your bike setup. Thanks again to snowzach and his project on GitHub for his inspiration and code to make this happen.

Links to third party sites may contain affiliate links that allow you to find the items mentioned on this site. While this site may earn minimal sums when the reader uses the links, the reader is in NO WAY obligated to use these links. Thank you for your support!

Copyright © James Montemagno 2020 All rights reserved. Privacy Policy

View Comments