Skip to content

Commit d534b48

Browse files
committed
site structure
1 parent 2246395 commit d534b48

4 files changed

Lines changed: 107 additions & 74 deletions

File tree

docs/smart-home/automations.md

Lines changed: 16 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,19 @@
1-
# Automations & Packages
1+
---
2+
tags:
3+
- automations
4+
- ui
5+
- automated
6+
---
27

3-
This page documents the automation packages found in the `packages/` directory.
8+
# UI Automations
49

5-
| File | Purpose | Triggers | Key Entities |
10+
This page documents automations that are managed directly via the Home Assistant UI (`automations.yaml`).
11+
12+
!!! info "Package Automations"
13+
Automations that are part of a specific feature bundle (e.g., Car, Heating) are documented in the **[Package Catalog](packages/index.md)**.
14+
15+
## Active UI Automations
16+
17+
| Alias | Description | Trigger Types | Mode |
618
| :--- | :--- | :--- | :--- |
7-
| `airthings.yaml` | Air quality sensors template | *(Template)* | `sensor.airthings_wave_*` |
8-
| `aqara_w500.yaml` | HVAC/Temp sensors & filters | *(Template)* | `sensor.aqara_w500_*` |
9-
| `car_glc.yaml` | Car status normalization | *(Template)* | `binary_sensor.car_glc_*` |
10-
| `dishwasher.yaml` | Dishwasher status & timer logic | *(Template)* | `binary_sensor.dishwasher_*`, `input_boolean.dishwasher_*` |
11-
| `dna_tv_hub.yaml` | TV Hub remote switch | *(Template)* | `switch.dna_tv_hub` |
12-
| `fingerprint_management.yaml` | Dynamic Fingerprint MQTT Management | MQTT (`.../user/set`) | `script.add_fingerprint_entity`, `automation.system_fingerprint_mqtt_persistence` |
13-
| `garmin.yaml` | *(Empty)* | - | - |
14-
| `home_time_modes.yaml` | Time-of-Day Logic (Day/Night/Evening) | Time, Sun, Time Pattern | `input_select.house_mode`, `automation.system_manager_home_time_modes` |
15-
| `mercedes_glc.yaml` | Car control & sensors | *(Template)* | `switch.car_*`, `binary_sensor.car_*` |
16-
| `nordpool_prices.yaml` | Electricity prices & 15min cost calculation | Time Pattern, HA Start, State | `sensor.electricity_prices`, `nordpool.get_prices_for_date` |
17-
| `office._pc.yaml` | Office PC Control (WOL, Audio, Display) | *(Template/WOL)* | `switch.office_pc_*` |
18-
| `philips_air_purifier.yaml` | Air Purifier sensors | *(Template)* | `sensor.purifier_*` |
19-
| `room_automation.yaml` | Dynamic Room Settings via MQTT | MQTT (`room/#`), HA Start, Time Pattern | `script.create_room_settings`, `automation.system_populate_room_list` |
20-
| `scenes.yaml` | Lighting Scene Definitions | - | `scene.daylight_scene`, `scene.bedroom_mood`, etc. |
21-
| `shelly_3em.yaml` | Total Power Aggregation | *(Template)* | `sensor.home_total_power`, `sensor.home_energy_15min` |
22-
| `smart_notifications.yaml` | Dynamic Notification Router & User Mgmt | HA Start, Time Pattern, MQTT (`notify/#`) | `script.notify_smart_master`, `automation.system_populate_notify_services` |
19+
| Turn off Coffee Machine Outlet, when schedule is turned on | No description. | state | `single` |\n| Fetch Tomorrow Prices | No description. | time | `single` |\n| Fetch Today Prices | No description. | time | `single` |\n| Notify: Energy Price (Today & Tomorrow) | Sends 'Today's Prices' at 07:00 and 'Tomorrow's Prices' when available. | state, time | `single` |\n| G4 Doorbell - Event Stream to Nest Hub | Streams G4 Doorbell video to Bedroom Display only on doorbell press (24/7) or person on porch (daytime). | numeric_state, state | `single` |\n| Notify: Coffee Ready | Send notification when coffee machine finishes running | state | `single` |\n| Notify: Doorbell Actions | Notify phones with snapshot when doorbell rings, allowing unlock or DND message. | state | `restart` |

docs/smart-home/index.md

Lines changed: 16 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
---
2+
tags:
3+
- index
4+
- automated
5+
---
6+
17
# Smart Home Overview
28

39
This section contains all architectural documentation for the Home Assistant setup, including automations, dashboards, and integrations.
@@ -7,29 +13,15 @@ This section contains all architectural documentation for the Home Assistant set
713
- **[Configuration & Structure](structure.md)**:
814
Detailed explanation of the **highly commented configuration.yaml** and the full **directory structure** (file tree). This is the best place to start understanding how the system is organized.
915

10-
- **[Dashboards](dashboards.md)**:
11-
Overview of the Lovelace dashboards, view strategies, and custom cards used in the frontend.
12-
13-
## Packages
14-
The system uses the `packages/` folder to bundle related automations, scripts, and configurations. Below is an index of the available packages:
15-
16-
- **[Airthings](packages/airthings.md)**
17-
- **[Aqara W500](packages/aqara_w500.md)**
18-
- **[Car GLC](packages/car_glc.md)**
19-
- **[Dishwasher](packages/dishwasher.md)**
20-
- **[DNA TV Hub](packages/dna_tv_hub.md)**
21-
- **[Fingerprint Mgmt](packages/fingerprint_management.md)**
22-
- **[Garmin](packages/garmin.md)**
23-
- **[Home Time Modes](packages/home_time_modes.md)**
24-
- **[Mercedes GLC](packages/mercedes_glc.md)**
25-
- **[Nordpool Prices](packages/nordpool_prices.md)**
26-
- **[Office PC](packages/office_pc.md)**
27-
- **[Philips Air Purifier](packages/philips_air_purifier.md)**
28-
- **[Room Automation](packages/room_automation.md)**
29-
- **[Scenes](packages/scenes.md)**
30-
- **[Shelly 3EM](packages/shelly_3em.md)**
31-
- **[Smart Notifications](packages/smart_notifications.md)**
16+
## Catalogs
17+
18+
- **[Dashboard Catalog](dashboards/index.md)**:
19+
Visual overview of all Lovelace dashboards and views.
20+
21+
- **[Package Catalog](packages/index.md)**:
22+
Index of all feature-based configuration packages (Automations, Scripts, etc.).
3223

3324
## Contents
34-
- **[Automations](automations.md)**: Detailed breakdown of `packages/` automations.
35-
- **[Dashboards](dashboards.md)**: Overview of Lovelace dashboards and views.
25+
- **[Automations](automations.md)**: Detailed breakdown of UI-managed automations (`automations.yaml`).
26+
- **[Dashboards](dashboards/index.md)**: Overview of Lovelace dashboards.
27+
- **[Packages](packages/index.md)**: Modular configuration bundles.

docs/smart-home/packages/index.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
---
2+
tags:
3+
- package
4+
- index
5+
- automated
6+
---
7+
8+
# Package Catalog
9+
10+
Use this catalog to browse all installed configuration packages. Each package is a self-contained unit of functionality.
11+
12+
!!! info "Auto-Generated"
13+
This catalog is automatically maintained by the Documentation Agent.
14+
15+
## 📦 Installed Packages
16+
- **[Airthings](./airthings.md)**
17+
<br> :material-arrow-right-bottom: *Normalizes Airthings Wave sensors (Temp, Humidity, CO2)*
18+
- **[Aqara W500](./aqara_w500.md)**
19+
<br> :material-arrow-right-bottom: *Manages temperature settings and schedules for the Bathroom Floor Heat (Aqara W500 Climate). Includes logic for high electricity price reduction and shower occupancy boost.*
20+
- **[Car](./car.md)**
21+
<br> :material-arrow-right-bottom: *Unified logic for Mercedes GLC. Normalizes sensors (Windows/Doors), wrapper switches, and Status Notifications.*
22+
- **[Dishwasher](./dishwasher.md)**
23+
<br> :material-arrow-right-bottom: *Logic, sensors, flags, and automations for the LG Dishwasher. Handles normalization of LG ThinQ data, maintenance reminders, and leak detection.*
24+
- **[Dna Tv Hub](./dna_tv_hub.md)**
25+
<br> :material-arrow-right-bottom: *Template switch for DNA TV Hub remote control*
26+
- **[Garmin](./garmin.md)**
27+
<br> :material-arrow-right-bottom: *Placeholder for Garmin integration*
28+
- **[Home Time Modes](./home_time_modes.md)**
29+
<br> :material-arrow-right-bottom: *Parametric Time-of-Day Logic*
30+
- **[Nordpool Prices](./nordpool_prices.md)**
31+
<br> :material-arrow-right-bottom: *Nordpool energy price calculations and logic*
32+
- **[Office. Pc](./office._pc.md)**
33+
<br> :material-arrow-right-bottom: *Office PC control (Audio, Displays, Power)*
34+
- **[Office PC](./office_pc.md)**
35+
<br> :material-arrow-right-bottom: **No description provided.**
36+
- **[Philips Air Purifier](./philips_air_purifier.md)**
37+
<br> :material-arrow-right-bottom: *Normalizes Philips Air Purifier attributes (PM2.5, Filters)*
38+
- **[Room Automation](./room_automation.md)**
39+
<br> :material-arrow-right-bottom: *Dynamic creation of room lighting settings via MQTT*
40+
- **[Scenes](./scenes.md)**
41+
<br> :material-arrow-right-bottom: *Definitions for various lighting scenes (Daylight, Night, Movie, etc.)*
42+
- **[Shelly 3Em](./shelly_3em.md)**
43+
<br> :material-arrow-right-bottom: *Power aggregation for Shelly 3EM (Total Power, Energy)*
44+
- **[Smart Notifications](./smart_notifications.md)**
45+
<br> :material-arrow-right-bottom: *Helpers and logic for the dynamic notification router*
46+
- **[Unifi Access](./unifi_access.md)**
47+
<br> :material-arrow-right-bottom: *Unified management for G4 Doorbell Pro Fingerprint & NFC.*

docs/smart-home/structure.md

Lines changed: 28 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,70 @@
1+
---
2+
tags:
3+
- structure
4+
- configuration
5+
- automated
6+
---
7+
18
# Configuration & Structure
29

310
## Directory Structure
4-
511
An overview of the key directories and files in the Home Assistant root folder.
612

713
| Directory / File | Purpose |
814
| :--- | :--- |
15+
| **`.ag_scripts/`** | Automation scripts for maintaining this documentation and workspace. |
916
| **`.storage/`** | Internal Home Assistant storage for registries (devices, entities, etc.). **Do not edit manually.** |
17+
| **`AI_CONTEXT.md`** | |
18+
| **`ag_v2_agent.py`** | |
19+
| **`ag_v2_dashboard.py`** | |
20+
| **`ag_v2_package.py`** | |
21+
| **`ag_v2_update.py`** | |
22+
| **`automations.yaml`** | The main file for storing automations, commonly managed via the UI. |
1023
| **`blueprints/`** | Stores automation blueprints downloaded or created for reusability. |
1124
| **`button_card_templates/`** | Custom templates for `custom:button-card` Lovelace cards. |
25+
| **`configuration.yaml`** | The main configuration file for Home Assistant. |
1226
| **`custom_components/`** | Custom integrations installed manually or via HACS. |
1327
| **`custom_templates/`** | Global Jinja2 templates (macros) available throughout Home Assistant. |
28+
| **`debug_regex.py`** | |
1429
| **`deps/`** | Python dependencies installed by Home Assistant or integrations. |
1530
| **`docs_site/`** | This documentation repository and MkDocs site structure. |
1631
| **`esphome/`** | ESPHome configuration YAML files and compilation artifacts (binaries). |
32+
| **`home-assistant-wakewords-collection-main/`** | Directory. |
33+
| **`home-assistant.log.fault`** | |
34+
| **`home-assistant_v2.db`** | |
35+
| **`home-assistant_v2.db-shm`** | |
36+
| **`home-assistant_v2.db-wal`** | |
37+
| **`image/`** | Directory. |
1738
| **`include/`** | Split configuration files referenced from `configuration.yaml` to keep it clean. |
1839
| **`model_cache/`** | Cache for local AI models (Wake words, assist pipelines). |
1940
| **`node-red/`** | Storage for Node-RED flows and settings (if the add-on is used). |
2041
| **`packages/`** | Configuration split into logical "packages" (bundling automations, scripts, configuration by feature). |
2142
| **`pyscript/`** | Python scripts and apps for the `pyscript` integration. |
43+
| **`scenes.yaml`** | Configuration file for defining scenes. |
44+
| **`scripts.yaml`** | Configuration file for scripts (sequences of actions). |
45+
| **`secrets.yaml`** | Stores sensitive data (passwords, tokens) referenced via `!secret`. |
2246
| **`themes/`** | Frontend themes definition files. |
23-
| **`tts/`** | Text-to-speech cache or configuration. |
47+
| **`tts/`** | Text-to-Speech cache or configuration. |
2448
| **`www/`** | Publicly accessible folder mapped to `/local/` for hosting custom cards, images, and resources. |
2549
| **`zigbee2mqtt/`** | Zigbee2MQTT data directory containing configuration and database. |
2650
| **`zigbee2mqtt-2/`** | Secondary Zigbee2MQTT instance data directory. |
27-
| **`automations.yaml`** | The main file for storing automations, commonly managed via the UI. |
28-
| **`configuration.yaml`** | The main configuration file for Home Assistant. |
29-
| **`scenes.yaml`** | Configuration file for defining scenes. |
30-
| **`scripts.yaml`** | Configuration file for scripts (sequences of actions). |
31-
| **`secrets.yaml`** | Stores sensitive data (passwords, tokens) referenced via `!secret`. |
3251

3352
---
3453

3554
## Configuration.yaml
36-
3755
Below is the current content of `configuration.yaml` with explanations for each section.
3856

3957
```yaml
40-
# Core Home Assistant configuration
41-
# Defines unit system, time zone, and package loading.
4258
homeassistant:
4359
unit_system: metric
4460
time_zone: Europe/Helsinki
4561
## Packages ##
46-
# 'packages' allows us to split configuration by feature
47-
# (including automations, scripts, etc. in one file/folder)
4862
packages: !include_dir_named packages
4963

50-
# Loads the default set of integrations (Map, History, Logbook, etc.).
51-
# Essential for a standard experience.
64+
# Loads default set of integrations. Do not remove.
5265
default_config:
5366

5467
## NEEDED FOR TRAEFIK
55-
# HTTP configuration triggers the HTTP server integration.
56-
# 'use_x_forwarded_for' and 'trusted_proxies' are required when running
57-
# behind a reverse proxy (like Traefik) to correctly identify client IPs.
5868
http:
5969
use_x_forwarded_for: true
6070
trusted_proxies:
@@ -63,41 +73,28 @@ http:
6373
- 127.0.0.1
6474

6575
## THEMES ##
66-
# Configures the Lovelace frontend.
67-
# Currently set to include themes from the 'themes' directory (commented out).
6876
frontend:
6977
#themes: !include_dir_merge_named themes
7078

7179
## TEXT TO SPEECH ##
72-
# Configures the Text-to-Speech (TTS) integration.
73-
# Using Google Translate platform for voice synthesis.
7480
tts:
7581
- platform: google_translate
7682

77-
# Recorder handles storing data in the database (home-assistant_v2.db).
78-
# Configured here to potentially exclude specific entities from history.
7983
recorder:
8084
# exclude:
8185
# entities:
8286

8387
## HACS - PYSCRIPT ##
84-
# Pyscript integration allows writing automations in Python.
85-
# Configuration is split into 'include/pyscript.yaml'.
8688
pyscript: !include include/pyscript.yaml
8789

8890
## PowerCal
89-
# Powercalc integration estimates power consumption for non-smart devices.
90-
# Configuration is split into 'include/powercalc.yaml'.
9191
powercalc: !include include/powercalc.yaml
9292

9393
## CUSTOM/HACS - PHILIPS AIR PURIFIER ##
94-
# Fan domain configuration.
95-
# Specifically includes options for the Philips Air Purifier custom component.
9694
fan: !include include/philips_air_purifier.yaml
9795

9896
## FILES ##
99-
# Automations and Scripts files.
100-
# These are typically managed by the UI editors.
10197
automation: !include automations.yaml ## UI-managed
10298
script: !include scripts.yaml ## UI-managed
99+
103100
```

0 commit comments

Comments
 (0)