Day ***TWO** of Tiq Hackathon 1/2
#Wearable interface
##Core requirement:
- Temperature range: 32°C -45°C
- Pressure range and resolution:
- Sensor distribution: sleeves, front chest, upper back
- Action: stream data to phone/tablet/computer in real time to control what content is delivered to the the user (audio and visual)
- Lifecycle: garment has to survive steam cleaning minimum, regualr cleaning ideally.
Recommend by Lumo AI
###Sensors that fit the 32 °C – 45 °C window
Implementation tip: Use the digital TMP117 for all three zones (sleeves, chest, upper back). With I²C you can give each sensor a unique address (or use an I²C multiplexer like the TCA9548A if you need >8 devices). This gives you consistent, calibrated data across the whole jacket.
###Pressure / Touch sensing
Light touch (finger tap) → ~0.1 N
Firm press (hand‑press) → up to ~10 N
How to combine: Read the FSR analog value for “how hard” the press is, and read the MPR121 touch status for “is there contact at all”. This gives you a binary touch flag plus a pressure magnitude, which is ideal for triggering content changes.
###Microcontroller & Wireless Stack
Energy‑saving tip: Put the MCU in deep‑sleep between samples and wake on a timer interrupt (e.g., every 100 ms). Only enable BLE notifications when new data is ready.
###Garment‑Level Design for Washability
Data Flow & Real‑Time Content Control
**Firmware side *Sample TMP117 (I²C) → convert to °C. *Read FSR analog value (ADC) → map to pressure (0‑100 %). *Poll MPR121 (I²C) → touch‑status bits. *Pack a small BLE notification payload (≈ 8 bytes): *Byte0‑1 : temperature (int16, centi‑°C) *Byte2‑3 : pressure (uint16, 0‑65535) *Byte4 : touch flags (bit0 sleeve‑L, bit1 sleeve‑R, bit2 chest, bit3 back) *Byte5‑7 : reserved / future sensors *Send notification at 10 Hz (adjustable).
**Phone / Tablet side *Use a lightweight cross‑platform library (Flutter + flutter_blue, React Native + react-native-ble-plx, or native Swift/Kotlin). *Decode the payload, apply smoothing/filtering, then feed the values into your media‑control logic.
**Example mapping: Temperature ≥ 38 °C → lower volume of background music, switch to “cooling” visual palette (blue tones). Pressure > 70 % on the left sleeve → trigger a left‑hand haptic cue and display a left‑side overlay. Touch on chest while temperature spikes → pause video playback and show a “heat alert” banner.
**Computer side (optional) Run a small Node.js service that subscribes to the BLE peripheral (using noble). Forward the data via WebSocket to a web dashboard or to a local media player (e.g., VLC, OBS).