mirror of
https://github.com/CCOSTAN/Home-AssistantConfig.git
synced 2026-01-21 13:02:31 +00:00
Compare commits
247 Commits
561b454518
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ecb9db10e8 | ||
|
|
ec03ee2267 | ||
|
|
f5860beca1 | ||
|
|
3bede90a0a | ||
|
|
6303b05dd4 | ||
|
|
c1712d83db | ||
|
|
63e570982e | ||
|
|
db26d84462 | ||
|
|
8d7c6deb3f | ||
|
|
eefd0c0ebc | ||
|
|
95e169a60c | ||
|
|
df8e4093a6 | ||
|
|
265d5f5bf2 | ||
|
|
9bc53566aa | ||
|
|
a10ee05b85 | ||
|
|
e6b88ac99d | ||
|
|
a8cd926f46 | ||
|
|
e242477806 | ||
|
|
2e6b319770 | ||
|
|
5e451d70b8 | ||
|
|
8e461d5495 | ||
|
|
1d78dcb0dc | ||
|
|
00506a79e9 | ||
|
|
758ef8974b | ||
|
|
d75511ab34 | ||
|
|
1f1d3eba40 | ||
|
|
438d696bf8 | ||
|
|
864e7756c0 | ||
|
|
9831f3150e | ||
|
|
7543b1c52f | ||
|
|
7106429f78 | ||
|
|
1203bb2d4e | ||
|
|
c8d8423e77 | ||
|
|
7310f24294 | ||
|
|
69edb0658d | ||
|
|
7a6491709b | ||
|
|
23d6235315 | ||
|
|
a7b0f58632 | ||
|
|
dbd5f43b19 | ||
|
|
d8d7c553eb | ||
|
|
f977809de7 | ||
|
|
c365a1c233 | ||
|
|
9d6c73fb05 | ||
|
|
8ec5173f4d | ||
|
|
c245c1ca78 | ||
|
|
96e86d6587 | ||
|
|
3345bf3b95 | ||
|
|
a8eca6f4bb | ||
|
|
d900c642dd | ||
|
|
1e490e53f6 | ||
|
|
5892711916 | ||
|
|
1ff1d9d81c | ||
|
|
02a554a793 | ||
|
|
2265f2b282 | ||
|
|
ea8d57393a | ||
|
|
ddda9e6573 | ||
|
|
aec426e602 | ||
|
|
1835b1203f | ||
|
|
75a250ebd3 | ||
|
|
8e743fe26d | ||
|
|
9fab3f0d90 | ||
|
|
41e56f9bb7 | ||
|
|
d609ca851c | ||
|
|
2c25c2b2d8 | ||
|
|
d6c32c9e16 | ||
|
|
eeb988d100 | ||
|
|
124a7bcfd3 | ||
|
|
6f9679cff1 | ||
|
|
44ff4528f1 | ||
|
|
8ee2aff40c | ||
|
|
bea84af5cd | ||
|
|
c62e778028 | ||
|
|
e83e957ab5 | ||
|
|
fe4b9ac1c9 | ||
|
|
44d8ac0da5 | ||
|
|
5acf4bd760 | ||
|
|
14294b5b5f | ||
|
|
b61c28f186 | ||
|
|
295724ef49 | ||
|
|
9c540c0acc | ||
|
|
6300de3a96 | ||
|
|
61bbe53b48 | ||
|
|
f08be9ff30 | ||
|
|
92c4b53685 | ||
|
|
36b5150db6 | ||
|
|
3721935082 | ||
|
|
10714a953b | ||
|
|
214657f4cc | ||
|
|
5071041fa3 | ||
|
|
6246119214 | ||
|
|
d682517040 | ||
|
|
22d8a80abf | ||
|
|
77cf3e971e | ||
|
|
20ffa76ce4 | ||
|
|
9c6b13dbc3 | ||
|
|
8dc7b063f0 | ||
|
|
a13b2da2aa | ||
|
|
ca62ee4f7b | ||
|
|
25f3c5255d | ||
|
|
7420ac96b9 | ||
|
|
afae0d4d5b | ||
|
|
23ad5b421a | ||
|
|
52f3a84078 | ||
|
|
5a54329d57 | ||
|
|
e4c44fdab4 | ||
|
|
50b457646a | ||
|
|
b78a14d2cf | ||
|
|
9a29d85b58 | ||
|
|
8f2a6b9dd3 | ||
|
|
3547cdfcf8 | ||
|
|
242e59a672 | ||
|
|
0482c1d431 | ||
|
|
199797523f | ||
|
|
c464073a0d | ||
|
|
05b90f5dfa | ||
|
|
9bfdc6e574 | ||
|
|
4faae0cf2c | ||
|
|
bbcc77673d | ||
|
|
896541e551 | ||
|
|
4c4cb413d5 | ||
|
|
10ef58cd9f | ||
|
|
afe3926e57 | ||
|
|
1aa8dc4f84 | ||
|
|
fbfe34da30 | ||
|
|
2b40fff745 | ||
|
|
8bcde4e526 | ||
|
|
36dbd87626 | ||
|
|
6615179da5 | ||
|
|
bf972d7d73 | ||
|
|
830322c40f | ||
|
|
cf5af8efae | ||
|
|
f4e354bae0 | ||
|
|
cd4b8ab19f | ||
|
|
64d9e6c6ac | ||
|
|
aa18331b51 | ||
|
|
b1b24e8372 | ||
|
|
a374953dd5 | ||
|
|
98bf394711 | ||
|
|
782632a876 | ||
|
|
671785c699 | ||
|
|
b687c61c06 | ||
|
|
fd6ef6ffd5 | ||
|
|
ddb10fd4ac | ||
|
|
2f57c650c9 | ||
|
|
dbd612a50c | ||
|
|
a36f1032ac | ||
|
|
8afd560b99 | ||
|
|
625af61b5c | ||
|
|
0a99895e22 | ||
|
|
f2ff435876 | ||
|
|
69c978c47d | ||
|
|
8b34723ce3 | ||
|
|
e758a5540b | ||
|
|
89b2669757 | ||
|
|
5c1393f9dd | ||
|
|
edcf16edbd | ||
|
|
22fd63dcff | ||
|
|
63f6b8a69b | ||
|
|
f3cc59ccc0 | ||
|
|
f2b0ceba5e | ||
|
|
d8b33e752e | ||
|
|
c070cedc53 | ||
|
|
4fa5f6ab91 | ||
|
|
244617f0b1 | ||
|
|
a61f83c0e3 | ||
|
|
2ec804ac53 | ||
|
|
be5bfa1d32 | ||
|
|
17bde7b75c | ||
|
|
00190bbafb | ||
|
|
64713fd3f0 | ||
|
|
0a42f42a0b | ||
|
|
65c8376a66 | ||
|
|
9bcd5fd226 | ||
|
|
034afadd40 | ||
|
|
630253e1d8 | ||
|
|
fb5a8b82ef | ||
|
|
12d1d56ce2 | ||
|
|
aa0bbd5b81 | ||
|
|
4a23d76eb2 | ||
|
|
8bf8f51b0b | ||
|
|
30fb8a8415 | ||
|
|
1a8ed68305 | ||
|
|
f96a2866fc | ||
|
|
8ff2eecc4b | ||
|
|
66d0cd8323 | ||
|
|
c80c14e9ab | ||
|
|
c71f22a306 | ||
|
|
4fdef0a76f | ||
|
|
3ded9dece2 | ||
|
|
f4f910a6bc | ||
|
|
6d9c79b380 | ||
|
|
f5f9d0da31 | ||
|
|
a5f8a55b79 | ||
|
|
5f4f5e1a8f | ||
|
|
32074fb75f | ||
|
|
0716917255 | ||
|
|
1c91252512 | ||
|
|
934152949a | ||
|
|
66e043238d | ||
|
|
b171bcb9a6 | ||
|
|
b0642e3871 | ||
|
|
f509fc1739 | ||
|
|
8bd32d811c | ||
|
|
a8ed755000 | ||
|
|
06b1655083 | ||
|
|
80074ed855 | ||
|
|
f0ad2abdee | ||
|
|
87a70f26ca | ||
|
|
df633c8afc | ||
|
|
5914a49ae1 | ||
|
|
39d79f1ac4 | ||
|
|
fdc6e62708 | ||
|
|
f3a217f2ad | ||
|
|
daf608cbd6 | ||
|
|
c9fcdf31a2 | ||
|
|
1af88bcbb2 | ||
|
|
4483486059 | ||
|
|
f017a9ea70 | ||
|
|
47d5359a40 | ||
|
|
74e2042d57 | ||
|
|
d692d926dc | ||
|
|
edbb6aa608 | ||
|
|
ee0c57ad6c | ||
|
|
7a45a6007b | ||
|
|
bf202e770b | ||
|
|
a0a93dceec | ||
|
|
7403198c25 | ||
|
|
e4c9dfb49a | ||
|
|
3ea720af36 | ||
|
|
cfbc7ee771 | ||
|
|
4ce67e83d5 | ||
|
|
ab5534b33a | ||
|
|
67295d027b | ||
|
|
fe64a69be0 | ||
|
|
136fa6b97d | ||
|
|
8c1f63cb68 | ||
|
|
a9c5e52671 | ||
|
|
4d93cc691c | ||
|
|
3b38233914 | ||
|
|
5363853618 | ||
|
|
fafaa32294 | ||
|
|
389a3c348f | ||
|
|
e87e4e90fa | ||
|
|
9e208fca4e | ||
|
|
f3a4c5087b | ||
|
|
833143e445 | ||
|
|
f1fc8e8012 |
14
.gitignore
vendored
14
.gitignore
vendored
@@ -20,6 +20,7 @@ core
|
||||
|
||||
# Home Assistant specific
|
||||
*.DISABLED
|
||||
.ha_run.lock
|
||||
.cloud
|
||||
.storage
|
||||
.vscode
|
||||
@@ -28,6 +29,7 @@ home-assistant_v2
|
||||
home-assistant_v2.*
|
||||
.homekit.state
|
||||
ipchange.yaml
|
||||
config/packages/ipchange.yaml
|
||||
ip_bans.yaml
|
||||
production_auth.json
|
||||
OZW_Log.txt
|
||||
@@ -35,23 +37,32 @@ OZW_Log.txt
|
||||
google_calendars.yaml
|
||||
.ring_cache.pickle
|
||||
.ios.conf
|
||||
homeassistant.code-workspace
|
||||
|
||||
|
||||
# Configuration files
|
||||
secrets.yaml
|
||||
secrets
|
||||
known_devices.yaml
|
||||
entity_registry.yaml
|
||||
config/packages/whois.yaml
|
||||
config/packages/life360.yaml
|
||||
config/packages/uptime.yaml
|
||||
.google_maps_location_sharing.cookies*
|
||||
google_service_account.json
|
||||
service_account.json
|
||||
*.token
|
||||
*.tokens
|
||||
*.cookies
|
||||
AGENTS.md
|
||||
AGENTS.override.md
|
||||
|
||||
# Directories
|
||||
llmvision
|
||||
backups
|
||||
deps
|
||||
config/backups
|
||||
panel-notes/
|
||||
icloud
|
||||
__pycache__
|
||||
hacs
|
||||
@@ -64,3 +75,6 @@ tts
|
||||
.ssh
|
||||
.auth
|
||||
.nest
|
||||
panel-notes
|
||||
docker_14
|
||||
docker_69
|
||||
|
||||
@@ -1,62 +0,0 @@
|
||||
<h1 align="center">
|
||||
<a name="logo" href="http://www.vCloudInfo.com/tag/iot"><img src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/x_profile.png" alt="Bear Stone Smart Home" width="200"></a>
|
||||
<br>
|
||||
Bear Stone Smart Home Documentation
|
||||
</h1>
|
||||
<h4 align="center">Be sure to :star: my configuration repo so you can keep up to date on any daily progress!</h4>
|
||||
<div align="center">
|
||||
<h4>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/stargazers">
|
||||
<img src="https://img.shields.io/github/stars/CCOSTAN/Home-AssistantConfig.svg?style=plastic" />
|
||||
</a>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master">
|
||||
<img src="https://img.shields.io/github/last-commit/CCOSTAN/Home-AssistantConfig.svg?style=plastic" />
|
||||
</a>
|
||||
<br />
|
||||
|
||||
<a href="https://github.com/ccostan/home-assistantconfig/blob/master/config/.HA_VERSION">
|
||||
<img
|
||||
src="https://raw.githubusercontent.com/ccostan/home-assistantconfig/master/ha-version-badge.svg"
|
||||
alt="My Home Assistant Version Badge"
|
||||
/>
|
||||
</a>
|
||||
|
||||
|
||||
</h4>
|
||||
</div>
|
||||
<p><font size="3">
|
||||
You can definitely read more about my voice implementations in my blog posts (linked below) or on the main repo page. Voice separates the average home from the Smart Home. Once you start teaching your home to talk, tweet or text, you'll be hard pressed to stop.</p>
|
||||
<div align="center"><a name="menu"></a>
|
||||
<h4>
|
||||
<a href="http://www.vCloudInfo.com/tag/iot">
|
||||
Blog
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#devices">
|
||||
Devices
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc">
|
||||
Todo List
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://x.com/BearStoneHA">
|
||||
Smart Home Stats
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://www.vcloudinfo.com/click-here">
|
||||
Follow Me
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://youtube.com/vCloudInfo">
|
||||
Videos
|
||||
</a>
|
||||
</h4>
|
||||
|
||||
<a name="bottom" href="https://github.com/CCOSTAN/Home-AssistantConfig#logo"><img align="right" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/up_arrow.png" width="25" ></a>
|
||||
|
||||
**Still have questions on my Config?** <br>
|
||||
**Message me on X :** [](https://www.x.com/ccostan) or [](https://www.x.com/BearStoneHA)
|
||||
<!-- Subscribe Section -->
|
||||
<a href="http://eepurl.com/dmXFYz"><img align="left" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a>.
|
||||
<!-- Subscribe Section END-->
|
||||
@@ -1 +1 @@
|
||||
2025.7.1
|
||||
2026.1.0
|
||||
112
config/README.md
112
config/README.md
@@ -9,72 +9,80 @@
|
||||
|
||||
[](https://x.com/ccostan)
|
||||
[](https://www.youtube.com/vCloudInfo?sub_confirmation=1)
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/.HA_VERSION)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
|
||||
<h4>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/last-commit/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/commit-activity/y/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
</div>
|
||||
|
||||
</h4>
|
||||
</div>
|
||||
<p><font size="3">
|
||||
This is the main directory of the Repo. You will find more helpful ReadMe files in the directories as you browse them. Not all but each day I add more. I use a configuration type called split configuration. So my main configuration.yaml file is broken out into many different files located in the directories. Be sure to visit the package directory where practically self contained YAML files exist that you can easily drop into your configurations to be up and running fast with various automations and components. You can also subscribe via RSS to every commit I make in this repo by clicking the Feed icon on the bottom of this page. </p>
|
||||
<div align="center"><a name="menu"></a>
|
||||
<h4>
|
||||
<a href="https://www.vCloudInfo.com/tag/iot">
|
||||
Blog
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#devices">
|
||||
Devices
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc">
|
||||
Todo List
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://x.com/BearStoneHA">
|
||||
Smart Home Stats
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://www.vcloudinfo.com/click-here">
|
||||
Follow Me
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/tree/master/config">
|
||||
Code
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#diagram">
|
||||
Diagram
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://youtube.com/vCloudInfo">
|
||||
Youtube
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://amzn.to/2HXSx2M">
|
||||
Support
|
||||
</a>
|
||||
</h4>
|
||||
</div>
|
||||
Live view of the `config/` directory my production Home Assistant instance loads every night. Use this README as a map when you want to jump directly into the most interesting packages, automations, and supporting assets.
|
||||
|
||||
### Quick navigation
|
||||
- You are here: `config/` (configuration root)
|
||||
- [Repo overview](../README.md) | [Blog](https://www.vcloudinfo.com) | [Issues](https://github.com/CCOSTAN/Home-AssistantConfig/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc) | [Diagram](config/www/custom_ui/floorplan/images/branding/Bear-Stone-Docker-Diagram.jpg) | [YouTube](https://youtube.com/vCloudInfo)
|
||||
- Directory highlights: [packages](packages), [automation](automation), [script](script), [scene](scene), [templates](templates), [www](www), [custom_components](custom_components)
|
||||
|
||||

|
||||
|
||||
### What this folder is (and isn't)
|
||||
- Every YAML file here is live and version-controlled; anything missing is intentionally ignored via `.gitignore` (databases, logs, caches, etc.).
|
||||
- This is a split-configuration layout: `configuration.yaml` simply includes the files and directories documented here so changes are easy to isolate.
|
||||
- Nothing in this folder is a drop-in template—borrow ideas, but adjust entity IDs, helpers, and secrets to match your home before reloading HA.
|
||||
|
||||
### How the config is organized
|
||||
- **Packages (`packages/`)** – complete subsystems that bundle sensors, switches, automations, scripts, and lovelace assets for a single feature (alarm, garage, water shutoff, etc.).
|
||||
- **Automations (`automation/`)** – event-driven YAML broken out by area or device; the legacy `automations.yaml` remains for UI-created flows.
|
||||
- **Scripts & scenes (`script/`, `scene/`)** – curated lighting and ambiance logic used by presence, holiday, and seasonal routines.
|
||||
- **Templates (`templates/`)** – Jinja helpers and speech templates reused by the notify/speech engines.
|
||||
- **www/ + custom components** – branding assets, floorplans, and any custom components the core install depends on.
|
||||
|
||||
### Featured automations by section
|
||||
| Section | Why start here | Featured automation(s) |
|
||||
| --- | --- | --- |
|
||||
| Packages | Self-contained subsystems that highlight patterns like combined alerts + actions. | [packages/alarm.yaml](packages/alarm.yaml), [packages/garadget.yaml](packages/garadget.yaml), [packages/powerwall.yaml](packages/powerwall.yaml) |
|
||||
| Automations | Real-world triggers that tie Zwave, MQTT, and REST sensors into the rest of the house. | [automation/garage_entry_light.yaml](automation/garage_entry_light.yaml), [automation/dark_rainy_day.yaml](automation/dark_rainy_day.yaml), [automation/dash_buttons.yaml](automation/dash_buttons.yaml) |
|
||||
| Scripts | Reusable building blocks for lighting, notifications, and safety responses. | [script/monthly_color_scene.yaml](script/monthly_color_scene.yaml), [script/notify_engine.yaml](script/notify_engine.yaml), [script/speech_engine.yaml](script/speech_engine.yaml) |
|
||||
| Scenes | Seasonal and ambiance presets that the scripts and automations call into. | [scene/monthly_colors.yaml](scene/monthly_colors.yaml), [scene/living_room.yaml](scene/living_room.yaml) |
|
||||
| Templates & Speech | Human-friendly voice briefings and templated responses. | [templates/speech/briefing.yaml](templates/speech/briefing.yaml) |
|
||||
| Dashboards & Media | UI chrome, floorplans, sound bites, and automation assets. | [www/custom_ui/floorplan/images/branding/Bear-Stone-Docker-Diagram.jpg](www/custom_ui/floorplan/images/branding/Bear-Stone-Docker-Diagram.jpg), [media/](media) |
|
||||
| Seasonal Audio | Cuckoo clock with Halloween and Christmas sound packs. | [automation/System/CucKoo_Clock.yaml](automation/System/CucKoo_Clock.yaml) |
|
||||
|
||||
### Gear tied to these automations (affiliate links)
|
||||
Only including devices that have active references in the files above.
|
||||
|
||||
| Device | What it drives (friendly name -> file) | Buy |
|
||||
| --- | --- | --- |
|
||||
| Garadget garage door controller | Garage doors: open/close, reflection alerts – [garadget package](packages/garadget.yaml) + [garage entry helper](automation/garage_entry_light.yaml) | [](https://amzn.to/2jQLpVQ) |
|
||||
| August smart lock | Front-door lock status + remote control – [august package](packages/august.yaml) | [](https://amzn.to/48jVzZ3) |
|
||||
| Amazon Echo Show | Pops up the front doorbell camera when the August lock unlocks – [august package](packages/august.yaml) | [](https://amzn.to/4ptA3YO) |
|
||||
| Phyn Plus water shutoff | Leak detection + auto shutoff – [phynplus package](packages/phynplus.yaml) | [](https://amzn.to/2Zy3sbJ) |
|
||||
| Rachio sprinkler controller | Rain-skips and seasonal watering – [rachio package](packages/rachio.yaml) | [](https://amzn.to/2eoPKBW) |
|
||||
| Tesla Powerwall 2 | Grid-outage alerts + load-shed automations – [powerwall package](packages/powerwall.yaml) | [](https://amzn.to/3UM4BZ5) |
|
||||
| NodeMCU motion sensor | Office motion lighting + comfort scenes – [office_motion package](packages/office_motion.yaml) | [](https://amzn.to/2oUgj5i) |
|
||||
| Raspberry Pi 3 + Aeon Z-Wave stick | Z-Wave backbone for door/hall sensors – [garage entry helper](automation/garage_entry_light.yaml) | [](https://amzn.to/2e3DOBY) [](https://amzn.to/2eAiAP0) |
|
||||
| Roku streaming device | TV presence -> scenes/lighting – [roku package](packages/roku.yaml) | [](https://amzn.to/2Ctp8cr) |
|
||||
| Amazon Dash Button | Quick actions (office lamp toggle) – [dash buttons automation](automation/dash_buttons.yaml) | [](https://amzn.to/2dPKZhM) |
|
||||
| Dreame/Neato vacuum | Cleaning schedules + notifications – [vacuum package](packages/vacuum.yaml) | [](https://amzn.to/4f7NpFP) |
|
||||
| Flux/LED strip controller | Monthly color scenes for exterior – [monthly color scene script](script/monthly_color_scene.yaml) | [](https://amzn.to/2jUBSBE) |
|
||||
| Etekcity/433MHz outlet | Accent lighting relays – [garage entry helper](automation/garage_entry_light.yaml) | [](https://amzn.to/2efNoBP) |
|
||||
|
||||
### Tips for re-use
|
||||
- Copy a package folder and adjust entity IDs in one place instead of hunting through automations.
|
||||
- Use the scripts and scenes as examples of how to break complicated flows into composable blocks.
|
||||
- The `www/` assets are ideal references when building your own Lovelace floorplans or dashboards.
|
||||
|
||||
**All of my configuration files are tested against the most stable version of home-assistant.**
|
||||
|
||||
<a name="bottom" href="https://github.com/CCOSTAN/Home-AssistantConfig#logo"><img align="right" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/up_arrow.png" width="25" ></a>
|
||||
|
||||
**Still have questions on my Config?** <br>
|
||||
**Message me on X :** [](https://www.x.com/ccostan) or [](https://www.x.com/BearStoneHA)
|
||||
**Message me on X :** [](https://www.x.com/ccostan)
|
||||
|
||||
<p align="center">
|
||||
<a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"><span style="margin-left:5px">You can buy me a coffee</span></a><a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"></a>
|
||||
<br>
|
||||
<a align="center" target="_blank" href="https://vcloudinfo.us12.list-manage.com/subscribe?u=45cab4343ffdbeb9667c28a26&id=e01847e94f"><img src="https://feeds.feedburner.com/RecentCommitsToBearStoneHA.1.gif" alt="Recent Commits to Bear Stone Smart Home" style="border:0"></a>
|
||||
<br>
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a><br>
|
||||
<a href="https://www.vCloudInfo.com/p/affiliate-disclosure.html">
|
||||
Affiliate Disclosure
|
||||
</a></p>
|
||||
|
||||
</p>
|
||||
|
||||
@@ -1,187 +0,0 @@
|
||||
cards:
|
||||
- type: custom:mushroom-vacuum-card
|
||||
entity: vacuum.l10s_vacuum
|
||||
icon_animation: true
|
||||
commands:
|
||||
- return_home
|
||||
- start_pause
|
||||
- locate
|
||||
double_tap_action:
|
||||
action: none
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: /lovelace/vacuum
|
||||
visibility:
|
||||
- condition: state
|
||||
entity: vacuum.l10s_vacuum
|
||||
state_not: docked
|
||||
primary_info: name
|
||||
fill_container: true
|
||||
grid_options:
|
||||
rows: 1
|
||||
columns: full
|
||||
layout: horizontal
|
||||
- type: custom:search-card
|
||||
max_results: 10
|
||||
- type: custom:bubble-card
|
||||
card_type: button
|
||||
button_type: slider
|
||||
entity: light.living_room_lights
|
||||
name: Living Room Lights
|
||||
icon: mdi:sofa
|
||||
show_state: true
|
||||
show_attribute: false
|
||||
show_last_changed: true
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: "#living_room"
|
||||
grid_options:
|
||||
columns: 6
|
||||
rows: 1
|
||||
card_layout: large
|
||||
- type: vertical-stack
|
||||
cards:
|
||||
- type: custom:bubble-card
|
||||
card_type: pop-up
|
||||
hash: "#living_room"
|
||||
button_type: slider
|
||||
entity: light.living_room_lights
|
||||
name: Living Room Lights
|
||||
icon: mdi:sofa
|
||||
show_attribute: false
|
||||
slide_to_close_distance: "100000"
|
||||
trigger: []
|
||||
bg_opacity: "35"
|
||||
show_state: true
|
||||
show_last_changed: true
|
||||
tap_action:
|
||||
action: toggle
|
||||
- type: custom:bubble-card
|
||||
card_type: button
|
||||
button_type: slider
|
||||
entity: light.m1_front_left
|
||||
name: Front Left
|
||||
icon: mdi:light-recessed
|
||||
show_state: true
|
||||
show_attribute: false
|
||||
show_last_changed: true
|
||||
sub_button: []
|
||||
grid_options:
|
||||
columns: 6
|
||||
rows: 1
|
||||
columns: 2
|
||||
- type: custom:bubble-card
|
||||
card_type: button
|
||||
button_type: slider
|
||||
entity: light.m1_front_right
|
||||
name: Front Right
|
||||
icon: mdi:light-recessed
|
||||
show_state: true
|
||||
show_attribute: false
|
||||
show_last_changed: true
|
||||
sub_button: []
|
||||
grid_options:
|
||||
columns: 6
|
||||
rows: 1
|
||||
- type: custom:bubble-card
|
||||
card_type: button
|
||||
button_type: slider
|
||||
entity: light.m1_back_left
|
||||
name: Back Left
|
||||
icon: mdi:light-recessed
|
||||
show_state: true
|
||||
show_attribute: false
|
||||
show_last_changed: true
|
||||
sub_button: []
|
||||
grid_options:
|
||||
columns: 6
|
||||
rows: 1
|
||||
- type: custom:bubble-card
|
||||
card_type: button
|
||||
button_type: slider
|
||||
entity: light.m1_back_right
|
||||
name: Back Right
|
||||
icon: mdi:light-recessed
|
||||
show_state: true
|
||||
show_attribute: false
|
||||
show_last_changed: true
|
||||
sub_button: []
|
||||
grid_options:
|
||||
columns: 6
|
||||
rows: 1
|
||||
grid_options:
|
||||
columns: 12
|
||||
rows: auto
|
||||
- type: custom:bubble-card
|
||||
card_type: button
|
||||
button_type: switch
|
||||
entity: group.interior_switches
|
||||
name: Interior Switches
|
||||
icon: mdi:lightning-bolt
|
||||
show_state: true
|
||||
show_attribute: false
|
||||
show_last_changed: false
|
||||
button_action:
|
||||
tap_action:
|
||||
action: more-info
|
||||
grid_options:
|
||||
columns: 6
|
||||
rows: 1
|
||||
tap_action:
|
||||
action: toggle
|
||||
card_layout: large
|
||||
- type: custom:bubble-card
|
||||
card_type: button
|
||||
button_type: state
|
||||
entity: group.exterior_lights
|
||||
name: Exterior Lights
|
||||
icon: mdi:palm-tree
|
||||
show_state: true
|
||||
show_attribute: false
|
||||
show_last_changed: true
|
||||
grid_options:
|
||||
columns: 6
|
||||
rows: 1
|
||||
- type: custom:bubble-card
|
||||
card_type: button
|
||||
entity: sensor.lights_on_count
|
||||
name: Lights On
|
||||
icon: mdi:lightbulb-on-outline
|
||||
show_state: true
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: "#lights-popup"
|
||||
button_action:
|
||||
tap_action:
|
||||
action: navigate
|
||||
navigation_path: "#lights-popup"
|
||||
- type: vertical-stack
|
||||
cards:
|
||||
- type: custom:bubble-card
|
||||
card_type: pop-up
|
||||
hash: "#lights-popup"
|
||||
name: Lights Control
|
||||
icon: mdi:lightbulb-group
|
||||
width_desktop: 500px
|
||||
show_header: true
|
||||
entity: sensor.lights_on_count
|
||||
button_type: name
|
||||
- type: custom:auto-entities
|
||||
filter:
|
||||
include:
|
||||
- domain: light
|
||||
exclude:
|
||||
- state: "off"
|
||||
- state: unavailable
|
||||
- hidden_by: user
|
||||
show_empty: true
|
||||
entity: sensor.lights_on_count
|
||||
button_type: state
|
||||
show_name: true
|
||||
card:
|
||||
type: custom:auto-entities
|
||||
card:
|
||||
type: entities
|
||||
filter:
|
||||
include: []
|
||||
exclude: []
|
||||
@@ -1,53 +0,0 @@
|
||||
# Power Stack Card Configuration
|
||||
# For more information visit: https://www.vcloudinfo.com/click-here
|
||||
|
||||
type: vertical-stack
|
||||
cards:
|
||||
- type: grid
|
||||
cards:
|
||||
- type: custom:power-flow-card-plus
|
||||
entities:
|
||||
battery:
|
||||
state_of_charge: sensor.powerwall_charge
|
||||
entity: sensor.powerwall_battery_power
|
||||
use_metadata: false
|
||||
invert_state: false
|
||||
state_of_charge_unit_white_space: true
|
||||
show_state_of_charge: true
|
||||
grid:
|
||||
secondary_info: {}
|
||||
entity: sensor.powerwall_site_power
|
||||
solar:
|
||||
display_zero_state: true
|
||||
secondary_info: {}
|
||||
entity: sensor.powerwall_solar_power
|
||||
icon: mdi:white-balance-sunny
|
||||
color_icon: true
|
||||
home:
|
||||
secondary_info: {}
|
||||
entity: sensor.powerwall_load_power
|
||||
clickable_entities: true
|
||||
display_zero_lines:
|
||||
mode: grey_out
|
||||
transparency: 50
|
||||
grey_color:
|
||||
- 189
|
||||
- 189
|
||||
- 189
|
||||
use_new_flow_rate_model: true
|
||||
w_decimals: 0
|
||||
kw_decimals: 1
|
||||
min_flow_rate: 0.75
|
||||
max_flow_rate: 4
|
||||
max_expected_power: 2000
|
||||
min_expected_power: 0.01
|
||||
watt_threshold: 1000
|
||||
transparency_zero_lines: 0
|
||||
grid_options:
|
||||
columns: full
|
||||
rows: auto
|
||||
- type: vertical-stack
|
||||
cards:
|
||||
- type: energy-solar-graph
|
||||
- type: energy-water-graph
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
#-------------------------------------------
|
||||
# When the Sliding door opens, at night, turn on Pool deck lights.
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
#-------------------------------------------
|
||||
|
||||
- alias: Pool Deck light helper
|
||||
id: 9521d521-00dc-4116-b467-5150735fcff9
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.MCU2_GPIO12
|
||||
to: 'on'
|
||||
for: '00:3:00'
|
||||
- platform: state
|
||||
entity_id: sun.sun
|
||||
to: 'below_horizon'
|
||||
from: 'above_horizon'
|
||||
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'below_horizon'
|
||||
- condition: state
|
||||
entity_id: binary_sensor.MCU2_GPIO12
|
||||
state: 'on'
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.pirateweather_temperature
|
||||
below: 80
|
||||
|
||||
action:
|
||||
- service: switch.turn_on
|
||||
entity_id: switch.back_landscaping
|
||||
- service: light.turn_on
|
||||
entity_id: light.outdoor_pool_lights
|
||||
data:
|
||||
color_temp: 369
|
||||
- wait_template: >-
|
||||
{{ states.binary_sensor.MCU2_GPIO12.state == 'off' }}
|
||||
- service: light.turn_off
|
||||
entity_id: light.outdoor_pool_lights
|
||||
@@ -1,66 +1,54 @@
|
||||
|
||||
<h1 align="center">
|
||||
<a name="logo" href="https://www.vCloudInfo.com/tag/iot"><img src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/x_profile.png" alt="Bear Stone Smart Home" width="200"></a>
|
||||
<br>
|
||||
Bear Stone Smart Home Documentation
|
||||
</h1>
|
||||
<h4 align="center">Be sure to :star: my configuration repo so you can keep up to date on any daily progress!</h4>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://x.com/ccostan)
|
||||
[](https://www.youtube.com/vCloudInfo?sub_confirmation=1)
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/.HA_VERSION)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
|
||||
<h4>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/stargazers"><img src="https://img.shields.io/github/stars/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/last-commit/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
</h4>
|
||||
</div>
|
||||
<p><font size="3">
|
||||
This is the basic sub-directory in my home assistant repo. Slowly everything is mainly moving to packages. Be sure to check them out.</p>
|
||||
<div align="center"><a name="menu"></a>
|
||||
<h4>
|
||||
<a href="https://www.vCloudInfo.com/tag/iot">
|
||||
Blog
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#devices">
|
||||
Devices
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc">
|
||||
Todo List
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://x.com/BearStoneHA">
|
||||
Smart Home Stats
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://www.vcloudinfo.com/click-here">
|
||||
Follow Me
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/tree/master/config">
|
||||
Code
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#diagram">
|
||||
Diagram
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://youtube.com/vCloudInfo">
|
||||
Youtube
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://amzn.to/2HXSx2M">
|
||||
Support
|
||||
</a>
|
||||
</h4>
|
||||
|
||||
Event-driven automations that sit outside the self-contained packages. These tie motion, presence, weather, and time-of-day signals together for real rooms and routines.
|
||||
|
||||
### Quick navigation
|
||||
- You are here: `config/automation/` (standalone automations)
|
||||
- [Repo overview](../../README.md) | [Config index](../README.md) | [Packages](../packages) | [Scripts](../script) | [Scenes](../scene)
|
||||
|
||||

|
||||
|
||||
### Featured files to browse
|
||||
| File | Why it matters |
|
||||
| --- | --- |
|
||||
| [garage_entry_light.yaml](garage_entry_light.yaml) | Z-Wave door sensor + motion-controlled garage entry lighting. |
|
||||
| [dark_rainy_day.yaml](dark_rainy_day.yaml) | Weather-aware lighting helper for gloomy days. |
|
||||
| [dash_buttons.yaml](dash_buttons.yaml) | Amazon Dash buttons repurposed as quick triggers. |
|
||||
| [good_night.yaml](good_night.yaml) | Whole-house shutdown and lock-up routine. |
|
||||
|
||||
### Tips
|
||||
- Use these as patterns if you are migrating UI-created automations out of `automations.yaml`.
|
||||
- Most automations expose helpers (input booleans, scenes) so you can extend them without editing IDs.
|
||||
|
||||
|
||||
**All of my configuration files are tested against the most stable version of home-assistant.**
|
||||
|
||||
<a name="bottom" href="https://github.com/CCOSTAN/Home-AssistantConfig#logo"><img align="right" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/up_arrow.png" width="25" ></a>
|
||||
|
||||
**Still have questions on my Config?** <br>
|
||||
**Message me on X :** [](https://www.x.com/ccostan) or [](https://www.x.com/BearStoneHA)
|
||||
<!-- Subscribe Section -->
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a>.
|
||||
<!-- Subscribe Section END-->
|
||||
**Message me on X :** [](https://www.x.com/ccostan)
|
||||
|
||||
<p align="center">
|
||||
<a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"><span style="margin-left:5px">You can buy me a coffee</span></a><a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"></a>
|
||||
<br>
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a><br>
|
||||
<a href="https://www.vCloudInfo.com/p/affiliate-disclosure.html">
|
||||
Affiliate Disclosure
|
||||
</a></p>
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
###################################
|
||||
## Tornados are no Joke.
|
||||
###################################
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# High Wind Alerts - Severe wind warnings (push + Activity feed)
|
||||
# Related Issue: 1550
|
||||
# Logs to Activity feed while keeping existing notifications and actions.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
- alias: 'High Wind Speed Notification'
|
||||
id: 5cc158a5-038a-4078-a9fb-c9f9cf9ecd49
|
||||
@@ -17,6 +24,11 @@
|
||||
above: 60
|
||||
|
||||
action:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "WEATHER"
|
||||
message: >-
|
||||
Wind speed is {{ states('sensor.pirateweather_wind_speed') | round }} mph (thresholds: 30/40/60).
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: 'VERY HIGH WINDS:'
|
||||
|
||||
@@ -1,73 +1,53 @@
|
||||
|
||||
<h1 align="center">
|
||||
<a name="logo" href="https://www.vCloudInfo.com/tag/iot"><img src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/x_profile.png" alt="Bear Stone Smart Home" width="200"></a>
|
||||
<br>
|
||||
Bear Stone Smart Home Documentation
|
||||
</h1>
|
||||
<h4 align="center">Be sure to :star: my configuration repo so you can keep up to date on any daily progress!</h4>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://x.com/ccostan)
|
||||
[](https://www.youtube.com/vCloudInfo?sub_confirmation=1)
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/.HA_VERSION)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
|
||||
<h4>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/stargazers"><img src="https://img.shields.io/github/stars/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/last-commit/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
</h4>
|
||||
</div>
|
||||
<p><font size="3">
|
||||
You can definately read more about my voice implimentations in my blog posts (linked below) or on the main repo page. Voice separates the average home from the Smart Home. Once you start teaching your home to talk, tweet or text, you'll be hard pressed to stop.</p>
|
||||
<div align="center"><a name="menu"></a>
|
||||
<h4>
|
||||
<a href="https://www.vCloudInfo.com/tag/iot">
|
||||
Blog
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#devices">
|
||||
Devices
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc">
|
||||
Todo List
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://x.com/BearStoneHA">
|
||||
Smart Home Stats
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://www.vcloudinfo.com/click-here">
|
||||
Follow Me
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/tree/master/config">
|
||||
Code
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#diagram">
|
||||
Diagram
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://youtube.com/vCloudInfo">
|
||||
Youtube
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://amzn.to/2HXSx2M">
|
||||
Support
|
||||
</a>
|
||||
</h4>
|
||||
|
||||
**All of my configuration files are tested against the most stable version of home-assistant.**
|
||||
Speech-first automations: contextual announcements, stats briefings, guest mode overrides, and alert handling routed through the speech/notify engines.
|
||||
|
||||
<a name="bottom" href="https://github.com/CCOSTAN/Home-AssistantConfig#logo"><img align="right" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/up_arrow.png" width="25" ></a>
|
||||
### Quick navigation
|
||||
- [Repo overview](../../../README.md) | [Config index](../../README.md) | [Automation home](..) | [Scripts](../../script) | [Templates (speech)](../../templates/speech)
|
||||
|
||||
**Still have questions on my Config?** <br>
|
||||
**Message me on X :** [](https://www.x.com/ccostan) or [](https://www.x.com/BearStoneHA)
|
||||

|
||||
|
||||
<p align="center">
|
||||
<a align="center" target="_blank" href="https://vcloudinfo.us12.list-manage.com/subscribe?u=45cab4343ffdbeb9667c28a26&id=e01847e94f"><img src="https://feeds.feedburner.com/RecentCommitsToBearStoneHA.1.gif" alt="Recent Commits to Bear Stone Smart Home" style="border:0"></a>
|
||||
<br>
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a><br>
|
||||
<a href="https://www.vCloudInfo.com/p/affiliate-disclosure.html">
|
||||
Affiliate Disclosure
|
||||
</a></p>
|
||||
### Featured files to browse
|
||||
| File | Why it matters |
|
||||
| --- | --- |
|
||||
| [announcements.yaml](announcements.yaml) | Daily/occasional broadcast messages with quiet hours. |
|
||||
| [home_stats.yaml](home_stats.yaml) | Voice summary of house status and interesting stats. |
|
||||
| [guest_mode.yaml](guest_mode.yaml) | Adjust announcements and behaviors while guests are over. |
|
||||
| [High_Wind_Speed_Check.yaml](High_Wind_Speed_Check.yaml) | Warn about severe wind before it causes issues. |
|
||||
|
||||
### Tips
|
||||
- Pairs with `script/speech_engine.yaml` and `templates/speech/briefing.yaml` for reusable phrasing.
|
||||
- Keep announcements short; most are triggered off sensor changes or scheduled briefings.
|
||||
|
||||
|
||||
**All of my configuration files are tested against the most stable version of home-assistant.**
|
||||
|
||||
<a name="bottom" href="https://github.com/CCOSTAN/Home-AssistantConfig#logo"><img align="right" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/up_arrow.png" width="25" ></a>
|
||||
|
||||
**Still have questions on my Config?** <br>
|
||||
**Message me on X :** [](https://www.x.com/ccostan)
|
||||
|
||||
<p align="center">
|
||||
<a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"><span style="margin-left:5px">You can buy me a coffee</span></a><a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"></a>
|
||||
<br>
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a><br>
|
||||
<a href="https://www.vCloudInfo.com/p/affiliate-disclosure.html">
|
||||
Affiliate Disclosure
|
||||
</a></p>
|
||||
|
||||
@@ -37,8 +37,8 @@
|
||||
- wait_template: "{{ states.binary_sensor.mcu1_gpio12.state == 'on' }}"
|
||||
timeout: '00:05:00'
|
||||
|
||||
- wait_template: "{{ states.binary_sensor.kitchen_door.state == 'on' }}"
|
||||
timeout: '00:1:00'
|
||||
# - wait_template: "{{ states.binary_sensor.kitchen_door.state == 'on' }}"
|
||||
# timeout: '00:1:00'
|
||||
|
||||
- delay: '00:01:00'
|
||||
- service: script.speech_engine
|
||||
@@ -50,7 +50,7 @@
|
||||
{%- endmacro -%}
|
||||
|
||||
{{greeting_sentence(person)}}
|
||||
call_responsibilities: 1
|
||||
call_garbage_day: 1
|
||||
call_no_announcement: 1
|
||||
call_garage_check: 1
|
||||
call_window_check: 1
|
||||
|
||||
67
config/automation/Speech/garbage_day_garage.yaml
Normal file
67
config/automation/Speech/garbage_day_garage.yaml
Normal file
@@ -0,0 +1,67 @@
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Garage Garbage Day Reminders - staggered reminders after door opens
|
||||
# On garbage days, announce at 30s/90s/180s if the garage stays open.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Uses Alexa announce in the garage for local playback; also sends
|
||||
# one inside reminder via `script.speech_engine` (Chromecasts).
|
||||
# Notes: Debounced garage door open trigger to avoid restarts if the
|
||||
# garage door state flaps (noisy sensors/reflection).
|
||||
######################################################################
|
||||
- alias: 'Garage Garbage Day Reminders'
|
||||
id: 3f97f3be-3d0a-4d2d-9100-5b9c0dbfd5c3
|
||||
mode: restart
|
||||
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: group.garage_doors
|
||||
from: 'closed'
|
||||
to: 'open'
|
||||
for: "00:00:20"
|
||||
|
||||
condition:
|
||||
# Only run on garbage days (Wed/Sun)
|
||||
- condition: template
|
||||
value_template: >-
|
||||
{% set day = now().strftime('%a') %}
|
||||
{{ day in ['Wed', 'Sun'] }}
|
||||
|
||||
action:
|
||||
|
||||
# One inside reminder via Chromecasts (speech_engine targets living room)
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
call_garbage_day: 1
|
||||
value1: >-
|
||||
Reminder: it's garbage day. Please take the cans to the curb before you leave.
|
||||
- variables:
|
||||
reminder_delays: [30, 60, 90] # cumulative delays to hit 30s, 90s, 180s
|
||||
|
||||
- repeat:
|
||||
for_each: "{{ reminder_delays }}"
|
||||
sequence:
|
||||
- delay:
|
||||
seconds: "{{ repeat.item }}"
|
||||
|
||||
# Skip if the doors closed during the wait or it's no longer garbage day
|
||||
- condition: state
|
||||
entity_id: group.garage_doors
|
||||
state: 'open'
|
||||
|
||||
- condition: template
|
||||
value_template: >-
|
||||
{% set day = now().strftime('%a') %}
|
||||
{{ day in ['Wed', 'Sun'] }}
|
||||
|
||||
- service: notify.alexa_media_garage
|
||||
data:
|
||||
message: >-
|
||||
{% set day = now().strftime('%a') %}
|
||||
Reminder: it's garbage day. {% if day == 'Wed' %}Both recycling and regular garbage go out today. {% endif %}Please take the cans to the curb before you leave.
|
||||
data:
|
||||
type: announce
|
||||
|
||||
|
||||
@@ -1,5 +1,12 @@
|
||||
######################################################################
|
||||
## Some home facts when we get back home from being away.
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Home Stats Automation - arrival briefing with weather and safety checks
|
||||
# Announces key home status after family returns or on manual trigger.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Waits for garage doors to close before speaking.
|
||||
######################################################################
|
||||
- alias: 'Home Stats'
|
||||
id: f98e1ef4-051b-4214-908d-d8b35f076a3e
|
||||
@@ -26,8 +33,7 @@
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
call_inside_weather: 1
|
||||
call_responsibilities: 1
|
||||
call_garbage_day: 1
|
||||
call_outside_weather: 1
|
||||
call_garage_check: 1
|
||||
call_window_check: 1
|
||||
call_light_check: 1
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
######################################################################
|
||||
## Announce when one of the nests kick in
|
||||
## Announce over all Chromecast Audios
|
||||
######################################################################
|
||||
- alias: 'Nest Status'
|
||||
id: 7812fdaf-a3f8-498b-8f07-28e977e528fe
|
||||
trigger:
|
||||
|
||||
- platform: state
|
||||
entity_id:
|
||||
- climate.downstairs
|
||||
- climate.upstairs
|
||||
from: 'off'
|
||||
|
||||
action:
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
NestStatus: "The {{ trigger.entity_id.split('.')[1].split('_')[0]}} {{ trigger.entity_id.split('.')[1].split('_')[1]}} has now been turned on for {{(trigger.to_state.state)}}."
|
||||
call_window_check: 1
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
#-------------------------------------------
|
||||
# Responsibilities Announcement
|
||||
# Description: Triggers a speech announcement for daily responsibilities
|
||||
#
|
||||
# Features:
|
||||
# - Announces garbage day and recycling reminders
|
||||
# - Triggered by an input_boolean entity
|
||||
#
|
||||
# Integration: Uses speech_engine script for announcements
|
||||
# Follow me on https://www.vcloudinfo.com/click-here
|
||||
#-------------------------------------------
|
||||
- alias: 'responsibilities'
|
||||
id: f39bd8db-a348-4024-a6a6-a3e3c836646c
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.responsibilities
|
||||
to: 'on'
|
||||
|
||||
action:
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
call_responsibilities: 1
|
||||
@@ -39,17 +39,15 @@
|
||||
data:
|
||||
entity_id: media_player.livingroomCC
|
||||
media_content_id: >
|
||||
{% if now().strftime("%M")|int == 30 %}
|
||||
{% if now().strftime("%B") == 'October' %}
|
||||
https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/sounds/october-clock/cuckoo-clock-01.wav
|
||||
{% set month = now().strftime("%B") %}
|
||||
{% set base = "https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/sounds/" %}
|
||||
{% if month == 'October' %}
|
||||
{% set folder = 'october-clock' %}
|
||||
{% elif month == 'December' %}
|
||||
{% set folder = 'december-clock' %}
|
||||
{% else %}
|
||||
https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/sounds/cuckoo-clock/cuckoo-clock-01.wav
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{% if now().strftime("%B") == 'October' %}
|
||||
https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/sounds/october-clock/cuckoo-clock-{{now().strftime("%I")}}.wav
|
||||
{% else %}
|
||||
https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/sounds/cuckoo-clock/cuckoo-clock-{{now().strftime("%I")}}.wav
|
||||
{% endif %}
|
||||
{% set folder = 'cuckoo-clock' %}
|
||||
{% endif %}
|
||||
{% set file = 'cuckoo-clock-01.wav' if now().strftime("%M")|int == 30 else 'cuckoo-clock-' ~ now().strftime("%I") ~ '.wav' %}
|
||||
{{ base ~ folder ~ '/' ~ file }}
|
||||
media_content_type: audio/mp4
|
||||
|
||||
@@ -1,65 +1,53 @@
|
||||
|
||||
<h1 align="center">
|
||||
<a name="logo" href="https://www.vCloudInfo.com/tag/iot"><img src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/x_profile.png" alt="Bear Stone Smart Home" width="200"></a>
|
||||
<br>
|
||||
Bear Stone Smart Home Documentation
|
||||
</h1>
|
||||
<h4 align="center">Be sure to :star: my configuration repo so you can keep up to date on any daily progress!</h4>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://x.com/ccostan)
|
||||
[](https://www.youtube.com/vCloudInfo?sub_confirmation=1)
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/.HA_VERSION)
|
||||
<h4>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/last-commit/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/commit-activity/y/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
</h4>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
|
||||
</div>
|
||||
<p><font size="3">
|
||||
This directory is primarily used for automations that are just running in the background all the time. Little robots just doing thier thing to help make the house the smartest and most proactive it can be for us.</p>
|
||||
<div align="center"><a name="menu"></a>
|
||||
<h4>
|
||||
<a href="https://www.vCloudInfo.com/tag/iot">
|
||||
Blog
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#devices">
|
||||
Devices
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc">
|
||||
Todo List
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://x.com/BearStoneHA">
|
||||
Smart Home Stats
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://www.vcloudinfo.com/click-here">
|
||||
Follow Me
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/tree/master/config">
|
||||
Code
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#diagram">
|
||||
Diagram
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://youtube.com/vCloudInfo">
|
||||
Youtube
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://amzn.to/2HXSx2M">
|
||||
Support
|
||||
</a>
|
||||
</h4>
|
||||
|
||||
Meta automations that keep Home Assistant healthy—watchdogs, diagnostics, and recovery tasks for the stack itself.
|
||||
|
||||
### Quick navigation
|
||||
- [Repo overview](../../../README.md) | [Config index](../../README.md) | [Automation home](..) | [Packages](../../packages)
|
||||
|
||||

|
||||
|
||||
### Featured files to browse
|
||||
| File | Why it matters |
|
||||
| --- | --- |
|
||||
| [detect_and_adjust_lights.yaml](detect_and_adjust_lights.yaml) | Auto-untangles stuck lights and re-syncs states. |
|
||||
| [watchdog_light.yaml](watchdog_light.yaml) | Detects flapping entities and nudges them back. |
|
||||
| [trigger_dump.yaml](trigger_dump.yaml) | Debug helper that logs trigger payloads for troubleshooting. |
|
||||
| [door_chime.yaml](door_chime.yaml) | Friendly tones for door open/close events. |
|
||||
|
||||
### Tips
|
||||
- Great place to drop temporary diagnostics without touching user-facing automations.
|
||||
- When cloning, change `id:` fields to avoid UUID collisions.
|
||||
|
||||
|
||||
**All of my configuration files are tested against the most stable version of home-assistant.**
|
||||
|
||||
<a name="bottom" href="https://github.com/CCOSTAN/Home-AssistantConfig#logo"><img align="right" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/up_arrow.png" width="25" ></a>
|
||||
|
||||
**Still have questions on my Config?** <br>
|
||||
**Message me on X :** [](https://www.x.com/ccostan) or [](https://www.x.com/BearStoneHA)
|
||||
<!-- Subscribe Section -->
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a>.
|
||||
<!-- Subscribe Section END-->
|
||||
**Message me on X :** [](https://www.x.com/ccostan)
|
||||
|
||||
<p align="center">
|
||||
<a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"><span style="margin-left:5px">You can buy me a coffee</span></a><a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"></a>
|
||||
<br>
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a><br>
|
||||
<a href="https://www.vCloudInfo.com/p/affiliate-disclosure.html">
|
||||
Affiliate Disclosure
|
||||
</a></p>
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
###################################
|
||||
## Uses IFTTT to notify me of bad logins.
|
||||
###################################
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Bad Login Attempts - Log security events to Activity feed
|
||||
# Related Issue: 1550
|
||||
# Replaces phone push with `script.send_to_logbook` using `sensor.activity_feed`.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
- alias: Login Failure
|
||||
id: 814c48ea-e2e1-4b75-92b0-581081af5ce5
|
||||
@@ -9,11 +16,7 @@
|
||||
value_template: "{{ states('persistent_notification.httplogin') != 'unknown' }}"
|
||||
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
value1: 'Bad Login: '
|
||||
value2: 'There was a Hack attempt!'
|
||||
value3: 'Go Check the GUI for details.'
|
||||
who: 'carlo'
|
||||
group: 'information'
|
||||
|
||||
topic: "SYSTEM"
|
||||
message: "Bad Login: There was a hack attempt. Check the HA UI for details."
|
||||
|
||||
@@ -12,20 +12,22 @@
|
||||
event_type: state_changed
|
||||
|
||||
condition:
|
||||
- condition: template
|
||||
value_template: >
|
||||
{{ trigger.event.data.old_state is not none
|
||||
and trigger.event.data.new_state is not none
|
||||
and trigger.event.data.old_state.state == 'off'
|
||||
and trigger.event.data.new_state.state == 'on' }}
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'home'
|
||||
- condition: state
|
||||
entity_id: input_boolean.alert_mode
|
||||
state: 'off'
|
||||
- condition: template
|
||||
value_template: "{{ trigger.event.data is not none }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.event.data.entity_id is not none }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.event.data.entity_id.split('.')[0] == 'light' }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.event.data.entity_id.split('_')[0] != 'light.tv' }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.event.data.entity_id.split('_')[0] != 'light.couch' }}"
|
||||
- condition: template
|
||||
@@ -34,14 +36,8 @@
|
||||
value_template: "{{ trigger.event.data.entity_id.split('_')[0] != 'light.flood_2' }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.event.data.entity_id.split('_')[0] != 'light.treeflood' }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.event.data.entity_id.split('_')[0] != 'light.led' }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.event.data.entity_id.split('_')[1] != 'screensaver' }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.event.data.new_state.state == 'on' }}"
|
||||
- condition: template
|
||||
value_template: "{{ trigger.event.data.old_state.state == 'off' }}"
|
||||
|
||||
action:
|
||||
- service: light.turn_on
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
##############################################################################
|
||||
### Detect when things are on and forgotten about. Like any Good Watchdog.
|
||||
##############################################################################
|
||||
|
||||
##############################################################################
|
||||
|
||||
- alias: "NOTIFY IF IP CHANGES"
|
||||
id: 88a58d11-28bd-48e1-a674-bc53ee3d8016
|
||||
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.ipchange
|
||||
from: 'False'
|
||||
to: 'True'
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
value1: 'Changed IP address:'
|
||||
value2: "New IP: {{ states('sensor.exteral_ip') }}"
|
||||
value3: ' - Be sure to Change DNS!'
|
||||
who: 'carlo'
|
||||
group: 'ip-change'
|
||||
|
||||
##############################################################################
|
||||
@@ -1,6 +1,13 @@
|
||||
###################################
|
||||
## Trigger Dump
|
||||
###################################
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Trigger Dump - Log feedreader events to Activity feed
|
||||
# Related Issue: 1550
|
||||
# Writes a Logbook entry and publishes payload to MQTT for debugging.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
- alias: Trigger dump - MQTT
|
||||
id: 74edd73d-f0a5-45cf-9561-c6a1777236e5
|
||||
@@ -8,12 +15,10 @@
|
||||
- platform: event
|
||||
event_type: feedreader
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
value1: 'Check the MQTT Dump'
|
||||
value2: '/dump/{{ trigger.platform }}'
|
||||
who: 'carlo'
|
||||
group: 'information'
|
||||
topic: "SYSTEM"
|
||||
message: "Check the MQTT dump: /dump/{{ trigger.platform }}"
|
||||
- service: mqtt.publish
|
||||
data:
|
||||
topic: '/dump/{{ trigger.platform }}'
|
||||
|
||||
@@ -33,7 +33,6 @@
|
||||
|
||||
#Turn it off!
|
||||
action:
|
||||
- service: script.garage_lights_off # C by GE Lights (https://amzn.to/30w3UWy)
|
||||
|
||||
- service: homeassistant.turn_off
|
||||
data:
|
||||
@@ -53,3 +52,39 @@
|
||||
- light.hallway
|
||||
- light.hallway_lights
|
||||
- light.foyer
|
||||
|
||||
##############################################################################
|
||||
### Alert when the Kitchen Accent power is cut and the switches go offline
|
||||
##############################################################################
|
||||
|
||||
- alias: Kitchen Accent Power Reminder
|
||||
id: b7c767d3-359f-4db4-9156-bba9e7d90602
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- switch.kitchen_accent_1
|
||||
- switch.kitchen_accent_2
|
||||
to: 'unavailable'
|
||||
for: '00:00:30'
|
||||
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: group.bed
|
||||
state: 'off'
|
||||
- condition: template
|
||||
value_template: "{{ trigger.from_state is not none and trigger.from_state.state != 'unavailable' }}"
|
||||
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: "Kitchen Accent Power"
|
||||
value1: "The Kitchen Accent plug was switched off. Please turn it back on."
|
||||
who: 'parents'
|
||||
|
||||
- service: notify.alexa_media_kitchen
|
||||
data:
|
||||
message: "The Kitchen Accent plug was switched off. Please turn it back on."
|
||||
data:
|
||||
type: announce
|
||||
|
||||
|
||||
@@ -1,70 +1,53 @@
|
||||
|
||||
<h1 align="center">
|
||||
<a name="logo" href="https://www.vCloudInfo.com/tag/iot"><img src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/x_profile.png" alt="Bear Stone Smart Home" width="200"></a>
|
||||
<br>
|
||||
Bear Stone Smart Home Documentation
|
||||
</h1>
|
||||
<h4 align="center">Be sure to :star: my configuration repo so you can keep up to date on any daily progress!</h4>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://x.com/ccostan)
|
||||
[](https://www.youtube.com/vCloudInfo?sub_confirmation=1)
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/.HA_VERSION)
|
||||
<h4>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/last-commit/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/commit-activity/y/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
</h4>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
|
||||
</div>
|
||||
<div align="center"><a name="menu"></a>
|
||||
<h4>
|
||||
<a href="https://www.vCloudInfo.com/tag/iot">
|
||||
Blog
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#devices">
|
||||
Devices
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc">
|
||||
Todo List
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://x.com/BearStoneHA">
|
||||
Smart Home Stats
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://www.vcloudinfo.com/click-here">
|
||||
Follow Me
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/tree/master/config">
|
||||
Code
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#diagram">
|
||||
Diagram
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://youtube.com/vCloudInfo">
|
||||
Youtube
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://amzn.to/2HXSx2M">
|
||||
Support
|
||||
</a>
|
||||
</h4>
|
||||
|
||||
This directory is primarily used for automations that are triggered via time. Daily, monthly, seasonally or on the hour.
|
||||
Time-based routines for wake/sleep cycles, sunrise/sunset shifts, and nightly watchdog tasks.
|
||||
|
||||
### Quick navigation
|
||||
- [Repo overview](../../../README.md) | [Config index](../../README.md) | [Automation home](..) | [Blog: template conditions](https://www.vcloudinfo.com/2019/06/how-to-use-template-conditions-in-home-assistant.html)
|
||||
|
||||

|
||||
|
||||
### Featured files to browse
|
||||
| File | Why it matters |
|
||||
| --- | --- |
|
||||
| [sunrise_turn_off.yaml](sunrise_turn_off.yaml) | Shut down overnight lights as the sun comes up. |
|
||||
| [sunset_turn_on.yaml](sunset_turn_on.yaml) | Evening exterior/interior light kickoff. |
|
||||
| [night_watchdog.yaml](night_watchdog.yaml) | Late-night checks that everything is closed and safe. |
|
||||
| [wake_up.yaml](wake_up.yaml) | Morning scene starter that eases into the day. |
|
||||
|
||||
### Tips
|
||||
- If you add new timed routines, keep names numeric or descriptive for easy sorting.
|
||||
- Template your conditions to respect holidays/guests before firing loud routines.
|
||||
|
||||
|
||||
**All of my configuration files are tested against the most stable version of home-assistant.**
|
||||
|
||||
<details>
|
||||
<summary>How To Use Condition templates with Jinja</summary><p align="center">
|
||||
<a href=https://www.vcloudinfo.com/2019/06/how-to-use-template-conditions-in-home-assistant.html>
|
||||
Write Up and YouTube Video</a><br>
|
||||
<p></details>
|
||||
<a name="bottom" href="https://github.com/CCOSTAN/Home-AssistantConfig#logo"><img align="right" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/up_arrow.png" width="25" ></a>
|
||||
|
||||
**Still have questions on my Config?** <br>
|
||||
**Message me on X :** [](https://www.x.com/ccostan) or [](https://www.x.com/BearStoneHA)
|
||||
<!-- Subscribe Section -->
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a>.
|
||||
<!-- Subscribe Section END-->
|
||||
**Message me on X :** [](https://www.x.com/ccostan)
|
||||
|
||||
<p align="center">
|
||||
<a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"><span style="margin-left:5px">You can buy me a coffee</span></a><a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"></a>
|
||||
<br>
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a><br>
|
||||
<a href="https://www.vCloudInfo.com/p/affiliate-disclosure.html">
|
||||
Affiliate Disclosure
|
||||
</a></p>
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
###################################
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
## Start Up Section
|
||||
## Video Explanation can be found here :
|
||||
## https://www.vcloudinfo.com/2019/06/how-to-use-template-conditions-in-home-assistant.html
|
||||
###################################
|
||||
|
||||
- alias: Check if it's summer vacation on startup.
|
||||
id: 65f91ec6-b9ad-45de-9ffa-023598980019
|
||||
|
||||
trigger:
|
||||
- platform: homeassistant
|
||||
event: start
|
||||
- platform: time_pattern
|
||||
hours: '/12'
|
||||
|
||||
condition:
|
||||
- condition: template
|
||||
value_template: >
|
||||
{% set month=states("sensor.date").split('-')[1] | int %}
|
||||
{%- if month == 4 or month == 5 or month == 6 or month == 7 -%}
|
||||
true
|
||||
{%- endif -%}
|
||||
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.school_mode
|
||||
@@ -1,6 +1,14 @@
|
||||
###################################
|
||||
## Start Up Section
|
||||
###################################
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Startup Logbook Entry - Log HA restarts to Activity feed
|
||||
# Related Issue: 1550
|
||||
# Uses `script.send_to_logbook` + `sensor.activity_feed` (no phone push).
|
||||
# Keeps an Alexa announce when daytime.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
- alias: Startup Notification and Shut startup lights
|
||||
id: f3f0a8d1-6c40-43e0-91e4-827194f78506
|
||||
@@ -9,12 +17,10 @@
|
||||
- platform: homeassistant
|
||||
event: start
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
title: 'Home Assistant StartUp'
|
||||
value1: 'Home Assistant is Up and Running!'
|
||||
who: 'carlo'
|
||||
group: 'information'
|
||||
topic: "SYSTEM"
|
||||
message: "Home Assistant is Up and Running!"
|
||||
|
||||
- service: homeassistant.turn_off
|
||||
entity_id:
|
||||
@@ -35,4 +41,3 @@
|
||||
message: "Home Assistant has been restarted."
|
||||
data:
|
||||
type: announce
|
||||
|
||||
|
||||
@@ -21,7 +21,6 @@
|
||||
entity_id:
|
||||
- group.exterior_lights
|
||||
- light.outdoor_front_lights
|
||||
- light.outdoor_pool_lights
|
||||
- group.outdoor_seasonal
|
||||
|
||||
- service: light.turn_off
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
###################################
|
||||
## Sunrise and Sunset stuff
|
||||
# @CCOSTAN
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
###################################
|
||||
# -------------------------------------------------------------------
|
||||
# Sunset Trigger - evening lighting kickoff
|
||||
# Turns on interior/exterior accents around sunset with safety checks.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
- alias: 'Sunset Stuff on'
|
||||
id: d0db568c-0aa2-42cc-b5be-ba546e39b639
|
||||
@@ -25,7 +29,7 @@
|
||||
- service: homeassistant.turn_on
|
||||
entity_id:
|
||||
- switch.front_landscaping
|
||||
- switch.villaneri
|
||||
# - switch.villaneri
|
||||
- light.bedroom
|
||||
- group.outdoor_seasonal
|
||||
- service: script.monthly_color_scene
|
||||
@@ -49,10 +53,12 @@
|
||||
- switch.foyer_outlet
|
||||
- switch.den_outlet
|
||||
- switch.front_office_lamp
|
||||
- switch.office_accent
|
||||
- switch.living_room_outlet
|
||||
- switch.living_room_tv_outlet
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.living_room_accents
|
||||
- light.upstairs_lamp
|
||||
- light.ikea_1 #Upstairs Hallyway switchoutlet.
|
||||
|
||||
|
||||
@@ -40,4 +40,3 @@
|
||||
- service: switch.turn_off
|
||||
entity_id: switch.back_landscaping
|
||||
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
- light.living_room_lights
|
||||
- light.living_room_accents
|
||||
brightness: 255
|
||||
kelvin: 5500
|
||||
color_temp_kelvin: 5500
|
||||
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
|
||||
@@ -28,8 +28,6 @@
|
||||
- light.main_slider
|
||||
- light.garage_attic
|
||||
- light.bedroom_lights
|
||||
- light.den_2
|
||||
- light.den1
|
||||
- light.dinette_lights
|
||||
- light.dining_room_lights
|
||||
- light.foyer
|
||||
|
||||
@@ -1,16 +1,18 @@
|
||||
###################################
|
||||
## ZWave Section -
|
||||
## Home Assistant runs on my [Raspberry Pi 3](https://amzn.to/2e3DOBY) with [Aeon Labs Z Wave Stick (GEN 5)](https://amzn.to/2eAiAP0).
|
||||
###################################
|
||||
# https://www.vcloudinfo.com/click-here
|
||||
# Garage lighting automations below are associated with door sensors and lights in the garage entryway.
|
||||
# The garage doors themselves are controlled by Garadget (see packages/garadget.yaml).
|
||||
# For related device and hardware info, see README and config/packages/garadget.yaml.
|
||||
|
||||
|
||||
|
||||
##############################################################
|
||||
- alias: Garage Light Hallway Helper OPEN
|
||||
id: 5ea2a2b5-e3de-4acd-823c-dac3eeaa6118
|
||||
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.kitchen_door
|
||||
to: 'on'
|
||||
# - platform: state
|
||||
# entity_id: binary_sensor.kitchen_door
|
||||
# to: 'on'
|
||||
- platform: state
|
||||
entity_id: binary_sensor.mcu1_gpio12
|
||||
to: 'on'
|
||||
@@ -36,19 +38,19 @@
|
||||
to: 'off'
|
||||
for:
|
||||
seconds: 15
|
||||
- platform: state
|
||||
entity_id: binary_sensor.kitchen_door
|
||||
to: 'off'
|
||||
for:
|
||||
seconds: 15
|
||||
# - platform: state
|
||||
# entity_id: binary_sensor.kitchen_door
|
||||
# to: 'off'
|
||||
# for:
|
||||
# seconds: 15
|
||||
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.mcu1_gpio12
|
||||
state: 'off'
|
||||
- condition: state
|
||||
entity_id: binary_sensor.kitchen_door
|
||||
state: 'off'
|
||||
# - condition: state
|
||||
# entity_id: binary_sensor.kitchen_door
|
||||
# state: 'off'
|
||||
- condition: state
|
||||
entity_id: light.garage_hallway
|
||||
state: 'on'
|
||||
@@ -57,11 +59,6 @@
|
||||
- service: light.turn_off
|
||||
entity_id: light.garage_hallway
|
||||
|
||||
- delay:
|
||||
minutes: 30
|
||||
|
||||
- service: script.garage_lights_off # C by GE Lights (https://amzn.to/30w3UWy)
|
||||
|
||||
##############################################################
|
||||
- alias: Shutdown Helper light
|
||||
id: 124f95f6-78ca-4c22-9348-1f3a1da2d803
|
||||
@@ -71,12 +68,6 @@
|
||||
entity_id: light.k4
|
||||
to: 'on'
|
||||
for: '00:20:00'
|
||||
- platform: state
|
||||
entity_id: binary_sensor.hallway_pantry
|
||||
to: 'off'
|
||||
- platform: state
|
||||
entity_id: binary_sensor.hallway_linen
|
||||
to: 'off'
|
||||
|
||||
condition:
|
||||
condition: state
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
######################################################################
|
||||
## Weekday Morning Routines for the Wife and Kiddos.
|
||||
######################################################################
|
||||
|
||||
- alias: 'Good Morning Routine'
|
||||
id: 1432bac8-311b-4618-8f8f-19dd848791b6
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.good_morning
|
||||
to: 'on'
|
||||
from: 'off'
|
||||
- platform: state
|
||||
entity_id:
|
||||
- binary_sensor.sleepnumber_carlo_stacey_is_in_bed
|
||||
to: 'off'
|
||||
for: '00:05:00'
|
||||
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: home
|
||||
- condition: state
|
||||
entity_id: input_boolean.school_mode
|
||||
state: 'on'
|
||||
- condition: time
|
||||
after: '05:30:00'
|
||||
before: '08:00:00'
|
||||
- condition: time
|
||||
weekday:
|
||||
- mon
|
||||
- tue
|
||||
- wed
|
||||
- thu
|
||||
- fri
|
||||
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.s1
|
||||
- light.s4
|
||||
- service: switch.turn_on
|
||||
entity_id: group.kitchen_accents
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.good_morning
|
||||
@@ -1,5 +1,11 @@
|
||||
######################################################################
|
||||
## Good night Routine
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Good Night Routine - bedtime shutdown and bed presence actions
|
||||
# Powers down interior accents when the household is in bed.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
- alias: 'Good Night Trigger'
|
||||
@@ -52,6 +58,7 @@
|
||||
- switch.kitchen_accent_2
|
||||
- group.master_bathroom_accents
|
||||
- switch.alarm_panel_1_motion_detection
|
||||
- light.ikea_1 #Upstairs Hallyway switchoutlet.
|
||||
- service: script.interior_off
|
||||
- service: number.set_value
|
||||
target:
|
||||
@@ -87,6 +94,7 @@
|
||||
target:
|
||||
entity_id:
|
||||
- switch.kitchen_accent_2
|
||||
- switch.office_accent
|
||||
- light.outdoor_bathroom
|
||||
- group.master_bathroom_accents
|
||||
- group.landscaping
|
||||
|
||||
@@ -1,15 +1,25 @@
|
||||
###################################
|
||||
## Late Night lights Section
|
||||
# @CCOSTAN
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
###################################
|
||||
# -------------------------------------------------------------------
|
||||
# Late Night Helper Outside - brighten exterior and restore after secure
|
||||
# Turns on front scene/outlets after dark when doors open or at sunset.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Debounced garage/front door triggers to avoid noisy state flaps
|
||||
# from repeatedly re-running the outside lighting routine.
|
||||
######################################################################
|
||||
- alias: 'Late Night Helper outside'
|
||||
id: 14115d72-6bea-41c1-8411-1eaf41b4ef2b
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: group.garage_doors
|
||||
to: 'open'
|
||||
for: "00:00:15"
|
||||
- platform: state
|
||||
entity_id: binary_sensor.mcu1_gpio5 #front door
|
||||
to: 'on'
|
||||
for: "00:00:02"
|
||||
- platform: state
|
||||
entity_id: sun.sun
|
||||
to: 'below_horizon'
|
||||
@@ -24,17 +34,6 @@
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.front_full_brightness
|
||||
|
||||
- choose:
|
||||
- conditions: >
|
||||
{{ states.group.entry_points.state == 'on' or
|
||||
states.group.garage_doors.state != 'closed' }}
|
||||
sequence:
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.Red_living_Room
|
||||
default:
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.tv_time
|
||||
|
||||
- service: >
|
||||
{% set hour=states("sensor.time").split(':')[0] | int %}
|
||||
{% if hour >= 5 and hour <= 9 and states.group.bed.state == 'on'%}
|
||||
@@ -50,14 +49,3 @@
|
||||
- wait_template: "{{ is_state('group.entry_points', 'off') }}"
|
||||
- wait_template: "{{ is_state('group.garage_doors', 'closed') }}"
|
||||
- service: script.monthly_color_scene
|
||||
|
||||
- choose:
|
||||
- conditions: >
|
||||
{{ states.group.entry_points.state == 'on' or
|
||||
states.group.garage_doors.state != 'closed' }}
|
||||
sequence:
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.Red_living_Room
|
||||
default:
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.tv_time
|
||||
|
||||
139
config/automation/living_room_color_defaults.yaml
Normal file
139
config/automation/living_room_color_defaults.yaml
Normal file
@@ -0,0 +1,139 @@
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Living Room Color Defaults - cool white by day, amber by evening
|
||||
# Restores after entry/garage secure and when lights are turned on.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Returns to defaults after entry points close; keeps prior off states.
|
||||
######################################################################
|
||||
|
||||
- alias: 'Living Room Defaults on Turn-On'
|
||||
id: living_room_defaults_on_turn_on
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- light.living_room_lights
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: group.entry_points
|
||||
state: 'off'
|
||||
- condition: state
|
||||
entity_id: group.garage_doors
|
||||
state: 'closed'
|
||||
action:
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'above_horizon'
|
||||
sequence:
|
||||
- service: light.turn_on
|
||||
target:
|
||||
entity_id: light.living_room_lights
|
||||
data:
|
||||
color_temp_kelvin: 5500
|
||||
brightness: 255
|
||||
default:
|
||||
- service: light.turn_on
|
||||
target:
|
||||
entity_id: light.living_room_lights
|
||||
data:
|
||||
color_temp_kelvin: 2700
|
||||
brightness: 200
|
||||
|
||||
- alias: 'Restore Living Room After Entry Secured'
|
||||
id: restore_living_room_after_entry_secured
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: group.entry_points
|
||||
to: 'off'
|
||||
- platform: state
|
||||
entity_id: group.garage_doors
|
||||
to: 'closed'
|
||||
for: "00:00:30"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: group.entry_points
|
||||
state: 'off'
|
||||
- condition: state
|
||||
entity_id: group.garage_doors
|
||||
state: 'closed'
|
||||
action:
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'above_horizon'
|
||||
sequence:
|
||||
- service: light.turn_on
|
||||
target:
|
||||
entity_id: light.living_room_lights
|
||||
data:
|
||||
color_temp_kelvin: 5500
|
||||
brightness: 255
|
||||
- service: light.turn_on
|
||||
target:
|
||||
entity_id: light.living_room_accents
|
||||
data:
|
||||
color_temp_kelvin: 5500
|
||||
brightness: 200
|
||||
default:
|
||||
- service: light.turn_on
|
||||
target:
|
||||
entity_id: light.living_room_lights
|
||||
data:
|
||||
color_temp_kelvin: 2700
|
||||
brightness: 200
|
||||
- service: light.turn_on
|
||||
target:
|
||||
entity_id: light.living_room_accents
|
||||
data:
|
||||
color_temp_kelvin: 2700
|
||||
brightness: 170
|
||||
|
||||
- alias: 'Living Room Red on Entry/Garage Open'
|
||||
id: living_room_red_on_entry_open
|
||||
mode: restart
|
||||
variables:
|
||||
was_off: "{{ is_state('light.living_room_lights', 'off') }}"
|
||||
accents_were_off: "{{ is_state('light.living_room_accents', 'off') }}"
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: group.entry_points
|
||||
to: 'on'
|
||||
- platform: state
|
||||
entity_id: group.garage_doors
|
||||
from: 'closed'
|
||||
to: 'open'
|
||||
for: "00:00:15"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
target:
|
||||
entity_id: scene.red_living_room
|
||||
- wait_for_trigger:
|
||||
- platform: state
|
||||
entity_id: group.entry_points
|
||||
to: 'off'
|
||||
- platform: state
|
||||
entity_id: group.garage_doors
|
||||
to: 'closed'
|
||||
for: "00:00:30"
|
||||
timeout: "01:00:00"
|
||||
- choose:
|
||||
- conditions: "{{ was_off }}"
|
||||
sequence:
|
||||
- service: light.turn_off
|
||||
target:
|
||||
entity_id: light.living_room_lights
|
||||
- choose:
|
||||
- conditions: "{{ accents_were_off }}"
|
||||
sequence:
|
||||
- service: light.turn_off
|
||||
target:
|
||||
entity_id: light.living_room_accents
|
||||
@@ -1,26 +1,15 @@
|
||||
######################################################################
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# TV Time at sunset or 8pm. Whichever is later.
|
||||
# config/automation/tv_time_on_and_off.yaml
|
||||
# TV Time: soften house lights when living room media starts after 8pm/sunset.
|
||||
# https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
######################################################################
|
||||
|
||||
- alias: TV Time
|
||||
id: 6e59d312-661f-40da-bb08-416f2e86b566
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.TV_time
|
||||
to: 'on'
|
||||
from: 'off'
|
||||
- platform: state
|
||||
entity_id: sun.sun
|
||||
to: 'below_horizon'
|
||||
from: 'above_horizon'
|
||||
- platform: state
|
||||
entity_id: media_player.living_room_ultra
|
||||
to: 'playing'
|
||||
- platform: time
|
||||
at: '20:00:00'
|
||||
|
||||
condition:
|
||||
condition: and
|
||||
conditions:
|
||||
@@ -40,8 +29,6 @@
|
||||
state: 'playing'
|
||||
|
||||
action:
|
||||
- service: input_boolean.turn_off
|
||||
entity_id: input_boolean.tv_time
|
||||
|
||||
- service: light.turn_off
|
||||
entity_id:
|
||||
|
||||
@@ -3,53 +3,6 @@
|
||||
## Home Assistant runs on my [Raspberry Pi 3](https://amzn.to/2e3DOBY) with [Aeon Labs Z Wave Stick (GEN 5)](https://amzn.to/2eAiAP0).
|
||||
###################################
|
||||
|
||||
##############################################################
|
||||
- alias: Hallway ZWave Enerwave Door Sensors Open
|
||||
id: 1dbd1ba4-6718-4510-b5ab-2a6edd540be4
|
||||
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.hallway_pantry
|
||||
to: 'on'
|
||||
- platform: state
|
||||
entity_id: binary_sensor.hallway_linen
|
||||
to: 'on'
|
||||
|
||||
condition:
|
||||
condition: or
|
||||
conditions:
|
||||
- condition: sun
|
||||
after: sunset
|
||||
after_offset: '-03:00:00'
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.pirateweather_cloud_coverage
|
||||
above: 50
|
||||
|
||||
action:
|
||||
- service: light.turn_on
|
||||
entity_id:
|
||||
- light.kids_hallway
|
||||
- light.k4
|
||||
- delay: 00:20:00
|
||||
- service: light.turn_off
|
||||
entity_id: light.kids_hallway
|
||||
|
||||
##############################################################
|
||||
- alias: ZWave Enerwave Door Sensors Closed
|
||||
id: ceaeca80-e6dc-4b18-9d77-02cc4b09d272
|
||||
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.hallway_pantry
|
||||
to: 'off'
|
||||
- platform: state
|
||||
entity_id: binary_sensor.hallway_linen
|
||||
to: 'off'
|
||||
|
||||
action:
|
||||
service: light.turn_off
|
||||
entity_id: light.kids_hallway
|
||||
|
||||
##############################################################
|
||||
- alias: Shutdown Helper light
|
||||
id: e3f4beff-4fa8-42e3-be5a-32b45106ac8a
|
||||
@@ -59,12 +12,6 @@
|
||||
entity_id: light.k4
|
||||
to: 'on'
|
||||
for: '00:20:00'
|
||||
- platform: state
|
||||
entity_id: binary_sensor.hallway_pantry
|
||||
to: 'off'
|
||||
- platform: state
|
||||
entity_id: binary_sensor.hallway_linen
|
||||
to: 'off'
|
||||
|
||||
condition:
|
||||
condition: state
|
||||
|
||||
@@ -1,49 +0,0 @@
|
||||
blueprint:
|
||||
name: Motion-activated Light
|
||||
domain: automation
|
||||
source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/motion_light.yaml
|
||||
input:
|
||||
motion_entity:
|
||||
name: Motion Sensor
|
||||
selector:
|
||||
entity:
|
||||
domain: binary_sensor
|
||||
device_class: motion
|
||||
light_target:
|
||||
name: Light
|
||||
selector:
|
||||
target:
|
||||
entity:
|
||||
domain: light
|
||||
no_motion_wait:
|
||||
name: Wait time
|
||||
description: Time to wait until the light should be turned off.
|
||||
default: 120
|
||||
selector:
|
||||
number:
|
||||
min: 0
|
||||
max: 3600
|
||||
unit_of_measurement: seconds
|
||||
|
||||
# If motion is detected within the delay,
|
||||
# we restart the script.
|
||||
mode: restart
|
||||
max_exceeded: silent
|
||||
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: !input motion_entity
|
||||
from: "off"
|
||||
to: "on"
|
||||
|
||||
action:
|
||||
- service: light.turn_on
|
||||
target: !input light_target
|
||||
- wait_for_trigger:
|
||||
platform: state
|
||||
entity_id: !input motion_entity
|
||||
from: "on"
|
||||
to: "off"
|
||||
- delay: !input no_motion_wait
|
||||
- service: light.turn_off
|
||||
target: !input light_target
|
||||
@@ -1,41 +0,0 @@
|
||||
blueprint:
|
||||
name: Send notification when a person leaves a zone
|
||||
domain: automation
|
||||
source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/notify_leaving_zone.yaml
|
||||
input:
|
||||
person_entity:
|
||||
name: Person
|
||||
selector:
|
||||
entity:
|
||||
domain: person
|
||||
zone_entity:
|
||||
name: Zone
|
||||
selector:
|
||||
entity:
|
||||
domain: zone
|
||||
notify_device:
|
||||
name: Device to notify
|
||||
description: Device needs to run the official Home Assistant app to receive notifications.
|
||||
selector:
|
||||
device:
|
||||
integration: mobile_app
|
||||
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: !input person_entity
|
||||
|
||||
variables:
|
||||
zone_entity: !input zone_entity
|
||||
zone_state: "{{ states[zone_entity].name }}"
|
||||
person_entity: !input person_entity
|
||||
person_name: "{{ states[person_entity].name }}"
|
||||
|
||||
condition:
|
||||
condition: template
|
||||
value_template: "{{ trigger.from_state.state == zone_state and trigger.to_state.state != zone_state }}"
|
||||
|
||||
action:
|
||||
domain: mobile_app
|
||||
type: notify
|
||||
device_id: !input notify_device
|
||||
message: "{{ person_name }} has left {{ zone_state }}"
|
||||
@@ -1,74 +0,0 @@
|
||||
blueprint:
|
||||
name: Confirmable Notification
|
||||
description: >-
|
||||
A script that sends an actionable notification with a confirmation before
|
||||
running the specified action.
|
||||
domain: script
|
||||
source_url: https://github.com/home-assistant/core/blob/master/homeassistant/components/script/blueprints/confirmable_notification.yaml
|
||||
input:
|
||||
notify_device:
|
||||
name: Device to notify
|
||||
description: Device needs to run the official Home Assistant app to receive notifications.
|
||||
selector:
|
||||
device:
|
||||
integration: mobile_app
|
||||
title:
|
||||
name: "Title"
|
||||
description: "The title of the button shown in the notification."
|
||||
default: ""
|
||||
selector:
|
||||
text:
|
||||
message:
|
||||
name: "Message"
|
||||
description: "The message body"
|
||||
selector:
|
||||
text:
|
||||
confirm_text:
|
||||
name: "Confirmation Text"
|
||||
description: "Text to show on the confirmation button"
|
||||
default: "Confirm"
|
||||
selector:
|
||||
text:
|
||||
confirm_action:
|
||||
name: "Confirmation Action"
|
||||
description: "Action to run when notification is confirmed"
|
||||
default: []
|
||||
selector:
|
||||
action:
|
||||
dismiss_text:
|
||||
name: "Dismiss Text"
|
||||
description: "Text to show on the dismiss button"
|
||||
default: "Dismiss"
|
||||
selector:
|
||||
text:
|
||||
dismiss_action:
|
||||
name: "Dismiss Action"
|
||||
description: "Action to run when notification is dismissed"
|
||||
default: []
|
||||
selector:
|
||||
action:
|
||||
|
||||
mode: restart
|
||||
|
||||
sequence:
|
||||
- alias: "Send notification"
|
||||
domain: mobile_app
|
||||
type: notify
|
||||
device_id: !input notify_device
|
||||
title: !input title
|
||||
message: !input message
|
||||
data:
|
||||
actions:
|
||||
- action: "CONFIRM"
|
||||
title: !input confirm_text
|
||||
- action: "DISMISS"
|
||||
title: !input dismiss_text
|
||||
- alias: "Awaiting response"
|
||||
wait_for_trigger:
|
||||
- platform: event
|
||||
event_type: mobile_app_notification_action
|
||||
- choose:
|
||||
- conditions: "{{ wait.trigger.event.data.action == 'CONFIRM' }}"
|
||||
sequence: !input confirm_action
|
||||
- conditions: "{{ wait.trigger.event.data.action == 'DISMISS' }}"
|
||||
sequence: !input dismiss_action
|
||||
@@ -1,10 +1,12 @@
|
||||
#-------------------------------------------
|
||||
# Home Assistant Configuration
|
||||
# Author: Carlo Costanzo (@CCOSTAN)
|
||||
# GitHub: https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Blog: https://vCloudInfo.com
|
||||
# Description: Main configuration file for Home Assistant setup
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Home Assistant Configuration - Core config
|
||||
# Main configuration file for Home Assistant setup.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
homeassistant:
|
||||
# customize: !include_dir_merge_named customize
|
||||
@@ -47,15 +49,41 @@ cloud:
|
||||
- light.living_room_lights
|
||||
- light.office_lights
|
||||
- light.outdoor_front_lights
|
||||
- light.outdoor_pool_lights
|
||||
- light.upstairs_lights
|
||||
- light.upstairs_lamp
|
||||
- light.sink
|
||||
- camera.frontdoorbell
|
||||
- camera.driveway
|
||||
- camera.garagecam
|
||||
- camera.birdseye
|
||||
- switch.kitchen_accent_1
|
||||
- switch.kitchen_accent_2
|
||||
- switch.front_door_outlet
|
||||
- switch.lr_amp
|
||||
- switch.master_bathroom_accent_1
|
||||
- switch.master_bathroom_accent_2
|
||||
- switch.foyer_outlet
|
||||
- switch.den_outlet
|
||||
- switch.living_room_outlet
|
||||
- switch.living_room_tv_outlet
|
||||
- switch.office_accent
|
||||
- switch.office_lamp_switch
|
||||
- switch.front_office_lamp
|
||||
include_domains:
|
||||
- switch
|
||||
- cover
|
||||
- input_boolean
|
||||
- camera
|
||||
exclude_entities:
|
||||
- light.m1_back_left
|
||||
- light.m1_back_right
|
||||
- light.m1_front_left
|
||||
- light.m1_front_right
|
||||
- light.main_slider
|
||||
- light.living_room
|
||||
entity_config:
|
||||
light.living_room_lights:
|
||||
name: Living Room Color Lights
|
||||
light.main_slider:
|
||||
name: Living Room Slider
|
||||
|
||||
#discovery:
|
||||
# This groups up lights but displays them as light.xxxx
|
||||
@@ -64,40 +92,13 @@ light: !include light_groups.yaml
|
||||
ifttt:
|
||||
key: !secret ifttt_key
|
||||
|
||||
logbook:
|
||||
exclude:
|
||||
entities:
|
||||
- automation.detect_lights_and_adjust_the_brightness_when_turned_on_based_on_time
|
||||
- automation.cuckoo_clock
|
||||
- binary_sensor.office_motion
|
||||
- group.garage_doors
|
||||
- media_player.LivingRoomCC
|
||||
- py.warnings
|
||||
- sensor.small_garage_status
|
||||
- sensor.large_garage_status
|
||||
- sensor.small_garage_time_in_state
|
||||
- sensor.large_garage_time_in_state
|
||||
- sensor.large_garage_wifi_signal_strength
|
||||
- sensor.small_garage_wifi_signal_strength
|
||||
- sensor.small_garage_reflection_rate
|
||||
- sensor.large_garage_reflection_rate
|
||||
- sensor.pi_hole_ads_blocked_today
|
||||
- sensor.pi_hole_ads_percentage_blocked_today
|
||||
- sensor.pi_hole_dns_queries_today
|
||||
- sensor.time
|
||||
- sensor.date
|
||||
- sensor.floorplan_date
|
||||
- sensor.floorplan_time
|
||||
- sensor.ha_uptime
|
||||
- sensor.sleepnumber_carlo_stacey_pressure
|
||||
- sensor.sleepnumber_carlo_carlo_pressure
|
||||
|
||||
logbook: !include logbook.yaml
|
||||
logger: !include logger.yaml
|
||||
recorder: !include recorder.yaml
|
||||
|
||||
tts:
|
||||
|
||||
homekit: !include homekit.yaml
|
||||
# homekit: !include homekit.yaml
|
||||
group: !include_dir_merge_named group
|
||||
# device_tracker: !include_dir_merge_list device_tracker - All trackers have been moved to the UI.
|
||||
sensor: !include_dir_merge_list sensor
|
||||
@@ -106,4 +107,3 @@ scene: !include_dir_merge_list scene
|
||||
# switch: !include_dir_merge_list switch
|
||||
script: !include_dir_merge_named script
|
||||
input_boolean: !include_dir_merge_named input_boolean
|
||||
shell_command: !include_dir_merge_named shell_command
|
||||
|
||||
@@ -4,8 +4,6 @@ Interior_Lights:
|
||||
- group.kitchen_accents
|
||||
- light.bedroom
|
||||
- light.bedroom_lights
|
||||
- light.den_2
|
||||
- light.den1
|
||||
- light.dinette_lights
|
||||
- light.dining_room_lights
|
||||
- light.foyer
|
||||
@@ -19,11 +17,11 @@ Interior_Lights:
|
||||
- light.garage_hallway
|
||||
- light.sink
|
||||
- light.upstairs_lamp
|
||||
- light.ikea_1 #Upstairs Hallyway outlet.
|
||||
|
||||
Exterior_Lights:
|
||||
entities:
|
||||
- light.outdoor_bathroom
|
||||
- light.outdoor_pool_lights
|
||||
- light.outdoor_front_lights
|
||||
- group.landscaping
|
||||
- group.outdoor_seasonal
|
||||
|
||||
@@ -1,64 +1,52 @@
|
||||
|
||||
<h1 align="center">
|
||||
<a name="logo" href="https://www.vCloudInfo.com/tag/iot"><img src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/x_profile.png" alt="Bear Stone Smart Home" width="200"></a>
|
||||
<br>
|
||||
Bear Stone Smart Home Documentation
|
||||
</h1>
|
||||
<h4 align="center">Be sure to :star: my configuration repo so you can keep up to date on any daily progress!</h4>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://x.com/ccostan)
|
||||
[](https://www.youtube.com/vCloudInfo?sub_confirmation=1)
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/.HA_VERSION)
|
||||
<h4>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/last-commit/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/commit-activity/y/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
</h4>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
|
||||
</div>
|
||||
<p align="center"><a align="center" target="_blank" href="https://vcloudinfo.us12.list-manage.com/subscribe?u=45cab4343ffdbeb9667c28a26&id=e01847e94f"><img src="https://feeds.feedburner.com/RecentCommitsToBearStoneHA.1.gif" alt="Recent Commits to Bear Stone Smart Home" style="border:0"></a></p>
|
||||
<div align="center"><a name="menu"></a>
|
||||
<h4>
|
||||
<a href="https://www.vCloudInfo.com/tag/iot">
|
||||
Blog
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#devices">
|
||||
Devices
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc">
|
||||
Todo List
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://x.com/BearStoneHA">
|
||||
Smart Home Stats
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://www.vcloudinfo.com/click-here">
|
||||
Follow Me
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/tree/master/config">
|
||||
Code
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#diagram">
|
||||
Diagram
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://youtube.com/vCloudInfo">
|
||||
Youtube
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://amzn.to/2HXSx2M">
|
||||
Support
|
||||
</a>
|
||||
</h4>
|
||||
|
||||
Logical groupings (doors, locks, media, motion, switches) that make automations and UI cards simpler.
|
||||
|
||||
### Quick navigation
|
||||
- [Repo overview](../../README.md) | [Config index](../README.md) | [Packages](../packages) | [Automations](../automation)
|
||||
|
||||

|
||||
|
||||
### Featured files to browse
|
||||
| File | Why it matters |
|
||||
| --- | --- |
|
||||
| [doors.yaml](doors.yaml) | Track all exterior/interior door sensors together. |
|
||||
| [media_players.yaml](media_players.yaml) | Bundles TVs and speakers for unified control. |
|
||||
| [switches.yaml](switches.yaml) | Convenience groups for bulk on/off automations. |
|
||||
|
||||
### Tips
|
||||
- Use groups in conditions to reduce repetitive entity lists.
|
||||
- Name groups after their purpose (alerts, climate, lights) for clarity.
|
||||
|
||||
|
||||
**All of my configuration files are tested against the most stable version of home-assistant.**
|
||||
|
||||
<a name="bottom" href="https://github.com/CCOSTAN/Home-AssistantConfig#logo"><img align="right" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/up_arrow.png" width="25" ></a>
|
||||
|
||||
**Still have questions on my Config?** <br>
|
||||
**Message me on X :** [](https://www.x.com/ccostan) or [](https://www.x.com/BearStoneHA)
|
||||
<!-- Subscribe Section -->
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a>.
|
||||
<!-- Subscribe Section END-->
|
||||
**Message me on X :** [](https://www.x.com/ccostan)
|
||||
|
||||
<p align="center">
|
||||
<a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"><span style="margin-left:5px">You can buy me a coffee</span></a><a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"></a>
|
||||
<br>
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a><br>
|
||||
<a href="https://www.vCloudInfo.com/p/affiliate-disclosure.html">
|
||||
Affiliate Disclosure
|
||||
</a></p>
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
doors:
|
||||
name: Doors
|
||||
entities:
|
||||
- binary_sensor.hallway_linen
|
||||
- binary_sensor.hallway_pantry
|
||||
- binary_sensor.kitchen_door
|
||||
# - binary_sensor.kitchen_door
|
||||
- binary_sensor.MCU2_GPIO12 # Main Slider
|
||||
- binary_sensor.MCU3_Light # Alarm Door
|
||||
|
||||
@@ -3,7 +3,6 @@ media_players:
|
||||
- media_player.livingroomcc
|
||||
- media_player.living_room_tv
|
||||
- media_player.living_room_ultra
|
||||
- media_player.upstairs_living_room
|
||||
- media_player.bedroom_tablet
|
||||
- media_player.living_room
|
||||
- media_player.front_room_flex
|
||||
@@ -24,6 +23,5 @@ tvs:
|
||||
- media_player.roku_3810x_923c
|
||||
- media_player.roku_living_room
|
||||
- media_player.tv_samsung_q70_series_65
|
||||
- media_player.upstairs_living_room
|
||||
|
||||
|
||||
|
||||
@@ -2,6 +2,5 @@ motion:
|
||||
name: Motion Detectors
|
||||
entities:
|
||||
- binary_sensor.office_motion
|
||||
- binary_sensor.frontdoorbell_all_occupancy
|
||||
|
||||
|
||||
|
||||
@@ -14,11 +14,12 @@ Interior Switches:
|
||||
- switch.lr_amp
|
||||
- switch.master_bathroom_accent_1
|
||||
- switch.master_bathroom_accent_2
|
||||
- switch.pool_deck
|
||||
#- switch.pool_deck - Not being used right now
|
||||
- switch.foyer_outlet
|
||||
- switch.den_outlet
|
||||
- switch.living_room_outlet
|
||||
- switch.living_room_tv_outlet
|
||||
- switch.office_accent
|
||||
- switch.office_lamp_switch
|
||||
- switch.front_office_lamp
|
||||
|
||||
|
||||
@@ -1,86 +1,47 @@
|
||||
#-------------------------------------------
|
||||
# HomeKit Configuration for Home Assistant
|
||||
#
|
||||
# Description: This file controls the HomeKit integration settings,
|
||||
# defining which entities are exposed to Apple HomeKit.
|
||||
#
|
||||
# Follow me on https://www.vcloudinfo.com/click-here
|
||||
# Original Repository: https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
##-------------------------------------------
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# HomeKit Configuration - Multi-bridge (currently disabled)
|
||||
# Kept for reference; `homekit: !include homekit.yaml` is commented out in `configuration.yaml`.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
filter:
|
||||
include_domains:
|
||||
- climate
|
||||
- cover
|
||||
- lock
|
||||
exclude_domains:
|
||||
- camera
|
||||
- media_player
|
||||
- sensor
|
||||
- script
|
||||
- sensor
|
||||
- switch
|
||||
- scene
|
||||
- light
|
||||
include_entities:
|
||||
- camera.bedroomgate
|
||||
- camera.driveway
|
||||
- camera.filtergate
|
||||
- camera.frontdoorbell
|
||||
- camera.poolcam
|
||||
- camera.frontlawn
|
||||
- camera.garagecam
|
||||
- light.bedroom
|
||||
- light.bedroom_lights
|
||||
- light.den_lights
|
||||
- light.dinette_lights
|
||||
- light.dining_room_lights
|
||||
- light.foyer
|
||||
- light.garage_lights
|
||||
- light.hallway_lights
|
||||
- light.kitchen_lights
|
||||
- light.living_room_accents
|
||||
- light.living_room_lights
|
||||
- light.office_lights
|
||||
- light.outdoor_front_lights
|
||||
- light.outdoor_pool_lights
|
||||
- light.upstairs_lights
|
||||
- light.upstairs_lamp
|
||||
- light.sink
|
||||
- switch.lr_amp
|
||||
exclude_entities:
|
||||
- lock.spaceship_door_lock
|
||||
- lock.spaceship_charger_door_lock
|
||||
- lock.spaceship_trunk_lock
|
||||
- lock.spaceship_frunk_lock
|
||||
- climate.spaceship_hvac_climate_system
|
||||
|
||||
entity_config:
|
||||
camera.frontdoorbell:
|
||||
linked_motion_sensor: binary_sensor.frontdoorbell_all_occupancy
|
||||
video_codec: copy
|
||||
stream_source: rtsp://192.168.10.14:8554/frontdoorbell?mp4
|
||||
camera.poolcam:
|
||||
linked_motion_sensor: binary_sensor.poolcam_motion_sensor
|
||||
video_codec: copy
|
||||
stream_source: rtsp://192.168.10.14:8554/poolcam?mp4
|
||||
camera.frontlawn:
|
||||
linked_motion_sensor: binary_sensor.frontlawn_motion_sensor
|
||||
video_codec: copy
|
||||
stream_source: rtsp://192.168.10.14:8554/frontlawn?mp4
|
||||
camera.garagecam:
|
||||
linked_motion_sensor: binary_sensor.garagecam_motion_sensor
|
||||
video_codec: copy
|
||||
stream_source: rtsp://192.168.10.14:8554/garagecam?mp4
|
||||
camera.bedroomgate:
|
||||
linked_motion_sensor: binary_sensor.bedroomgate_motion_sensor
|
||||
video_codec: copy
|
||||
stream_source: rtsp://192.168.10.14:8554/bedroomgate?mp4
|
||||
camera.driveway:
|
||||
linked_motion_sensor: binary_sensor.driveway_motion_sensor
|
||||
video_codec: copy
|
||||
stream_source: rtsp://192.168.10.14:8554/driveway?mp4
|
||||
camera.filtergate:
|
||||
linked_motion_sensor: binary_sensor.filtergate_motion_sensor
|
||||
video_codec: copy
|
||||
stream_source: rtsp://192.168.10.14:8554/filtergate?mp4
|
||||
# Main bridge (everything except cameras + front door lock)
|
||||
- name: Home Assistant Bridge
|
||||
mode: bridge
|
||||
port: 21063
|
||||
filter:
|
||||
include_domains:
|
||||
- climate
|
||||
- cover
|
||||
- lock
|
||||
exclude_domains:
|
||||
- camera
|
||||
- media_player
|
||||
- sensor
|
||||
- script
|
||||
- switch
|
||||
- scene
|
||||
- light
|
||||
include_entities:
|
||||
- light.bedroom
|
||||
- light.bedroom_lights
|
||||
- light.den_lights
|
||||
- light.dinette_lights
|
||||
- light.dining_room_lights
|
||||
- light.foyer
|
||||
- light.garage_lights
|
||||
- light.hallway_lights
|
||||
- light.kitchen_lights
|
||||
- light.living_room_accents
|
||||
- light.living_room_lights
|
||||
- light.office_lights
|
||||
- light.outdoor_front_lights
|
||||
- light.upstairs_lights
|
||||
- light.upstairs_lamp
|
||||
- light.sink
|
||||
- switch.lr_amp
|
||||
exclude_entities:
|
||||
- lock.front_door
|
||||
|
||||
@@ -1,64 +1,52 @@
|
||||
|
||||
<h1 align="center">
|
||||
<a name="logo" href="https://www.vCloudInfo.com/tag/iot"><img src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/x_profile.png" alt="Bear Stone Smart Home" width="200"></a>
|
||||
<br>
|
||||
Bear Stone Smart Home Documentation
|
||||
</h1>
|
||||
<h4 align="center">Be sure to :star: my configuration repo so you can keep up to date on any daily progress!</h4>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://x.com/ccostan)
|
||||
[](https://www.youtube.com/vCloudInfo?sub_confirmation=1)
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/.HA_VERSION)
|
||||
<h4>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/last-commit/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/commit-activity/y/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
</h4>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
|
||||
</div>
|
||||
<p align="center"><a align="center" target="_blank" href="https://vcloudinfo.us12.list-manage.com/subscribe?u=45cab4343ffdbeb9667c28a26&id=e01847e94f"><img src="https://feeds.feedburner.com/RecentCommitsToBearStoneHA.1.gif" alt="Recent Commits to Bear Stone Smart Home" style="border:0"></a></p>
|
||||
<div align="center"><a name="menu"></a>
|
||||
<h4>
|
||||
<a href="https://www.vCloudInfo.com/tag/iot">
|
||||
Blog
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#devices">
|
||||
Devices
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc">
|
||||
Todo List
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://x.com/BearStoneHA">
|
||||
Smart Home Stats
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://www.vcloudinfo.com/click-here">
|
||||
Follow Me
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/tree/master/config">
|
||||
Code
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#diagram">
|
||||
Diagram
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://youtube.com/vCloudInfo">
|
||||
Youtube
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://amzn.to/2HXSx2M">
|
||||
Support
|
||||
</a>
|
||||
</h4>
|
||||
|
||||
Mode and trigger toggles that drive automations (guest mode, parties, presence overrides, one-shot triggers).
|
||||
|
||||
### Quick navigation
|
||||
- [Repo overview](../../README.md) | [Config index](../README.md) | [Automations](../automation)
|
||||
|
||||

|
||||
|
||||
### Featured files to browse
|
||||
| File | Why it matters |
|
||||
| --- | --- |
|
||||
| [home_modes.yaml](home_modes.yaml) | Guest, vacation, and quiet-mode toggles. |
|
||||
| [trigger_booleans.yaml](trigger_booleans.yaml) | One-off toggles used as automation guards. |
|
||||
| [hidden_booleans.yaml](hidden_booleans.yaml) | Back-end toggles tucked away from the UI. |
|
||||
|
||||
### Tips
|
||||
- Flip booleans in the UI or via scripts to steer automations without edits.
|
||||
- Prefix experimental toggles with the feature name to keep them organized.
|
||||
|
||||
|
||||
**All of my configuration files are tested against the most stable version of home-assistant.**
|
||||
|
||||
<a name="bottom" href="https://github.com/CCOSTAN/Home-AssistantConfig#logo"><img align="right" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/up_arrow.png" width="25" ></a>
|
||||
|
||||
**Still have questions on my Config?** <br>
|
||||
**Message me on X :** [](https://www.x.com/ccostan) or [](https://www.x.com/BearStoneHA)
|
||||
<!-- Subscribe Section -->
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a>.
|
||||
<!-- Subscribe Section END-->
|
||||
**Message me on X :** [](https://www.x.com/ccostan)
|
||||
|
||||
<p align="center">
|
||||
<a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"><span style="margin-left:5px">You can buy me a coffee</span></a><a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"></a>
|
||||
<br>
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a><br>
|
||||
<a href="https://www.vCloudInfo.com/p/affiliate-disclosure.html">
|
||||
Affiliate Disclosure
|
||||
</a></p>
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
home_stats:
|
||||
name: Home Stats
|
||||
initial: off
|
||||
|
||||
responsibilities:
|
||||
name: responsibilities
|
||||
initial: off
|
||||
|
||||
@@ -3,11 +3,6 @@ guest_mode:
|
||||
icon: mdi:account-alert
|
||||
initial: off
|
||||
|
||||
school_mode:
|
||||
name: School Mode
|
||||
icon: mdi:school
|
||||
initial: on
|
||||
|
||||
alert_mode:
|
||||
name: Alert Mode
|
||||
icon: mdi:alert-octagram
|
||||
|
||||
@@ -2,19 +2,10 @@
|
||||
good_night:
|
||||
name: Good Night
|
||||
initial: off
|
||||
|
||||
good_morning:
|
||||
name: Good Morning
|
||||
initial: off
|
||||
|
||||
meal_time:
|
||||
name: Meal Time
|
||||
initial: off
|
||||
|
||||
tv_time:
|
||||
name: TV Time
|
||||
initial: off
|
||||
|
||||
work:
|
||||
name: Work
|
||||
initial: off
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
- light.m1_back_right
|
||||
- light.m1_front_left
|
||||
- light.m1_front_right
|
||||
- light.main_slider
|
||||
|
||||
- platform: group
|
||||
name: Living Room Accents
|
||||
@@ -83,14 +82,6 @@
|
||||
- light.s3
|
||||
- light.s4
|
||||
|
||||
- platform: group
|
||||
name: Outdoor Pool Lights
|
||||
entities:
|
||||
- light.p1_front_left
|
||||
- light.p1_front_right
|
||||
- light.p1_back_left
|
||||
- light.p1_back_right
|
||||
|
||||
- platform: group
|
||||
name: Outdoor Front Lights
|
||||
entities:
|
||||
|
||||
67
config/logbook.yaml
Normal file
67
config/logbook.yaml
Normal file
@@ -0,0 +1,67 @@
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Logbook Configuration - Activity/Logbook display controls
|
||||
# Defines what is hidden from the Activity/logbook view to keep noise down.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Filters vcloudinfo availability chatter plus location/weather noise.
|
||||
######################################################################
|
||||
|
||||
exclude:
|
||||
domains:
|
||||
- persistent_notification
|
||||
- update
|
||||
entity_globs:
|
||||
- sensor.*_location
|
||||
- sensor.*_place
|
||||
- sensor.*_geocoded_location
|
||||
- sensor.pirateweather_*
|
||||
- weather.*
|
||||
- input_text.l10s_vacuum_*
|
||||
- input_datetime.l10s_vacuum_*
|
||||
- input_boolean.l10s_vacuum_*
|
||||
- sensor.*_battery
|
||||
- sensor.*_battery_state
|
||||
- sensor.*_uptime*
|
||||
- sensor.*_last_update*
|
||||
- sensor.*_since
|
||||
- sensor.*_last_boot
|
||||
- sensor.sun_next_*
|
||||
- sensor.*_activity
|
||||
- sensor.*_bssid
|
||||
- sensor.*_wifi_signal_strength
|
||||
- "*alarm_panel_1*"
|
||||
- "*alarm_panel_2*"
|
||||
entities:
|
||||
- automation.cuckoo_clock
|
||||
- automation.detect_lights_and_adjust_the_brightness_when_turned_on_based_on_time
|
||||
- binary_sensor.office_motion
|
||||
- binary_sensor.vcloudinfo_com
|
||||
- binary_sensor.refrigerator_door_open
|
||||
- binary_sensor.rheem_wh_running
|
||||
- sensor.vcloudinfo_com
|
||||
- group.garage_doors
|
||||
- media_player.LivingRoomCC
|
||||
- sensor.date
|
||||
- sensor.downstairs_ac_cooling_numeric
|
||||
- sensor.ha_uptime
|
||||
- sensor.large_garage_reflection_rate
|
||||
- sensor.large_garage_status
|
||||
- sensor.large_garage_time_in_state
|
||||
- sensor.large_garage_wifi_signal_strength
|
||||
- sensor.pi_hole_ads_blocked_today
|
||||
- sensor.pi_hole_ads_percentage_blocked_today
|
||||
- sensor.pi_hole_dns_queries_today
|
||||
- sensor.rheem_wh_running_state
|
||||
- sensor.phyn_water_flowing
|
||||
- sensor.sleepnumber_carlo_carlo_pressure
|
||||
- sensor.sleepnumber_carlo_stacey_pressure
|
||||
- sensor.small_garage_reflection_rate
|
||||
- sensor.small_garage_status
|
||||
- sensor.small_garage_time_in_state
|
||||
- sensor.small_garage_wifi_signal_strength
|
||||
- sensor.time
|
||||
- sensor.upstairs_ac_cooling_numeric
|
||||
- sensor.vcloudinfo_com
|
||||
@@ -14,13 +14,12 @@
|
||||
|
||||
default: info
|
||||
logs:
|
||||
AIOGitHubAPI: error
|
||||
aiohttp.access: critical
|
||||
aiohttp.server: critical
|
||||
aiounifi: error
|
||||
custom_components.hacs: error
|
||||
hacs: error
|
||||
queueman: error
|
||||
AIOGitHubAPI: error
|
||||
homeassistant.core: error
|
||||
homeassistant.config_entries: error
|
||||
homeassistant.components.automation: warn
|
||||
@@ -29,28 +28,35 @@ logs:
|
||||
homeassistant.components.device_tracker: error
|
||||
homeassistant.components.discovery: warn
|
||||
homeassistant.components.feedreader: error
|
||||
homeassistant.components.history: error
|
||||
homeassistant.components.http: warn
|
||||
homeassistant.components.ipp: critical
|
||||
homeassistant.components.logbook: error
|
||||
homeassistant.components.media_player: info
|
||||
homeassistant.components.mqtt: error
|
||||
homeassistant.components.mqtt.discovery: critical
|
||||
homeassistant.components.persistent_notification: critical
|
||||
homeassistant.components.template: warn
|
||||
homeassistant.components.rest.sensor: critical
|
||||
homeassistant.components.recorder: error
|
||||
homeassistant.components.sensor.pi_hole: critical
|
||||
homeassistant.components.sensor.rest: info
|
||||
homeassistant.components.sensor.darksky: warn
|
||||
homeassistant.components.tplink.switch: error
|
||||
homeassistant.components.tplink.button: error
|
||||
homeassistant.components.unifi: error
|
||||
homeassistant.components.device_tracker.unifi: error
|
||||
homeassistant.components.switch.unifi: error
|
||||
homeassistant.components.zwave: warn
|
||||
homeassistant.exceptions: info
|
||||
homeassistant.helpers.script: info
|
||||
homeassistant.helpers.script: warn
|
||||
homeassistant.helpers.entity: critical
|
||||
homeassistant.loader: warn
|
||||
homeassistant.components.websocket_api: error
|
||||
pubnub: critical
|
||||
py.warnings: error
|
||||
pyhap.hap_server: warn
|
||||
queueman: error
|
||||
urllib3.connectionpool: error
|
||||
requests.packages.urllib3.connectionpool: critical
|
||||
root: warn
|
||||
|
||||
|
||||
|
||||
35
config/lovelace/infrastructure_apt_updates_card.yaml
Normal file
35
config/lovelace/infrastructure_apt_updates_card.yaml
Normal file
@@ -0,0 +1,35 @@
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Infrastructure Card - APT update status for Docker hosts
|
||||
# Paste this card into the existing Infrastructure dashboard (storage mode).
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Depends on `config/packages/apt_updates.yaml`.
|
||||
######################################################################
|
||||
|
||||
type: entities
|
||||
title: "APT Updates (Docker Hosts)"
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- type: section
|
||||
label: docker_10
|
||||
- entity: sensor.docker_10_apt_status
|
||||
- entity: sensor.docker_10_apt_last_check
|
||||
- entity: sensor.docker_10_apt_last_update
|
||||
- entity: sensor.docker_10_apt_reboot_status
|
||||
|
||||
- type: section
|
||||
label: docker_14
|
||||
- entity: sensor.docker_14_apt_status
|
||||
- entity: sensor.docker_14_apt_last_check
|
||||
- entity: sensor.docker_14_apt_last_update
|
||||
- entity: sensor.docker_14_apt_reboot_status
|
||||
|
||||
- type: section
|
||||
label: docker_69
|
||||
- entity: sensor.docker_69_apt_status
|
||||
- entity: sensor.docker_69_apt_last_check
|
||||
- entity: sensor.docker_69_apt_last_update
|
||||
- entity: sensor.docker_69_apt_reboot_status
|
||||
46
config/lovelace/infrastructure_apt_updates_view.yaml
Normal file
46
config/lovelace/infrastructure_apt_updates_view.yaml
Normal file
@@ -0,0 +1,46 @@
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Infrastructure View - APT updates (3-column layout)
|
||||
# Paste this view into the Infrastructure dashboard (storage mode).
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Uses `sensor.docker_*` entities from `config/packages/apt_updates.yaml`.
|
||||
######################################################################
|
||||
|
||||
title: "Infrastructure - APT Updates"
|
||||
path: infrastructure-apt-updates
|
||||
icon: mdi:package-up
|
||||
type: sections
|
||||
max_columns: 3
|
||||
sections:
|
||||
- type: grid
|
||||
columns: 3
|
||||
cards:
|
||||
- type: entities
|
||||
title: docker_10
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- entity: sensor.docker_10_apt_status
|
||||
- entity: sensor.docker_10_apt_last_check
|
||||
- entity: sensor.docker_10_apt_last_update
|
||||
- entity: sensor.docker_10_apt_reboot_status
|
||||
|
||||
- type: entities
|
||||
title: docker_14
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- entity: sensor.docker_14_apt_status
|
||||
- entity: sensor.docker_14_apt_last_check
|
||||
- entity: sensor.docker_14_apt_last_update
|
||||
- entity: sensor.docker_14_apt_reboot_status
|
||||
|
||||
- type: entities
|
||||
title: docker_69
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- entity: sensor.docker_69_apt_status
|
||||
- entity: sensor.docker_69_apt_last_check
|
||||
- entity: sensor.docker_69_apt_last_update
|
||||
- entity: sensor.docker_69_apt_reboot_status
|
||||
@@ -4,62 +4,118 @@
|
||||
Bear Stone Smart Home Documentation
|
||||
</h1>
|
||||
<h4 align="center">Be sure to :star: my configuration repo so you can keep up to date on any daily progress!</h4>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://x.com/ccostan)
|
||||
[](https://www.youtube.com/vCloudInfo?sub_confirmation=1)
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN) <br>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/.HA_VERSION)
|
||||
<h4>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/last-commit/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/commits/master"><img src="https://img.shields.io/github/commit-activity/y/CCOSTAN/Home-AssistantConfig.svg?style=plasticr"/></a>
|
||||
</h4>
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
[](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
|
||||
|
||||
</div>
|
||||
<p><font size="3">
|
||||
I love packages. This will probably become the most used directory in my repo. I love the ability to just drop in a package or disable it just as easily. In fact, there are a few disabled ones right now ready to go when issues are straightened out. All in one place, packages make defining devices, booleans, automations and customizations a snap.</p>
|
||||
<div align="center"><a name="menu"></a>
|
||||
<h4>
|
||||
<a href="https://www.vCloudInfo.com/tag/iot">
|
||||
Blog
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#devices">
|
||||
Devices
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc">
|
||||
Todo List
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://x.com/BearStoneHA">
|
||||
Smart Home Stats
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://www.vcloudinfo.com/click-here">
|
||||
Follow Me
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig/tree/master/config">
|
||||
Code
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://github.com/CCOSTAN/Home-AssistantConfig#diagram">
|
||||
Diagram
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://youtube.com/vCloudInfo">
|
||||
Youtube
|
||||
</a>
|
||||
<span> | </span>
|
||||
<a href="https://amzn.to/2HXSx2M">
|
||||
Support
|
||||
</a>
|
||||
</h4>
|
||||
|
||||
Live collection of plug-and-play Home Assistant packages. Each YAML file in this folder bundles sensors, helpers, automations, scripts, and Lovelace assets needed for a specific subsystem so you can drop it into `configuration.yaml` with a single `packages:` include.
|
||||
|
||||
### Quick navigation
|
||||
- You are here: `config/packages/` (self-contained packages)
|
||||
- [Repo overview](../../README.md) | [Config index](../README.md) | [Automations](../automation) | [Scripts](../script) | [Scenes](../scene) | [Templates](../templates) | [Package triggers](triggers) | [YouTube](https://youtube.com/vCloudInfo) | [Blog](https://www.vcloudinfo.com)
|
||||
- Disabled/staging packages follow the `.disabled` or `.NOTWORKING` suffix; remove it after you update credentials or hardware.
|
||||
|
||||

|
||||
|
||||
### Why packages exist
|
||||
- Keep everything for a subsystem (alarm, garage, water shutoff, etc.) in one file, which makes versioning, troubleshooting, and sharing dramatically easier.
|
||||
- Encapsulate helpers (input_booleans, sensors, scripts) so enabling/disabling a capability is as simple as moving one file in or out of the `packages/` include.
|
||||
- Document hardware dependencies right next to the logic so you remember which gear keeps each automation alive.
|
||||
|
||||
### How to adapt a package quickly
|
||||
- Enable `packages:` under `homeassistant:` in your `configuration.yaml`, then drop any of these YAML files into the folder with your own entity IDs/secrets.
|
||||
- Scan the comments at the top of each package for credential requirements, MQTT topics, or REST endpoints that need to be swapped.
|
||||
- Need reusable triggers or button automations? Check the companion [triggers](triggers) subfolder for examples before rolling your own.
|
||||
|
||||
### Featured packages (live today)
|
||||
| Package | What it unlocks | Notable entities / services |
|
||||
| --- | --- | --- |
|
||||
| [alarm.yaml](alarm.yaml) | NodeMCU-powered perimeter monitoring with arm/disarm helpers and rich notifications. | `binary_sensor.mcu*_gpio*`, `group.family`, notify + siren scripts |
|
||||
| [garadget.yaml](garadget.yaml) | MQTT-based control + status for both garage doors, feeding entry/exit lighting routines. | `cover.large_garage_door`, `cover.small_garage_door`, `sensor.garadget_reflection` |
|
||||
| [august.yaml](august.yaml) | Front-door August smart lock with Alexa Show camera pop-up when unlocked. | `lock.front_door`, media_player actions for front doorbell camera |
|
||||
| [holiday.yaml](holiday.yaml) | REST-driven US holiday + flag sensors that color scenes and exterior lighting. | `sensor.holiday`, `sensor.flag`, JSON feed at `config/json_data/holidays.json` |
|
||||
| [lightning.yaml](lightning.yaml) | Blitzortung lightning counter monitoring with snoozeable push actions. | `sensor.blitzortung_lightning_counter`, `input_boolean.snooze_lightning`, notify engine actions |
|
||||
| [logbook_activity_feed.yaml](logbook_activity_feed.yaml) | Dummy `sensor.activity_feed` + helper to write clean Activity entries (Issue #1550). | `sensor.activity_feed`, `script.send_to_logbook` |
|
||||
| [mariadb_monitoring.yaml](mariadb_monitoring.yaml) | MariaDB health sensors and Lovelace dashboard snippet for recorder stats. | `sensor.mariadb_status`, `sensor.database_size` |
|
||||
| [apt_updates.yaml](apt_updates.yaml) | Weekly APT patch reporting for Docker hosts + Repairs reboot alerts. | `sensor.docker_*_apt_status`, `repairs.create`, `script.send_to_logbook` |
|
||||
| [phynplus.yaml](phynplus.yaml) | Phyn shutoff automations with push + Activity feed + Repairs issues for leak events. | `valve.phyn_shutoff_valve`, `binary_sensor.phyn_leak_test_running`, `repairs.create` |
|
||||
| [powerwall.yaml](powerwall.yaml) | Track Tesla Powerwall grid status and shed loads automatically when off-grid (alerts include Activity feed + Repairs). | `binary_sensor.powerwall_grid_status`, `sensor.powerwall_*`, `repairs.create` |
|
||||
| [vacuum.yaml](vacuum.yaml) | Dreame vacuum orchestration with room tracking, push alerts, Activity feed, Repairs issues on errors, and Alexa one-off room-clean switches. | `input_select.l10s_vacuum_phase`, `sensor.l10s_vacuum_error`, `repairs.create` |
|
||||
| [hass_agent_homepc.yaml](hass_agent_homepc.yaml) | Mirrors PC lock/unlock state from HASS.Agent to the office lamp for instant desk presence cues. | `sensor.carlo_homepc_carlo_homepc_sessionstate`, `switch.office_lamp_switch` |
|
||||
| [finance.yaml](finance.yaml) | Yahoo Finance sensor bundle for portfolio glances and Lovelace cards. | `sensor.tsla`, `sensor.aapl`, `sensor.amzn`, `sensor.msft` |
|
||||
|
||||
### Garadget automations
|
||||
- Logic lives in [garadget.yaml](garadget.yaml): auto-open on arrival, entry helper prompt (unlock front door or open garage), auto-unlock for Paige/Justin, wind checks, nightly open-door reminders, and camera pop-ups.
|
||||
- MQTT-based covers for large/small doors; notifications and speech wired to the house notify/speech engines.
|
||||

|
||||
|
||||
### Nest climate control
|
||||
- Logic lives in [climate.yaml](climate.yaml) and centralizes downstairs/upstairs Nest schedules, grid-aware guardrails, humidity pulses, and presence/weather-based targets.
|
||||
- Shared script keeps targets consistent: away → eco, home + >92°F → 78°F, home default → 80°F. Grid-down conditions pause non-essential cool-downs.
|
||||

|
||||
|
||||
### Dreame vacuum automations
|
||||
- Logic lives in [vacuum.yaml](vacuum.yaml): continuous four-phase loop (sweep main, sweep baths, mop main, mop baths) driven by `input_select.l10s_vacuum_phase` and `input_text.l10s_vacuum_room_queue`, with per-room notifications and automatic reseeding between phases.
|
||||
- Uses the Dreame HACS integration with segment IDs to enforce bathrooms last in each sweep/mop pass, dock on arrival, and auto-run if idle for 3+ days.
|
||||
- Room queue advances on a 2-minute dwell in `sensor.l10s_vacuum_current_room` (queue = remaining rooms); phase changes happen on `sensor.l10s_vacuum_task_status: completed` and an empty queue.
|
||||
- One-off room cleaning for Alexa uses `input_boolean.l10s_vacuum_clean_*` (example: "Kitchen Clean") and runs a segment job without touching or checking the phased queue.
|
||||

|
||||
|
||||
### Blog & video deep dives
|
||||
When a package has a dedicated blog post or video, I link it right inside the YAML comments. Here are the same references for quick browsing:
|
||||
|
||||
| Package | Why read/watch | Deep dive links |
|
||||
| --- | --- | --- |
|
||||
| [finance.yaml](finance.yaml) | Custom Yahoo Finance integration overview and setup notes. | [Blog](https://www.vcloudinfo.com/2020/10/how-to-track-stocks-in-home-assistant-using-a-custom-component.html) |
|
||||
| [garadget.yaml](garadget.yaml) | MQTT garage door setup plus the follow-up on the access token change. | [Blog: Integration guide](https://www.vcloudinfo.com/2019/03/how-to-add-garadget-to-home-assistant.html) · [Blog: Token fix](https://www.vcloudinfo.com/2020/05/fixing-garadget-in-home-assistant.html) |
|
||||
| [holiday.yaml](holiday.yaml) | How the holiday/flag sensor works and drives lighting playlists. | [Blog + video breakdown](https://www.vcloudinfo.com/2019/02/breaking-down-the-flag-sensor-in-home-assistant.html) |
|
||||
| [lightning.yaml](lightning.yaml) | Blitzortung detector wiring, strike alerts, and snooze workflow. | [Blog](https://www.vcloudinfo.com/2020/08/adding-a-lightning-sensor-to-home-assistant.html) |
|
||||
| [phynplus.yaml](phynplus.yaml) | Installing Phyn Plus and wiring its leak events into HA automations. | [Blog](https://www.vcloudinfo.com/2020/05/phyn-plus-smart-water-shutoff-device.html) |
|
||||
| [powerwall.yaml](powerwall.yaml) | Monitoring Tesla Powerwall health + what to automate when the grid drops. | [Blog](https://www.vcloudinfo.com/2018/01/going-green-to-save-some-green-in-2018.html) |
|
||||
| [vacuum.yaml](vacuum.yaml) | Keeping Neato/Dreame bots smart with HA scenes and maintenance timers. | [Blog](https://www.vcloudinfo.com/2020/05/home-assistant-neato-vacuum-automation.html) |
|
||||
| [grafana.yaml.disabled](grafana.yaml.disabled) | Rendering Grafana dashboards to images for Lovelace and social posts. | [Blog](https://www.vcloudinfo.com/2018/01/going-green-to-save-some-green-in-2018.html) · [Blog](https://www.vcloudinfo.com/2018/09/re-installing-tesla-solar-panels-again.html) · [Video](https://youtu.be/BartadUzGOA) |
|
||||
| [august.yaml](august.yaml) | Smart lock control and status from HA. | [YouTube short](https://youtu.be/UdcCeAyo9Ak?si=O-f607NHbRLKZxao) |
|
||||
|
||||
### Hardware referenced in packages (affiliate links)
|
||||
These are the devices that power the packages above. Affiliate links never change the price but they do help fund more tinkering—thanks!
|
||||
|
||||
| Device | Package(s) | Automation tie-in | Buy |
|
||||
| --- | --- | --- | --- |
|
||||
| Garadget garage door controller | [garadget.yaml](garadget.yaml) | MQTT covers feed entry lighting, notifications, and security checks. | [](https://amzn.to/2jQLpVQ) |
|
||||
| August smart lock | [august.yaml](august.yaml) | Front-door lock/unlock + status for routines and alerts. | [](https://amzn.to/48jVzZ3) |
|
||||
| Amazon Echo Show | Pops up the front doorbell camera when the August lock unlocks. | [august.yaml](august.yaml) | [](https://amzn.to/4ptA3YO) |
|
||||
| Phyn Plus water shutoff | [phynplus.yaml](phynplus.yaml) | Leak events trigger valve closes + critical push notifications. | [](https://amzn.to/2Zy3sbJ) |
|
||||
| Rachio sprinkler controller | [rachio.yaml](rachio.yaml) | Rain skips and seasonal watering adjustments happen automatically. | [](https://amzn.to/2eoPKBW) |
|
||||
| Tesla Powerwall 2 | [powerwall.yaml](powerwall.yaml) | Grid outages kick off load-shed scripts and status pings. | [](https://amzn.to/3UM4BZ5) |
|
||||
| Google Nest thermostat | [climate.yaml](climate.yaml) | Presence/weather/grid-aware cooling targets, humidity pulses, and eco recovery. | [](https://amzn.to/4olpINw) |
|
||||
| Dreame/Neato vacuum | [vacuum.yaml](vacuum.yaml) | Scheduled cleaning, maintenance reminders, and voice callouts. | [](https://amzn.to/4f7NpFP) |
|
||||
| NodeMCU motion/contact sensor | [alarm.yaml](alarm.yaml), [office_motion.yaml](office_motion.yaml) | ESP8266 nodes feed the alarm matrix and room-aware lighting. | [](https://amzn.to/2oUgj5i) |
|
||||
| Roku streaming device | [roku.yaml](roku.yaml) | Media presence drives lighting, announcements, and scenes. | [](https://amzn.to/2Ctp8cr) |
|
||||
|
||||
### Tips for extending these packages
|
||||
- Most packages expose booleans or helpers that you can hook into with your own automations; keep using those entities instead of editing the package so upgrades stay clean.
|
||||
- If you clone a package, rename the `id:` fields inside the automations to avoid duplicate UUIDs.
|
||||
- Document your own blog or video resources at the top of each file—the README table above will make it easy to find them later.
|
||||
|
||||
**All of my configuration files are tested against the most stable version of home-assistant.**
|
||||
|
||||
<a name="bottom" href="https://github.com/CCOSTAN/Home-AssistantConfig#logo"><img align="right" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/up_arrow.png" width="25" ></a>
|
||||
|
||||
**Still have questions on my Config?** <br>
|
||||
**Message me on X :** [](https://www.x.com/ccostan) or [](https://www.x.com/BearStoneHA)
|
||||
<!-- Subscribe Section -->
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a>.
|
||||
<!-- Subscribe Section END-->
|
||||
**Message me on X :** [](https://www.x.com/ccostan)
|
||||
|
||||
<p align="center">
|
||||
<a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"><span style="margin-left:5px">You can buy me a coffee</span></a><a target="_blank" href="https://www.buymeacoffee.com/vCloudInfo"><img src="https://www.buymeacoffee.com/assets/img/BMC-btn-logo.svg" alt="Buy me a coffee"></a>
|
||||
<br>
|
||||
<a href="https://eepurl.com/dmXFYz"><img align="center" border="0" src="https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/www/custom_ui/floorplan/images/branding/email_link.png" height="50" ></a><br>
|
||||
<a href="https://www.vCloudInfo.com/p/affiliate-disclosure.html">
|
||||
Affiliate Disclosure
|
||||
</a></p>
|
||||
|
||||
@@ -1,8 +1,14 @@
|
||||
#-------------------------------------------
|
||||
# ALarm Related Packages
|
||||
# @CCOSTAN
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
#-------------------------------------------
|
||||
# -------------------------------------------------------------------
|
||||
# Alarm Package - Arming helpers, sensors, and alerting.
|
||||
# Related Issue: 1550
|
||||
# Alarm sensors, customization, and automations for home security.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Turns HVAC off when doors/windows are open and restores cool mode after closure.
|
||||
######################################################################
|
||||
homeassistant:
|
||||
customize_glob:
|
||||
"device_tracker.nodemcu*":
|
||||
@@ -286,6 +292,10 @@ automation:
|
||||
- service: climate.turn_on
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
hvac_mode: cool
|
||||
|
||||
#-------------------------------------------#-------------------------------------------
|
||||
- alias: 'Alarm lights in Living room'
|
||||
@@ -307,20 +317,6 @@ automation:
|
||||
entity_id: group.bed
|
||||
state: 'off'
|
||||
|
||||
# action:
|
||||
# - choose:
|
||||
# - conditions:
|
||||
# - condition: state
|
||||
# entity_id: group.entry_points
|
||||
# state: on
|
||||
#
|
||||
# sequence:
|
||||
# - service: script.siren
|
||||
# data:
|
||||
# duration: 60
|
||||
# - service: light.turn_on
|
||||
# entity_id: all
|
||||
|
||||
action:
|
||||
- choose:
|
||||
- conditions: >
|
||||
@@ -333,20 +329,6 @@ automation:
|
||||
- service: scene.turn_on
|
||||
entity_id: scene.tv_time
|
||||
|
||||
# - service: >-
|
||||
# {% if states.group.entry_points.state == 'on' or states.group.garage_doors.state != 'closed' -%}
|
||||
# light.turn_on
|
||||
# entity_id:
|
||||
# - light.living_room_accents
|
||||
# color_name: 'red'
|
||||
# {% else %}
|
||||
# light.turn_on
|
||||
# entity_id:
|
||||
# - light.living_room_accents
|
||||
# color_name: 'gold'
|
||||
# {% endif %}
|
||||
|
||||
|
||||
#-------------------------------------------#---
|
||||
- alias: "Panel Door opened"
|
||||
id: 62d10d70-8092-4daa-9dcb-ed2bec6c6194
|
||||
@@ -359,6 +341,10 @@ automation:
|
||||
from: 'on'
|
||||
|
||||
action:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "SECURITY"
|
||||
message: "Alarm panel door opened."
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
value1: 'Someone has opened up the Alarm Panel Door!'
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Alexa Media Sensor Support - Relies on Custom Component
|
||||
#-------------------------------------------
|
||||
|
||||
sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
last_alexa:
|
||||
value_template: >
|
||||
{{ states.media_player | selectattr('attributes.last_called','eq',True) | map(attribute='entity_id') | first | default('none') }}
|
||||
|
||||
#-------------------------------------------
|
||||
# -------------------------------------------------------------------
|
||||
# Alexa Media Player - Sensors and notifications via Alexa Media integration.
|
||||
# Track Alexa media state and expose routine/command triggers.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
template:
|
||||
- sensor:
|
||||
- name: "Last Alexa"
|
||||
unique_id: last_alexa
|
||||
state: >
|
||||
{{ states.media_player | selectattr('attributes.last_called','eq',True) | map(attribute='entity_id') | first | default('none') }}
|
||||
|
||||
369
config/packages/apt_updates.yaml
Normal file
369
config/packages/apt_updates.yaml
Normal file
@@ -0,0 +1,369 @@
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# APT Updates - Weekly patch reporting for Docker hosts
|
||||
# Receives webhook payloads from docker_10/docker_14/docker_69 after APT runs.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Hosts run a weekly Wednesday 12:00 APT job and POST JSON to these webhooks.
|
||||
# Notes: Logbook entry only when `updated: true`; creates Repairs issue if reboot needed.
|
||||
######################################################################
|
||||
|
||||
input_datetime:
|
||||
apt_docker_10_last_check:
|
||||
name: "docker_10 APT last check"
|
||||
has_date: true
|
||||
has_time: true
|
||||
apt_docker_10_last_update:
|
||||
name: "docker_10 APT last update"
|
||||
has_date: true
|
||||
has_time: true
|
||||
apt_docker_14_last_check:
|
||||
name: "docker_14 APT last check"
|
||||
has_date: true
|
||||
has_time: true
|
||||
apt_docker_14_last_update:
|
||||
name: "docker_14 APT last update"
|
||||
has_date: true
|
||||
has_time: true
|
||||
apt_docker_69_last_check:
|
||||
name: "docker_69 APT last check"
|
||||
has_date: true
|
||||
has_time: true
|
||||
apt_docker_69_last_update:
|
||||
name: "docker_69 APT last update"
|
||||
has_date: true
|
||||
has_time: true
|
||||
|
||||
input_text:
|
||||
apt_docker_10_last_result:
|
||||
name: "docker_10 APT last result"
|
||||
max: 255
|
||||
apt_docker_14_last_result:
|
||||
name: "docker_14 APT last result"
|
||||
max: 255
|
||||
apt_docker_69_last_result:
|
||||
name: "docker_69 APT last result"
|
||||
max: 255
|
||||
|
||||
input_boolean:
|
||||
apt_docker_10_reboot_required:
|
||||
name: "docker_10 reboot required"
|
||||
icon: mdi:restart-alert
|
||||
apt_docker_14_reboot_required:
|
||||
name: "docker_14 reboot required"
|
||||
icon: mdi:restart-alert
|
||||
apt_docker_69_reboot_required:
|
||||
name: "docker_69 reboot required"
|
||||
icon: mdi:restart-alert
|
||||
|
||||
template:
|
||||
- sensor:
|
||||
- name: "docker_10 APT status"
|
||||
unique_id: apt_docker_10_status
|
||||
icon: mdi:package-up
|
||||
state: "{{ states('input_text.apt_docker_10_last_result') }}"
|
||||
- name: "docker_10 APT last check"
|
||||
unique_id: apt_docker_10_last_check
|
||||
device_class: timestamp
|
||||
state: "{{ states('input_datetime.apt_docker_10_last_check') }}"
|
||||
- name: "docker_10 APT last update"
|
||||
unique_id: apt_docker_10_last_update
|
||||
device_class: timestamp
|
||||
state: "{{ states('input_datetime.apt_docker_10_last_update') }}"
|
||||
- name: "docker_10 APT reboot status"
|
||||
unique_id: apt_docker_10_reboot_status
|
||||
icon: >-
|
||||
{{ 'mdi:restart-alert' if is_state('input_boolean.apt_docker_10_reboot_required', 'on')
|
||||
else 'mdi:check-circle' }}
|
||||
state: >-
|
||||
{{ 'REBOOT REQUIRED' if is_state('input_boolean.apt_docker_10_reboot_required', 'on')
|
||||
else 'NO REBOOT NEEDED' }}
|
||||
- name: "docker_14 APT status"
|
||||
unique_id: apt_docker_14_status
|
||||
icon: mdi:package-up
|
||||
state: "{{ states('input_text.apt_docker_14_last_result') }}"
|
||||
- name: "docker_14 APT last check"
|
||||
unique_id: apt_docker_14_last_check
|
||||
device_class: timestamp
|
||||
state: "{{ states('input_datetime.apt_docker_14_last_check') }}"
|
||||
- name: "docker_14 APT last update"
|
||||
unique_id: apt_docker_14_last_update
|
||||
device_class: timestamp
|
||||
state: "{{ states('input_datetime.apt_docker_14_last_update') }}"
|
||||
- name: "docker_14 APT reboot status"
|
||||
unique_id: apt_docker_14_reboot_status
|
||||
icon: >-
|
||||
{{ 'mdi:restart-alert' if is_state('input_boolean.apt_docker_14_reboot_required', 'on')
|
||||
else 'mdi:check-circle' }}
|
||||
state: >-
|
||||
{{ 'REBOOT REQUIRED' if is_state('input_boolean.apt_docker_14_reboot_required', 'on')
|
||||
else 'NO REBOOT NEEDED' }}
|
||||
- name: "docker_69 APT status"
|
||||
unique_id: apt_docker_69_status
|
||||
icon: mdi:package-up
|
||||
state: "{{ states('input_text.apt_docker_69_last_result') }}"
|
||||
- name: "docker_69 APT last check"
|
||||
unique_id: apt_docker_69_last_check
|
||||
device_class: timestamp
|
||||
state: "{{ states('input_datetime.apt_docker_69_last_check') }}"
|
||||
- name: "docker_69 APT last update"
|
||||
unique_id: apt_docker_69_last_update
|
||||
device_class: timestamp
|
||||
state: "{{ states('input_datetime.apt_docker_69_last_update') }}"
|
||||
- name: "docker_69 APT reboot status"
|
||||
unique_id: apt_docker_69_reboot_status
|
||||
icon: >-
|
||||
{{ 'mdi:restart-alert' if is_state('input_boolean.apt_docker_69_reboot_required', 'on')
|
||||
else 'mdi:check-circle' }}
|
||||
state: >-
|
||||
{{ 'REBOOT REQUIRED' if is_state('input_boolean.apt_docker_69_reboot_required', 'on')
|
||||
else 'NO REBOOT NEEDED' }}
|
||||
|
||||
- binary_sensor:
|
||||
- name: "docker_10 APT reboot required"
|
||||
unique_id: apt_docker_10_reboot_required
|
||||
device_class: problem
|
||||
icon: mdi:restart-alert
|
||||
state: "{{ is_state('input_boolean.apt_docker_10_reboot_required', 'on') }}"
|
||||
- name: "docker_14 APT reboot required"
|
||||
unique_id: apt_docker_14_reboot_required
|
||||
device_class: problem
|
||||
icon: mdi:restart-alert
|
||||
state: "{{ is_state('input_boolean.apt_docker_14_reboot_required', 'on') }}"
|
||||
- name: "docker_69 APT reboot required"
|
||||
unique_id: apt_docker_69_reboot_required
|
||||
device_class: problem
|
||||
icon: mdi:restart-alert
|
||||
state: "{{ is_state('input_boolean.apt_docker_69_reboot_required', 'on') }}"
|
||||
|
||||
automation:
|
||||
- alias: "APT Update Report - docker_10"
|
||||
id: apt_update_report_docker_10
|
||||
description: "Receive docker_10 APT results and update helpers/logbook."
|
||||
mode: queued
|
||||
trigger:
|
||||
- platform: webhook
|
||||
webhook_id: !secret apt_webhook_docker_10
|
||||
allowed_methods:
|
||||
- POST
|
||||
local_only: true
|
||||
variables:
|
||||
payload: "{{ trigger.json | default({}) }}"
|
||||
success: "{{ payload.get('success', true) | bool }}"
|
||||
updated: "{{ payload.get('updated', false) | bool }}"
|
||||
packages: "{{ payload.get('packages', 0) | int(0) }}"
|
||||
reboot_required: "{{ payload.get('reboot_required', false) | bool }}"
|
||||
message: "{{ payload.get('message', '') | string }}"
|
||||
result: >-
|
||||
{% if not success %}
|
||||
ERROR{% if (message | trim) != '' %}: {{ message | trim }}{% endif %}
|
||||
{% elif updated %}
|
||||
UPDATED {{ packages }} PKGS{% if reboot_required %}; REBOOT REQUIRED{% endif %}
|
||||
{% else %}
|
||||
NO UPDATES
|
||||
{% endif %}
|
||||
log_message: >-
|
||||
docker_10 updated {{ packages }} package{% if packages != 1 %}s{% endif %}{% if reboot_required %} (reboot required){% endif %}.
|
||||
action:
|
||||
- service: input_datetime.set_datetime
|
||||
target:
|
||||
entity_id: input_datetime.apt_docker_10_last_check
|
||||
data:
|
||||
datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.apt_docker_10_last_result
|
||||
data:
|
||||
value: "{{ result }}"
|
||||
- choose:
|
||||
- conditions: "{{ success and reboot_required }}"
|
||||
sequence:
|
||||
- service: input_boolean.turn_on
|
||||
target:
|
||||
entity_id: input_boolean.apt_docker_10_reboot_required
|
||||
default:
|
||||
- service: input_boolean.turn_off
|
||||
target:
|
||||
entity_id: input_boolean.apt_docker_10_reboot_required
|
||||
- choose:
|
||||
- conditions: "{{ success and updated }}"
|
||||
sequence:
|
||||
- service: input_datetime.set_datetime
|
||||
target:
|
||||
entity_id: input_datetime.apt_docker_10_last_update
|
||||
data:
|
||||
datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "APT"
|
||||
message: "{{ log_message }}"
|
||||
|
||||
- alias: "APT Update Report - docker_14"
|
||||
id: apt_update_report_docker_14
|
||||
description: "Receive docker_14 APT results and update helpers/logbook."
|
||||
mode: queued
|
||||
trigger:
|
||||
- platform: webhook
|
||||
webhook_id: !secret apt_webhook_docker_14
|
||||
allowed_methods:
|
||||
- POST
|
||||
local_only: true
|
||||
variables:
|
||||
payload: "{{ trigger.json | default({}) }}"
|
||||
success: "{{ payload.get('success', true) | bool }}"
|
||||
updated: "{{ payload.get('updated', false) | bool }}"
|
||||
packages: "{{ payload.get('packages', 0) | int(0) }}"
|
||||
reboot_required: "{{ payload.get('reboot_required', false) | bool }}"
|
||||
message: "{{ payload.get('message', '') | string }}"
|
||||
result: >-
|
||||
{% if not success %}
|
||||
ERROR{% if (message | trim) != '' %}: {{ message | trim }}{% endif %}
|
||||
{% elif updated %}
|
||||
UPDATED {{ packages }} PKGS{% if reboot_required %}; REBOOT REQUIRED{% endif %}
|
||||
{% else %}
|
||||
NO UPDATES
|
||||
{% endif %}
|
||||
log_message: >-
|
||||
docker_14 updated {{ packages }} package{% if packages != 1 %}s{% endif %}{% if reboot_required %} (reboot required){% endif %}.
|
||||
action:
|
||||
- service: input_datetime.set_datetime
|
||||
target:
|
||||
entity_id: input_datetime.apt_docker_14_last_check
|
||||
data:
|
||||
datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.apt_docker_14_last_result
|
||||
data:
|
||||
value: "{{ result }}"
|
||||
- choose:
|
||||
- conditions: "{{ success and reboot_required }}"
|
||||
sequence:
|
||||
- service: input_boolean.turn_on
|
||||
target:
|
||||
entity_id: input_boolean.apt_docker_14_reboot_required
|
||||
default:
|
||||
- service: input_boolean.turn_off
|
||||
target:
|
||||
entity_id: input_boolean.apt_docker_14_reboot_required
|
||||
- choose:
|
||||
- conditions: "{{ success and updated }}"
|
||||
sequence:
|
||||
- service: input_datetime.set_datetime
|
||||
target:
|
||||
entity_id: input_datetime.apt_docker_14_last_update
|
||||
data:
|
||||
datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "APT"
|
||||
message: "{{ log_message }}"
|
||||
|
||||
- alias: "APT Update Report - docker_69"
|
||||
id: apt_update_report_docker_69
|
||||
description: "Receive docker_69 APT results and update helpers/logbook."
|
||||
mode: queued
|
||||
trigger:
|
||||
- platform: webhook
|
||||
webhook_id: !secret apt_webhook_docker_69
|
||||
allowed_methods:
|
||||
- POST
|
||||
local_only: true
|
||||
variables:
|
||||
payload: "{{ trigger.json | default({}) }}"
|
||||
success: "{{ payload.get('success', true) | bool }}"
|
||||
updated: "{{ payload.get('updated', false) | bool }}"
|
||||
packages: "{{ payload.get('packages', 0) | int(0) }}"
|
||||
reboot_required: "{{ payload.get('reboot_required', false) | bool }}"
|
||||
message: "{{ payload.get('message', '') | string }}"
|
||||
result: >-
|
||||
{% if not success %}
|
||||
ERROR{% if (message | trim) != '' %}: {{ message | trim }}{% endif %}
|
||||
{% elif updated %}
|
||||
UPDATED {{ packages }} PKGS{% if reboot_required %}; REBOOT REQUIRED{% endif %}
|
||||
{% else %}
|
||||
NO UPDATES
|
||||
{% endif %}
|
||||
log_message: >-
|
||||
docker_69 updated {{ packages }} package{% if packages != 1 %}s{% endif %}{% if reboot_required %} (reboot required){% endif %}.
|
||||
action:
|
||||
- service: input_datetime.set_datetime
|
||||
target:
|
||||
entity_id: input_datetime.apt_docker_69_last_check
|
||||
data:
|
||||
datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.apt_docker_69_last_result
|
||||
data:
|
||||
value: "{{ result }}"
|
||||
- choose:
|
||||
- conditions: "{{ success and reboot_required }}"
|
||||
sequence:
|
||||
- service: input_boolean.turn_on
|
||||
target:
|
||||
entity_id: input_boolean.apt_docker_69_reboot_required
|
||||
default:
|
||||
- service: input_boolean.turn_off
|
||||
target:
|
||||
entity_id: input_boolean.apt_docker_69_reboot_required
|
||||
- choose:
|
||||
- conditions: "{{ success and updated }}"
|
||||
sequence:
|
||||
- service: input_datetime.set_datetime
|
||||
target:
|
||||
entity_id: input_datetime.apt_docker_69_last_update
|
||||
data:
|
||||
datetime: "{{ now().strftime('%Y-%m-%d %H:%M:%S') }}"
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "APT"
|
||||
message: "{{ log_message }}"
|
||||
|
||||
- alias: "APT Reboot Repairs"
|
||||
id: apt_reboot_repairs
|
||||
description: "Create or clear Repairs issues when Docker hosts need a reboot."
|
||||
mode: queued
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- binary_sensor.docker_10_apt_reboot_required
|
||||
- binary_sensor.docker_14_apt_reboot_required
|
||||
- binary_sensor.docker_69_apt_reboot_required
|
||||
variables:
|
||||
host_name: >-
|
||||
{% if 'docker_10' in trigger.entity_id %}
|
||||
docker_10
|
||||
{% elif 'docker_14' in trigger.entity_id %}
|
||||
docker_14
|
||||
{% else %}
|
||||
docker_69
|
||||
{% endif %}
|
||||
issue_id: >-
|
||||
{% if 'docker_10' in trigger.entity_id %}
|
||||
apt_docker_10_reboot_required
|
||||
{% elif 'docker_14' in trigger.entity_id %}
|
||||
apt_docker_14_reboot_required
|
||||
{% else %}
|
||||
apt_docker_69_reboot_required
|
||||
{% endif %}
|
||||
action:
|
||||
- choose:
|
||||
- conditions: "{{ trigger.to_state.state == 'on' }}"
|
||||
sequence:
|
||||
- service: repairs.create
|
||||
data:
|
||||
issue_id: "{{ issue_id }}"
|
||||
severity: warning
|
||||
persistent: true
|
||||
title: "{{ host_name }} needs reboot"
|
||||
description: >-
|
||||
{{ host_name }} reports a reboot is required after APT updates.
|
||||
Status: {{ states('sensor.' ~ host_name ~ '_apt_status') }}.
|
||||
default:
|
||||
- continue_on_error: true
|
||||
service: repairs.remove
|
||||
data:
|
||||
issue_id: "{{ issue_id }}"
|
||||
@@ -1,25 +0,0 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Neato Support for D7 Connected Botvac - control my [Neato Vacuum](http://amzn.to/2kqnnqu) with Home Assistant.
|
||||
#-------------------------------------------
|
||||
homeassistant:
|
||||
customize_glob:
|
||||
"*.arris_tg1682g_router*":
|
||||
|
||||
|
||||
#-------------------------------------------
|
||||
|
||||
group:
|
||||
router:
|
||||
name: Router Stats
|
||||
|
||||
entities:
|
||||
- sensor.arris_tg1682g_router_bytes_received
|
||||
- sensor.arris_tg1682g_router_bytes_sent
|
||||
- sensor.arris_tg1682g_router_kbytesec_received
|
||||
- sensor.arris_tg1682g_router_kbytesec_sent
|
||||
- sensor.arris_tg1682g_router_packets_received
|
||||
- sensor.arris_tg1682g_router_packets_sent
|
||||
- sensor.arris_tg1682g_router_packetssec_received
|
||||
- sensor.arris_tg1682g_router_packetssec_sent
|
||||
@@ -46,6 +46,10 @@ automation:
|
||||
title: 'Low Battery'
|
||||
value1: 'The August Door lock is at {{ states("sensor.front_door_battery") }}% '
|
||||
group: 'Battery_Alert'
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "BATTERY"
|
||||
message: "August Door lock battery low: {{ states('sensor.front_door_battery') }}%"
|
||||
|
||||
- alias: 'FrontDoor Bell Camera on Front Door Lock'
|
||||
id: Doorbell_camera_front_door
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
#-------------------------------------------
|
||||
# Added Duplicati to HA - https://github.com/CCOSTAN/Home-AssistantConfig/issues/1498
|
||||
|
||||
#-------------------------------------------
|
||||
automation:
|
||||
- alias: 'Backup Job Failed Notification'
|
||||
id: 5b3a4c89-1234-4567-8901-23456789abcf
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.dockerconfigs_backup_error_message
|
||||
from: '-'
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
who: 'carlo'
|
||||
value1: 'Backup Job Error!'
|
||||
value2: "Error: {{ states('sensor.dockerconfigs_backup_error_message') }}"
|
||||
|
||||
- alias: 'Backup Size Change Alert'
|
||||
id: 5b3a4c89-1234-4567-8901-23456789abd0
|
||||
trigger:
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.dockerconfigs_backup_target_size
|
||||
above: 10000000000 # Alert if backup size is over 10GB
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
who: 'carlo'
|
||||
value1: 'Backup Size Warning'
|
||||
value2: >
|
||||
Backup target size has grown to {{ states('sensor.dockerconfigs_backup_target_size') | float / 1000000000 }} GB.
|
||||
Please verify backup contents and available storage.
|
||||
@@ -1,54 +0,0 @@
|
||||
#-------------------------------------------
|
||||
# Fire Tablet Alarm Panel -
|
||||
# https://www.vcloudinfo.com/2017/07/visualizing-smart-home-using-home.html
|
||||
#-------------------------------------------
|
||||
#
|
||||
# homeassistant:
|
||||
# customize_glob:
|
||||
# "sensor.*_alarm_panel*":
|
||||
#
|
||||
#
|
||||
# "binary_sensor.*_alarm_panel*":
|
||||
#
|
||||
#
|
||||
|
||||
sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
low_battery:
|
||||
friendly_name: 'Low Battery'
|
||||
value_template: >
|
||||
{%- set threshold = 15 -%}
|
||||
{%- set domains = ['light', 'switch', 'sensor', 'zwave', 'lock', 'binary_sensor'] -%}
|
||||
{%- for domain in domains -%}
|
||||
{%- for item in states[domain] if ((item.attributes.battery_level is defined and item.attributes['battery_level'] | int < threshold) or ("battery" in item.name | lower and ((item.state | int < threshold and item.state|int != 0) or item.state | lower == "low" or item.state | lower == "unknown"))) -%}
|
||||
{{ item.attributes.friendly_name }} (
|
||||
{%- if item.attributes.battery_level is defined -%}
|
||||
{{ item.attributes.battery_level}}
|
||||
{%- else -%}
|
||||
{{item.state}}
|
||||
{%- endif -%}%)
|
||||
{%- if not loop.last -%}
|
||||
{{', '}}
|
||||
{%- endif -%}
|
||||
{%- endfor -%}
|
||||
{%- endfor -%}
|
||||
|
||||
automation:
|
||||
- alias: 'Battery Alert'
|
||||
id: 1a4f06f0-8763-4801-ba6c-55b87d1b0286
|
||||
initial_state: 'on'
|
||||
trigger:
|
||||
- platform: time
|
||||
at: '10:00:00'
|
||||
- platform: time
|
||||
at: '18:00:00'
|
||||
condition:
|
||||
condition: template
|
||||
value_template: "{% if states('sensor.low_battery') %}true{% endif %}"
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
value1: "Low battery levels: {{ states('sensor.low_battery') }}"
|
||||
who: 'carlo'
|
||||
apns_id: 'information'
|
||||
@@ -1,11 +1,11 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Support for Blink Cameras (https://amzn.to/3lOYTCv)
|
||||
# Added ThinLg HACS integration for Fridge sensors - https://github.com/ollo69/ha-smartthinq-sensors
|
||||
# Blink Cameras - Motion snapshots and alerts via Blink integration.
|
||||
#-------------------------------------------
|
||||
|
||||
##############################################################################
|
||||
######################################################################
|
||||
## Blink camera monitoring and notifications. https://amzn.to/3lOYTCv
|
||||
######################################################################
|
||||
### Automations
|
||||
##############################################################################
|
||||
automation:
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
#-------------------------------------------
|
||||
# C by GE Lights - https://amzn.to/30w3UWy
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Changing the way we call these routines.. no longer using routines.. using custom commands via ALEXA Media Player.
|
||||
# https://github.com/CCOSTAN/Home-AssistantConfig/issues/812
|
||||
# C by GE Lights - Voice control routines via Alexa Media Player.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## Manage C by GE/GE Cync lights/outlets. https://amzn.to/30w3UWy
|
||||
######################################################################
|
||||
# Moving routines to custom Alexa commands (see issue #812).
|
||||
|
||||
##################################################
|
||||
## Scripts
|
||||
@@ -26,32 +28,6 @@ script:
|
||||
sequence:
|
||||
- service: media_player.play_media
|
||||
data:
|
||||
entity_id: media_player.paige_room
|
||||
entity_id: media_player.garage
|
||||
media_content_id: paigelighton
|
||||
media_content_type: routine
|
||||
|
||||
garage_lights_off:
|
||||
alias: 'ALL Garage Lights Off'
|
||||
sequence:
|
||||
|
||||
- service: media_player.play_media
|
||||
data:
|
||||
entity_id: media_player.garage
|
||||
media_content_id: 'turn off c life 3'
|
||||
media_content_type: custom
|
||||
|
||||
- delay: "00:01:30"
|
||||
|
||||
- service: media_player.play_media
|
||||
data:
|
||||
entity_id: media_player.garage
|
||||
media_content_id: 'turn off c sleep 1'
|
||||
media_content_type: custom
|
||||
|
||||
- delay: "00:01:30"
|
||||
|
||||
- service: media_player.play_media
|
||||
data:
|
||||
entity_id: media_player.garage
|
||||
media_content_id: 'turn off c sleep 2'
|
||||
media_content_type: custom
|
||||
|
||||
@@ -1,6 +1,67 @@
|
||||
# --------------------------------------------------
|
||||
# AC Filter‑change runtime tracker
|
||||
# --------------------------------------------------
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Climate Control - Seasonal HVAC automations and sensors.
|
||||
# Thermostat helpers for upstairs/downstairs comfort.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
# Contact: @CCOSTAN | Entity reference details below
|
||||
# Entity reference and attribute summaries:
|
||||
#
|
||||
# Entity ID: climate.downstairs
|
||||
# Supported hvac_modes: heat, cool, heat_cool, off
|
||||
# Supported fan_modes: on, off
|
||||
# Supported preset_modes: none, eco
|
||||
# Supported temperature range: 50°F (min_temp) – 90°F (max_temp)
|
||||
#
|
||||
# Current state (example):
|
||||
# current_temperature: 77
|
||||
# temperature: 83
|
||||
# target_temp_high: null
|
||||
# target_temp_low: null
|
||||
# current_humidity: 58
|
||||
# fan_mode: off
|
||||
# hvac_action: idle
|
||||
# preset_mode: none
|
||||
# Supported features: 411
|
||||
# --------------------------------------------------------------
|
||||
# Entity ID: climate.upstairs
|
||||
# Supported hvac_modes: off, heat, cool, heat_cool
|
||||
# Supported temperature range: 50°F (min_temp) – 90°F (max_temp)
|
||||
#
|
||||
# Current state (example):
|
||||
# current_temperature: 76
|
||||
# temperature: 78
|
||||
# target_temp_high: null
|
||||
# target_temp_low: null
|
||||
# friendly_name: Upstairs
|
||||
# Supported features: 387
|
||||
|
||||
######################################################################
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Template helpers – compressor status flags and numeric runtime helpers
|
||||
# ---------------------------------------------------------------------------
|
||||
template:
|
||||
- binary_sensor:
|
||||
- name: "Downstairs AC is Cooling"
|
||||
unique_id: downstairs_ac_cooling
|
||||
state: >
|
||||
{{ state_attr('climate.downstairs', 'hvac_action') == 'cooling' }}
|
||||
- name: "Upstairs AC is Cooling"
|
||||
unique_id: upstairs_ac_cooling
|
||||
state: >
|
||||
{{ state_attr('climate.upstairs', 'hvac_action') == 'cooling' }}
|
||||
|
||||
sensor:
|
||||
- name: "Downstairs AC Cooling Numeric"
|
||||
unique_id: downstairs_ac_cooling_numeric
|
||||
state: "{{ 1 if is_state('binary_sensor.downstairs_ac_cooling', 'on') else 0 }}"
|
||||
- name: "Upstairs AC Cooling Numeric"
|
||||
unique_id: upstairs_ac_cooling_numeric
|
||||
state: "{{ 1 if is_state('binary_sensor.upstairs_ac_cooling', 'on') else 0 }}"
|
||||
|
||||
input_datetime:
|
||||
downstairs_last_filter_change:
|
||||
@@ -13,30 +74,9 @@ input_datetime:
|
||||
has_time: true
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Binary sensors – true when the thermostat reports the compressor is running
|
||||
# Integration sensors tally runtime based on compressor state
|
||||
# ---------------------------------------------------------------------------
|
||||
binary_sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
downstairs_ac_cooling:
|
||||
friendly_name: "Downstairs AC is Cooling"
|
||||
value_template: >
|
||||
{{ state_attr('climate.downstairs', 'hvac_action') == 'cooling' }}
|
||||
upstairs_ac_cooling:
|
||||
friendly_name: "Upstairs AC is Cooling"
|
||||
value_template: >
|
||||
{{ state_attr('climate.upstairs', 'hvac_action') == 'cooling' }}
|
||||
|
||||
sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
downstairs_ac_cooling_numeric:
|
||||
friendly_name: "Downstairs AC Cooling Numeric"
|
||||
value_template: "{{ 1 if is_state('binary_sensor.downstairs_ac_cooling', 'on') else 0 }}"
|
||||
upstairs_ac_cooling_numeric:
|
||||
friendly_name: "Upstairs AC Cooling Numeric "
|
||||
value_template: "{{ 1 if is_state('binary_sensor.upstairs_ac_cooling', 'on') else 0 }}"
|
||||
|
||||
- platform: integration
|
||||
name: Downstairs AC Runtime Raw
|
||||
source: sensor.downstairs_ac_cooling_numeric
|
||||
@@ -84,6 +124,69 @@ script:
|
||||
target:
|
||||
entity_id: sensor.upstairs_ac_runtime_since_last_filter_change
|
||||
|
||||
set_downstairs_target_temp_based_on_conditions:
|
||||
alias: Set Downstairs Target Temperature Based on Conditions
|
||||
mode: single
|
||||
sequence:
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'not_home'
|
||||
sequence:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "CLIMATE"
|
||||
message: "Downstairs HVAC set to ECO (family not_home)."
|
||||
- service: climate.set_preset_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
preset_mode: 'eco'
|
||||
- conditions:
|
||||
- condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'home'
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.pirateweather_temperature
|
||||
above: 92
|
||||
sequence:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "CLIMATE"
|
||||
message: "Downstairs target set to 78F (family home, temp >92F)."
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
hvac_mode: cool
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
temperature: 78
|
||||
- conditions:
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'home'
|
||||
sequence:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "CLIMATE"
|
||||
message: "Downstairs target set to 80F (family home)."
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
hvac_mode: cool
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
temperature: 80
|
||||
|
||||
##############################################################################
|
||||
### AUTOMATIONS - Thermostat schedules, guardrails, and presence/weather logic
|
||||
### Some shutoff automations are also in the ALARM.yaml package when windows/doors are left open.
|
||||
### There are also some automations in the POWERWALL.yaml package when the grid is down.
|
||||
##############################################################################
|
||||
automation:
|
||||
- alias: Notify Downstairs Filter Change Due
|
||||
description: Notify when downstairs runtime exceeds threshold since last filter change
|
||||
@@ -92,6 +195,11 @@ automation:
|
||||
entity_id: sensor.downstairs_ac_runtime_since_last_filter_change
|
||||
above: 800 # hours
|
||||
action:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "MAINTENANCE"
|
||||
message: >-
|
||||
Downstairs AC filter due (runtime >800h). Last changed {{ ((now() - states.input_datetime.downstairs_last_filter_change.last_changed).total_seconds() / 86400) | round(0) }} days ago.
|
||||
- service: script.notify_engine # <-- keep your existing notify helper
|
||||
data:
|
||||
title: "Home Maintenance Reminder"
|
||||
@@ -109,6 +217,11 @@ automation:
|
||||
entity_id: sensor.upstairs_ac_runtime_since_last_filter_change
|
||||
above: 450 # hours
|
||||
action:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "MAINTENANCE"
|
||||
message: >-
|
||||
Upstairs AC filter due (runtime >450h). Last changed {{ ((now() - states.input_datetime.upstairs_last_filter_change.last_changed).total_seconds() / 86400) | round(0) }} days ago.
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: "Home Maintenance Reminder"
|
||||
@@ -118,6 +231,24 @@ automation:
|
||||
who: "Carlo"
|
||||
group: "maintenance"
|
||||
|
||||
- alias: 'AC Status Announcement'
|
||||
id: 7812fdaf-a3f8-498b-8f07-28e977e528fe
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- climate.downstairs
|
||||
- climate.upstairs
|
||||
from: 'off'
|
||||
- platform: state
|
||||
entity_id:
|
||||
- climate.downstairs
|
||||
- climate.upstairs
|
||||
to: 'off'
|
||||
action:
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
NestStatus: "The {{ trigger.entity_id.split('.')[1].split('_')[0]}} {{ trigger.entity_id.split('.')[1].split('_')[1]}} has now been turned on for {{(trigger.to_state.state)}}."
|
||||
call_window_check: 1
|
||||
|
||||
- alias: Prevent Upstairs Nest Below 76
|
||||
id: 7812fdaf-a3f8-498b-8f07-28e977e528ff
|
||||
@@ -126,9 +257,204 @@ automation:
|
||||
entity_id: climate.upstairs
|
||||
attribute: temperature
|
||||
below: 76
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
state: 'on'
|
||||
action:
|
||||
- delay: "00:03:00"
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.upstairs
|
||||
temperature: 78
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "CLIMATE"
|
||||
message: "Upstairs target temp corrected to 78F (guardrail)."
|
||||
|
||||
- alias: Set Downstairs to 77 When Both in Bed
|
||||
id: set_downstairs_nest_77_both_in_bed
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: group.bed
|
||||
to: 'on'
|
||||
condition:
|
||||
- condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.sleepnumber_carlo_carlo_is_in_bed
|
||||
state: 'on'
|
||||
- condition: state
|
||||
entity_id: binary_sensor.sleepnumber_carlo_stacey_is_in_bed
|
||||
state: 'on'
|
||||
- condition: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
state: 'on'
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'below_horizon'
|
||||
action:
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
temperature: 77
|
||||
|
||||
- alias: 'Set Downstairs Thermostat Daytime Target'
|
||||
id: set_downstairs_thermostat_daytime_target
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sun.sun
|
||||
to: 'above_horizon'
|
||||
- platform: time
|
||||
at: "08:00:00"
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.pirateweather_temperature
|
||||
above: 92
|
||||
- platform: state
|
||||
entity_id: group.family
|
||||
to: 'home'
|
||||
condition:
|
||||
- condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: sun.sun
|
||||
state: 'above_horizon'
|
||||
- condition: state
|
||||
entity_id: input_boolean.guest_mode
|
||||
state: 'off'
|
||||
- condition: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
state: 'on'
|
||||
action:
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
hvac_mode: cool
|
||||
- service: script.set_downstairs_target_temp_based_on_conditions
|
||||
|
||||
# Set thermostats to eco mode when everyone is away
|
||||
- alias: 'Set Thermostats to Eco When Away'
|
||||
id: 1e2d3c4b-eco-thermostat-away
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: group.family
|
||||
to: 'not_home'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'not_home'
|
||||
- condition: state
|
||||
entity_id: input_boolean.guest_mode
|
||||
state: 'off'
|
||||
action:
|
||||
- service: climate.set_preset_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
preset_mode: 'eco'
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
hvac_mode: cool
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.upstairs
|
||||
temperature: 83
|
||||
|
||||
# Automation: Set Thermostats Back to Cool Mode
|
||||
- alias: 'Set Thermostats to Cool When Home'
|
||||
id: 1e2d3c4b-cool-thermostat-home
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: group.family
|
||||
to: 'home'
|
||||
condition:
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'home'
|
||||
- condition: state
|
||||
entity_id: input_boolean.guest_mode
|
||||
state: 'off'
|
||||
- condition: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
state: 'on'
|
||||
action:
|
||||
- service: climate.set_preset_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
preset_mode: 'none'
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id:
|
||||
- climate.downstairs
|
||||
- climate.upstairs
|
||||
hvac_mode: cool
|
||||
- service: script.set_downstairs_target_temp_based_on_conditions
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.upstairs
|
||||
temperature: 82
|
||||
|
||||
- alias: 'Reset Upstairs to 82 Each Night'
|
||||
id: reset_upstairs_thermostat_nightly_82
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: time
|
||||
at: "03:00:00"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
state: 'on'
|
||||
action:
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id: climate.upstairs
|
||||
hvac_mode: cool
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.upstairs
|
||||
temperature: 82
|
||||
|
||||
- alias: 'Humidity Control'
|
||||
id: AC_Humidity_Control
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.downstairs_humidity
|
||||
above: 60
|
||||
- platform: time
|
||||
at: "02:00:00"
|
||||
condition:
|
||||
- condition: time
|
||||
after: "01:00:00"
|
||||
before: "08:00:00"
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.downstairs_humidity
|
||||
above: 60
|
||||
- condition: template #Only needed in the winter months
|
||||
value_template: "{{ now().month in [10, 11, 12, 1, 2, 3] }}"
|
||||
- condition: template # Only run if AC is idle (prevents fighting other automations)
|
||||
value_template: "{{ state_attr('climate.downstairs', 'hvac_action') == 'idle' }}"
|
||||
- condition: state # Never run if the grid is down and running on powerwall.
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
state: 'on'
|
||||
action:
|
||||
- service: climate.set_preset_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
preset_mode: 'none'
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
hvac_mode: cool
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
temperature: 77
|
||||
- delay: "00:20:00"
|
||||
- service: script.set_downstairs_target_temp_based_on_conditions
|
||||
- delay: "02:00:00" # stops it from being triggered again too soon.
|
||||
|
||||
@@ -1,81 +0,0 @@
|
||||
#-------------------------------------------
|
||||
# Conico Cameras Configuration
|
||||
# Description: Integrates Conico Cameras with Alexa Media Player
|
||||
# Last Updated: 2023-11-15
|
||||
#
|
||||
# Features:
|
||||
# - Displays garage camera feed on Echo Show devices
|
||||
# - Displays driveway camera feed when front door opens
|
||||
# - Triggers based on garage door state and occupancy changes
|
||||
#
|
||||
# Hardware:
|
||||
# - Conico Camera: https://amzn.to/2Kl1eHo
|
||||
# - Amazon Echo Show devices
|
||||
#
|
||||
# Integration: Alexa Media Player
|
||||
#
|
||||
# Original Repo: https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Blog Post: https://www.vcloudinfo.com/2019/03/integrating-smart-cameras-with-alexa-echo-shows.html
|
||||
# Follow me on https://www.vcloudinfo.com/click-here
|
||||
#-------------------------------------------
|
||||
|
||||
|
||||
automation:
|
||||
- alias: 'Garage Camera on Alexa Shows'
|
||||
id: 4373df2a-77f2-4e19-be7c-46c7b27ca583
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- cover.large_garage_door
|
||||
- cover.small_garage_door
|
||||
from: 'closed'
|
||||
to: 'open'
|
||||
|
||||
- platform: state
|
||||
entity_id: binary_sensor.mcu1_gpio12 #interior Garage Doors
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
|
||||
- platform: state
|
||||
entity_id:
|
||||
- person.carlo
|
||||
- person.stacey
|
||||
- person.paige
|
||||
- person.justin
|
||||
to: 'not_home'
|
||||
from: 'home'
|
||||
|
||||
action:
|
||||
- choose:
|
||||
- conditions: "{{ is_state('binary_sensor.sleepnumber_carlo_stacey_is_in_bed','on') }}"
|
||||
sequence:
|
||||
- service: media_player.play_media
|
||||
data:
|
||||
entity_id: media_player.stacey_bedroom
|
||||
media_content_id: 'show garage camera from home assistant'
|
||||
media_content_type: custom
|
||||
- delay: '00:10:00'
|
||||
- service: media_player.play_media
|
||||
data:
|
||||
entity_id: media_player.stacey_bedroom
|
||||
media_content_id: 'hide garage camera'
|
||||
media_content_type: custom
|
||||
|
||||
default:
|
||||
- service: media_player.play_media
|
||||
target:
|
||||
entity_id: media_player.kitchen
|
||||
data:
|
||||
media_content_id: 'show garage camera from home assistant'
|
||||
media_content_type: custom
|
||||
- delay: '00:20:00'
|
||||
- service: media_player.play_media
|
||||
target:
|
||||
entity_id: media_player.kitchen
|
||||
data:
|
||||
media_content_id: 'hide garage camera'
|
||||
media_content_type: custom
|
||||
|
||||
- service: script.garage_lights_off
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
#-------------------------------------------
|
||||
# Finance Package Configuration
|
||||
# Description: Tracks stock prices using Yahoo Finance integration
|
||||
# Last Updated: 2023-11-15
|
||||
#
|
||||
# Integration: Yahoo Finance
|
||||
# Documentation: https://www.home-assistant.io/integrations/yahoofinance/
|
||||
#
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Finance - Track stock prices via Yahoo Finance.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## Finance tickers via yahoofinance. Docs: https://www.home-assistant.io/integrations/yahoofinance/
|
||||
######################################################################
|
||||
# Stocks Tracked:
|
||||
# - Tesla (TSLA)
|
||||
# - Apple (AAPL)
|
||||
|
||||
39
config/packages/fridge.yaml
Normal file
39
config/packages/fridge.yaml
Normal file
@@ -0,0 +1,39 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# LG Fridge - SmartThinQ appliance monitoring.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## Fridge/freezer sensors via ThinQ integration. https://amzn.to/3lOYTCv
|
||||
######################################################################
|
||||
automation:
|
||||
- alias: 'Fridge Door Open'
|
||||
id: 2346efcd-e8a8-4e86-b5b6-43eBl1nkFr1dge95D00r0pen
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.refrigerator_door_open
|
||||
to: 'on'
|
||||
for:
|
||||
minutes: 5
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.refrigerator_door_open
|
||||
state: 'on'
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: 'Fridge Door Open'
|
||||
value1: >
|
||||
The fridge door has been open for more than 5 minutes. Please check and close the fridge door to avoid temperature issues.
|
||||
who: 'family'
|
||||
group: 'information'
|
||||
|
||||
- wait_template: "{{ states.group.family.state == 'home' }}"
|
||||
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
value1: "[Tell Household the Fridge Door is Open for more than 5 minutes]"
|
||||
|
||||
- delay: 00:30:00
|
||||
- event: event_fridge_door_open
|
||||
@@ -1,22 +1,17 @@
|
||||
#-------------------------------------------
|
||||
# Garadget Configuration
|
||||
# Description: Setup for Garadget garage door opener/sensor
|
||||
#
|
||||
# Integration: MQTT
|
||||
# Hardware: Garadget (https://amzn.to/2jQLpVQ)
|
||||
#
|
||||
# Features:
|
||||
# - Garage door status monitoring
|
||||
# - Remote open/close control
|
||||
# - Door brightness sensing
|
||||
#
|
||||
# Documentation:
|
||||
# - Integration Guide: https://www.vcloudinfo.com/2019/03/how-to-add-garadget-to-home-assistant.html
|
||||
# - Access Token Update: https://www.vcloudinfo.com/2020/05/fixing-garadget-in-home-assistant.html
|
||||
#
|
||||
# Original Repository: https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Follow me on https://www.vcloudinfo.com/click-here
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Garadget Garage Doors - MQTT cover control and monitoring
|
||||
# Open/close commands, status polling, and notifications.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Debounces garage door open/close triggers to reduce noisy
|
||||
# state flapping from spamming lights, speech, and Alexa displays.
|
||||
# Setup: https://www.vcloudinfo.com/2019/03/how-to-add-garadget-to-home-assistant.html
|
||||
# Token fix: https://www.vcloudinfo.com/2020/05/fixing-garadget-in-home-assistant.html
|
||||
# Hardware: Garadget unit https://amzn.to/2jQLpVQ
|
||||
######################################################################
|
||||
|
||||
mqtt:
|
||||
cover:
|
||||
@@ -79,12 +74,50 @@ group:
|
||||
- cover.large_garage_door
|
||||
- cover.small_garage_door
|
||||
|
||||
automation:
|
||||
|
||||
######################################################################
|
||||
## Automation: Auto-open Large Garage Door when someone comes home
|
||||
######################################################################
|
||||
- alias: 'Auto Open Large Garage Door On Arrival'
|
||||
id: 7e2b1c3a-4b1e-4b2a-9c1a-automated_garage_door
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- person.carlo
|
||||
- person.stacey
|
||||
from: 'driving'
|
||||
to: 'home'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: cover.large_garage_door
|
||||
state: 'closed'
|
||||
- condition: state
|
||||
entity_id: group.bed
|
||||
state: 'off'
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'home'
|
||||
action:
|
||||
- service: cover.open_cover
|
||||
target:
|
||||
entity_id: cover.large_garage_door
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.last_person_home
|
||||
data:
|
||||
value: "{{ trigger.to_state.entity_id.split('.')[1] }}"
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "GARAGE"
|
||||
message: "Large Garage was auto-opened for {{ states('input_text.last_person_home') }}."
|
||||
|
||||
######################################################################
|
||||
## Send a notification to anyone coming home asking if they want to open the garage door.
|
||||
## Entry helper prompt after arrival if auto-open didn’t fire.
|
||||
######################################################################
|
||||
|
||||
automation:
|
||||
- alias: 'Garage Helper'
|
||||
- alias: 'Entry Helper'
|
||||
id: 365adc21-5e96-4e78-9e94-089901a29430
|
||||
mode: parallel
|
||||
trigger:
|
||||
@@ -92,34 +125,39 @@ automation:
|
||||
entity_id:
|
||||
- person.carlo
|
||||
- person.stacey
|
||||
from: 'not_home'
|
||||
to: 'home'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: cover.large_garage_door
|
||||
state: 'closed'
|
||||
action:
|
||||
# - variables:
|
||||
# person_triggered: "{{ trigger.to_state.entity_id.split('.')[1] }}"
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.last_person_home
|
||||
data:
|
||||
value: "{{ trigger.to_state.entity_id.split('.')[1] }}"
|
||||
- service: script.notify_engine_two_button
|
||||
data:
|
||||
title: 'Welcome Home!'
|
||||
value1: 'Open Large Garage door?'
|
||||
title1: 'Yes'
|
||||
action1: 'OPEN_LARGE_GARAGE'
|
||||
icon1: 'sfsymbols:arrow.up.circle'
|
||||
destructive1: 'false'
|
||||
title2: 'No'
|
||||
action2: 'NO_OPEN_LARGE_GARAGE'
|
||||
icon2: 'sfsymbols:house.circle'
|
||||
destructive2: 'true'
|
||||
who: "{{ states('input_text.last_person_home') }}"
|
||||
group: 'Welcome_Home'
|
||||
# Give the auto-open routine a chance to fire; if the door opened, skip the prompt.
|
||||
- delay: "00:00:25"
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: state
|
||||
entity_id: cover.large_garage_door
|
||||
state: 'closed'
|
||||
sequence:
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.last_person_home
|
||||
data:
|
||||
value: "{{ trigger.to_state.entity_id.split('.')[1] }}"
|
||||
- service: script.notify_engine_two_button
|
||||
data:
|
||||
title: 'Welcome Home!'
|
||||
value1: 'Choose: unlock front door or open garage?'
|
||||
title1: 'Unlock Door'
|
||||
action1: 'UNLOCK_FRONT_DOOR'
|
||||
icon1: 'sfsymbols:lock.open'
|
||||
destructive1: 'false'
|
||||
title2: 'Open Garage'
|
||||
action2: 'OPEN_LARGE_GARAGE'
|
||||
icon2: 'sfsymbols:arrow.up.circle'
|
||||
destructive2: 'false'
|
||||
who: "{{ states('input_text.last_person_home') }}"
|
||||
group: 'Welcome_Home'
|
||||
|
||||
- alias: 'Open Large Garage Door Action'
|
||||
id: 85e02a74-2ecc-4815-95a6-db864a6dffd7
|
||||
@@ -139,33 +177,6 @@ automation:
|
||||
- service: cover.open_cover
|
||||
entity_id: cover.large_garage_door
|
||||
|
||||
- alias: 'Prompt to Open Front Door'
|
||||
id: ece2b4a8-af21-41f4-a8fc-480a4d1ddabc
|
||||
trigger:
|
||||
platform: event
|
||||
event_type: mobile_app_notification_action
|
||||
event_data:
|
||||
action: NO_OPEN_LARGE_GARAGE
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
state: 'home'
|
||||
action:
|
||||
- service: script.notify_engine_two_button
|
||||
data:
|
||||
title: 'Unlock Front Door?'
|
||||
value1: 'Do you want to unlock the front door instead?'
|
||||
title1: 'Yes'
|
||||
action1: 'UNLOCK_FRONT_DOOR'
|
||||
icon1: 'sfsymbols:unlock'
|
||||
destructive1: 'false'
|
||||
title2: 'No'
|
||||
action2: 'KEEP_FRONT_DOOR_LOCKED'
|
||||
icon2: 'sfsymbols:lock'
|
||||
destructive2: 'true'
|
||||
who: "{{ states('input_text.last_person_home') }}"
|
||||
group: 'Welcome_Home'
|
||||
|
||||
- alias: 'Unlock Front Door Action'
|
||||
id: c3106db1-f2c4-4800-b1a3-76d440228600
|
||||
trigger:
|
||||
@@ -177,6 +188,38 @@ automation:
|
||||
- service: lock.unlock
|
||||
entity_id: lock.front_door
|
||||
|
||||
######################################################################
|
||||
## Auto-unlock front door when Paige or Justin arrive from driving
|
||||
######################################################################
|
||||
- alias: 'Auto Unlock Front Door on Arrival (Paige/Justin)'
|
||||
id: 8f4f5f6a-9c2d-4f4c-9f6c-7d5e5b2e2c3d
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- person.paige
|
||||
- person.justin
|
||||
from: 'driving'
|
||||
to: 'home'
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: lock.front_door
|
||||
state: 'locked'
|
||||
action:
|
||||
- service: lock.unlock
|
||||
target:
|
||||
entity_id: lock.front_door
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: "Front door auto-unlocked"
|
||||
value1: "Unlocking for {{ trigger.to_state.name }} arriving from driving."
|
||||
who: "family"
|
||||
group: "Welcome_Home"
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "DOORS"
|
||||
message: "Front door auto-unlocked for {{ trigger.to_state.name }} arriving from driving."
|
||||
|
||||
|
||||
######################################################################
|
||||
## Garage Status Announcements - Only during normal hours.
|
||||
@@ -227,7 +270,6 @@ automation:
|
||||
DoorClosed: "The {{ trigger.entity_id.split('.')[1]|replace('_', ' ') }} is now {{ (trigger.to_state.state)|replace('_', ' ') }}."
|
||||
call_garage_check: 1
|
||||
- delay: "00:10:00"
|
||||
- service: script.garage_lights_off
|
||||
|
||||
default:
|
||||
- service: script.speech_engine
|
||||
@@ -274,11 +316,11 @@ automation:
|
||||
value1: >
|
||||
"The wind speed is {{ states('sensor.pirateweather_wind_speed')|round}} miles per hour. For safety, please close the garage doors.
|
||||
{% if is_state('cover.large_garage_door', 'open') -%}
|
||||
The Large Garage Door is open
|
||||
Large Garage Door: open
|
||||
{% endif -%}
|
||||
{% if is_state('cover.small_garage_door', 'open') -%}
|
||||
{% if is_state('cover.large_garage_door', 'open') -%}and
|
||||
{%- endif %} The small Garage Door is open.
|
||||
{%- endif %} Small Garage Door: open.
|
||||
{% endif %}"
|
||||
|
||||
##############################################################################
|
||||
@@ -289,14 +331,16 @@ automation:
|
||||
trigger:
|
||||
- platform: time_pattern
|
||||
minutes: '/45'
|
||||
- platform: state
|
||||
entity_id:
|
||||
- cover.large_garage_door
|
||||
- cover.small_garage_door
|
||||
to: 'open'
|
||||
for: "00:01:00"
|
||||
- platform: state
|
||||
entity_id: group.family
|
||||
to: not_home
|
||||
for: 00:05:00
|
||||
- platform: state
|
||||
entity_id: input_boolean.tv_time
|
||||
to: 'on'
|
||||
from: 'off'
|
||||
|
||||
condition:
|
||||
condition: or
|
||||
@@ -329,13 +373,64 @@ automation:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: 'Check Garage Doors:'
|
||||
value1: "Small: {{ states('cover.small_garage_door')}}"
|
||||
value2: "Large: {{ states('cover.large_garage_door')}}"
|
||||
value1: >
|
||||
{% set open = [] %}
|
||||
{% if is_state('cover.small_garage_door','open') %}{% set _ = open.append('Small garage door') %}{% endif %}
|
||||
{% if is_state('cover.large_garage_door','open') %}{% set _ = open.append('Large garage door') %}{% endif %}
|
||||
{% if open|length == 0 %}
|
||||
All garage doors are closed.
|
||||
{% elif open|length == 1 %}
|
||||
{{ open[0] }} is open.
|
||||
{% else %}
|
||||
{{ open|join(' and ') }} are open.
|
||||
{% endif %}
|
||||
who: "family"
|
||||
camera_entity: "camera.garagecam"
|
||||
group: 'information'
|
||||
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
value1: "Check the garage doors. The Small garage is {{ states('cover.small_garage_door')}} and the large garage is {{ states('cover.large_garage_door')}} [Only mention the garage door that is open and remind us to close it for the night]"
|
||||
value1: "Check the garage doors. The Small garage is {{ states('cover.small_garage_door')}} and the large garage is {{ states('cover.large_garage_door')}} [Always mention the specific garage door that is currently open and remind us to close it for the night]"
|
||||
|
||||
- alias: 'Garage Camera on Alexa Shows'
|
||||
id: 4373df2a-77f2-4e19-be7c-46c7b27ca583
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- cover.large_garage_door
|
||||
- cover.small_garage_door
|
||||
from: 'closed'
|
||||
to: 'open'
|
||||
for: "00:00:15"
|
||||
|
||||
- platform: state
|
||||
entity_id: binary_sensor.mcu1_gpio12 #interior Garage Doors
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
for: "00:00:05"
|
||||
|
||||
- platform: state
|
||||
entity_id:
|
||||
- person.carlo
|
||||
- person.stacey
|
||||
- person.paige
|
||||
- person.justin
|
||||
to: 'not_home'
|
||||
from: 'home'
|
||||
|
||||
action:
|
||||
- service: media_player.play_media
|
||||
target:
|
||||
entity_id: media_player.kitchen
|
||||
data:
|
||||
media_content_id: 'show garage camera from home assistant'
|
||||
media_content_type: custom
|
||||
- delay: '00:20:00'
|
||||
- service: media_player.play_media
|
||||
target:
|
||||
entity_id: media_player.kitchen
|
||||
data:
|
||||
media_content_id: 'hide garage camera'
|
||||
media_content_type: custom
|
||||
|
||||
|
||||
@@ -1,17 +1,21 @@
|
||||
#-------------------------------------------
|
||||
# Setting up Glances Integration for home assistant to track ProxMox stats
|
||||
# @CCOSTAN
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
#
|
||||
#-------------------------------------------
|
||||
# -------------------------------------------------------------------
|
||||
# Glances - ProxMox/server stats via Glances integration.
|
||||
# CPU, memory, and disk sensors from Glances API.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
proxmox_garage_avg_temp:
|
||||
friendly_name: "Proxmox Garage Average Temperature"
|
||||
unit_of_measurement: "°F"
|
||||
value_template: >-
|
||||
template:
|
||||
- sensor:
|
||||
- name: "Proxmox Garage Average Temperature"
|
||||
unique_id: proxmox_garage_avg_temp
|
||||
device_class: temperature
|
||||
state_class: measurement
|
||||
unit_of_measurement: "\u00B0F"
|
||||
state: >-
|
||||
{{ (
|
||||
(states('sensor.proxmox1_package_id_0_temperature') | float(0) +
|
||||
states('sensor.proxmox1_pch_skylake_1_temperature') | float(0) +
|
||||
@@ -36,12 +40,12 @@ automation:
|
||||
id: proxmox-garage-high-temp-warning-automation
|
||||
trigger:
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.proxmox_garage_avg_temp
|
||||
entity_id: sensor.proxmox_garage_average_temperature
|
||||
above: 145 # Adjust threshold as needed
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: "🔥 Proxmox Garage Alert!"
|
||||
value1: "The average temperature of your Proxmox servers is above 145°F!"
|
||||
title: "?? Proxmox Garage Alert!"
|
||||
value1: "The average temperature of your Proxmox servers is above 145\u00B0F!"
|
||||
who: 'carlo'
|
||||
group: 'information'
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# More Info : https://www.vcloudinfo.com/
|
||||
#-------------------------------------------
|
||||
|
||||
sensor:
|
||||
- platform: command_line
|
||||
name: "Download Grafana Solar"
|
||||
command: 'curl -s -H "Authorization: Bearer eyJrIjoiZ0UwS1hpRVdCbFVVSTNSdER0Z29maHc4QmVuSXhxalYiLCJuIjoiSEFDYW1lcmEiLCJpZCI6MX0=" "http://192.168.10.10:3000/render/d/h_wosLIik/solar?orgId=1&from=now-1d%2Fd&to=now-1d%2Fd&height=750&width=1920" > /config/www/custom_ui/floorplan/images/branding/solar_readings.png'
|
||||
scan_interval: 3000
|
||||
|
||||
- platform: command_line
|
||||
name: "Download Grafana ATT SpeedTest"
|
||||
command: 'curl -s -H "Authorization: Bearer eyJrIjoiZ0UwS1hpRVdCbFVVSTNSdER0Z29maHc4QmVuSXhxalYiLCJuIjoiSEFDYW1lcmEiLCJpZCI6MX0=" "http://192.168.10.10:3000/render/d/bdR1ZnFZk/att-speedtest?viewPanel=2&orgId=1" > /config/www/custom_ui/floorplan/images/branding/att_speedtest.png'
|
||||
scan_interval: 3000
|
||||
|
||||
camera:
|
||||
- platform: generic
|
||||
name: "Grafana Solar Graph"
|
||||
still_image_url: 'http://192.168.10.10:3000/render/d/h_wosLIik/solar?orgId=1&from=now-1d%2Fd&to=now-1d%2Fd&height=750&width=1920'
|
||||
username: HA
|
||||
password: HA
|
||||
|
||||
##############################################################################
|
||||
### Automations - Detect when things are not right. Like any Good Watchdog.
|
||||
##############################################################################
|
||||
automation:
|
||||
- alias: 'Tweet Solar Production'
|
||||
id: bd698bd9-780b-4268-bf90-2c7ff6daae99
|
||||
|
||||
trigger:
|
||||
- platform: sun
|
||||
event: sunset
|
||||
offset: '+02:30:00'
|
||||
action:
|
||||
- service: script.tweet_engine_image
|
||||
data:
|
||||
tweet: >-
|
||||
{{ [
|
||||
"I have just finished crunching the numbers and here is the latest #Solar Production graph. "
|
||||
] | random + " #Charts #Tesla "
|
||||
+ [
|
||||
"(https://youtu.be/BartadUzGOA)",
|
||||
"(https://www.vcloudinfo.com/2018/01/going-green-to-save-some-green-in-2018.html)",
|
||||
"(https://www.vcloudinfo.com/2018/09/re-installing-tesla-solar-panels-again.html)"
|
||||
]| random
|
||||
}}
|
||||
image: >-
|
||||
{% set pictures = [
|
||||
"/config/www/custom_ui/floorplan/images/branding/solar_readings.png"
|
||||
] %}
|
||||
{{ pictures|random }}
|
||||
38
config/packages/hass_agent_homepc.yaml
Normal file
38
config/packages/hass_agent_homepc.yaml
Normal file
@@ -0,0 +1,38 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# HASS.Agent Home PC - Office lamp follows CARLO-HOMEPC session state.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## Locks/monitors PC activity via HASS.Agent; Sleep Number triggers live in config/packages/sleepiq.yaml.
|
||||
######################################################################
|
||||
# Docs: https://hassagent.readthedocs.io/en/latest/
|
||||
automation:
|
||||
- alias: "Office Lamp - Follow CARLO-HOMEPC Session"
|
||||
id: 7b3f9e14-55b1-44aa-a6eb-2e0873a4c2bb
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.carlo_homepc_carlo_homepc_sessionstate
|
||||
to: 'Locked'
|
||||
id: locked
|
||||
- platform: state
|
||||
entity_id: sensor.carlo_homepc_carlo_homepc_sessionstate
|
||||
to: 'Unlocked'
|
||||
id: unlocked
|
||||
action:
|
||||
- choose:
|
||||
- conditions:
|
||||
- condition: trigger
|
||||
id: locked
|
||||
sequence:
|
||||
- service: switch.turn_off
|
||||
target:
|
||||
entity_id: switch.office_lamp_switch
|
||||
- conditions:
|
||||
- condition: trigger
|
||||
id: unlocked
|
||||
sequence:
|
||||
- service: switch.turn_on
|
||||
target:
|
||||
entity_id: switch.office_lamp_switch
|
||||
@@ -1,11 +1,13 @@
|
||||
###############################################################################
|
||||
#-------------------------------------------
|
||||
# Holiday Package
|
||||
# @CCOSTAN
|
||||
# Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Video Breakdown - https://www.vcloudinfo.com/2019/02/breaking-down-the-flag-sensor-in-home-assistant.html
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Holiday Package - Flag/holiday sensors and lighting triggers.
|
||||
#-------------------------------------------
|
||||
## Modified for my own fun stuff!
|
||||
######################################################################
|
||||
## Holiday routines, notifications, and lighting tweaks.
|
||||
######################################################################
|
||||
# Video breakdown: https://www.vcloudinfo.com/2019/02/breaking-down-the-flag-sensor-in-home-assistant.html
|
||||
# Modified for my own fun stuff!
|
||||
|
||||
homeassistant:
|
||||
customize:
|
||||
@@ -27,7 +29,7 @@ homeassistant:
|
||||
###############################################################################
|
||||
sensor:
|
||||
- platform: rest
|
||||
resource: https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/json_data/holidays.json
|
||||
resource: http://localhost:8123/local/json_data/holidays.json
|
||||
name: Holiday
|
||||
scan_interval: 14400
|
||||
value_template: >
|
||||
@@ -43,28 +45,21 @@ sensor:
|
||||
# Sensor Uses Flag data generated by AI
|
||||
################################################################################
|
||||
- platform: rest
|
||||
resource: https://raw.githubusercontent.com/CCOSTAN/Home-AssistantConfig/master/config/json_data/flag_days.json
|
||||
resource: http://localhost:8123/local/json_data/flag_days.json
|
||||
name: Flag
|
||||
scan_interval: 14400
|
||||
value_template: >-
|
||||
{% set now_string = now().strftime('%m/%d') %}
|
||||
{% set now_string = now().month ~ '/' ~ now().day %}
|
||||
{% set now_full_string = now().strftime('%m/%d/%Y') %}
|
||||
{% if value_json is defined and value_json.Flag_Days_US is defined %}
|
||||
{% set static_days = value_json.Flag_Days_US.static %}
|
||||
{% set dynamic_days = value_json.Flag_Days_US.dynamic %}
|
||||
{% if static_days is defined and now_string in static_days %}
|
||||
True
|
||||
{% elif dynamic_days is defined %}
|
||||
{% for day_val in dynamic_days %}
|
||||
{% if day_val.date == now_full_string %}
|
||||
True
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
False
|
||||
{% endif %}
|
||||
{% set flag_data = value_json.Flag_Days_US if value_json is defined and value_json.Flag_Days_US is defined else {} %}
|
||||
{% set static_days = flag_data.static if flag_data.static is defined else {} %}
|
||||
{% set dynamic_days = flag_data.dynamic if flag_data.dynamic is defined else {} %}
|
||||
{% if now_string in static_days %}
|
||||
True
|
||||
{% elif now_full_string in dynamic_days %}
|
||||
True
|
||||
{% else %}
|
||||
|
||||
False
|
||||
{% endif %}
|
||||
|
||||
################################################################################
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
#-------------------------------------------
|
||||
# Realtime Debugging Related Packages
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# More information found here #780, #168
|
||||
# https://github.com/CCOSTAN/Home-AssistantConfig/issues/780
|
||||
# https://github.com/CCOSTAN/Home-AssistantConfig/issues/168
|
||||
# iOS Debugging - Notification helpers and app diagnostics.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## iOS push config and troubleshooting helpers.
|
||||
######################################################################
|
||||
# More info: https://github.com/CCOSTAN/Home-AssistantConfig/issues/780 | #168
|
||||
|
||||
notify:
|
||||
# - platform: ios #Not Needed anymore - 10/04/2020
|
||||
@@ -13,12 +14,12 @@ notify:
|
||||
platform: group
|
||||
services:
|
||||
- service: mobile_app_stacey_iphone11
|
||||
- service: mobile_app_carlo_xsmax
|
||||
- service: mobile_app_carlo_maxpro
|
||||
- name: ios_parents
|
||||
platform: group
|
||||
services:
|
||||
- service: mobile_app_stacey_iphone11
|
||||
- service: mobile_app_carlo_xsmax
|
||||
- service: mobile_app_carlo_maxpro
|
||||
|
||||
mobile_app:
|
||||
|
||||
|
||||
@@ -1,17 +1,18 @@
|
||||
#-------------------------------------------
|
||||
# Landscape Lighting Packages
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Landscape Lights are Tuya Based Outlets in Smart_Life Package.
|
||||
#-------------------------------------------
|
||||
|
||||
# Landscape Lighting - Tuya Smart Life outlets for exterior lights.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## Schedules and overrides for landscape lighting.
|
||||
######################################################################
|
||||
# Outlets managed via Smart_Life package.
|
||||
group:
|
||||
landscaping:
|
||||
entities:
|
||||
- switch.front_landscaping
|
||||
- switch.back_landscaping
|
||||
- switch.villaneri
|
||||
# - switch.villaneri
|
||||
#-------------------------------------------
|
||||
# Automation : Added to Sunset_ON
|
||||
# Automation : Added to Sunset_OFF
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
###################################
|
||||
## Lightning is no Joke around here.
|
||||
# @CCOSTAN
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# https://github.com/CCOSTAN/Home-AssistantConfig/issues/392
|
||||
# https://www.vcloudinfo.com/2020/08/adding-a-lightning-sensor-to-home-assistant.html
|
||||
###################################
|
||||
# -------------------------------------------------------------------
|
||||
# Lightning Alerts - Nearby strike warnings and snooze workflow
|
||||
# Related Issue: 1550
|
||||
# Keeps push alerts but also logs to Activity feed.
|
||||
# -------------------------------------------------------------------
|
||||
# Guide: https://www.vcloudinfo.com/2020/08/adding-a-lightning-sensor-to-home-assistant.html | Existing Issue #392
|
||||
######################################################################
|
||||
input_boolean:
|
||||
snooze_lightning:
|
||||
name: Snooze Lightning
|
||||
@@ -43,6 +47,11 @@ automation:
|
||||
state: 'off'
|
||||
|
||||
action:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "WEATHER"
|
||||
message: >-
|
||||
Lightning detected within {{ (states('sensor.blitzortung_lightning_distance') | int / 1.609) | round(1, 'floor') }} miles.
|
||||
- service: script.notify_engine_two_button
|
||||
data:
|
||||
title: 'Lightning Warning!'
|
||||
|
||||
96
config/packages/llmvision.yaml
Normal file
96
config/packages/llmvision.yaml
Normal file
@@ -0,0 +1,96 @@
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# LLM Vision - Garage Cans X Check - detects reflective X on right wall
|
||||
# Trigger with input_button.llmvision_garbage_check to update garbage_cans_out.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: LLMVision analyzes camera.garagecam; expects strict "on"/"off" output.
|
||||
# Docs: https://llmvision.gitbook.io/getting-started/usage/image-analyzer
|
||||
######################################################################
|
||||
|
||||
input_button:
|
||||
llmvision_garbage_check:
|
||||
name: "LLM Vision: Garage cans check"
|
||||
icon: mdi:delete-variant
|
||||
|
||||
input_boolean:
|
||||
garbage_cans_out:
|
||||
name: "Garbage Cans Out"
|
||||
icon: mdi:trash-can
|
||||
|
||||
input_text:
|
||||
llmvision_garbage_last_response:
|
||||
name: "LLM Vision garage response"
|
||||
max: 255
|
||||
llmvision_garbage_last_keyframe:
|
||||
name: "LLM Vision garage key frame"
|
||||
max: 255
|
||||
|
||||
input_datetime:
|
||||
llmvision_garbage_last_run:
|
||||
name: "LLM Vision garage last run"
|
||||
has_date: true
|
||||
has_time: true
|
||||
|
||||
template:
|
||||
- binary_sensor:
|
||||
- name: "Garbage Cans Out"
|
||||
unique_id: llmvision_garbage_cans_out
|
||||
device_class: presence
|
||||
state: "{{ is_state('input_boolean.garbage_cans_out', 'on') }}"
|
||||
attributes:
|
||||
last_run: "{{ states('input_datetime.llmvision_garbage_last_run') }}"
|
||||
last_response: "{{ states('input_text.llmvision_garbage_last_response') }}"
|
||||
last_key_frame: "{{ states('input_text.llmvision_garbage_last_keyframe') }}"
|
||||
source_camera: camera.garagecam
|
||||
|
||||
automation:
|
||||
- alias: LLM Vision - Garbage cans out
|
||||
id: d88a2e6d-78f3-4bb7-9d9f-c4d06e6eb5a9
|
||||
mode: restart
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: input_button.llmvision_garbage_check
|
||||
variables:
|
||||
prompt_text: >
|
||||
Examine the image. I have taped a reflective X on the right wall. Look for the reflective X on the right wall. If you clearly see the X, respond exactly: on. If you cannot see the X, respond exactly: off. No other words.
|
||||
action:
|
||||
- service: llmvision.data_analyzer
|
||||
response_variable: llmvision_result
|
||||
data:
|
||||
provider: !secret llmvision_provider_entry
|
||||
model: gpt-4.1-nano
|
||||
message: "{{ prompt_text }}"
|
||||
sensor_entity: input_boolean.garbage_cans_out
|
||||
image_entity:
|
||||
- camera.garagecam
|
||||
include_filename: false
|
||||
target_width: 1280
|
||||
max_tokens: 16
|
||||
expose_images: true
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.llmvision_garbage_last_response
|
||||
data:
|
||||
value: "{{ (llmvision_result.response_text | default('unknown'))[:250] }}"
|
||||
- choose:
|
||||
- conditions: "{{ llmvision_result is defined and llmvision_result.key_frame is defined }}"
|
||||
sequence:
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.llmvision_garbage_last_keyframe
|
||||
data:
|
||||
value: "{{ llmvision_result.key_frame }}"
|
||||
default:
|
||||
- service: input_text.set_value
|
||||
target:
|
||||
entity_id: input_text.llmvision_garbage_last_keyframe
|
||||
data:
|
||||
value: ""
|
||||
- service: input_datetime.set_datetime
|
||||
target:
|
||||
entity_id: input_datetime.llmvision_garbage_last_run
|
||||
data:
|
||||
datetime: "{{ now() }}"
|
||||
18
config/packages/logbook_activity_feed.yaml
Normal file
18
config/packages/logbook_activity_feed.yaml
Normal file
@@ -0,0 +1,18 @@
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Logbook Activity Feed - Dummy entity for Activity pseudo-filtering
|
||||
# Related Issue: 1550
|
||||
# Provides `sensor.activity_feed` as a stable entity_id for `logbook.log`.
|
||||
# -------------------------------------------------------------------
|
||||
######################################################################
|
||||
|
||||
template:
|
||||
- sensor:
|
||||
- name: Activity Feed
|
||||
unique_id: activity_feed
|
||||
icon: mdi:clipboard-text
|
||||
state: "ready"
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
#-------------------------------------------
|
||||
# Realtime Debugging Related Packages
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
#-------------------------------------------
|
||||
|
||||
input_select:
|
||||
log_level:
|
||||
name: Log Level
|
||||
options:
|
||||
- critical
|
||||
- fatal
|
||||
- error
|
||||
- warning
|
||||
- warn
|
||||
- info
|
||||
- debug
|
||||
- notset
|
||||
initial: warn
|
||||
icon: mdi:bug
|
||||
###################################
|
||||
## Dynamically set the log levels without having to restart HASS or edit configuration.yaml
|
||||
#- Thanks @VDRainer
|
||||
###################################
|
||||
automation:
|
||||
- alias: Log Level
|
||||
id: 8196e9d4-5174-492e-8523-6ef70ccbd8dd
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id:
|
||||
- input_select.log_level
|
||||
# - input_select.log_component
|
||||
action:
|
||||
- service: logger.set_level
|
||||
data:
|
||||
homeassistant.components: "{{ states.input_select.log_level.state }}"
|
||||
|
||||
170
config/packages/mariadb_monitoring.yaml
Normal file
170
config/packages/mariadb_monitoring.yaml
Normal file
@@ -0,0 +1,170 @@
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# MariaDB Monitoring - SQL sensor bundle for DB health
|
||||
# Recorder-backed metrics for MariaDB performance and capacity checks.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Uses SQL integration against recorder_db_url.
|
||||
# Notes: COUNT(*) queries run every 6h; increase scan_interval or disable if slow.
|
||||
######################################################################
|
||||
|
||||
sql:
|
||||
- name: "MariaDB Status"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT 'running' as status
|
||||
FROM information_schema.GLOBAL_STATUS
|
||||
WHERE VARIABLE_NAME = 'Uptime'
|
||||
AND CAST(VARIABLE_VALUE AS UNSIGNED) > 0;
|
||||
column: "status"
|
||||
value_template: "{{ value if value else 'stopped' }}"
|
||||
|
||||
- name: "MariaDB Version"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT @@version as version;
|
||||
column: "version"
|
||||
|
||||
- name: "MariaDB Performance"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT ROUND(
|
||||
(SELECT VARIABLE_VALUE
|
||||
FROM information_schema.GLOBAL_STATUS
|
||||
WHERE VARIABLE_NAME = 'Queries') /
|
||||
(SELECT VARIABLE_VALUE
|
||||
FROM information_schema.GLOBAL_STATUS
|
||||
WHERE VARIABLE_NAME = 'Uptime')
|
||||
) as performance;
|
||||
column: "performance"
|
||||
unit_of_measurement: "q/s"
|
||||
|
||||
- name: "Database Size"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) as size
|
||||
FROM information_schema.tables
|
||||
WHERE table_schema = 'homeassistant';
|
||||
column: "size"
|
||||
unit_of_measurement: "MB"
|
||||
value_template: "{{ value | float(0) }}"
|
||||
|
||||
- name: "Database Tables Count"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT COUNT(*) as count
|
||||
FROM information_schema.tables
|
||||
WHERE table_schema = 'homeassistant';
|
||||
column: "count"
|
||||
unit_of_measurement: "tables"
|
||||
|
||||
- name: "Database Oldest Record"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT DATE_FORMAT(FROM_UNIXTIME(MIN(last_updated_ts)), '%Y-%m-%d') as oldest
|
||||
FROM states;
|
||||
column: "oldest"
|
||||
|
||||
- name: "Database Total Records"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT COUNT(*) as count
|
||||
FROM states;
|
||||
column: "count"
|
||||
unit_of_measurement: "records"
|
||||
|
||||
- name: "Database Records Per Day"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT ROUND(
|
||||
COUNT(*) /
|
||||
GREATEST(DATEDIFF(NOW(), FROM_UNIXTIME(MIN(last_updated_ts))), 1),
|
||||
0
|
||||
) as avg
|
||||
FROM states;
|
||||
column: "avg"
|
||||
unit_of_measurement: "records/day"
|
||||
|
||||
- name: "MariaDB Uptime"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT VARIABLE_VALUE as value
|
||||
FROM information_schema.GLOBAL_STATUS
|
||||
WHERE VARIABLE_NAME = 'Uptime';
|
||||
column: "value"
|
||||
unit_of_measurement: "seconds"
|
||||
|
||||
- name: "MariaDB Connections"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT VARIABLE_VALUE as value
|
||||
FROM information_schema.GLOBAL_STATUS
|
||||
WHERE VARIABLE_NAME = 'Threads_connected';
|
||||
column: "value"
|
||||
unit_of_measurement: "connections"
|
||||
|
||||
- name: "MariaDB Questions"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT VARIABLE_VALUE as value
|
||||
FROM information_schema.GLOBAL_STATUS
|
||||
WHERE VARIABLE_NAME = 'Questions';
|
||||
column: "value"
|
||||
unit_of_measurement: "queries"
|
||||
|
||||
- name: "MariaDB Buffer Pool Size"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT CONCAT(ROUND(@@innodb_buffer_pool_size / 1024 / 1024 / 1024, 1), ' GB') as value;
|
||||
column: "value"
|
||||
|
||||
- name: "MariaDB Max Connections"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT @@max_connections as value;
|
||||
column: "value"
|
||||
|
||||
- name: "MariaDB Log File Size"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT CONCAT(ROUND(@@innodb_log_file_size / 1024 / 1024, 0), ' MB') as value;
|
||||
column: "value"
|
||||
|
||||
- name: "MariaDB Tmp Table Size"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT CONCAT(ROUND(@@tmp_table_size / 1024 / 1024, 0), ' MB') as value;
|
||||
column: "value"
|
||||
|
||||
- name: "MariaDB IO Capacity"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT @@innodb_io_capacity as value;
|
||||
column: "value"
|
||||
|
||||
- name: "MariaDB IO Threads"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT CONCAT(
|
||||
'Read: ', @@innodb_read_io_threads,
|
||||
', Write: ', @@innodb_write_io_threads
|
||||
) as value;
|
||||
column: "value"
|
||||
|
||||
- name: "MariaDB Table Cache"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT @@table_open_cache as value;
|
||||
column: "value"
|
||||
|
||||
- name: "MariaDB Buffer Sizes"
|
||||
db_url: !secret recorder_db_url
|
||||
query: >-
|
||||
SELECT CONCAT(
|
||||
'Sort: ', ROUND(@@sort_buffer_size / 1024 / 1024, 0), 'M, ',
|
||||
'Read: ', ROUND(@@read_buffer_size / 1024 / 1024, 0), 'M, ',
|
||||
'Join: ', ROUND(@@join_buffer_size / 1024 / 1024, 0), 'M'
|
||||
) as value;
|
||||
column: "value"
|
||||
@@ -1,10 +1,11 @@
|
||||
######################################################################
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# ## - Reminders to take my medicine
|
||||
# Medicine Reminders - Take medicine notifications.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## Medication reminder timers and alerts.
|
||||
######################################################################
|
||||
|
||||
|
||||
input_boolean:
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Minecraft related stuff
|
||||
#-------------------------------------------
|
||||
automation:
|
||||
- alias: Someone on the MC server!
|
||||
id: e7cc50d1-2374-4923-8e0c-2a59ff593cf8
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.minecraft_players_online
|
||||
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
value1: >
|
||||
{% if states.sensor.minecraft_players_online.state|int > 0 %}
|
||||
{{ states.sensor.minecraft_players_online.state }} player(s) connected to Minecraft server
|
||||
{% else %}
|
||||
All players disconnected from Minecraft server
|
||||
{% endif %}
|
||||
title: "Minecraft Server Status"
|
||||
who: 'carlo'
|
||||
group: 'information'
|
||||
11
config/packages/n8n.yaml
Normal file
11
config/packages/n8n.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# n8n Discord Router - Route HA events to Discord
|
||||
# Central REST command into n8n's Discord routing webhook
|
||||
# -------------------------------------------------------------------
|
||||
# <No related GitHub issue>
|
||||
# REST endpoint: n8n webhook /discord-router
|
||||
######################################################################
|
||||
@@ -1,10 +1,11 @@
|
||||
#-------------------------------------------
|
||||
# Messing around with NFC stickers - https://amzn.to/3L7efQv
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
#
|
||||
# NFC Tags - Trigger automations with NFC stickers.
|
||||
#-------------------------------------------
|
||||
|
||||
######################################################################
|
||||
## NFC tag experiments and quick actions. https://amzn.to/3L7efQv
|
||||
######################################################################
|
||||
automation:
|
||||
- alias: 'Toggle Office Lamp with NFC tag'
|
||||
id: 30c6d2bb-fe8b-4101-9241-03416726cdf4
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
#-------------------------------------------
|
||||
# Noon Home Switches and Lights - https://amzn.to/3fOIPx6
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Changing the way we call these routines.. no longer using routines.. using custom commands via ALEXA Media Player.
|
||||
# https://github.com/CCOSTAN/Home-AssistantConfig/issues/366
|
||||
# Noon No longer supported.
|
||||
# Noon Home - Switch and light routines via Alexa Media Player.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## Noon Home lighting controls (legacy hardware). https://amzn.to/3fOIPx6
|
||||
######################################################################
|
||||
# Routines now use custom Alexa commands (issue #366). Noon no longer supported.
|
||||
|
||||
##################################################
|
||||
## Scripts
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
#-------------------------------------------
|
||||
# Motion Sensor in the office.
|
||||
# Find more recipes @ https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Office Motion - Motion/illuminance triggers for office lighting.
|
||||
#-------------------------------------------
|
||||
#------LightSensor Node---https://amzn.to/2oUgj5i
|
||||
######################################################################
|
||||
## Office motion sensors and automations.
|
||||
######################################################################
|
||||
# Light sensor node: https://amzn.to/2oUgj5i
|
||||
homeassistant:
|
||||
customize:
|
||||
binary_sensor.office_motion:
|
||||
|
||||
@@ -1,12 +1,15 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Phyn Smart Water ShutOff Support
|
||||
# https://www.vcloudinfo.com/2020/05/phyn-plus-smart-water-shutoff-device.html
|
||||
# Added in Custom HACK integration via https://github.com/MizterB/homeassistant-phyn
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## Phyn Plus Water ShutOff - https://amzn.to/2Zy3sbJ
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Phyn Plus Water Shutoff - Leak detection and auto shutoff
|
||||
# Related Issue: 1550
|
||||
# Push + Activity feed + Repairs issue while valve is closed.
|
||||
# -------------------------------------------------------------------
|
||||
# Info: https://www.vcloudinfo.com/2020/05/phyn-plus-smart-water-shutoff-device.html
|
||||
# HACS: https://github.com/MizterB/homeassistant-phyn
|
||||
# Product: https://amzn.to/2Zy3sbJ
|
||||
######################################################################
|
||||
|
||||
automation:
|
||||
@@ -16,15 +19,31 @@ automation:
|
||||
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: switch.phyn_shutoff_valve
|
||||
to: 'off'
|
||||
entity_id: valve.phyn_shutoff_valve
|
||||
to: 'closed'
|
||||
|
||||
condition:
|
||||
- condition: time
|
||||
before: '03:00'
|
||||
after: '05:00'
|
||||
- condition: state
|
||||
entity_id: binary_sensor.phyn_leak_test_running
|
||||
state: 'off'
|
||||
|
||||
action:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "WATER"
|
||||
message: "Phyn detected a leak and shut off the water. Please verify."
|
||||
|
||||
- service: repairs.create
|
||||
data:
|
||||
issue_id: "phyn_leak_shutoff"
|
||||
title: "Phyn leak shutoff"
|
||||
severity: "critical"
|
||||
persistent: true
|
||||
description: >-
|
||||
Phyn detected a potential leak and automatically closed the main water valve.
|
||||
|
||||
Verify there are no active leaks before restoring water service.
|
||||
|
||||
- service: script.notify_engine_two_button
|
||||
data:
|
||||
title: 'Phyn Leak Detection'
|
||||
@@ -36,6 +55,17 @@ automation:
|
||||
icon1: 'sfsymbols:arrow.up.circle'
|
||||
icon2: 'sfsymbols:clock'
|
||||
level: 'critical'
|
||||
|
||||
- service: persistent_notification.create
|
||||
data:
|
||||
title: '🚨 Phyn Leak Detection Alert'
|
||||
message: |
|
||||
**CRITICAL**: Phyn has detected a potential leak and automatically shut off the main water supply.
|
||||
|
||||
**Action Required**: Please verify there are no leaks in the house before turning the water back on.
|
||||
|
||||
**Time**: {{ now().strftime('%Y-%m-%d %H:%M:%S') }}
|
||||
notification_id: 'phyn_leak_detection'
|
||||
|
||||
- alias: Turn Phyn Water On
|
||||
id: 1f295bb8-8925-4b22-PHYN-9fe079b295a8
|
||||
@@ -46,7 +76,11 @@ automation:
|
||||
action: PHYN_WATER_ON
|
||||
action:
|
||||
- service: homeassistant.turn_on
|
||||
entity_id: switch.phyn_shutoff_valve
|
||||
entity_id: valve.phyn_shutoff_valve
|
||||
|
||||
- service: persistent_notification.dismiss
|
||||
data:
|
||||
notification_id: 'phyn_leak_detection'
|
||||
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
@@ -82,3 +116,19 @@ automation:
|
||||
icon1: 'sfsymbols:arrow.up.circle'
|
||||
icon2: 'sfsymbols:clock'
|
||||
level: 'critical'
|
||||
|
||||
- alias: Dismiss Phyn Notification When Valve Opens
|
||||
id: 3f295bb8-8925-4b22-PHYN-9fe079b295a8
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: valve.phyn_shutoff_valve
|
||||
to: 'open'
|
||||
action:
|
||||
- service: repairs.remove
|
||||
continue_on_error: true
|
||||
data:
|
||||
issue_id: "phyn_leak_shutoff"
|
||||
- service: persistent_notification.dismiss
|
||||
data:
|
||||
notification_id: 'phyn_leak_detection'
|
||||
|
||||
|
||||
@@ -1,12 +1,43 @@
|
||||
######################################################################################################
|
||||
### @Tesla Powerwall - https://www.vcloudinfo.com/2018/01/going-green-to-save-some-green-in-2018.html
|
||||
# # @CCOSTAN
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Read more about this on https://www.vcloudinfo.com
|
||||
# -------------------------------------------------------------------
|
||||
# Tesla Powerwall - Monitoring and outage automations
|
||||
# Related Issue: 1550
|
||||
# Powerwall status sensors, outage alerting, and load-shedding helpers.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Read more https://www.vcloudinfo.com/2018/01/going-green-to-save-some-green-in-2018.html | Existing Issue #272
|
||||
# Tesla Powerwall added via UI Integration
|
||||
# Tesla Powerwall Monitoring #272
|
||||
######################################################################################################
|
||||
|
||||
######################################################################
|
||||
# Binary Sensors:
|
||||
# - binary_sensor.powerwall_charging ............. battery_charging (on=charging)
|
||||
# - binary_sensor.powerwall_connected_to_tesla ... connectivity (on=connected)
|
||||
# - binary_sensor.powerwall_grid_services_active .. power (on=active)
|
||||
# - binary_sensor.powerwall_grid_status .......... power (on=grid up)
|
||||
# - binary_sensor.powerwall_status ............... power (on=system ok)
|
||||
#
|
||||
# Power & Energy Sensors:
|
||||
# - sensor.powerwall_charge ...................... battery %, 0–100
|
||||
# - sensor.powerwall_backup_reserve .............. reserve %, 0–100
|
||||
# - sensor.powerwall_battery_power ............... kW (+discharge / -charge)
|
||||
# - sensor.powerwall_load_power .................. kW house load
|
||||
# - sensor.powerwall_site_power .................. kW (+export / -import)
|
||||
# - sensor.powerwall_solar_power ................. kW solar production
|
||||
#
|
||||
# Lifetime kWh Meters:
|
||||
# - sensor.powerwall_battery_export .............. kWh -> grid/load
|
||||
# - sensor.powerwall_battery_import .............. kWh <- battery charged
|
||||
# - sensor.powerwall_load_export ................. kWh exported from loads
|
||||
# - sensor.powerwall_load_import ................. kWh imported to loads
|
||||
# - sensor.powerwall_site_export ................. kWh site -> grid
|
||||
# - sensor.powerwall_site_import ................. kWh site <- grid
|
||||
# - sensor.powerwall_solar_export ................ kWh solar -> site/battery/grid
|
||||
# - sensor.powerwall_solar_import ................ kWh solar <- grid (rare)
|
||||
#
|
||||
# Switches:
|
||||
# - switch.powerwall_off_grid_operation .......... island mode toggle
|
||||
######################################################################
|
||||
|
||||
#-------------------------------------------
|
||||
automation:
|
||||
@@ -24,6 +55,11 @@ automation:
|
||||
trigger.from_state.state not in ['unavailable', 'unknown', 'null'] }}
|
||||
|
||||
action:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "POWER"
|
||||
message: >-
|
||||
Grid status is {{ (trigger.to_state.state)|replace('on', 'up')|replace('off', 'down') }}.
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: "Electrical Grid Status {{ (trigger.to_state.state)|replace('on', 'up')|replace('off', 'down') }}."
|
||||
@@ -38,13 +74,15 @@ automation:
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
to: 'False'
|
||||
to: 'off'
|
||||
|
||||
action:
|
||||
- service: homeassistant.turn_off
|
||||
entity_id:
|
||||
- group.interior_lights
|
||||
- group.exterior_lights
|
||||
- switch.kitchen_accent_2
|
||||
- switch.master_bathroom_accent_2
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: "Electrical Grid Status {{ (trigger.to_state.state)|replace('True', 'up')|replace('False', 'down') }}."
|
||||
@@ -58,6 +96,8 @@ automation:
|
||||
entity_id:
|
||||
- group.interior_lights
|
||||
- group.exterior_lights
|
||||
- switch.kitchen_accent_2
|
||||
- switch.master_bathroom_accent_2
|
||||
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
@@ -69,6 +109,8 @@ automation:
|
||||
entity_id:
|
||||
- group.interior_lights
|
||||
- group.exterior_lights
|
||||
- switch.kitchen_accent_2
|
||||
- switch.master_bathroom_accent_2
|
||||
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
@@ -88,6 +130,22 @@ automation:
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
state: 'on'
|
||||
action:
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "POWER"
|
||||
message: "Powerwall charge below 60% for 24h (current: {{ states('sensor.powerwall_charge') }}%)."
|
||||
|
||||
- service: repairs.create
|
||||
data:
|
||||
issue_id: "powerwall_low_charge_60_24h"
|
||||
title: "Powerwall charge low for 24h"
|
||||
severity: "warning"
|
||||
persistent: true
|
||||
description: >-
|
||||
Powerwall has been below 60% for 24 hours while the grid is online.
|
||||
|
||||
Current charge: {{ states('sensor.powerwall_charge') }}%.
|
||||
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: "Powerwall Low Charge Alert - Current Charge: {{ states('sensor.powerwall_charge') }}"
|
||||
@@ -95,6 +153,150 @@ automation:
|
||||
who: 'parents'
|
||||
group: 'information'
|
||||
|
||||
- alias: "Powerwall Low Charge Resolved - Clear Repair Issue"
|
||||
id: 5fd1f0b3-0e64-4a4b-bd7a-9f5d5e6b8f90
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.powerwall_charge
|
||||
above: 60
|
||||
for:
|
||||
minutes: 10
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
state: 'on'
|
||||
action:
|
||||
- service: repairs.remove
|
||||
continue_on_error: true
|
||||
data:
|
||||
issue_id: "powerwall_low_charge_60_24h"
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "POWER"
|
||||
message: "Powerwall charge recovered above 60%. Cleared repair issue."
|
||||
|
||||
- alias: "Shut down Docker hosts and camera PoE at 75% Powerwall"
|
||||
id: 25b3d3d8-92fa-454a-9f1c-6d3fd0f3af58
|
||||
description: "Protect battery by shutting down non-essentials when Powerwall drops below 75%"
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.powerwall_charge
|
||||
below: 75
|
||||
for:
|
||||
minutes: 3
|
||||
action:
|
||||
- service: button.press
|
||||
target:
|
||||
entity_id:
|
||||
- button.qemu_docker2_101_shutdown
|
||||
- button.qemu_docker69_169_shutdown
|
||||
- service: switch.turn_off
|
||||
target:
|
||||
entity_id:
|
||||
- switch.poe_garage_port_3_poe
|
||||
- switch.poe_garage_port_4_poe
|
||||
- switch.poe_garage_port_5_poe
|
||||
- switch.poe_garage_port_6_poe
|
||||
|
||||
- alias: "Powerwall outage - Rheem WH off at night"
|
||||
id: d686f650-65ad-4cc6-8e27-8b5ee76b5338
|
||||
description: "During outages, turn off the water heater after sunset to protect battery"
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: sun
|
||||
event: sunset
|
||||
- platform: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
to: 'off'
|
||||
for:
|
||||
minutes: 1
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
state: 'off'
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: sun
|
||||
after: sunset
|
||||
- condition: sun
|
||||
before: sunrise
|
||||
action:
|
||||
- service: water_heater.set_operation_mode
|
||||
target:
|
||||
entity_id: water_heater.rheem_wh
|
||||
data:
|
||||
state: off
|
||||
|
||||
- alias: "Powerwall outage - Rheem WH heat pump after sunrise and 50%"
|
||||
id: 7b6e8bb0-7d0c-4e63-89cf-ff6e7811b579
|
||||
description: "During outages, restore water heater to heat pump once battery is healthy during daytime"
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: sun
|
||||
event: sunrise
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.powerwall_charge
|
||||
above: 50
|
||||
for:
|
||||
minutes: 5
|
||||
- platform: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
to: 'off'
|
||||
for:
|
||||
minutes: 1
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
state: 'off'
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.powerwall_charge
|
||||
above: 50
|
||||
- condition: sun
|
||||
after: sunrise
|
||||
before: sunset
|
||||
action:
|
||||
- service: water_heater.set_operation_mode
|
||||
target:
|
||||
entity_id: water_heater.rheem_wh
|
||||
data:
|
||||
state: heat_pump
|
||||
|
||||
- alias: "Notify to restore PoE ports when grid returns"
|
||||
id: 1ae8b5c5-8627-4a44-8c8a-5bf8ca5e1bf5
|
||||
description: "Prompt to turn PoE ports back on after outage shutdown steps"
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
for:
|
||||
minutes: 10
|
||||
condition:
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: switch.poe_garage_port_3_poe
|
||||
state: 'off'
|
||||
- condition: state
|
||||
entity_id: switch.poe_garage_port_4_poe
|
||||
state: 'off'
|
||||
- condition: state
|
||||
entity_id: switch.poe_garage_port_5_poe
|
||||
state: 'off'
|
||||
- condition: state
|
||||
entity_id: switch.poe_garage_port_6_poe
|
||||
state: 'off'
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
title: "Grid restored - turn PoE ports back on"
|
||||
value1: "Power is back. Remember to re-enable PoE ports 3-6 if cameras stayed offline."
|
||||
who: 'family'
|
||||
group: 'information'
|
||||
|
||||
# https://github.com/CCOSTAN/Home-AssistantConfig/issues/547
|
||||
- alias: Turn off the Nest Thermostats during a Power Outage
|
||||
id: 022bd9da-ab7c-4c1b-9e95-2ff4ffe5f9cc
|
||||
@@ -102,7 +304,7 @@ automation:
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
to: 'False'
|
||||
to: 'off'
|
||||
for:
|
||||
minutes: 6
|
||||
|
||||
@@ -130,10 +332,10 @@ automation:
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.powerwall_grid_status
|
||||
from: 'False'
|
||||
to: 'True'
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
for:
|
||||
minutes: 5
|
||||
minutes: 10
|
||||
|
||||
condition:
|
||||
- condition: template
|
||||
@@ -151,15 +353,15 @@ automation:
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id: climate.downstairs
|
||||
hvac_mode: auto
|
||||
hvac_mode: cool
|
||||
- service: climate.set_hvac_mode
|
||||
data:
|
||||
entity_id: climate.upstairs
|
||||
hvac_mode: cool
|
||||
- service: climate.set_preset_mode
|
||||
- service: climate.set_temperature
|
||||
data:
|
||||
entity_id: climate.upstairs
|
||||
preset_mode: eco
|
||||
temperature: 80
|
||||
|
||||
- service: script.notify_engine
|
||||
data:
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# inspired by https://community.home-assistant.io/t/epson-wf-3540-ink-level-monitoring/21813
|
||||
# Printer Watchdog - Monitor Epson ink and status.
|
||||
#-------------------------------------------
|
||||
|
||||
######################################################################
|
||||
## Printer status sensors and health alerts.
|
||||
######################################################################
|
||||
# Inspired by https://community.home-assistant.io/t/epson-wf-3540-ink-level-monitoring/21813
|
||||
##############################################################################
|
||||
### Automations - Detect when things are not right. Like any Good Watchdog.
|
||||
##############################################################################
|
||||
@@ -51,5 +54,15 @@ automation:
|
||||
data:
|
||||
type: announce
|
||||
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "PRINTER"
|
||||
message: >
|
||||
{% if trigger.to_state.state == 'idle' %}
|
||||
Printer has powered on and is ready
|
||||
{% else %}
|
||||
Printer is now printing
|
||||
{% endif %}
|
||||
|
||||
|
||||
#-------------------------------------------
|
||||
|
||||
@@ -1,7 +1,11 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Process Monitor - Track HA-related services and processes.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## Process status sensors and notifications.
|
||||
######################################################################
|
||||
# homeassistant:
|
||||
# customize:
|
||||
# sensor.process_mosquitto:
|
||||
@@ -31,6 +35,10 @@ automation:
|
||||
value2: "Your harddrive is running out of Space! /dev/root:{{ states.sensor.disk_use_percent.state }}%!"
|
||||
value3: 'Attempting to clean'
|
||||
who: 'carlo'
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "SYSTEM"
|
||||
message: "Disk usage exceeded 80% (/dev/root: {{ states.sensor.disk_use_percent.state }}%). Attempting to clean."
|
||||
- service: tts.clear_cache
|
||||
|
||||
- alias: "Disk Use Alarm"
|
||||
@@ -45,3 +53,7 @@ automation:
|
||||
value1: 'Hard Drive Monitor:'
|
||||
value2: "Your harddrive is running out of Space! /dev/root:{{ states.sensor.disk_use_percent.state }}%!"
|
||||
who: 'carlo'
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "SYSTEM"
|
||||
message: "Disk usage exceeded 90% (/dev/root: {{ states.sensor.disk_use_percent.state }}%)."
|
||||
|
||||
@@ -1,12 +1,18 @@
|
||||
#-------------------------------------------
|
||||
# Setting up nightly reboot schedule for Frigate server via Proxmox
|
||||
# https://www.vcloudinfo.com/click-here
|
||||
#-------------------------------------------
|
||||
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# -------------------------------------------------------------------
|
||||
# Proxmox Host Automations - reboots and update alerts
|
||||
# Nightly Frigate host reboot plus update repair issues.
|
||||
# -------------------------------------------------------------------
|
||||
# Notes: Creates HA repair issues when proxmox nodes report updates.
|
||||
######################################################################
|
||||
automation:
|
||||
- alias: "Nightly Frigate Server Reboot"
|
||||
id: nightly_frigate_reboot
|
||||
description: "Reboots the Frigate server every day at 5 AM"
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: time
|
||||
at: "05:00:00"
|
||||
@@ -14,4 +20,47 @@ automation:
|
||||
- service: button.press
|
||||
target:
|
||||
entity_id: button.qemu_docker2_101_reboot
|
||||
mode: single
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "FRIGATE"
|
||||
message: "Frigate server rebooted at 5 AM."
|
||||
|
||||
- alias: "Proxmox Updates Repair Issues"
|
||||
id: proxmox_updates_repair
|
||||
description: "Track repair issues when Proxmox hosts report updates."
|
||||
mode: restart
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.node_proxmox1_updates_packages
|
||||
- platform: state
|
||||
entity_id: binary_sensor.node_proxmox02_updates_packages
|
||||
variables:
|
||||
node_name: >
|
||||
{% if 'proxmox1' in trigger.entity_id %}Proxmox1{% else %}Proxmox02{% endif %}
|
||||
issue_id: >
|
||||
{% if 'proxmox1' in trigger.entity_id %}
|
||||
proxmox1_updates_available
|
||||
{% else %}
|
||||
proxmox02_updates_available
|
||||
{% endif %}
|
||||
action:
|
||||
- choose:
|
||||
- conditions: "{{ trigger.to_state.state == 'on' }}"
|
||||
sequence:
|
||||
- service: repairs.create
|
||||
data:
|
||||
issue_id: "{{ issue_id }}"
|
||||
severity: warning
|
||||
persistent: false
|
||||
title: "{{ node_name }} has updates available"
|
||||
description: >
|
||||
{{ trigger.entity_id }} is ON, indicating pending updates on {{ node_name }}.
|
||||
Apply updates in Proxmox, then reload this sensor to clear the issue.
|
||||
default:
|
||||
- service: repairs.remove
|
||||
data:
|
||||
issue_id: "{{ issue_id }}"
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
topic: "PROXMOX"
|
||||
message: "{{ node_name }} has been Patched"
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Rachio Sprinkler system Support
|
||||
# Rachio Sprinkler - Rain skips and seasonal scheduling.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## [Rachio Sprinkler system](https://amzn.to/2eoPKBW) - Smart Sprinkler controller
|
||||
## Smart sprinkler controller via Rachio. https://amzn.to/2eoPKBW
|
||||
######################################################################
|
||||
#
|
||||
# sensor:
|
||||
@@ -12,4 +12,3 @@
|
||||
# state_topic: "ifttt/rachio/watering_time"
|
||||
# name: "Rachio_watering_time"
|
||||
|
||||
|
||||
|
||||
@@ -1,10 +1,15 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
######################################################################
|
||||
# @CCOSTAN - Follow Me on X
|
||||
# For more info visit https://www.vcloudinfo.com/click-here
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Support for Rheem Water Heaters (https://amzn.to/36yOSnN)
|
||||
# https://github.com/CCOSTAN/Home-AssistantConfig/issues/892
|
||||
# https://www.home-assistant.io/integrations/econet/
|
||||
#-------------------------------------------
|
||||
# -------------------------------------------------------------------
|
||||
# Rheem EcoNet Water Heater - Monitoring and control
|
||||
# Related Issue: 1550
|
||||
# Logs hot-water availability alerts to Activity feed; keeps announcements.
|
||||
# -------------------------------------------------------------------
|
||||
# Docs: https://www.home-assistant.io/integrations/econet/ | Existing notes: Issue #892
|
||||
# Powerwall outage control for Rheem WH lives in config/packages/powerwall.yaml
|
||||
######################################################################
|
||||
|
||||
##############################################################################
|
||||
### Automations
|
||||
@@ -48,15 +53,13 @@ automation:
|
||||
entity_id: sensor.rheem_wh_available_hot_water
|
||||
below: 30 # Alert when available hot water drops below 30%
|
||||
action:
|
||||
- service: script.notify_engine
|
||||
- service: script.send_to_logbook
|
||||
data:
|
||||
title: "Hot Water Alert"
|
||||
value1: "Available hot water is below 30%."
|
||||
who: 'carlo'
|
||||
group: 'information'
|
||||
topic: "WATER"
|
||||
message: "Hot water availability is below 30%."
|
||||
- service: script.speech_engine
|
||||
data:
|
||||
value1: "Please be aware that the hot water has dropped below 30% availability. Please consider taking a shower at another time. Gallons used today: {{sensor.phyn_daily_water_usage}}"
|
||||
value1: "Please be aware that the hot water has dropped below 30% availability. Gallons used today: {{sensor.phyn_daily_water_usage}}"
|
||||
|
||||
- service: notify.alexa_media_master_bathroom
|
||||
data:
|
||||
@@ -76,6 +79,21 @@ automation:
|
||||
data:
|
||||
value1: "The available hot water is now above 50%. Normal showering can resume. Gallons used today: {{sensor.phyn_daily_water_usage}}"
|
||||
|
||||
|
||||
#-------------------------------------------
|
||||
# Available Rheem entities snapshot (for reference)
|
||||
# automation.rheem_water_heater_health_monitoring
|
||||
# automation.rheem_water_heater_hot_water_availability_alert
|
||||
# binary_sensor.rheem_wh_running
|
||||
# binary_sensor.rheem_wh_shutoff_valve
|
||||
# sensor.rheem_wh_alert_count
|
||||
# sensor.rheem_wh_available_hot_water
|
||||
# sensor.rheem_wh_compressor_health
|
||||
# sensor.rheem_wh_override_status
|
||||
# sensor.rheem_wh_power_usage_today
|
||||
# sensor.rheem_wh_running_state
|
||||
# sensor.rheem_wh_tank_health
|
||||
# sensor.rheem_wh_water_usage_today
|
||||
# sensor.rheem_wh_wifi_signal
|
||||
# water_heater.rheem_wh
|
||||
|
||||
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# Roku Related Functions - https://amzn.to/2Ctp8cr
|
||||
# Roku - Presence detection and remote finder.
|
||||
#-------------------------------------------
|
||||
|
||||
######################################################################
|
||||
## Roku media sensors and utility helpers. https://amzn.to/2Ctp8cr
|
||||
######################################################################
|
||||
input_boolean:
|
||||
living_room_remote_finder:
|
||||
name: "Living Room Remote Finder"
|
||||
|
||||
@@ -1,96 +0,0 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
###################################
|
||||
## [SkyBell HD](https://amzn.to/2dcexIB)
|
||||
###################################
|
||||
|
||||
|
||||
skybell:
|
||||
username: !secret skybell_username
|
||||
password: !secret skybell_password
|
||||
|
||||
camera:
|
||||
- platform: skybell
|
||||
monitored_conditions:
|
||||
- avatar
|
||||
- activity
|
||||
activity_name: "Last Activity"
|
||||
|
||||
binary_sensor:
|
||||
- platform: skybell
|
||||
monitored_conditions:
|
||||
- button
|
||||
- motion
|
||||
|
||||
light:
|
||||
- platform: skybell # Part of the Outdoor Front Lights Group
|
||||
|
||||
sensor:
|
||||
- platform: skybell
|
||||
monitored_conditions:
|
||||
- chime_level
|
||||
|
||||
switch:
|
||||
- platform: skybell
|
||||
monitored_conditions:
|
||||
# - do_not_disturb
|
||||
- motion_sensor
|
||||
|
||||
###################################
|
||||
## Automations
|
||||
###################################
|
||||
## Doorbell Press
|
||||
automation:
|
||||
- alias: 'Log SkyBell Pressed Activity'
|
||||
id: 64226512-f35d-4179-bfcb-9de158b8d3f4
|
||||
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- binary_sensor.skybell_front_door_button
|
||||
to: 'on'
|
||||
- platform: event
|
||||
event_type: skybell_pressed
|
||||
|
||||
condition:
|
||||
- condition: template
|
||||
value_template: >
|
||||
{%- if states.binary_sensor.skybell_front_door_button.attributes.last_triggered -%}
|
||||
{{ (as_timestamp(now()) - as_timestamp(states.binary_sensor.skybell_front_door_button.attributes.last_triggered)) > 200 }}
|
||||
{%- else -%}
|
||||
true
|
||||
{%- endif -%}
|
||||
|
||||
action:
|
||||
- service: script.skybell_pressed
|
||||
|
||||
|
||||
# Motion Sensing
|
||||
- alias: 'Log SkyBell Motion detection'
|
||||
id: a22c2cb7-08b2-4bd1-bc82-77201253a000
|
||||
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: skybell_motion
|
||||
|
||||
action:
|
||||
- service: script.front_house_motion
|
||||
|
||||
# Turn SkyBell Light and Neato Schedule back on if it's turned off. Like any Good Watchdog.
|
||||
|
||||
- alias: Automated Mismatch WatchDog!
|
||||
id: bff434b9-5916-42d1-8620-5723b4b1879d
|
||||
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- light.front_door
|
||||
- switch.carlo_neato_schedule
|
||||
to: 'off'
|
||||
|
||||
#Turn it back on!
|
||||
action:
|
||||
- service: homeassistant.turn_on
|
||||
data:
|
||||
entity_id: "{{ trigger.entity_id }}"
|
||||
@@ -1,7 +1,11 @@
|
||||
#-------------------------------------------
|
||||
# @CCOSTAN
|
||||
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
|
||||
# SleepIQ - Bed presence and Sleep Number metrics.
|
||||
#-------------------------------------------
|
||||
######################################################################
|
||||
## SleepIQ sensors and automation helpers.
|
||||
######################################################################
|
||||
homeassistant:
|
||||
customize_glob:
|
||||
"sensor.*_sleep_hours":
|
||||
@@ -49,6 +53,19 @@ group:
|
||||
- sensor.sleepnumber_carlo_stacey_sleepnumber
|
||||
# - sensor.Stacey_sleep_hours
|
||||
|
||||
##############################################################################
|
||||
### Automations - Detect when things are not right. Like any Good Watchdog.
|
||||
##############################################################################
|
||||
automation:
|
||||
- alias: "CARLO-HOMEPC - Lock PC and Sleep Monitors When Carlo Is in Bed"
|
||||
id: 25c69640-4c38-46a2-82ae-5a32c3c6f1b4
|
||||
mode: single
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.sleepnumber_carlo_carlo_is_in_bed
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
action:
|
||||
- service: button.press
|
||||
target:
|
||||
entity_id: button.carlo_homepc_carlo_homepc_lock
|
||||
- service: button.press
|
||||
target:
|
||||
entity_id: button.carlo_homepc_carlo_homepc_monitorsleep
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user