This project is a wearable LED timer wrist band based on the ESP32, designed for visual and haptic feedback using WS2812B RGB LEDs and a haptic vibration motor. The device is powered by a single-cell Li-ion/Li-Po battery, supports charging via pogo pins, and is optimized for low power consumption.
The entire schematic and PCB are designed using EasyEDA Pro.
- ESP32-based control and timing logic
- WS2812B RGB LEDs for visual indication
- Haptic motor for vibration alerts
- Push buttons (A, B, C) for user input
- Rechargeable battery with onboard charging
- Battery voltage monitoring via ESP32 ADC
- Efficient power management using buck-boost and boost converters
- Compact design suitable for a wrist-worn device
The ESP32 is the main controller responsible for:
- Timer logic
- LED control (WS2812B)
- Button input handling
- Battery voltage monitoring
- Haptic motor control via MOSFET
- Power enable control for peripherals
- Single-cell Li-ion / Li-Po battery
- Typical voltage: 3.7V
- Full charge: 4.2V
- Charging through pogo pins
- Dedicated charging IC manages safe charging
- Battery directly supplies the system when not charging
-
Buck-Boost Regulator (3.3V):
- Supplies stable 3.3V to the ESP32
-
Boost Converter (5V):
- Used for WS2812B LEDs
- Enable pin controlled by ESP32 to save power
- WS2812B RGB LEDs powered from 5V
- Data line driven directly by ESP32
- Boost converter is enabled only when LEDs are required
- Vibration motor controlled using a MOSFET
- MOSFET gate driven by ESP32 GPIO
- Allows safe switching of higher motor current
-
Three tactile buttons: A, B, C
-
Connected to ESP32 GPIOs
-
Used for:
- Timer start/stop
- Mode selection
- Reset or configuration
-
Battery voltage sensed using a voltage divider
-
Connected to ESP32 ADC pin
-
Enables:
- Low battery warning
- Battery level indication using LEDs
- Schematic & PCB Design: EasyEDA Pro
- MCU Platform: ESP32