# ESP32 Flex Haptic Board ## Description Beginner-friendly battery-powered ESP32-S3 board with USB-C charging/programming, LiPo power-path charging, three flex sensor inputs, one I2C IMU, and two haptic driver outputs. ## Project Details - **Owner:** fireball3256 - **Created:** 4/17/2026 - **Last Updated:** 4/17/2026 - **Visibility:** Public - **Human Interface:** 3 flex sensor inputs, 2 haptic outputs, BOOT and RESET buttons - **Operating Voltage:** 3.3V logic rail - **Power Requirements:** USB-C 5V input and single-cell LiPo battery - **Connectivity:** USB 2.0, I2C - **Implementation Details:** ESP32-S3 with native USB, MCP73871 charger power-path, shared 3.3V regulator rail, external haptic driver connectors ## Key Components ### IC2 — [ESP32-S3-WROOM-1-N16R8](https://www.flux.ai/adrian95/esp32-s3-wroom-1-n16r8~fs1.md) - Role: Main MCU - Manufacturer Part Number: ESP32-S3-WROOM-1-N16R8 - Manufacturer Name: Espressif - Role Details: ESP32-S3 module providing native USB programming, three flex ADC inputs, I2C gyro interface, and two haptic control outputs - Package: Module - Part Type: Module - License: https://creativecommons.org/licenses/by/4.0/ - Datasheet URL: https://www.mouser.com/datasheet/2/891/esp32_s3_wroom_1_wroom_1u_datasheet_en-2930317.pdf **Pins:** - 3V3 [pin 2] - EN [pin 3] - GND_1 [pin 1] - GND_10 [pin 48] - GND_11 [pin 49] - GND_2 [pin 40] - GND_3 [pin 41] - GND_4 [pin 42] - GND_5 [pin 43] - GND_6 [pin 44] - GND_7 [pin 45] - GND_8 [pin 46] - GND_9 [pin 47] - IO0 [pin 27] - IO1 [pin 39] - IO10 [pin 18] - IO11 [pin 19] - IO12 [pin 20] - IO13 [pin 21] - IO14 [pin 22] - IO15 [pin 8] - IO16 [pin 9] - IO17 [pin 10] - IO18 [pin 11] - IO19 [pin 13] - IO2 [pin 38] - IO20 [pin 14] - IO21 [pin 23] - IO3 [pin 15] - IO35 [pin 28] - IO36 [pin 29] - IO37 [pin 30] - IO38 [pin 31] - IO39 [pin 32] - IO4 [pin 4] - IO40 [pin 33] - IO41 [pin 34] - IO42 [pin 35] - IO45 [pin 26] - IO46 [pin 16] - IO47 [pin 24] - IO48 [pin 25] - IO5 [pin 5] - IO6 [pin 6] - IO7 [pin 7] - IO8 [pin 12] - IO9 [pin 17] - RXD0 [pin 36] - TXD0 [pin 37] ### J10 — [B2B-PH-K-S(LF)(SN)](https://www.flux.ai/jecstronic/b2b-ph-k-slfsn~nss.md) - License: https://creativecommons.org/licenses/by/4.0/ - Role Details: 2-pin battery connector for single-cell LiPo pack - Manufacturer Part Number: B2B-PH-K-S(LF)(SN) - Role: Battery Connector - Manufacturer Name: JST Sales America - Package: JST-PH-2 - Datasheet URL: https://datasheet.lcsc.com/lcsc/1811151524_JST-Sales-America-B2B-PH-K-S-LF-SN_C131337.pdf - Part Type: Connector **Pins:** - PIN1 [pin 1] - PIN2 [pin 2] ### J11 — [B3B-PH-K-S(LF)(SN)](https://www.flux.ai/adrian95/b3b-ph-k-slfsn~xzb.md) - License: https://creativecommons.org/licenses/by/4.0/ - Manufacturer Name: JST Sales America Inc. - Part Type: Connector - Package: JST-PH-3 - Manufacturer Part Number: B3B-PH-K-S(LF)(SN) - Implementation Details: Pin 1=VCC, Pin 2=GND, Pin 3=DATA - Role Details: 3-pin connector carrying 3.3V, GND, and control signal to an external haptic driver module - Role: Haptic Connector - Datasheet URL: https://www.jst-mfg.com/product/pdf/eng/ePH.pdf **Pins:** - Pin_1 [pin 1] - Pin_2 [pin 2] - Pin_3 [pin 3] ### J12 — [B3B-PH-K-S(LF)(SN)](https://www.flux.ai/adrian95/b3b-ph-k-slfsn~xzb.md) - Part Type: Connector - Role Details: 3-pin connector carrying 3.3V, GND, and control signal to an external haptic driver module - Implementation Details: Pin 1=VCC, Pin 2=GND, Pin 3=DATA - Manufacturer Name: JST Sales America Inc. - Role: Haptic Connector - License: https://creativecommons.org/licenses/by/4.0/ - Datasheet URL: https://www.jst-mfg.com/product/pdf/eng/ePH.pdf - Package: JST-PH-3 - Manufacturer Part Number: B3B-PH-K-S(LF)(SN) **Pins:** - Pin_1 [pin 1] - Pin_2 [pin 2] - Pin_3 [pin 3] ### J13 — [B2B-PH-K-S](https://www.flux.ai/adrian95/b2b-ph-k-s~fx.md) - Datasheet URL: https://www.jst-mfg.com/product/pdf/eng/ePH.pdf - Part Type: Connector - Role Details: 2-pin connector for each external flex sensor element used in a divider input - Role: Flex Sensor Connector - Manufacturer Name: JST - Manufacturer Part Number: B2B-PH-K-S - Package or Case Code: JST_B2B-PH-K-S - Package: JST-PH-2 - License: https://creativecommons.org/licenses/by/4.0/ **Pins:** - 1 [pin 1] - 2 [pin 2] ### J14 — [B2B-PH-K-S](https://www.flux.ai/adrian95/b2b-ph-k-s~fx.md) - Package or Case Code: JST_B2B-PH-K-S - Manufacturer Name: JST - Manufacturer Part Number: B2B-PH-K-S - Role Details: 2-pin connector for each external flex sensor element used in a divider input - License: https://creativecommons.org/licenses/by/4.0/ - Role: Flex Sensor Connector - Part Type: Connector - Datasheet URL: https://www.jst-mfg.com/product/pdf/eng/ePH.pdf - Package: JST-PH-2 **Pins:** - 1 [pin 1] - 2 [pin 2] ### J15 — [B2B-PH-K-S](https://www.flux.ai/adrian95/b2b-ph-k-s~fx.md) - Package: JST-PH-2 - Role: Flex Sensor Connector - Datasheet URL: https://www.jst-mfg.com/product/pdf/eng/ePH.pdf - Part Type: Connector - Role Details: 2-pin connector for each external flex sensor element used in a divider input - Manufacturer Name: JST - Manufacturer Part Number: B2B-PH-K-S - Package or Case Code: JST_B2B-PH-K-S - License: https://creativecommons.org/licenses/by/4.0/ **Pins:** - 1 [pin 1] - 2 [pin 2] ### J3 — [61300411121](https://www.flux.ai/adrian95/61300411121~pw9.md) - Part Type: Connector - Package: Pin Header 1x4 - Package or Case Code: HDRV4W95P0X254_1X4_1016X254X854P - Role: Connector - Manufacturer Part Number: 61300411121 - Manufacturer Name: Wurth Elektronik - Datasheet URL: https://www.we-online.com/components/products/datasheet/61300411121.pdf - Role Details: Optional external I2C breakout access ordered as GND 3V3 SDA SCL - Implementation Details: Pin 1=GND, Pin 2=3V3, Pin 3=SDA, Pin 4=SCL - License: https://creativecommons.org/licenses/by/4.0/ **Pins:** - 1 [pin 1] - 2 [pin 2] - 3 [pin 3] - 4 [pin 4] ### J9 — [USB-C 2.0 Receptacle](https://www.flux.ai/vritzka/usb-c-2p0-receptacle~h8.md) - Role: USB-C Port - Manufacturer Name: GTC - Package: USB-C Receptacle - Datasheet URL: https://gct.co/files/drawings/usb4105.pdf - Purchase Url: https://www.digikey.com/en/products/detail/gct/USB4105-GF-A/11198441 - Manufacturer Part Number: USB4105-GF-A - Part Type: USB C - Role Details: Provides 5V input and USB 2.0 data connection for charging and programming **Pins:** - CC1 [pin 6] - CC2 [pin 12] - D- [pin 9] - D- [pin 7] - D+ [pin 10] - D+ [pin 8] - GND [pin 15] - GND [pin 1] - GND [pin 16] - GND [pin 2] - SBU1 [pin 11] - SBU2 [pin 5] - Shield [pin 16] - VBUS [pin 14] - VBUS [pin 13] - VBUS [pin 4] - VBUS [pin 3] ### SW3 — [PTS810SJK250SMTRLFS](https://www.flux.ai/jharwinbarrozo/pts810sjk250smtrlfs~6tl.md) - Role Details: Momentary pushbutton for ESP32 boot and reset control - Datasheet URL: https://datasheet.lcsc.com/lcsc/1810121650_C-K-PTS810SJK250SMTRLFS_C221896.pdf - Manufacturer Part Number: PTS810SJK250SMTRLFS - Package: SMD Tactile - Part Type: Switch - Role: Control Button - Manufacturer Name: C&K **Pins:** - P1 [pin 1] - P3 [pin 3] ### SW4 — [PTS810SJK250SMTRLFS](https://www.flux.ai/jharwinbarrozo/pts810sjk250smtrlfs~6tl.md) - Manufacturer Name: C&K - Package: SMD Tactile - Role: Control Button - Role Details: Momentary pushbutton for ESP32 boot and reset control - Part Type: Switch - Datasheet URL: https://datasheet.lcsc.com/lcsc/1810121650_C-K-PTS810SJK250SMTRLFS_C221896.pdf - Manufacturer Part Number: PTS810SJK250SMTRLFS **Pins:** - P1 [pin 1] - P3 [pin 3] ### U3 — [RT9013-33GB](https://www.flux.ai/jecstronic/rt9013-33gb~xl8.md) - Manufacturer Part Number: RT9013-33GB - Part Type: Integrated Circuit - Package: SOT-23-5 - Role Details: 3.3V LDO generating the shared logic rail from the charger system output - Role: Regulator - Datasheet URL: https://datasheet.lcsc.com/lcsc/1809081207_Richtek-Tech-RT9013-33GB_C47773.pdf - Manufacturer Name: Richtek Tech **Pins:** - EN - GND - IN - NC - OUT ### U5 — [MCP73871-2CCI/ML](https://www.flux.ai/adrian95/mcp73871-2cciml~xz9.md) - Package: QFN - Role Details: Charges a single-cell battery from USB-C and provides power-path output for system rail - Manufacturer Name: Microchip - Part Type: Integrated Circuit - Role: Battery Charger - License: https://creativecommons.org/licenses/by/4.0/ - Datasheet URL: https://ww1.microchip.com/downloads/en/DeviceDoc/MCP73871-Data-Sheet-20002090E.pdf - Manufacturer Part Number: MCP73871-2CCI/ML **Pins:** - ~PG [pin 6] - ~TE [pin 9] - CE [pin 17] - EP [pin 21] - IN_1 [pin 18] - IN_2 [pin 19] - OUT_1 [pin 1] - OUT_2 [pin 20] - PROG1 [pin 13] - PROG2 [pin 4] - PROG3 [pin 12] - SEL [pin 3] - STAT1/~LBO [pin 8] - STAT2 [pin 7] - THERM [pin 5] - VBAT_1 [pin 14] - VBAT_2 [pin 15] - VBAT_SENSE [pin 16] - VPCC [pin 2] - VSS_1 [pin 10] - VSS_2 [pin 11] ### U6 — [USBLC6-2P6](https://www.flux.ai/kicad-part-library/usblc6-2p6~djt.md) - Role: USB Protection - Package: SOT-666 - Package or Case Code: SOT-666 - Manufacturer Part Number: USBLC6-2P6 - Role Details: Protects USB D+ and D- lines from ESD events - Manufacturer Name: STMicroelectronics - Datasheet URL: https://www.st.com/resource/en/datasheet/usblc6-2.pdf **Pins:** - GND [pin 2] - I/O1 [pin 1] - I/O1 [pin 6] - I/O2 [pin 3] - I/O2 [pin 4] - VBUS [pin 5] ### U7 — [LSM6DS3TR-C](https://www.flux.ai/lcsc/lsm6ds3tr-c~t27b.md) - Role: IMU - Part Type: Attitude Sensors - Manufacturer Part Number: LSM6DS3TR-C - Operating Temperature: -40°C ~ 85°C - Package: LGA-14 - Role Details: I2C-connected motion sensor providing gyro and accelerometer data - Sensor Type: Accelerometer gyroscope - Manufacturer Name: STMicroelectronics - Package or Case Code: LGA-14_L3.0-W2.5-P0.50-TL - JLCPCB Part Class: Extended Part - LCSC Part Number: C967633 **Pins:** - CS [pin 12] - GND [pin 6] - GND [pin 7] - INT1 [pin 4] - INT2 [pin 9] - NC [pin 11] - NC [pin 10] - SCL [pin 13] - SCx [pin 3] - SDA [pin 14] - SDO/SA0 [pin 1] - SDx [pin 2] - VDD [pin 8] - VDDIO [pin 5] *The full schematic, PCB layout, bill of materials, and interactive design are available at [https://www.flux.ai/fireball3256/esp32-flex-haptic-board~xr](https://www.flux.ai/fireball3256/esp32-flex-haptic-board~xr).* --- *Generated from [https://www.flux.ai/fireball3256/esp32-flex-haptic-board~xr](https://www.flux.ai/fireball3256/esp32-flex-haptic-board~xr)*