Heart rate zone training can be an excellent way to monitor workout intensity and increase your fitness and endurance. By spending certain periods of workout time at different percentages of your maximum heart rate. For example, warming up at 50-60%, then entering the "fitness zone" of 60-70% for a period, then going into the aerobic zone of 70-80%, finally peaking in the intense anaerobic zone of 80-90%.
Using a Bluetooth LE heart rate monitor armband or chest strap, you can send up-to-the moment heart rate data to a battery-powered Feather nRF5280 Bluefruit equipped with a pair of seven segment LED displays.
Place it on a wall or shelf where you can easily see it while you work out! Or carry it or hook it to your bike. CircuitPython makes it straightforward to connect to your heart rate monitor and stream the heart rate data and zone percentages to the displays.
Heart Rate Monitor
You'll need a heart rate monitor that supports Bluetooth Low Energy (BLE). I'm using the Scosche RHYTHM+ but you should be able to use any monitor that uses the Bluetooth SIG Heart Rate service standard.
These work by flashing green (and sometimes yellow) LEDs against your skin and then measuring the reflected light that returns. The color changes/darkens during the pulse of your heart thanks to all that blood sloshing around!
Seven Segment LED displays look pretty good on their own, but they look even better with a colored gel filter in front of them!
You can build a CLUE variant of this project instead. All you'll need are a CLUE board instead of the Feather and seven segment displays.