This project was made as part of an IOT course at the ESGI school, during quarantine.
We decided to create a connected bracelet to use during a sporting activity in order to control the heart rate.
The primary objective is security: unlike the various connected watches and bracelets that do many things, we put aside other features and design in order to be able to alert the user very visibly of a potential danger.
The bracelet has several LEDs changing color depending on the user's heartbeat: from green for a normal beat to red for an alarming beat. If the heartbeat sounds alarming based on the user's age, an alarm will sound. The user can press a button to stop the alarm.
A mobile application allows the user to create an account and enter its age. It also allows to view reports on the cardiac activity.
We have chosen two push buttons and indicative texts of fairly large sizes to facilitate use and optimize ergonomics. The LEDs are arranged over the entire surface of the bracelet in order to give a very visual account of cardiac activity.
Component | Quantity | Reference |
---|---|---|
Arduino | 1 | Nano |
Bande 8 NeoPixels | 2 | WS2812 5050 |
Piezoelectric speaker | 2 | Murata 7BB-12-9 |
Push button | 2 | |
Bluetooth card | 1 | HC-05 |
Pulse sensor | 1 | XD-58C |
Lipo 1800mAh battery | 1 |
- Android: minimum SDK version 16, target 28
- Apple: iOS 8.0
The IOT software was developed and tested in the TinkerCad editor.
All the code is available in this repository, folder arduino-code
.
The mobile application is available on Apple and IOS. It was developed with Flutter.
All the code is available in this repository, folder app
.
The TinkerCad modeling can be accessed on this link.
The colors of the bracelet depend on the user's PPM. Here is the color range that we have set up:
The alarm is triggered when the PPM are deemed dangerous for the user, depending on their age. We used the Haskell & Fox calculation (1970) : there is a little imprecision with this model but we also do not need a very precise result in our use case. In addition, the formula is not very complex and this facilitates implementation. A push button can be pressed to stop the alarm.
The code is fully commented for better comprehension! Check it in the folder arduino-code
of this repository.
- Setup the connected object according to the TinkerCad modeling
- Turn on the connected object by pressing the first push button (on/off)
- Register with an username, a password and your date of birth
- Sign in with the username and password previously filled
- Activate bluetooth on the smartphone
- Pair with the connected object
- You can now use your bracelet while doing sporting activities and view reports on your smartphone!