Skip to content

Latest commit

 

History

57 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HomeAssistant-SEM

My Home Assistant setup, in the open. A single-family house — eleven indoor rooms plus attic, terrace and garden — with about 1600 entities, ten self-built ESPHome devices, and a few projects that got out of hand: a carrier board designed without an EDA tool, a 3D-printed bezel generated from a datasheet drawing, and a cellar ventilation controller that decides by dew point.

This is a work in progress, not a finished product. Maybe it inspires someone to a similar project.

image of the epaper display

How it started

The idea was a custom ePaper weather station. I found "Home Assistant – 7,5″ E-Paper Display (Waveshare) mit ESPHome ansteuern" and started with Home Assistant and ESPHome. I already had a few Shelly devices, so their status went on the display too. Then two SONOFF SNZB-02P for garden and living room temperature.

AI-on-the-edge-device was too good to pass up — an AI reading my own water meter for almost no money. A garden webcam on an ESP32-CAM followed, then a Shelly 3EM Pro for house consumption.

Somewhere along the way it stopped being a weather station.

What is in here

Derived climate values dew point, absolute humidity, wall surface humidity and mould risk per room, from shared Jinja macros
Ten ESPHome devices ePaper display, mmWave presence, sound meter, BLE proxy, garden camera, wall sensors, two ventilation controllers
Dew-point ventilation dries a cellar without making it wetter in summer — the calculation runs on the device so it fails safe
A carrier board designed in Python: geometry, autorouter, electrical verification and Gerber output, no EDA tool involved
Zigbee, Shelly, Matter, Thread 24 Zigbee devices, tado°X valves over Matter, Shelly BLU contacts over a Bluetooth proxy

Documentation

Start here:

Page Contents
Architecture how the layers fit, and where the maths runs — and why
Conventions entity naming, file layout, language rules
Devices hardware inventory by role

By subsystem:

Page Contents
ESPHome the ten self-built devices, shared packages, board traps
Zigbee coordinator setup and its known failure modes
Templates the derived-value layer and the physics behind it
Automations what reacts to what, and patterns worth copying
Dashboards five views and what each is for

Running it:

Page Contents
Operations how this repo relates to the live system, applying changes, recovery
Tooling entity export and rename, the PCB chain, the 3D generator

Projects:

Page Contents
Cellar ventilation control logic, hardware, board notes, what to expect

Shopping list: components-and-devices.md — what I actually bought, with links. Home automation parts have short lifetimes compared to commercial products, so this list dates quickly.

A note on the code

Comments, commit messages and documentation are English. Entity names, dashboard labels and anything the household reads are German. The rule is written down in CLAUDE.md and enforced when files are touched.

The comments worth reading are the ones recording why — why the tach filter is 100 nF and not 10 nF, why a solder jumper uses 3.81 mm pitch, why the cellar wall temperature is no longer estimated. Several of them exist because the obvious answer was wrong the first time.

Caveats

Secrets, the entity registry, the database and the entity export are not in this repository. config/ mirrors a live system over a network share, so Home Assistant rewrites some of these files itself — see Operations.

Nothing here is packaged for reuse. Static IPs, room names and area IDs are specific to this house. Take ideas, not files.

About

my Home Assistant setup

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages