Description
ESPClock will be an open-source, Wi-Fi connected digital clock powered by ESP32 and ESPHome, designed to seamlessly integrate with Home Assistant. Featuring a 3D-printable case, the clock combines modern style with smart home functionality.
Goals
Key features:
- real-time clock
- native Home Assistant integration
- optional sensors for temperature, humidity and ambient light
- custom 3D-printable case
- open-source firmware and hardware design
- easy YAML-based configuration
Resources
- https://esphome.io/
- https://gist.github.com/baierjan/773e20a5061780f0a27ed86619dbffba
The Hacking
Chapter 1: Inventory
After thoroughly inspecting my closet, I managed to gather a handful of useful components. I decided to keep things simple and avoid making the project unnecessarily complex, opting for ready-made modules instead of assembling everything from individual parts. This approach saves time and reduces the chances of compatibility issues. The components I settled on are:
- Microcontroller: ESP32-LPkit
- 4-digit 7-segment display with integrated controller: TM1637
- Temperature and humidity sensor: DHT22
- Carbon dioxide sensor: MH-Z19
- PIR motion sensor: AM312
- Illumination sensor: VEML7700
- I2S-compatible microphone module: SPH0645LM4H
- A couple of micro switches
- A few LED diodes with appropriate resistors
With this list, the essential environmental parameters should be well covered. The clock’s main function—displaying the current time—is handled by the bright 0.56-inch display. Additionally, the setup provides simple input options through buttons and possibly even voice commands in the future.
Chapter 2: Wiring Diagram
I went through the datasheets for all the components to determine the most effective way to connect them. After comparing different options and checking for compatibility, I finalized the following wiring diagram.
Chapter 3: Firmware
For the software part, I decided to use ESPHome, which offers an easy and reliable way to integrate the clock with Home Assistant. All the components from the inventory are natively supported, so there is no need to write much additional code.
The following example shows how the YAML configuration for the clock may look: espclock.yaml
esphome:
name: esp-430930
friendly_name: ESPClock
comment: ESP based smart digital clock
esp32:
board: esp32dev
framework:
type: esp-idf
logger:
baud_rate: 0
packages:
- !include common/connection.yaml
i2c:
- sda: GPIO21
scl: GPIO22
i2s_audio:
- i2s_bclk_pin: GPIO27
i2s_lrclk_pin: GPIO25
uart:
- rx_pin: GPIO3
tx_pin: GPIO1
baud_rate: 9600
sensor:
- platform: dht
model: DHT22
pin: GPIO14
temperature:
name: Temperature
accuracy_decimals: 1
humidity:
name: Humidity
accuracy_decimals: 0
update_interval: 60s
- platform: veml7700
- platform: mhz19
binary_sensor:
- platform: gpio
id: am312
pin: GPIO34
device_class: motion
- platform: gpio
id: switch_1
pin: GPIO13
- platform: gpio
id: switch_2
pin: GPIO35
microphone:
- platform: i2s_audio
adc_type: external
i2s_din_pin: GPIO26
display:
- platform: tm1637
clk_pin: GPIO32
dio_pin: GPIO33
output:
- platform: gpio
id: red_output
pin: GPIO17
- platform: gpio
id: yellow_output
pin: GPIO16
- platform: gpio
id: green_output
pin: GPIO4
light:
- platform: binary
output: red_output
id: red_light
- platform: binary
output: yellow_output
id: yellow_light
- platform: binary
output: green_output
id: green_light
Chapter 4: Case Design
This part of the project is still a work in progress. I’m currently exploring different design ideas to create a case that complements both the functionality and appearance of the clock.
Looking for hackers with the skills:
esp32 home-assistant homeassistant 3d-printing 3dprint kicad
This project is part of:
Hack Week 25
Activity
Comments
Be the first to comment!
Similar Projects
Capyboard, ESP32 Development Board for Education by emiler
Capyboard is an ESP32 development board built to accept individual custom-made modules. The board is created primarily for use in education, where you want to focus on embedded programming instead of spending time with connecting cables and parts on a breadboard, as you would with Arduino and other such devices. The board is not limited only to education and it can be used to build, for instance, a very powerful internal meteo-station and so on.
- github.com/realcharmer/capyboard
- github.com/realcharmer/capyboard-starter
- github.com/realcharmer/capyboard-docs
- github.com/realcharmer/capyboard-examples
- docs.capyboard.dev
Hack Week 25
My plan is to create a new revision of the board with updated dimensions and possibly even use a new ESP32 with Zigbee/Thread support. I also want to create an extensive library of example projects and expand the documentation. It would be nice to also design additional modules, such as multiplexer or an environment module.
Goals
- Implement changes to a new board revision
- Design additional modules
- Expand documentation and examples
- Migrate documentation backend from MkDocs to Zensical
Hack Week 24
I created a new motherboard revision after testing my previous prototype, as well as a light module. This project was also a part of my master's thesis, which was defended successfully.
Goals
- Finish testing of a new prototype
- Publish source files
- Documentation completion
- Finish writing thesis
Play with esp32 to create domotics stuff by aginies
Description
Play with ESP32 board and multiple small peripherals
https://github.com/aginies/domotique
Goals
- Finish the pool project
- add support of NFC auth in the door project
- improve the doc
- project to manage solar panel (router)
Resources
esp32 home
Smart-Home Reverse Engineering and Automation by pstivanin
Description
This project focuses on expanding smart-home automation by reverse-engineering several closed systems, developing missing integrations, and unifying them into a fully automated Home Assistant environment. The work includes protocol analysis, custom API design, and deep automation logic, combined with improvements to monitoring and camera workflows. The outcome will be a coherent ecosystem with enhanced control, transparency, and automation for heating, circulation, security, and access systems.
Goals
Samsung EHS
- Add the Elfin-EW11 to the hydronic module (F1/F2)
- Install the EHS integration and set it up
- Add automation and dashboards for anti-legionella, temperatures, COP, etc
Grundfos Recirculation Pump
- Disassemble the pump and add the custom PCB
- Write ESPHome firmware
- Integrate the pump into HA with simple and advanced automation modes (e.g. shower, anti-legionella, etc)
External Gate Automation
- Add two Shelly relays (pedestrian + full-open).
- Implement arrival automation, remote access, and safety timers.
Extra goals
- Look into influxdb and grafana for storing long term data like PV
- Look into an outdoor air quality monitor so that I can better control my CMV
Done
Garage Door Automation
- Add a Shelly relay for control
- Add optional open/close detection.
- Implement routines such as auto-close, geofence open, timeout warning.
Camera Dashboard
- Add WebRTC real-time feeds.
- Add controls for lights, sirens, strobe, and presets.
- Create a multi-camera layout optimized for mobile and desktop.
- Show IVS events (tripwire, intrusion).
Pellet Stove
- Reverse engineer the WINET protocol.
- Implement structured sensor parsing (temperatures, status, alarms).
- Implement command support for ON/OFF, power level, fan, and shutdown.
- Create robust automations for daily routines and error handling.
Dahua Event Proxy Server
Hack / Access old Freebox Delta wifi webcam by fcrozat
Description
French ISP Free was providing a wifi webcam which would integrate with their alarm offering but could only be used with one version of their fiber modem.
I've switch to a new generation of modem and the alarm offering is gone but I still own the webcam which is not usable anymore.
Goals
Try to get access to the webcam feed (either reprovision it or access its video feed) to integrate it on Home Assistant.
Resources
Expand home assistant support for Freebox / Iliadbox modem by fcrozat
Description
My ISP (Free) fiber modem (Freebox) has a pretty rich API to control and monitor it.
It is currently supported in Home Assistant but not to the full extend of the available API, including additional Wifi repeaters.
Goals
Adding support for Wifi repeaters linked to the ISP modem in Home Assistant.
Resources
https://dev.freebox.fr/sdk/os/ (old version of the API) the latest version of the api is only available from the modem webUI atm
Smart-Home Reverse Engineering and Automation by pstivanin
Description
This project focuses on expanding smart-home automation by reverse-engineering several closed systems, developing missing integrations, and unifying them into a fully automated Home Assistant environment. The work includes protocol analysis, custom API design, and deep automation logic, combined with improvements to monitoring and camera workflows. The outcome will be a coherent ecosystem with enhanced control, transparency, and automation for heating, circulation, security, and access systems.
Goals
Samsung EHS
- Add the Elfin-EW11 to the hydronic module (F1/F2)
- Install the EHS integration and set it up
- Add automation and dashboards for anti-legionella, temperatures, COP, etc
Grundfos Recirculation Pump
- Disassemble the pump and add the custom PCB
- Write ESPHome firmware
- Integrate the pump into HA with simple and advanced automation modes (e.g. shower, anti-legionella, etc)
External Gate Automation
- Add two Shelly relays (pedestrian + full-open).
- Implement arrival automation, remote access, and safety timers.
Extra goals
- Look into influxdb and grafana for storing long term data like PV
- Look into an outdoor air quality monitor so that I can better control my CMV
Done
Garage Door Automation
- Add a Shelly relay for control
- Add optional open/close detection.
- Implement routines such as auto-close, geofence open, timeout warning.
Camera Dashboard
- Add WebRTC real-time feeds.
- Add controls for lights, sirens, strobe, and presets.
- Create a multi-camera layout optimized for mobile and desktop.
- Show IVS events (tripwire, intrusion).
Pellet Stove
- Reverse engineer the WINET protocol.
- Implement structured sensor parsing (temperatures, status, alarms).
- Implement command support for ON/OFF, power level, fan, and shutdown.
- Create robust automations for daily routines and error handling.
Dahua Event Proxy Server
Expand home assistant support for Freebox / Iliadbox modem by fcrozat
Description
My ISP (Free) fiber modem (Freebox) has a pretty rich API to control and monitor it.
It is currently supported in Home Assistant but not to the full extend of the available API, including additional Wifi repeaters.
Goals
Adding support for Wifi repeaters linked to the ISP modem in Home Assistant.
Resources
https://dev.freebox.fr/sdk/os/ (old version of the API) the latest version of the api is only available from the modem webUI atm
Play with esp32 to create domotics stuff by aginies
Description
Play with ESP32 board and multiple small peripherals
https://github.com/aginies/domotique
Goals
- Finish the pool project
- add support of NFC auth in the door project
- improve the doc
- project to manage solar panel (router)
Resources
esp32 home
Build a Single Camera 3D Scanner (Photogrammetry). by lparkin
Description
I want to see how fast I can develop a single-camera (pi camera module v3) rig with a stepper motor controlling a turntable that rotates the model being scanned. The trick here is not to be super fancy with 100's of sensors and data inputs, quite the opposite. I want to see how accurate I can scan objects into 3D-printable models using only a camera and as many fixed and known parameters as possible.
Speed to be augmented with agentic AI coding companion. As it stands, I have a 3D printer, pretty much all the electronics I need.
Goals
- Design and print working/workable camera rig
- Design and print working/workable turntable (considering printing my own cylinder-style bearings as well)
- Assemble rig components into MVP assembly
- Develop application that can hook into existing tools, or leverage a library like openCV, to process 2D images into a 3D model.
- Iterate until models are good enough to 3D print.
Resources
- https://www.instructables.com/3D-scanning-Photogrammetry-with-a-rotating-platfor/
- https://www.instructables.com/3d-Scan-Anything-Using-Just-a-Camera/
- https://www.instructables.com/Build-a-DIY-Desktop-3d-Scanner-With-Infinite-Resol/
- https://www.instructables.com/3D-Laser-Scanning-DIY/
Discover 3d printing tools and improve integration in Linux desktop and flatpak by fcrozat
Description
Owner of a first 3d printing for some weeks (Bambulab P2S), I want to learn a bit more about the various tools to use it and, if needed, make sure they work fine in Linux desktop with flatpak.
Goals
Test the following tools: slicers: Bambu Studio, Orca Slicer addons: Bambu Connect design: Blender, Freecad, Fusion 360
See if they can work fine on Aeon using Flatpak and try to improve integration in Linux desktop
Resources
- https://wiki.bambulab.com/en/software/bambu-studio/studio-quick-start
- https://wiki.bambulab.com/en/software/bambu-connect
- https://www.orcaslicer.com/
- https://www.blender.org/
- https://www.freecad.org/
- https://www.autodesk.com/products/fusion-360/personal
- Spoolman
- Spoolman integration in Home Assistant
Discover 3d printing tools and improve integration in Linux desktop and flatpak by fcrozat
Description
Owner of a first 3d printing for some weeks (Bambulab P2S), I want to learn a bit more about the various tools to use it and, if needed, make sure they work fine in Linux desktop with flatpak.
Goals
Test the following tools: slicers: Bambu Studio, Orca Slicer addons: Bambu Connect design: Blender, Freecad, Fusion 360
See if they can work fine on Aeon using Flatpak and try to improve integration in Linux desktop
Resources
- https://wiki.bambulab.com/en/software/bambu-studio/studio-quick-start
- https://wiki.bambulab.com/en/software/bambu-connect
- https://www.orcaslicer.com/
- https://www.blender.org/
- https://www.freecad.org/
- https://www.autodesk.com/products/fusion-360/personal
- Spoolman
- Spoolman integration in Home Assistant