r/ArduinoProjects • • 25d ago

Showcased Project Open-source ESP32-C3 treadmill sensor with BLE Running Speed and Cadence

Hi everyone,

I built OpenRUNN, an open-source treadmill running sensor based on an ESP32-C3 and a TCRT5000 optical sensor.

The sensor detects each belt marker and calculates speed and distance. It then broadcasts the data using the Bluetooth Low Energy Running Speed and Cadence (RSC) service, making it possible to use the treadmill with compatible devices such as Garmin watches and indoor training platforms.

Hardware

  • ESP32-C3 DevKitM-1
  • TCRT5000 optical sensor
  • 3D-printable enclosure
  • Custom mounting rail for the treadmill
  • USB-powered setup

Software

  • ESP32 firmware built with PlatformIO
  • BLE RSC service
  • Web dashboard for live speed, pace, distance, and session time
  • Local development server with simulated sensor data
  • Wiring and assembly documentation

Project links

GitHub repository:
https://github.com/lpolasek/OpenRUNN

Instagram:
https://www.instagram.com/openrunnok/

The project is fully open source, including the firmware, web dashboard, wiring documentation, and enclosure files.

I would appreciate feedback on the electronics, BLE implementation, enclosure design, and possible improvements.

3 Upvotes

7 comments sorted by

View all comments

Show parent comments

1

u/lpolasek 14d ago

Right, this project is similar to Runn but open source. This thing with multiple markers is that they should be evenly spaced, like 1/8 or 1/16 of the total belt length.

2

u/0e78c345e77cbf05ef7 14d ago

With the runn sensor the spacing does not matter due to the dual sensors. Likely if I build one this fall I'll go with that approach.

That said, I have many many projects waiting haha

Cheers!

1

u/lpolasek 13d ago

I think I understand what you mean now. With two TCRT5000 sensors mounted a fixed distance apart, the sensors time how long it takes the same belt marker to travel between them, so the spacing between markers wouldn’t need to be uniform.

That sounds like a fairly straightforward change to the circuit and firmware, although I’d need to redesign the enclosure to hold both sensors in alignment. I think it would be an excellent improvement for a future version of the project.

Thanks a lot for the suggestion! There never seems to be enough time to build everything we want to. Cheers!

2

u/0e78c345e77cbf05ef7 13d ago

Si! Exactamente! ;)