Introduction: Stress Wrist Band
Are you someone struggling with stress? Do you want to be prepared before a panic attack? Do you want to monitor your overall health?
If you answered yes to either of those questions, this device is for you!
As students learning about biomedical instrumentation, when the project to create a biosensor came about, my partner and I decided to create a stress monitor that would help us stressed students! Our goal was to create a stress wrist band that could tell when you are in a relaxed state, a stressed state and will alert you when are you are approaching a stressed state.
This instructable is designed to help you make your very own stress wrist watch.
Step 1: An Overview of Our Stress Wrist Band
Here is a video summary of what we did!
Step 2: Materials & Tools
We used these materials to create our stress wrist band:
1. Adafruit Flora Microcontroller ($14.95)
2. Battery Pack ($12.50)
3. Conductive Thread ($6.95)
4. Flora RGB Neo Pixel LED (pack of 4 - $7.95)
5. Wires (about $2.00)
6. Pulse Sensor ($25)
7. Button ($2.50 for 10)
8. 220 Ohm Resistor (pack of 20 - $0.75)
Tools you might already have:
Total cost: $72.60 (price might vary depending on what you have)
Step 3: Preparation
Before you jump into creating your stress wrist band, it's important to understand the concepts behind the wrist band. Our team used the Garmin smartwatch as a reference. This watch used heart rate variability (HRV) or interbeat interval (IBI) to measure stress levels. Both HRV and IBI mean the variation in time (measured in ms) between consecutive heartbeats. If the time between consecutive heartbeats or the IBI is high, this means that the person is in a calm or resting state. If IBI is low, this means that the person is in a fight-or-flight state. High IBI is associated with rest-and-digest, general fitness, and good recovery while low HRV is associated with fight-or-flight, stress, illness, or overtraining.
Here is a video on how the Garmin watch measures stress levels. We will be using HRV or IBI in this project.
Here is another helpful link to the HRV or IBI concept behind our stress wrist band
Besides understanding how to measure stress levels, we also need to familiarize ourselves with our materials. The first material we want to introduce is the Adafruit Flora. This Flora microprocessor is like an Arduino board but it is smaller and thus more portable. It is user friendly and Adafruit has provided a lot of information on how to use it. Click here to access Adafruit's Flora page.
Next up is our pulse sensor. It is also created by Adafruit and it measures the user's pulse in real-time. We found this website to help us understand how it works. It also includes some fun beginner projects to try out.
Lastly, our Adafruit NeoPixels. They are mini wearable LEDs that can be sewed onto fabric to create fun projects. Here is a great website to start understanding how they work.
It is important to note that this project is highly dependent on coding to make our different components work how we want them to. It would help to familiarise yourself with Arduino coding before starting this project. Below are the libraries we used in our code to make our stress wrist band work.
Libraries we used to code our stress wrist band:
Click "clone and download" or follow instructions here to download additional libraries to your Arduino library.
Step 4: Safety
Safety first! As this project is electronic, one should be careful in handling the materials while creating the wrist band but also when the wrist band is worn.
Here are some safety guidelines to keep you safe as you work:
1. Never work on a circuit while power is applied. If you do something wrong, not having the circuit powered might save your life!
2. Always check your work before plugging it to the battery pack. This is to prevent the heating of components if there is a short in the circuit (heated components can seriously burn you).
3. If you do smell anything burning when you connect your circuit to power, immediately disconnect the circuit from the battery pack. Examine your circuit again to find out what went wrong.
4. Always keep surfaces and your work area dry. Water is a very conductive liquid and can hurt you if electricity is flowing through it. Ensure your skin is dry even when you wear your finished product.
5. Be aware of your surroundings. If there are small children around you, make sure none of the components get into their hands. We don't want any children ingesting electrical components.
6. Although not always necessary, it is good to be aware of where the safety equipment is. Equipment like a fire extinguisher and a first-aid kit can be helpful if the need arises.
Warning: This is not a medical device and should not be used to medically diagnose stress illnesses such as anxiety, depression etc. Wrist band should only be used externally and should not be ingested.
Step 5: Hints and Tips
Here are five troubleshooting strategies that might be of help:
1. Since the Adafruit Flora board is not included in the board manager of Arduino, you would need to add it manually. Click here to add the board to your Arduino. This can save you time from wondering why your code is not uploading to your Flora.
2. When sewing with conductive thread, make sure the ends of your thread do not touch each other.
3. Always check your bits per second (baud) rate on your code and the serial monitor uploading running your code. If they are not the same, you will either have no output, or your circuit will produce incorrect values.
4. Since the pulse sensor is easily affected by movement. Ensure that the sensor is fit snuggly with the wrist. It may take a while to find the most suitable fit to get the most consistent results.
5. Understanding the code downloaded from the various GitHub libraries may be confusing at first but be patient! Here is a website we found that helped us to understand the pulse sensor GitHub code.
6. Tying knots with conductive threads can be challenging. Well, applying nail polish (colorless) to the knot reinforces the it.
Step 6: Building Your Circuit
It's finally time for some action! Now that you have been armed with some background information, tips and safety guidelines, you are ready to create this stress wrist band. Below are detailed steps on how you create your very own stress wrist band!
Step 7: Test Your Components
It is important to test your components individually before wiring them on the wrist band. This will help you save you time with sewing broken components and take them apart (You don't want to do that!).
- Use the alligator clips to connect your circuit.
- Use simple code from the Arduino examples (e.g. "GettingStartedProjects) to test your components individually to make sure they work.
Step 8: Sew Adafruit Flora and RGB Smart Neopixels on the Wrist Band
- Sew the Adafruit Flora and the Flora RGB smart Neopixels together on the wrist band using conductive thread.
- Connect VBATT (on Adafruit Flora) around the positive Neopixel pads.
- Wire the #6 pad, which is the output of the Flora, to the pad marked with an arrow pointing toward the LED.
- Connect GND on the Adafruit Flora to the Neopixel pads with the negative signs.
Step 9: Add Pulse Sensor to the Circuit
- Next, add the pulse sensor to the circuit. Remove the pin headers for an easy connection to the Flora's pads. Solder them to their respective pads for an easy flow of ions. If not, use conductive threads.
- Pin with purple wire goes to #12 on the Flora.
- Pin with red wire goes to any 3.3V on the Flora.
- Pin with black wire goes to GND on the Flora.
Step 10: Attach the Pulse Sensor's Wires Together
- To avoid the dangling wires, which can be annoying when the wrist band is worn, tape them together in a way that they are fully covered by the band and sew a small band piece on top of them for stability.
Step 11: Power Your Circuit
- Connect the battery in the battery connector on the Flora next to VBATT.
Tape the battery to the backside of your wrist band to make it user-friendly.
Step 12: Add a Pushbutton to Turn On/off Your Sensor
Lastly, connect the pushbutton your system. The button has two long vertical rows on the side with two pins on each row.
- Power the button's pin on of the rows to 3.3V on the Arduino Flora.
- Connect one end of a 220 ohm resistor to the other pin from the same row.
- The other end of the resistor goes to ground (GND).
- Connect pin #10 on the Arduino Flora with the pushbutton pin connecting through the resistor on the other row.
Step 13: Add Switch Button to Turn On/off Your Circuit
Now you can turn on and off your circuit thanks to the switch!
- Connect one end of the switch to 3.3V on the Adafruit Flora and the other end to a 220 ohm resistor that you then connect to GND
Step 14: Cricuit Diagram
Here is our completed Eagle circuit diagram. We created a schematic of our Flora, Pulse Sensor, NeoPixels, and switch connected by nets.
The following steps show how to wire the Flora on Eagle.
Here is a helpful link on how to read a schematic.
Eagle libraries we used:
Step 15: Connecting to Power
First of all the Flora is supplied 3.3V by the JST battery and connected to the Flora.
Step 16: Then Connect Your Flora With Your Inputs and Outputs
1. Pin 6* - NeoPixels (yellow arrows)
2. Pin 10* - Switch (blue arrow)
3. Pin 12* - Pulse Sensor (orange arrows)
Step 17: Code
Once your circuit is set up, the system will need a code that will do what you want it to. This Github code collects heart rate data, converts it to the interbeat interval (ms), categorizes them into three stress levels and then produces outputs that correspond to the IBI data. We configured the code to turn NeoPixels green when the stress level is in the low level, blinking red when the stress level is intermediate approaching a high-stress level and red when the user's IBI enters a high-stress level.
Step 18: Further Ideas
If you think this stress wrist band is too simple, here are some ideas that we had but did not execute:
1. Adding a screen to the wrist band (maybe even create a watch along with it) that can recommend stress-relieving activities for the wearer.
2. Add a vibrating motor to "feel" when they are approaching a high-stress level.
Step 19: Acknowledgements
We would like to thank Adafruit for providing so much useful information that allowed us to build this stress wrist band.
We would also like to thank our professor Dr. Farrar for her guidance and our friend Lydia Tamrat for teaching us the best ways to sew our hardware together.