

Retro Clock
Modifications: 1. Changed TFT display to an SPI version which has a much improved Touch interface. 2. Added SPIFFS to support files for data and images. This freed up memory and added flexability. 3.
- Size
- 62 × 99 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 39
- Nets
- 46
- Pads
- 133
- Tracks, vias
- 192, 18
- Pours
- 5
- Routed
- Yes
- KiCad
- KiCad 5 (file 20171130)
- Created
- 15 Nov 2022
- Updated
- 23 Feb 2023
Overview
Retro Clock is an open-source printed circuit board by g2maurer, from the g2maurer/Retro_Clock repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 62 × 99 mm with 39 parts on 46 nets, routed with 192 tracks and 18 vias.
It is built around the LM386, DS3231MZ+ and 1N4148W. Its parts include 12 resistors, 8 capacitors, 4 connectors, 3 ICs and 1 diode. It belongs with the lEDs and displays and retro computing and games boards of this library.
Main components
3LM386
SOP-80.2% 0℃~+70℃ 4V~12V 4mA 50dB 700mWx1@8Ω Analog voltage gain SOP-8 Audio Amplifiers ROHSGcoreAudio Power OpAmpsDS3231MZ+
SOIC-8-40℃~+85℃ 2.3V~5.5V I2C Temperature compensation、Backup power management and battery charging、Alarm function、Periodic interrupt output SOIC-8 Real Time Clocks ROHSMaxim Integrated (Analog Devices)Real Time Clocks1N4148W
SOD-123150mA 1A 1V@50mA 1uA@75V 400mW 4ns 75V Independent SOD-123 Switching Diodes ROHSSTMicroelectronicsSwitching Diodes
README
README.mdRetro_Clock
This is a highly modified version of TechKiwiGadgets clock found on
- Instructables https://www.instructables.com/ESP32-Pacman-Clock/
- Makerbot Thingiverse (ESP32 Pacman Clock) https://www.thingiverse.com/thing:5136672
Modifications:
- Changed TFT display to an SPI version which has a much improved Touch interface.
- Added SPIFFS to support files for data and images. This freed up memory and added flexability.
- Added support for optional RTC (real time clock IC). Improves time keeping accuracy.
- Added support for LDR (light dependent resistor) so that display is dimmed at night.
- Added audio amplifier (LM386) and volume control via touch screen.
- Redesigned user interface (Touch menu) to support added features.
- Made many changes to firmware to improve speed and readability.
- Designed PCB to support above mentioned changes.
- Redesigned 3D printed parts to support hardware changes.
TFT_eSPI library:
- The TFT_eSPI library requires it be changed to support each particular build (unusal but that's way way it works).
- The file User_Setup_Select.h specifies which setup file in the User_Setups directory is to be used.
- Added to the User_Setups directory is the file Setup_Pacman_Clock.h which contains the specifies the configuration and features (Touch) used by this project.
- Move the file "Setup_Pacman_Clock.h" into directory ...Arduino/libraries/TFT_eSPI/User_Setups
- Move the file "User_Setup_Select.h" into the directory ...Arduino/libraries/TFT_eSPI (replaces the existing User_Setup_Select.h file).
Tools:
- Arduino IDE 1.8.19, Board: DOIT ESP32 DEVKIT V1
- Initialize SPIFFS using Arduino IDE "Tools/ESP32 Sketch Data Upload" (which will initializee SPIFFS and upload all the files from the Data directory).
- Creality Slicer, PLA, 0.2mm, no supports.
Additional Notes:
-
Arduino Sketch (IDE) Version 1.8.19
-
Board Manager -> esp32 by Espressif Systems Version 1.0.6
-
Libraries used:
text TFT_eSPI at version 2.5.0 RTClib at version 2.1.1 Wire at version 1.0.1 SPIFFS at version 1.0 FS at version 1.0 XT_DAC_Audio Time at version 1.6.1 Adafruit_BusIO at version 1.14.1 -
TFT_eSPI setup file contains (see TFT_eSPI folder in Arduino/libraries):
text #define USER_SETUP_ID 900 #define ILI9341_DRIVER #define TFT_MISO 19 #define TFT_MOSI 23 #define TFT_SCLK 18 #define TFT_CS 15 #define TFT_DC 4 #define TFT_RST 2 #define TOUCH_CS 5 // Required to enable Touch, getTouch() #define LOAD_GLCD #define LOAD_FONT2 #define LOAD_FONT4 #define LOAD FONT6 #define LOAD_FONT7 #define LOAD_FONT8 #define LOAD_GFXFF #define SMOOTH_FONT #define SPI_FREQUENCY 27000000 // 27 MHz #define SPI_READ_FREQUENCY 20000000 // 20 MHz #define SPI_TOUCH_FREQUENCY 2500000 // 2.5 MHz
Parts
39| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | MountingHole | MountingHole:MountingHole_2.7mm_M2.5_DIN965 | H1, H2, H3, H4, H5, H6, H7, H8 |
| 4 | 10k | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R4, R7, R8, R10 |
| 3 | 4.7k | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R6, R9, R11 |
| 2 | 100nF | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C1, C8 |
| 2 | 1uF | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C2, C4 |
| 1 | 0 | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R2 |
| 1 | 10 | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R5 |
| 1 | 1000uF 16V | Capacitor_THT:CP_Radial_Tantal_D8.0mm_P2.50mm | C3 |
| 1 | 10uF | Capacitor_THT:CP_Radial_Tantal_D4.5mm_P5.00mm | C5 |
| 1 | 1N4148W | Diode_SMD:D_SOD-123 | D1 |
| 1 | 1k | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R3 |
| 1 | 200 | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R12 |
| 1 | 20k | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R1 |
| 1 | 2N7000 | Package_TO_SOT_THT:TO-92 | Q1 |
| 1 | 470uF 16V | Capacitor_THT:CP_Radial_Tantal_D8.0mm_P2.50mm | C7 |
| 1 | 47nF | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C6 |
| 1 | DS3231M | Package_SO:SOIC-16W_7.5x10.3mm_P1.27mm | U3 |
| 1 | ESP-WROOM-32S | ESP32-Footprints:ESP-WROOM-32S | U2 |
| 1 | LDR | Connector_JST:JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J4 |
| 1 | LIR2032 | ESP32-footprints-Lib:BatteryHolder_Keystone_103_1x20mm_gm | BT1 |
| 1 | LM386 | Package_DIP:DIP-8_W7.62mm_LongPads | U1 |
| 1 | Power | Connector_JST:JST_XH_B4B-XH-A_1x04_P2.50mm_Vertical | J2 |
| 1 | Recal Touch | Tactile-switch:FSM2JRT_gm | SW1 |
| 1 | Speaker | Connector_JST:JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J3 |
| 1 | TFT | Connector_PinSocket_2.54mm:PinSocket_1x14_P2.54mm_Vertical | J1 |
Similar boards
- 4 layers101.6 × 147.3 mm

- 2 layers150 × 80 mm

Rpi extension
andriy-bilynskyy/rpi-extension
This project is a PCB design to create SDR transceiver using Raspberry Pi and Radioberry boards. Simple connection of boards seems incomplete:
97 partsMIT - 4 layers79.9 × 84.7 mm

- 2 layers160 × 110 mm

Prepaid meter
kbssrikar7/esp32-energy-meter-pcb
KiCad PCB design for an ESP32-based single-phase energy meter (ATM90E26 metering AFE) — DRC/ERC-clean, SPICE-validated, fab-ready
80 parts - 2 layers105 × 58 mm

ZAP-010A
lalithk06/Esp32_Smart_Plug
Hardware reference design for an ESP32-S3 smart plug with mains power conversion, relay switching, RTC support, USB connectivity, and protection components.
80 parts - 2 layers90.2 × 61 mm

Electricity meter
ondras12345/electricity-meter
An STM32-based datalogger for electricity meters with pulse LED
95 partsMIT - 2 layers105 × 58 mm

ZAP-01A
ponrajleo/AI-Hardware-ESP32S3-
This project is part of a complete open-source hardware design course on YouTube:
103 parts - 2 layers105 × 58 mm

ViRa V1.0
VikramR3/ViRa_Ai_plug
ESP32-S3 mains smart plug: HLK-5M05 isolated supply, SRD-05VDC relay, DS3231M RTC. 2-layer KiCad design.
80 partsMIT
Questions
How big is the Retro Clock PCB?
It measures 62 × 99 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Retro Clock use?
39 parts, built around the LM386, DS3231MZ+ and 1N4148W. 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 Retro Clock KiCad files?
From the g2maurer/Retro_Clock repository on GitHub, at the commit this page was made from: the board is RetroClockPCB/RetroClock.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the Retro Clock design in my own project?
Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).