Haptic Glove Design Discussion
Firmware Starter.U1, U2, U3, U4, U5, USB-C J1, battery connector J2, sensor connector J3, and LRA connector J4 for solder bridges.J2 polarity: pin 1 = BAT, pin 2 = GND.J4 wiring: pin 1 = LRA_OUT_P, pin 2 = LRA_OUT_N; neither LRA pin is ground.Table
| Rail | Source | Expected Voltage | Measure At | Current Limit | Pass Criteria |
|---|---|---|---|---|---|
VBUS | USB-C J1 | 5.0 V | U3:IN, D1:VBUS | 500 mA | 4.75–5.25 V |
BAT | J2 / U3:BAT | 3.0–4.2 V | J2:1, C8:P1 | Battery-limited | No reverse polarity, no short |
SYS | U3:OUT | ~3.5–4.4 V | U4:VIN, C7:P1 | 500 mA | Present from USB or battery |
3V3 | U4:VOUT | 3.3 V | TP1, U1:3V3 | 600 mA max regulator | 3.20–3.40 V |
3V3_SENSOR | U5:OUT | 0 V until enabled, then 3.3 V | J3:2, C14:P1 | Sensor rail only | Off at boot, 3.20–3.40 V when enabled |
VBUS, BAT, SYS, 3V3, and 3V3_SENSOR to GND.VBUS, SYS, then 3V3 in order.BAT polarity and charger status.TCS_PWR_EN, verify 3V3_SENSOR appears at J3:2.Table
| Signal | Net | Expected State | Measure At | Notes |
|---|---|---|---|---|
| ESP32 enable | ESP_EN | High after RC delay | U1:EN | SW2 pulls low for reset |
| Boot strap | ESP_BOOT | High normally | U1:IO0 | SW1 pulls low for bootloader |
| Haptic enable | HAPTIC_EN | Low at boot, firmware high | U2:EN | R15 pulldown |
| Sensor power enable | TCS_PWR_EN | Low at boot, firmware high | U5:ON | R14 pulldown |
| I2C SDA/SCL | I2C_SDA, I2C_SCL | Idle high at 3.3 V | TP3, TP4 | 4.7 kΩ pull-ups |
Table
| Connector | Purpose | Pins to Verify | Test Method |
|---|---|---|---|
J1 | USB-C power/programming | VBUS, GND, D+, D-, CC1, CC2 | USB enumeration and 5 V check |
J2 | LiPo battery | pin 1 BAT, pin 2 GND | Polarity and charge test |
J3 | TCS34725 ring module | pin 1 GND, pin 2 3V3_SENSOR, pin 3 SDA, pin 4 SCL | I2C scan for 0x29 |
J4 | Fingertip LRA motor | pin 1 LRA_OUT_P, pin 2 LRA_OUT_N | DRV2605L effect playback |
Table
| Interface | Signals | Connector | Tool |
|---|---|---|---|
| ESP32-S3 native USB | USB_D_P, USB_D_N | J1 | PlatformIO / esptool.py |
| Bootloader buttons | ESP_BOOT, ESP_EN | SW1, SW2 | Hold BOOT, tap RESET |
3V3 is stable.0x5A) and TCS34725 (0x29).Table
| Test | Components | Input | Expected Output | Pass Criteria |
|---|---|---|---|---|
| I2C bus scan | U1, U2, J3 remote sensor | Firmware scan | Addresses 0x5A, 0x29 | Both detected |
| Color detection | TCS34725 remote board | Red/green/blue object | Raw RGB values change | Dominant channel matches object |
| Haptic playback | U2, J4, LRA | Firmware effect command | Motor vibrates | No overheating or continuous runaway |
| Battery ADC | R12/R13, U1:IO1 | Known battery voltage | Serial voltage estimate | Within about ±10% after calibration |
| Charger status | U3, R16/R17 | USB present / charging | CHG_STAT, PGOOD_STAT change | Active-low logic matches charger state |
Prerequisites
1. Visual Inspection
2. Power Rail Verification
3. Critical Signal Verification
4. Connector and Interface Tests
5. Programming and Debug Interface
6. Functional Validation
Open Items