๐ How I built it
CAD, circuits and a parts list.
This is the engineering half of the bracelet โ the housing dimensions, the full circuit, everything on the bill of materials and the logic that decides when it buzzes. Total build cost: about $48.
The CAD
Modelled as one printed housing with a snap-in lid, sized so the sensor sits flat against the wrist. Contact quality matters more than any other design choice.
42 ร 34 ร 11 mm
Snap-in lid
Standard 20 mm strap
The circuit
Six components on one 3.3 volt rail. Nothing exotic โ every part is something a student can order and solder by hand.
The parts list
| Part | What it does | Spec | Cost |
|---|---|---|---|
| Seeed XIAO nRF52840 | Brain of the bracelet | 21 ร 17.8 mm, Bluetooth LE, built-in battery charging pins | ~$16 |
| MAX30102 pulse sensor | Reads the pulse signal | Green + IR LEDs and a photodiode, talks over I2C | ~$7 |
| WS2812B LEDs ร5 | Color changes with the trend | 2020 package, one data line, 470 ฮฉ series resistor | ~$4 |
| 10 mm coin vibration motor | The buzz | 3 V, driven through a small MOSFET with a flyback diode | ~$3 |
| LiPo battery, 400 mAh | Power | 3.7 V, 30 ร 20 ร 5 mm, protection circuit included | ~$8 |
| TP4056 USB-C charger board | Recharging | 1 A charge current, over-discharge protection | ~$3 |
| 3D-printed housing + strap lugs | Holds it all on the wrist | PLA, 0.12 mm layers, 42 ร 34 ร 11 mm, 20 mm strap slots | ~$1 of filament |
| 20 mm silicone watch strap | Comfort and contact pressure | Off-the-shelf quick-release strap | ~$6 |
| Total | Plus solder, wire and a lot of reprints | ~$48 | |
Prices are what I paid in small quantities; they move around a lot.
Build it yourself, step by step
Eight steps, about a weekend of work if the printing goes well. You need to be comfortable with a soldering iron, and you should have an adult nearby for the soldering and the battery steps.
Tools you'll need
- โข Soldering iron with a fine tip, plus solder and flux
- โข Wire strippers and thin (28โ30 AWG) silicone wire
- โข 3D printer, or a print service / makerspace
- โข Multimeter for checking continuity and battery voltage
- โข Small flush cutters, tweezers and kapton or electrical tape
- โข A computer with the Arduino IDE installed
Step 1 โ Print the housing
~2 hours printingPrint the case and snap-in lid in PLA at 0.12 mm layers, 20% infill, no supports if the sensor window faces up. Test-fit the board and battery before you solder anything. Expect two or three reprints โ that is normal.Step 2 โ Lay the parts out dry
15 minutesPlace the microcontroller, pulse sensor, charger board, battery and motor in the case exactly where they will live. Cut every wire to that length plus about 5 mm. Wires that are too long are the main reason lids will not close.Step 3 โ Wire the pulse sensor
20 minutesFour wires: 3V3, GND, SDA and SCL from the MAX30102 to the matching pins on the XIAO. Keep them short and twisted. Power the board over USB and run an I2C scanner sketch โ if the sensor's address shows up, the hard part is done.Step 4 โ Add the LEDs
20 minutesChain the five WS2812B LEDs data-out to data-in, feed the first one through a 470 ฮฉ resistor from a spare pin, and share 3V3 and GND. Run a test sketch that cycles colours before you glue anything down.Step 5 โ Add the buzz
20 minutesThe vibration motor does not go straight on a pin. Switch it with a small MOSFET, put a flyback diode across the motor terminals, and keep it on its own rail. Test with a one-second pulse โ if the board resets, the diode or the rail is missing.Step 6 โ Power and charging
30 minutesBattery into the TP4056 input, TP4056 output to the board's battery pins. Check polarity twice with the multimeter before connecting; LiPo cells do not forgive this. Charge fully, then confirm the bracelet still runs with USB unplugged.Step 7 โ Flash the firmware
45 minutesUpload the beat-detection sketch, then watch the serial plotter with the sensor pressed against your wrist. You are looking for a clean repeating wave. If it is noisy, it is almost always contact pressure, not code.Step 8 โ Close it up and wear it
1 week of testingClip the lid on, fit a 20 mm strap, and wear it for a few days without acting on anything it says. Those days are what build your personal baseline โ and what show you where the design still annoys you.
Before you start
Lithium batteries can catch fire if they are shorted, punctured or wired backwards โ do the battery and soldering steps with an adult, in a ventilated space, and never leave a charging cell unattended. What you end up with is a science project, not a health device: it estimates a signal, it does not measure stress and it cannot tell you anything about your health.
Step-by-step build photos from my own prototype are being shot and will be added here โ the diagrams above are the drawings I built from.
How it decides you're stressed
It never sees your homework or your group chat. All it has is the rhythm of your heartbeat โ so the logic stays deliberately simple.
1. Sample
2. Measure the gaps
3. Learn your normal
4. Nudge, don't nag
Three things that went wrong
The signal was garbage at first
The motor kept resetting the board
Movement looks exactly like stress
One important limit
This is a student prototype, not a medical device. It estimates signals associated with stress; it does not diagnose, treat or prevent any condition, and its readings should never be used to make a health decision.
