Skip to the content
4 layers64 × 59 mmDoorbell, the printed circuit board in 3D

doorbell.kicadsch / doorbell.kicadpcb are the authoritative source — edit them in KiCad. build.sh never authors copper; it runs the checks KiCad's own DRC/ERC can't express and exports the fab outputs:

Size
64 × 59 mm
Copper layers
4
Thickness
1.6 mm
Parts
119
Nets
91
Pads
361
Tracks, vias
664, 147
Pours
7
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
12 Jun 2026
Updated
19 Jul 2026

Overview

Doorbell is an open-source printed circuit board by gunnarbeutner, from the gunnarbeutner/doorbell repository on GitHub, published under the MIT licence. It is a 4-layer board of 64 × 59 mm with 119 parts on 91 nets, routed with 664 tracks and 147 vias.

It is built around the ESP32-S3-WROOM-1U-N16R8, ES8311 and LP5907MFX-3.3/NOPB(MS), with the CC0603KRX7R9BB104, LMBR01S30ST5G and H24VND3BA among its other parts. Its parts include 41 resistors, 23 capacitors, 17 diodes, 10 switches and 4 ICs. It belongs with the home automation and IoT boards and the ESP32 boards of this library.

Main components

12

README

kicad/README.md

Doorbell controller — KiCad project

Build pipeline (verify + fab; the KiCad files are authoritative)

doorbell.kicad_sch / doorbell.kicad_pcb are the authoritative source — edit them in KiCad. build.sh never authors copper; it runs the checks KiCad's own DRC/ERC can't express and exports the fab outputs:

text
./build.sh              # verify + all order-ready exports (full release)
./build.sh verify       # ERC + placement + PCB/DRC + simulation; no exports
./build.sh schematic    # schematic ERC + PDF export
./build.sh pcb          # placement + planes/thieving/connectivity + DRC
./build.sh simulation   # circuit-simulator tests
./build.sh fabrication  # Gerbers + drill + position + BOM -> fab/
./build.sh step         # populated STEP model
./build.sh board-step   # bare-board STEP model
ScriptInterpreterRole
tools/check_pcb.pyKiCad bundled python (pcbnew)verify placement (edge flush/overhang, parts inside outline)
tools/route.pyKiCad bundled python (pcbnew)refill zones + verify connectivity + copper-thieving sliver limit
tools/jlcpcb_cpl.pyKiCad bundled python (pcbnew)JLCPCB CPL (pad-centroid positions)
tools/jlcpcb_files.py.venv/bin/python (kiutils)JLCPCB BOM (from the schematic)

tools/doorbell_design.py holds the placement constants check_pcb.py verifies — connector edge fit/overhang and the mounting-hole MLCC keep-out; the KiCad files are authoritative for the rest. The board is hand-routed in KiCad; route.py fails the build on any unrouted connection or any copper-thieving float island over the sliver limit (≥ 2 mm² or ≥ 10 mm) — fix those in KiCad, never with a tool.

4-layer, ~64 × 59 mm; tools/check_pcb.py gates placement (the edge connectors J1/J2/J3 and U1 sit flush on their board edges).

Where the rest lives (deliberately not duplicated here)

This README is only the build/verify/fab process. Everything else stays in its authoritative source so it can't drift out of sync — so there is no part list, net list, or pin table here:

  • Parts / values / footprints / LCSC numbers — in the schematic (hidden LCSC/MPN/Footprint fields); exported to fab/doorbell-bom-jlcpcb.csv by build.sh fabrication.
  • Net connectivity and pin assignments — doorbell.kicad_sch (open it, or kicad-cli sch export netlist).
  • Architecture, pin map, relays/SSRs, audio path, power, isolation, layout — ../DESIGN.md; the requirements it satisfies — ../REQUIREMENTS.md; ordering — ../ORDERING.md.

Parts

119
QtyValueFootprintReferences
1210kPCM_JLCPCB:R_0402R7, R8, R9, R10, R11, R12, R18, R19, R20, R35, R41, R42
810uFPCM_JLCPCB:C_0603C2, C3, C4, C10, C11, C12, C23, C24
71uFPCM_JLCPCB:C_0603C5, C13, C14, C15, C16, C17, C18
6100kPCM_JLCPCB:R_0603R17, R36, R38, R39, R40, R44
6100nFPCM_JLCPCB:C_0603C6, C7, C8, C9, C22, C25
6220PCM_JLCPCB:R_0603R4, R5, R6, R21, R24, R34
5LMBR01S30ST5Glmbr01s30st5g:X3-DFN0603-2_L0.6-W0.3-RDD13, D14, D16, D17, D18
4H24VND3BAPCM_JLCPCB:D_SOD-323D2, D3, D7, D12
31N4148WPCM_JLCPCB:D_SOD-123D8, D9, D11
31kPCM_JLCPCB:R_0603R15, R27, R43
32.2kPCM_JLCPCB:R_0603R16, R26, R29
3GAQY412EHgaqy412eh:SMD-4_L4.8-W6.4-P2.54-LS9.6-BLK3, K4, K6
212kPCM_JLCPCB:R_0402R22, R23
222kPCM_JLCPCB:R_0603R30, R31
23.3kPCM_JLCPCB:R_0603R32, R33
25.1kPCM_JLCPCB:R_0603R1, R2
2AO3400APackage_TO_SOT_SMD:SOT-23Q3, Q4
2MountingHoleMountingHole:MountingHole_3.2mm_M3H1, H2
2TLP293 (GB)tlp293:SOP-4_L4.4-W2.8-P1.27-LS7.0-BROC1, OC2
1+3V3TestPoint:TestPoint_Pad_D1.5mmTP2
110MPCM_JLCPCB:R_0603R25
11A fast (466)Fuse:Fuse_1206_3216MetricF1
11N4004W1n4004w:SOD-123FL_L2.7-W1.8-LS3.8-RDD1
12.2kΩPCM_JLCPCB:R_0603R28
12.2uFPCM_JLCPCB:C_0603C20
1220Resistor_SMD:R_0603_1608MetricR37
122uF/50Veeefk1h220p:CAP-SMD_BD6.3-L6.6-W6.6-FDC19
1AVDDTestPoint:TestPoint_Pad_D1.5mmTP11
1AVDD_PRETestPoint:TestPoint_Pad_D1.5mmTP4
1BOOTPCM_JLCPCB:SW_TS-1088-AR02016SW1
1CHIME_BLEEDJumper:SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mmJP1
1ES8311ES8311:WQFN-20_L3.0-W3.0-P0.40-BL-EP1.7U3
1ESP32-S3-WROOM-1U-N16R8RF_Module:ESP32-S3-WROOM-1UU1
1ES_MICNTestPoint:TestPoint_Pad_D1.5mmTP7
1ES_MICPTestPoint:TestPoint_Pad_D1.5mmTP6
1ES_OUTPTestPoint:TestPoint_Pad_D1.5mmTP5
1ES_VMIDTestPoint:TestPoint_Pad_D1.5mmTP8
1G6K-2F-Y DC12Relay_SMD:Relay_DPDT_Omron_G6K-2F-YK5
1GAQW212GSgaqw212gs:SOP-8_L9.8-W4.4-P2.54-LS6.8-BLK1
1GAQY212GSgaqy212gs:SOP-4_L4.3-W4.4-P2.54-LS6.8-TRK2
1GNDTestPoint:TestPoint_Pad_D1.5mmTP1
1K5_LATCHTestPoint:TestPoint_Pad_D1.5mmTP10
1K6_BYPASSJumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP2
1LP5907MFX-3.3Package_TO_SOT_SMD:SOT-23-5U4
1RSTPCM_JLCPCB:SW_TS-1088-AR02016SW2
1SGM2212-3.3SGM2212:SOT-223-3_L6.5-W3.4-P2.30-LS7.0-BRU2
1SMF5.0APCM_JLCPCB:D_SOD-123FLD10
1SS14PCM_JLCPCB:D_SMAD4
1STATUSPCM_JLCPCB:D_0603D6
1Speaker/Mic 16RConnector_Wire:SolderWire-0.5sqmm_1x02_P4.6mm_D0.9mm_OD2.1mmLS1
1Sprechen/Hoeren (talk)sppj322300:SW-TH_SPPJ322300SW4
1TALK_BRIDGETestPoint:TestPoint_Pad_D1.5mmTP9
1TPD2S017TPD2S017:SOT-23-6_L2.9-W1.6-P0.95-LS2.8-BLD5
1TX_PRECHARGEJumper:SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mmJP3
1Tueroeffner (door release)sppj322300:SW-TH_SPPJ322300SW3
1USB-JSTConnector_JST:JST_SH_SM04B-SRSS-TB_1x04-1MP_P1.00mm_HorizontalJ1
1WD_GATETestPoint:TestPoint_Pad_D1.5mmTP3
1WF26 busdb125_5p:CONN-TH_5P-P3.50_DORABO_DB125-3.5-5P-GN-SJ2

More from gunnarbeutner/doorbell

1
  • 2 layers64 × 59 mmWf26, the printed circuit board in 3D

    Wf26

    gunnarbeutner/doorbell

    doorbell.kicadsch / doorbell.kicadpcb are the authoritative source — edit them in KiCad. build.sh never authors copper; it runs the checks KiCad's own DRC/ERC can't express and exports the fab outputs:

    7 parts1MIT

Similar boards

  • 2 layers109 × 126.4 mmRheoBoard v1.05, the printed circuit board in 3D

    RheoBoard v1.05

    The-Hybrid-Atelier/RheoBoard

    RheoBoard is open hardware for pneumatic retraction-extrusion measurements.

    162 parts
  • 4 layers61.8 × 79.8 mmOwl mainboard, the printed circuit board in 3D

    Owl mainboard

    danieltyukov/owltunes

    Owl-shaped Spotify remote for your desk and pocket: ESP32-S3 firmware, LVGL UI, KiCad PCB, 3D-printed enclosure, and owl v0 on the Waveshare AMOLED kit

    107 partsMIT
  • 4 layers100 × 80 mmBuilt, the printed circuit board in 3D

    Built

    devbisme/ai-circuit-design-tests

    Tests of KiCad-related AI tools.

    243 parts10
  • 4 layers118 × 60 mmHeron clock, the printed circuit board in 3D

    Heron clock

    Austin-Hunter1/HERON

    2026-2027 Graduate Project HERON:

    112 parts1
  • 4 layers86 × 29.9 mmGeiger probe, the printed circuit board in 3D

    Geiger probe

    bartkepl/CanGeigerProbe

    Polowa sonda promieniowania jonizującego z miniaturową lampą Geigera-Müllera, komunikująca się cyfrowo przez CAN 2.0B.

    116 partsMIT
  • 4 layers76 × 29.9 mmGnss node, the printed circuit board in 3D

    Gnss node

    bartkepl/CanGnssNode

    Polowy węzeł pozycyjny z modułem GNSS Quectel L76-L (GPS/GLONASS/Galileo/QZSS) i czujnikiem orientacji (akcelerometr + magnetometr), komunikujący się cyfrowo przez CAN 2.0B.

    141 partsMIT
  • 4 layers120 × 75 mmControlPanel, the printed circuit board in 3D

    ControlPanel

    bartkepl/ControlPanelV3S

    V3S CAN-bus control panel - KiCad hardware

    327 partsMIT
  • 6 layers160 × 100 mmBuslab, the printed circuit board in 3D

    Buslab

    tombueng/hilprobe

    HILprobe: multi-function UUT probe for hardware-in-the-loop testing - RS-485, CAN FD, logic analyzer, 4-ch scope, two programmable UUT supplies. KiCad 10, 6 layers, RP2350B + ESP32-S3.

    429 parts

Questions

How big is the Doorbell PCB?

It measures 64 × 59 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Doorbell use?

119 parts, built around the ESP32-S3-WROOM-1U-N16R8, ES8311, LP5907MFX-3.3/NOPB(MS) and CC0603KRX7R9BB104. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Doorbell KiCad files?

From the gunnarbeutner/doorbell repository on GitHub, at the commit this page was made from: the board is kicad/doorbell.kicad_pcb and its schematic kicad/doorbell.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Doorbell design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).