Espressif ESP32-C3
Smart Ergonomic Fidget Click Counter
Overview
A durable, ergonomic wireless handheld click counter powered by an ESP32-C3 with an OLED display, LiPo battery, and USB-C charging for gamified tracking and dashboards.
System architecture
- MCU → DISPLAYI2CI2C bus for driving the OLED display
- MCU → SWITCHGPIODigital input pin with internal pull-up detecting mechanical switch presses
- MCU → HAPTICI2CI2C control interface for DRV2605L haptic driver
- POWER → MCUPowerRegulated 3.3V power supply for the microcontroller
- POWER → DISPLAYPowerRegulated 3.3V power supply for the OLED display
- POWER → HAPTICPowerPower supply for the haptic driver and motor
Bill of materials
| Part number | Type | Component | Manufacturer | Package | Qty | Datasheet | Match |
|---|---|---|---|---|---|---|---|
| ESP32-C3-WROOM-02-N4 | MCU | Espressif ESP32-C3 Main processing unit handling click inputs, display rendering, Wi-Fi and Bluetooth connectivity | Espressif Systems | 32-VFQFN Exposed Pad | 1 | Matched | |
17 alternatives consideredAI verified | |||||||
| OLED 128x64 0.96" I2C | DISPLAY | 0.96-inch OLED Display SSD1306 Real-time count viewing and system status display | UNIVERSAL-SOLDER Electronics | — | 1 | Matched | |
18 alternatives consideredAI verified | |||||||
| D2FC-F-7N(10M) | SENSOR | Omron D2FC-F-7N Microswitch Mechanical click input with tactile feedback | OMRON | Plugin | 1 | Matched | |
10 alternatives consideredAI verified | |||||||
| DRV2605LDGST | ACTUATOR | DRV2605L with LRA Motor Provides active haptic feedback and success milestone vibrations | Texas Instruments | VSSOP-10 (DGS) | 1 | Matched | |
9 alternatives consideredAI verified | |||||||
| MCP73831T-2ACI/OT | POWER | MCP73831 Charger, DW01A Protection & RT9013 LDO Manages USB-C charging, 3.7V LiPo battery protection, and 3.3V voltage regulation | MICROCHIP | SOT-23-5 | 1 | Matched | |
35 alternatives consideredAI verified | |||||||
Build guide
Procurement & Preparation
- Inspect and organize all BOM components including ESP32-C3-WROOM-02-N4, SSD1306 OLED display, Omron D2FC-F-7N microswitch, DRV2605L haptic driver with LRA motor, and power management ICs (MCP73831, DW01A, RT9013).
- Prepare the custom PCB layout, verify schematic nets for I2C (SDA/SCL sharing between display and haptic driver), and check power distribution traces.
Hardware Assembly & Wiring
- Solder the power management circuit onto the PCB, including the MCP73831 charger, DW01A protection IC, RT9013 3.3V LDO, USB-C receptacle, and associated passive components.
- Mount and solder the Espressif ESP32-C3-WROOM-02-N4 module onto the main PCB, ensuring correct pin alignment for GPIO, I2C, and power inputs.
- Wire the Omron D2FC-F-7N microswitch to the MCU using GPIO_CLICK and GND signals, enabling mechanical input with tactile feedback.
- Connect the 0.96-inch OLED display SSD1306 and DRV2605L haptic driver to the MCU via the shared I2C interface (SDA, SCL, 3.3V, GND).
Firmware Setup
- Connect the USB-C port of the assembled click counter to a development PC and initialize the ESP32-C3 development environment using Arduino IDE or ESP-IDF.
- Install required software libraries including Adafruit_SSD1306, Adafruit_GFX, and Adafruit_DRV2605 for display rendering and haptic feedback control.
- Compile and flash the firmware binary that polls the Omron microswitch on GPIO_CLICK, updates the OLED click count, triggers LRA haptic waveforms via DRV2605L, and manages Wi-Fi/Bluetooth dashboard sync.
Testing & Calibration
- Perform a hardware power-on test by plugging in a 3.7V LiPo battery and USB-C charger, verifying that the MCP73831 indicates charging state and the RT9013 outputs stable 3.3V power.
- Test mechanical click response by pressing the Omron microswitch rapidly, ensuring zero debounce errors and immediate visual feedback on the SSD1306 OLED display.
- Calibrate the DRV2605L haptic waveforms for the LRA motor to ensure distinct, crisp tactile feedback on standard clicks and success milestones.
- Verify wireless connectivity by connecting the ESP32-C3 to a local Wi-Fi network and confirming real-time click data transmission to the target gamified tracking dashboard.
Document
handheld click counter
A durable, ergonomic wireless handheld click counter powered by an ESP32-C3 with an OLED display, LiPo battery, and USB-C charging for gamified tracking and dashboards.
Design Overview
| Item | Details |
|---|---|
| Product Type | handheld click counter |
| Key Functions | Mechanical click counting with tactile feedback, OLED display for real-time count viewing, Wireless connectivity for dashboards, tracking, and achievements, Rechargeable LiPo battery with USB-C charging, Ergonomic handheld enclosure optimized for durability |
| Power Source | Li-Ion Battery |
| Connectivity | WiFi, Bluetooth |
| Size | Standard ergonomic handheld |
| Environment | indoor |
| Difficulty | Intermediate |
| Est. Time | 3-5 hours |
System Architecture
Power Topology: USB-C input -> MCP73831 Charger IC -> 3.7V LiPo Battery with DW01A/FS8205A Protection -> RT9013 3.3V LDO Regulator -> System 3.3V Rail (MCU, OLED, Haptic Driver)
Module List
| Module ID | Type | Name | Function | Voltage |
|---|---|---|---|---|
| MCU | MCU | Espressif ESP32-C3 | Main processing unit handling click inputs, display rendering, Wi-Fi and Bluetooth connectivity | 3.3V |
| DISPLAY | DISPLAY | 0.96-inch OLED Display SSD1306 | Real-time count viewing and system status display | 3.3V |
| SWITCH | SENSOR | Omron D2FC-F-7N Microswitch | Mechanical click input with tactile feedback | 3.3V |
| HAPTIC | ACTUATOR | DRV2605L with LRA Motor | Provides active haptic feedback and success milestone vibrations | 3.3V |
| POWER | POWER | MCP73831 Charger, DW01A Protection & RT9013 LDO | Manages USB-C charging, 3.7V LiPo battery protection, and 3.3V voltage regulation | 3.7V/3.3V |
Key Components
5/5 modules matched to real parts. See the BOM tab for the full component table.
Espressif ESP32-C3 (ESP32-C3-WROOM-02-N4)
Candidate 1 (ESP32-C3-WROOM-02-N4) is an exact match for the searched module name and specifications.
MCP73831 Charger, DW01A Protection & RT9013 LDO (MCP73831T-2ACI/OT)
Candidate 1 (MCP73831T-2ACI/OT) is the exact match for the specified MCP73831 Charger component, providing the correct l
Build Summary
- Difficulty: Intermediate
- Estimated time: 3-5 hours
- Tools required: Soldering iron with fine tip, Lead-free solder and flux, Multimeter, Wire strippers and cutters, USB-C cable, PC with ESP-IDF or Arduino IDE
See the Build tab for the full step-by-step assembly guide.
Generated by YuanQi AI Design System · Query: Build a handheld click counter using ESP32-C3 and an OLED display