Skip to the content
2 layers60 × 110 mmCore PCB, the printed circuit board in 3D

ESP32 Software for an Alarm Clock Resto Mod

Size
60 × 110 mm
Copper layers
2
Thickness
1.6 mm
Parts
70
Nets
77
Pads
289
Tracks, vias
540, 263
Pours
2
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
12 May 2026
Updated
25 Oct 2026

Overview

Core PCB is an open-source printed circuit board by brunolalb, from the brunolalb/AlarmClockRestoMod repository on GitHub. It is a 2-layer board of 60 × 110 mm with 70 parts on 77 nets, routed with 540 tracks and 263 vias.

It is built around the HEF4051BT and BSN20. Its parts include 24 capacitors, 21 resistors, 11 connectors, 4 ICs and 3 switches. It belongs with the lEDs and displays boards and the ESP32 and AVR (ATmega, ATtiny) boards of this library.

Main components

2

README

README.md

AlarmClockRestoMod

ESP32 Software for an Alarm Clock Resto Mod.

The idea is to use the components of an old alarm clock and replace the electronics with an ESP32, adding a lot of features to it. From an outside perspective, the clock will look as original as possible.

Features

  • WiFi connectivity
    • NTP time synchronization
    • Web server for advanced configuration
    • OTA updates
  • Bluetooth connection from phone and to headphone/speaker
  • Clock:
    • 7 segment display with dimming function
    • RTC for time keeping when power is out
  • Alarms:
    • Configurable via web interface (advanced) or via buttons (only next alarm)
    • Configurable music or internet radio or buzzer for each alarm
    • Snooze function (delay configurable via web interface)
    • Vacation mode (turn off all alarms for a configurable period of time)
  • Radio:
    • Internet radio stations configurable via web interface
    • Tuner button to switch between internet radio stations or playlists on microSD card
  • microSD Card to store pre-owned Music, playlists and configuration files

Components Overview

  • Display is a 7 segment 4 digits with a TM1637, dimmable by software
  • DS3231 for time keeping when power is out
  • microSD Card with:
    • MP3 songs and playlists
    • Configuration file for radio stations (accepts internet radio station or playlist)
    • Configuration file for different alarms
  • The tuner button of the alarm clock is a variable capacitor (10 - 500pF) read via a MPR121
    • Each frequency corresponds to an internet radio
  • Bluetooth to connect to cellphone (play music from it) or to an external speaker/headphone
  • Normal speaker connected via MAX98357A
  • Buttons (Telefunken Digital Electronic 101):
    • 2 momentary switches to set time (Fast and slow)
    • 1 latching switch to turn on auto dimm/full light on display
    • 3 mutually-exclusive latching switches: show time, show next alarm (use the 2 momentary switches to set the alarm time) or "sleep mode" (turn on radio for 60min)
    • 1 momentary switch for sleep function (during alarm, press once to delay alarm in 5min, press twice to turn off alarm; during sleep mode, turn off radio)
    • 1 Volume slider (potentiometer)
    • 4 mutually-exclusive latching switches: turn on radio, turn off radio, alarm with radio, alarm with buzzing sound
    • 2 mutually-exclusive latching switches: radio corresponds to playlists, radio corresponds to internet radios
    • 1 momentary switch: one click (tries to connect to configured bluetooth speaker), two clicks (turns on bluetooth for phone to connect); if bluetooth connection is not successful after 1 min, turn off bluetooth
  • Alarms:
    • fully configurable via web interface
    • choose days of the week
    • snooze time configurable
    • vacation mode
    • music and internet radio configured via web interface

Parts

70
QtyValueFootprintReferences
19100nCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC2, C3, C10, C11, C12, C14, C15, C16, C17, C18, C19, C20, C21, C22, C23, C24 +3
1510kResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19
4MountingScrewMountingHole:MountingHole_3.2mm_M3H1, H2, H3, H4
310uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC4, C6, C7
3Conn_01x02_MountingPinRadioWecker:JST_S2B-XH-SM4-TBJ1, J2, J7
3SW_PushButton_Switch_THT:SW_PUSH_6mmSW1, SW2, SW3
2100kResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR1, R2
21kResistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR3, R4
22K2Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR20, R21
2Conn_01x08Connector_PinSocket_2.54mm:PinSocket_1x08_P2.54mm_VerticalJ8, J9
110uCapacitor_THT:CP_Radial_D4.0mm_P2.00mmC1
11uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC13
1Arduino_Nano_ESP32_SocketRadioWecker:Arduino_Nano_ESP32_SocketA1
1BSN20Package_TO_SOT_SMD:SOT-23Q1
1Conn_01x02_MountingPinConnector_Molex:Molex_PicoBlade_53261-0271_1x02-1MP_P1.25mm_HorizontalJ3
1Conn_01x03_MountingPinConnector_Molex:Molex_PicoBlade_53261-0371_1x03-1MP_P1.25mm_HorizontalJ11
1Conn_01x04_MountingPinConnector_Molex:Molex_PicoBlade_53261-0471_1x04-1MP_P1.25mm_HorizontalJ4
1Conn_01x06Connector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_VerticalJ5
1Conn_02x12_Odd_EvenConnector_PinSocket_2.54mm:PinSocket_2x12_P2.54mm_VerticalJ10
1HEF4051BTPackage_SO:SOIC-16_3.9x9.9mm_P1.27mmU2
1LOGORadioWecker:LOGOG1
1MAX98357ARadioWecker:MAX98357A_AdafruitU1
1MCP23017x-x-SSPackage_SO:SSOP-28_5.3x10.2mm_P0.65mmU4
1MPR121_BREAKOUTRadioWecker:MPR121_BREAKOUTU3
1Screw_Terminal_01x02TerminalBlock_Phoenix:TerminalBlock_Phoenix_PT-1,5-2-3.5-H_1x02_P3.50mm_HorizontalJ6

More from brunolalb/AlarmClockRestoMod

1

Similar boards

  • 2 layers140 × 90 mmMetaldetector, the printed circuit board in 3D

    Metaldetector

    sharst/metaldetector-shield

    Hardware and Software for a custom build metaldetector + pressure sensing shield

    149 parts4LGPL-3.0
  • 6 layers141.1 × 178.5 mmLime RFE, the printed circuit board in 3D

    Lime RFE

    myriadrf/LimeRFE

    LimeRFE hardware design

    4,413 parts28
  • 4 layers43.2 × 62.7 mmTRX Board, the printed circuit board in 3D

    TRX Board

    digixx/VHF-UHF-Modul-Board

    818/868 TRX-Modul Board

    61 parts22MIT
  • 4 layers50 × 80 mmARGOS DEMO, the printed circuit board in 3D

    ARGOS DEMO

    CNES/argos-demo-board

    Demo board designed to use the ARRIBADA SMD module via USB to send ARGOS messages to the Kineis constellation.

    91 parts7CERN-OHL-S-2.0
  • 2 layers103 × 78.5 mmBreathe, the printed circuit board in 3D

    Breathe

    matoushybl/breathe

    33 parts4
  • 6 layers27 × 54.5 mmBujiCore, the printed circuit board in 3D

    BujiCore

    McflyWZX/BujiUAV2

    基于全志H5的M.2接口核心板,搭载4*DDR3、eMMC。

    209 parts3GPL-3.0
  • 2 layers62.1 × 72.2 mmCage LEDbutton pi, the printed circuit board in 3D

    Cage LEDbutton pi

    limblab/proc-kevin

    Kevin's analysis code

    32 parts2
  • 6 layers150.1 × 110.1 mmMB1939, the printed circuit board in 3D

    MB1939

    svogl/stm32n6-board

    altium project import; kicad 10

    643 parts1

Questions

How big is the Core PCB PCB?

It measures 60 × 110 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Core PCB use?

70 parts, built around the HEF4051BT and BSN20. 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 Core PCB KiCad files?

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

Can I use the Core PCB design in my own project?

Its repository states no licence, so its author keeps all rights: ask brunolalb before reusing the design.