# ESP32-S3 Smart Locker Controller
## Description
Welcome to your new project. Imagine what you can build here.
## Project Details
- **Owner:** mojahi
- **Created:** 3/29/2026
- **Last Updated:** 4/2/2026
- **Visibility:** Public
- **System Architecture:** ```mermaid
flowchart TD
subgraph Power [Power Block]
JBARREL[12V Barrel Jack]
BUCK[MP2315 12V to 3.3V Buck]
CBU[Input and Output Decoupling]
end
subgraph Controller [Controller Block]
USBC[USB-C Connector]
ESD[USB Protection and CC]
MCU[ESP32-S3-WROOM-1]
AUTO[Auto Program Transistors]
BTN[Boot and Reset Buttons]
end
subgraph Periph [Peripheral Block]
HX[HX711 Load Cell ADC]
JLOAD[LOAD_CELL JST-XH]
MOS[MOSFET Lock Driver]
JLOCK[12V_LOCK JST-XH]
DFLY[Flyback Diode]
JKEY[4x4_KEYPAD JST-XH]
end
JBARREL --> BUCK
BUCK --> MCU
BUCK --> HX
BUCK --> JKEY
USBC --> ESD
ESD --> MCU
AUTO --> MCU
BTN --> MCU
HX --> JLOAD
MCU --> HX
MCU --> MOS
MOS --> JLOCK
DFLY --> JLOCK
MCU --> JKEY
```
## Key Components
### D1 — [SS14](https://www.flux.ai/cherepanyadima/ss14~5b.md)
- Role Details: Clamp inductive kick from 12V solenoid lock
- Part Type: Diode
- Manufacturer Part Number: SS14
- Datasheet URL: https://datasheet.lcsc.com/lcsc/1912111437_Slkor-SLKORMICRO-Elec--SS14_C444721.pdf
- Manufacturer Name: Slkor(SLKORMICRO Elec.)
- Package: SMA
- Role: Flyback Protection
- License: https://creativecommons.org/licenses/by/4.0/
**Pins:**
- Anode [pin A]
- Cathode [pin C]
### D2 — [SMBJ15A-13-F](https://www.flux.ai/lcsc/smbj15a-13-f~8gof.md)
- Role: TVS Protection
- Package: SMB
- JLCPCB Part Class: Extended Part
- Role Details: Unidirectional TVS clamp for 12V input transients after input fuse
- Manufacturer Part Number: SMBJ15A-13-F
- Manufacturer Name: DIODES(美台)
- Datasheet URL: https://storage.googleapis.com/graviton-electric-symbols/document_assets/lcsc/2304140030_Diodes-Incorporated-SMBJ15A-13-F_C135046.pdf
- Product Info Url: https://lcsc.com/product-detail/TVS_DIODES_SMBJ15A-13-F_SMBJ15A-13-F_C135046.html
- Part Type: TVS
- Package or Case Code: SMB_L4.6-W3.6-LS5.3-RD
- LCSC Part Number: C135046
**Pins:**
- A [pin 2]
- K [pin 1]
### D3 — [PESD5V0S1BA](https://www.flux.ai/lcsc/pesd5v0s1ba~qi2k.md)
- Part Type: ESD Protection Devices
- Manufacturer Part Number: PESD5V0S1BA
- Package or Case Code: SOD-323_L1.7-W1.3-LS2.5-BI
- LCSC Part Number: C2827694
- Manufacturer Name: TECH PUBLIC(台舟)
- Role: TVS Protection
- Role Details: USB VBUS TVS clamp for 5V sink input protection
- Max Reverse Voltage: 5V
- Forward Voltage: 0.8V
- JLCPCB Part Class: Extended Part
- Package: SOD-323
- Diode Type: TVS Diode
**Pins:**
- 1 [pin 1]
- 2 [pin 2]
### F1 — [1812L200/12DR](https://www.flux.ai/jecstronic/1812l20012dr~98l.md)
- Datasheet URL: https://www.littelfuse.com/~/media/electronics/datasheets/resettable_ptcs/littelfuse_ptc_1812l_datasheet.pdf.pdf
- Current Rating: 2A
- Manufacturer Part Number: 1812L150/12DR
- Package: 1812
- Part Type: Fuse
- License: https://creativecommons.org/licenses/by/4.0/
- Manufacturer Name: Littelfuse Inc.
- Role: Fuse
- Role Details: Resettable input fuse on 12V barrel input before TVS and downstream power path
**Pins:**
- P1 [pin 1]
- P2 [pin 2]
### IC1 — [ESP32-S3-WROOM-1-N16R8](https://www.flux.ai/adrian95/esp32-s3-wroom-1-n16r8~fs1.md)
- Part Type: Module
- Role: MCU
- Manufacturer Name: Espressif Systems
- Manufacturer Part Number: ESP32-S3-WROOM-1-N16R8
- Package: 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
- Role Details: Main controller with native USB, keypad scan, HX711 interface, and lock control
**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]
### J1 — [USB-C 2.0 Receptacle](https://www.flux.ai/corynrobinson/usb-c-20-receptacle~cf.md)
- Role: USB Connector
- Purchase Url: https://www.digikey.com/en/products/detail/gct/USB4105-GF-A/11198441
- Package: USB-C Receptacle
- Role Details: Native USB programming/debug connector for ESP32-S3
- Manufacturer Part Number: USB4105-GF-A
- Datasheet URL: https://gct.co/files/drawings/usb4105.pdf
- Part Type: USB C
- Manufacturer Name: GTC
**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]
- VBUS [pin 14]
- VBUS [pin 13]
- VBUS [pin 4]
- VBUS [pin 3]
### J2 — [B2B-XH-A(LF)(SN)](https://www.flux.ai/adrian95/b2b-xh-alfsn~5xx.md)
- License: https://creativecommons.org/licenses/by/4.0/
- Role: Connector
- Manufacturer Part Number: B2B-XH-A(LF)(SN)
- Role Details: 12V solenoid lock connector, pin 1 = +12V, pin 2 = low-side switched return
- Part Type: Connector
- Manufacturer Name: JST Sales America Inc.
- Package: THT 2.50mm
- Datasheet URL: https://www.jst-mfg.com/product/pdf/eng/eXH.pdf
**Pins:**
- P1 [pin 1]
- P2 [pin 2]
### J3 — [B4B-XH-A(LF)(SN)](https://www.flux.ai/adrian95/b4b-xh-alfsn~8ne.md)
- Datasheet URL: https://www.jst-mfg.com/product/pdf/eng/eXH.pdf
- Role: Connector
- License: https://creativecommons.org/licenses/by/4.0/
- Manufacturer Name: JST Sales America Inc.
- Manufacturer Part Number: B4B-XH-A(LF)(SN)
- Role Details: Load-cell connector, pin 1 = A+, pin 2 = A-, pin 3 = E+, pin 4 = E-
- Part Type: Connector
- Package: THT 2.50mm
**Pins:**
- 1 [pin 1]
- 2 [pin 2]
- 3 [pin 3]
- 4 [pin 4]
### J4 — [B8B-XH-A(LF)(SN)](https://www.flux.ai/adrian95/b8b-xh-alfsn~8f6.md)
- Part Type: Connector
- Package: THT 2.50mm
- Datasheet URL: https://www.jst-mfg.com/product/pdf/eng/eXH.pdf
- Manufacturer Name: JST Sales America Inc.
- Role: Connector
- License: https://creativecommons.org/licenses/by/4.0/
- Role Details: Keypad connector, pins 1-4 = rows, pins 5-8 = columns
- Manufacturer Part Number: B8B-XH-A(LF)(SN)
**Pins:**
- 1 [pin 1]
- 2 [pin 2]
- 3 [pin 3]
- 4 [pin 4]
- 5 [pin 5]
- 6 [pin 6]
- 7 [pin 7]
- 8 [pin 8]
### Q1 — [AO3400A](https://www.flux.ai/adrian95/ao3400a~ug9.md)
- Role Details: Low-side MOSFET switch for 12V solenoid lock
- Part Type: Transistor
- Manufacturer Part Number: AO3400A
- Manufacturer Name: Alpha & Omega Semiconductor Inc.
- Role: Lock Driver
- Package: SOT-23
- License: https://creativecommons.org/licenses/by/4.0/
- Datasheet URL: https://media.digikey.com/pdf/Data%20Sheets/Alpha%20&%20Omega/AO3400A_ds.pdf
**Pins:**
- D [pin 3]
- G [pin 1]
- S [pin 2]
### Q2 — [BC817-16W-7](https://www.flux.ai/jecstronic/bc817-16w-7~ind.md)
- License: https://creativecommons.org/licenses/by/4.0/
- Package: SOT-23-3
- Datasheet URL: https://www.diodes.com/assets/Datasheets/ds30575.pdf
- Part Type: Transistor
- Role: Auto Program
- Manufacturer Part Number: BC817-16W-7
- Role Details: NPN transistor used in ESP32 auto-program/reset circuit
- Manufacturer Name: Diodes Incorporated
**Pins:**
- B [pin 1]
- C [pin 3]
- E [pin 2]
### Q3 — [BC817-16W-7](https://www.flux.ai/jecstronic/bc817-16w-7~ind.md)
- License: https://creativecommons.org/licenses/by/4.0/
- Role: Auto Program
- Datasheet URL: https://www.diodes.com/assets/Datasheets/ds30575.pdf
- Role Details: NPN transistor used in ESP32 auto-program/reset circuit
- Package: SOT-23-3
- Part Type: Transistor
- Manufacturer Name: Diodes Incorporated
- Manufacturer Part Number: BC817-16W-7
**Pins:**
- B [pin 1]
- C [pin 3]
- E [pin 2]
### SW1 — [SW_Push](https://www.flux.ai/adrian95/swpush~f5x.md)
- Part Type: Switch
- Manufacturer Name: Schurter Inc.
- Manufacturer Part Number: 1301.9314
- Role Details: BOOT button, pulls ESP32 GPIO0 low for download mode
- Package: SMD Tactile
- Datasheet URL: https://us.schurter.com/en/datasheet/typ_6x6_mm_tact_switches.pdf
- Role: Button
**Pins:**
- 1
- 2
### SW2 — [SW_Push](https://www.flux.ai/adrian95/swpush~f5x.md)
- Part Type: Switch
- Role: Button
- Manufacturer Part Number: 1301.9314
- Manufacturer Name: Schurter Inc.
- Datasheet URL: https://us.schurter.com/en/datasheet/typ_6x6_mm_tact_switches.pdf
- Role Details: RESET button, pulls ESP32 EN low for reset
- Package: SMD Tactile
**Pins:**
- 1
- 2
### U1 — [MP2315SGJ-Z](https://www.flux.ai/support/mp2315sgj-z~y8.md)
- Product Info Url: https://www.monolithicpower.com/en/catalog/product/view/id/1078?utm_source=ultralibrarian&utm_medium=component_search&utm_campaign=listing
- Manufacturer Name: Monolithic Power Systems
- Datasheet URL: https://www.monolithicpower.com/en/documentview/productdocument/index/version/2/document_type/Datasheet/lang/en/sku/MP2315S
- Role Details: Main 12V to 3.3V regulator for controller and peripherals
- Package: TSOT23-8
- Manufacturer Part Number: MP2315SGJ-Z
- Package or Case Code: TSOT23-8_MP2315S_MNP
- Role: Buck Regulator
- Product Image Url: https://www.monolithicpower.com/pub/media/catalog/product/M/P/MP2315S_1078_1.jpg
**Pins:**
- AAM [pin 1]
- BST [pin 5]
- EN [pin 6]
- FB [pin 8]
- GND [pin 4]
- IN [pin 2]
- SW [pin 3]
- VCC [pin 7]
### U2 — [HX711](https://www.flux.ai/kicad-part-library/hx711~na6.md)
- Package: SOP-16
- Datasheet URL: https://web.archive.org/web/20220615044707/https://akizukidenshi.com/download/ds/avia/hx711.pdf
- Role Details: Bridge sensor ADC for load-cell measurement
- Role: Load Cell ADC
- Package or Case Code: SOP-16_3.9x9.9mm_P1.27mm
- Manufacturer Part Number: HX711
**Pins:**
- AGND [pin 5]
- AVDD [pin 3]
- BASE [pin 2]
- DOUT [pin 12]
- DVDD [pin 16]
- INA- [pin 7]
- INA+ [pin 8]
- INB- [pin 9]
- INB+ [pin 10]
- PD_SCK [pin 11]
- RATE [pin 15]
- VBG [pin 6]
- VFB [pin 4]
- VSUP [pin 1]
- XI [pin 14]
- XO [pin 13]
### U3 — [IP4234CZ6](https://www.flux.ai/kicad-part-library/ip4234cz6~2q.md)
- Manufacturer Part Number: IP4234CZ6
- Package: SC-74-6
- Package or Case Code: SC-74-6_1.55x2.9mm_P0.95mm
- Role Details: Low-capacitance USB data-line ESD protection for ESP32-S3 native USB; one spare channel intentionally left unused
- Role: ESD Protection
- Datasheet URL: https://assets.nexperia.com/documents/data-sheet/IP4234CZ6.pdf
- Manufacturer Name: Texas Instruments Inc.
**Pins:**
- 4 [pin 4]
- 6 [pin 6]
- 3 [pin 3]
- 1 [pin 1]
- VN [pin 2]
- VP [pin 5]
*The full schematic, PCB layout, bill of materials, and interactive design are available at [https://www.flux.ai/mojahi/esp32-s3-smart-locker-controller~cr](https://www.flux.ai/mojahi/esp32-s3-smart-locker-controller~cr).*
---
*Generated from [https://www.flux.ai/mojahi/esp32-s3-smart-locker-controller~cr](https://www.flux.ai/mojahi/esp32-s3-smart-locker-controller~cr)*