<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on Smart Home? Sure — But Secure!</title><link>https://smarthome-aber-sicher.de/en/post/</link><description>Recent content in Posts on Smart Home? Sure — But Secure!</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Thu, 22 Oct 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://smarthome-aber-sicher.de/en/post/index.xml" rel="self" type="application/rss+xml"/><item><title>I Made My Range Hood Smart – For the Second Time</title><link>https://smarthome-aber-sicher.de/en/blog/2026/10/22/range-hood-own-pcb/</link><pubDate>Thu, 22 Oct 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/10/22/range-hood-own-pcb/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/22/dunstabzugshaube-eigene-platine/cover.jpeg" alt="Featured image of post I Made My Range Hood Smart – For the Second Time" /&gt;&lt;p&gt;&lt;em&gt;Advertising: The video for this article is sponsored by PCBWay – PCBWay paid me and covered the cost of the boards. Links to PCBWay are affiliate links. Content and opinions are my own.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I have now made my range hood smart for the second time. The first time was in 2017, with a perfboard that ran for eight years. Still, I replaced it – not because it broke, but because it turned out it never really worked properly. And because my eyes and hands just don&amp;rsquo;t cooperate with fine soldering anymore.&lt;/p&gt;
&lt;p&gt;The result is my very first own circuit board: designed in KiCad, coached by an AI, manufactured by PCBWay.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/lKHW1ar4z4Y?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_14969630056343875535_hu_1982ef5ecd00cdd3.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="the-problem-the-quietest-range-hood-in-the-world"&gt;The problem: the quietest range hood in the world
&lt;/h2&gt;&lt;p&gt;Our hood is quiet – on the lowest setting you simply can&amp;rsquo;t hear it. You cook, you eat, you go to the living room, and the hood keeps running, sometimes all night. We only noticed because the kitchen was cold in the morning: whatever the hood blows outside has to come back in through windows, doors and every gap. So the thing had to become smart enough to switch itself off.&lt;/p&gt;
&lt;h2 id="2017-the-hack-in-the-cable"&gt;2017: The hack in the cable
&lt;/h2&gt;&lt;p&gt;My hood, a &lt;strong&gt;Gutmann Sombra&lt;/strong&gt;, has no interface at all – no Wi-Fi, no bus. And Gutmann is insolvent, so no spare parts. But between the control panel and the hood electronics runs a cable with an &lt;strong&gt;RJ45 plug&lt;/strong&gt;. The panel itself contains no logic, just seven buttons and some LEDs. The hood scans them as a &lt;strong&gt;matrix&lt;/strong&gt;: four lines are pulled high one after another for one millisecond each, and the LEDs only flash briefly – fast enough to look steady.&lt;/p&gt;
&lt;p&gt;I figured this out in 2017 with an oscilloscope and without any documentation. The result: an &lt;strong&gt;ESP8266&lt;/strong&gt; that reads along in the hood&amp;rsquo;s rhythm and &amp;ldquo;presses&amp;rdquo; buttons at the right moment, while the original panel keeps working. Details are in my &lt;a class="link" href="https://joachim-wilke.de/blog/2017/12/27/do-it-yourself-iot-modul-fur-die-dunstabzugshaube/" target="_blank" rel="noopener"
&gt;2017 blog post&lt;/a&gt; (German).&lt;/p&gt;
&lt;h2 id="eight-years--with-a-safety-net"&gt;Eight years – with a safety net
&lt;/h2&gt;&lt;p&gt;The circuit moved onto a perfboard in a small case inside the hood. Home Assistant switched the hood off after one hour and reminded me to clean the grease filter whenever the dishwasher started. But a &lt;strong&gt;watchdog&lt;/strong&gt; automation cut the hood&amp;rsquo;s power via a Shelly about every two months, and a &lt;strong&gt;night-time power cut&lt;/strong&gt; kept it from switching on by itself. Workaround after workaround.&lt;/p&gt;
&lt;h2 id="my-first-kicad-project--with-an-ai-coach"&gt;My first KiCad project – with an AI coach
&lt;/h2&gt;&lt;p&gt;This year the hood went offline more and more often. A new perfboard attempt ended in solder bridges, so I designed a real PCB in &lt;a class="link" href="https://www.kicad.org/" target="_blank" rel="noopener"
&gt;KiCad&lt;/a&gt; – my first ever. &lt;strong&gt;Claude&lt;/strong&gt; (Anthropic) acted as a coach: I drew and routed everything myself, Claude reviewed schematic and layout. It caught 5 V and 3.3 V shorted on the same net (the ESP8266 tolerates at most 3.6 V), explained decoupling capacitors, and helped find a wire that was half a grid point (1.27 mm) off. It was wrong sometimes too – an advisor, not an autopilot.&lt;/p&gt;
&lt;h2 id="the-mystery-of-the-old-board"&gt;The mystery of the old board
&lt;/h2&gt;&lt;p&gt;The hood supplies only about &lt;strong&gt;4.9 V&lt;/strong&gt;. My old regulator wanted more, so whenever the ESP transmitted, the voltage dropped, the regulator lost control and the ESP rebooted – sometimes into a boot loop. Wi-Fi was never the problem. The fix is a &lt;strong&gt;TPS63802 buck-boost converter&lt;/strong&gt; plus large buffer capacitors (1000 µF and 470 µF). All six mistakes of the old board are documented on &lt;a class="link" href="https://github.com/jowi24/gutmann-sombra-mqtt" target="_blank" rel="noopener"
&gt;GitHub&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="ordering-assembling-fixing"&gt;Ordering, assembling, fixing
&lt;/h2&gt;&lt;p&gt;I ordered the boards from &lt;a class="link" href="https://abersicher.link/pcbway" target="_blank" rel="noopener"
&gt;PCBWay&lt;/a&gt;: enter size, layers and quantity first, get a price, then upload the Gerber files in the cart; an engineer reviews them before you pay. Almost all parts are through-hole, only the ESP module is SMD – so I could solder them myself and retrofit later. That paid off: swapped matrix lines were fixed in firmware, and &amp;ldquo;ghost&amp;rdquo; button presses (floating inputs on the driver chip) were fixed with two pull-down resistors and two diodes soldered to the bottom. &lt;strong&gt;Revision 0.3&lt;/strong&gt; in the repository includes this fix but was never manufactured.&lt;/p&gt;
&lt;h2 id="result"&gt;Result
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;230 V:&lt;/strong&gt; A range hood runs on mains power, even if the control cable only carries low voltage. Before opening it, switch off the breaker and verify it is dead. More in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/working-safely-with-mains-voltage/" &gt;Working safely with mains voltage&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The board sits where the old one did, and Home Assistant discovers the hood automatically via &lt;strong&gt;MQTT Discovery&lt;/strong&gt;. I removed the night-time power cut on purpose – and since the rebuild at the end of September 2026, the watchdog has not triggered once.&lt;/p&gt;
&lt;p&gt;I have &lt;strong&gt;4 boards left&lt;/strong&gt;. If you own a Gutmann hood or one built the same way, leave a comment under the video.&lt;/p&gt;</description></item><item><title>Shelly Gen1 to Gen4: What Really Changed – and Why My 2.5s Are Going</title><link>https://smarthome-aber-sicher.de/en/blog/2026/10/08/shelly-gen4-umstieg/</link><pubDate>Thu, 08 Oct 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/10/08/shelly-gen4-umstieg/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/cover.jpeg" alt="Featured image of post Shelly Gen1 to Gen4: What Really Changed – and Why My 2.5s Are Going" /&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Advertising:&lt;/strong&gt; Shelly provided the Shelly 2PM Gen4 devices free of charge. No fee, no editorial requirements, no approval before publication – my assessment remains my own. Links marked &lt;em&gt;(paid link)&lt;/em&gt; are affiliate links.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;More than 50,000 people have watched the video in which I repair a dead Shelly 2.5 for 30 cents: &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/09/21/repairing-broken-shellys-the-30-cent-fix-that-actually-works/" &gt;Repairing dead Shellys – the 30-cent fix&lt;/a&gt;. I&amp;rsquo;ve done this repair at home easily more than ten times. And now the last 2.5s are going anyway – replaced by the &lt;strong&gt;Shelly 2PM Gen4&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;In this article: why repairing no longer pays off for me, what really changed across four Shelly generations – from the chip to the screws – and how the swap went, including a mishap that can happen to you too.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/Ny4rIpkqOUc?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_14767510652337158638_hu_54a0ae98015ed567.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="why-repairing-no-longer-pays-off-for-me"&gt;Why repairing no longer pays off for me
&lt;/h2&gt;&lt;p&gt;What I couldn&amp;rsquo;t know when I made the repair video: &lt;strong&gt;every 2.5 I repaired failed again after a while.&lt;/strong&gt; I didn&amp;rsquo;t track it precisely, roughly two to three years. And that&amp;rsquo;s despite fitting a high-quality Panasonic capacitor. The community now recommends replacing all three capacitors in the device right away. Whether that&amp;rsquo;s enough, I can&amp;rsquo;t say.&lt;/p&gt;
&lt;p&gt;Then there&amp;rsquo;s the effort. One round means: breaker off, switch cover off, module out, case open, solder, reassemble, reinstall and set up again. Including removal and installation, that&amp;rsquo;s about &lt;strong&gt;45 minutes per device&lt;/strong&gt; for me.&lt;/p&gt;
&lt;p&gt;But the real point is a different one: the 2.5 is technically outdated – it&amp;rsquo;s now more than seven years old. So my advice: &lt;strong&gt;if your 2.5 fails today, that&amp;rsquo;s the moment to think about switching.&lt;/strong&gt; After two years, the repair was certainly the right call back then. At the second or third failure of the same device, the math looks different.&lt;/p&gt;
&lt;p&gt;If repairing is still an option for you: everything I&amp;rsquo;ve learned since the video is in the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/09/21/repairing-broken-shellys-the-30-cent-fix-that-actually-works/#update-september-2026-how-long-does-the-repair-last" &gt;update to the repair article&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/alt-und-neu.jpeg"
width="1600"
height="1013"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/alt-und-neu_hu_5db42173cf5355cc.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/alt-und-neu_hu_26cded06054bbc2f.webp 1024w"
loading="lazy"
alt="An old Shelly 2.5 and a new Shelly 2PM Gen4 side by side in a hand"
class="gallery-image"
data-flex-grow="157"
data-flex-basis="379px"
&gt;
&lt;em&gt;Old and new: the Shelly 2.5 on the left, the 2PM Gen4 on the right.&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="four-generations-at-a-glance"&gt;Four generations at a glance
&lt;/h2&gt;&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/shelly-generationen.jpeg"
width="1600"
height="900"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/shelly-generationen_hu_683830127756f48d.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/shelly-generationen_hu_54d36e3cb5e9d63d.webp 1024w"
loading="lazy"
alt="Three Shelly roller shutter modules side by side: Shelly 2.5, Shelly Plus 2PM and Shelly 2PM Gen4"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;
&lt;em&gt;From left: Shelly 2.5 (Gen1), Plus 2PM (Gen2) and 2PM Gen4. I skipped the third generation.&lt;/em&gt;&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;2.5 (Gen1)&lt;/th&gt;
&lt;th&gt;Plus 2PM (Gen2)&lt;/th&gt;
&lt;th&gt;2PM Gen3&lt;/th&gt;
&lt;th&gt;2PM Gen4&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Chip&lt;/td&gt;
&lt;td&gt;ESP8266&lt;/td&gt;
&lt;td&gt;ESP32&lt;/td&gt;
&lt;td&gt;ESP-Shelly-C38F&lt;/td&gt;
&lt;td&gt;ESP-Shelly-C68F&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Flash&lt;/td&gt;
&lt;td&gt;2 MB&lt;/td&gt;
&lt;td&gt;4 MB&lt;/td&gt;
&lt;td&gt;8 MB&lt;/td&gt;
&lt;td&gt;8 MB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Wi-Fi&lt;/td&gt;
&lt;td&gt;2.4 GHz&lt;/td&gt;
&lt;td&gt;2.4 GHz&lt;/td&gt;
&lt;td&gt;2.4 GHz&lt;/td&gt;
&lt;td&gt;Wi-Fi 6, 2.4 GHz&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bluetooth&lt;/td&gt;
&lt;td&gt;–&lt;/td&gt;
&lt;td&gt;4.2&lt;/td&gt;
&lt;td&gt;4.2&lt;/td&gt;
&lt;td&gt;5.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Matter&lt;/td&gt;
&lt;td&gt;–&lt;/td&gt;
&lt;td&gt;–&lt;/td&gt;
&lt;td&gt;on some models&lt;/td&gt;
&lt;td&gt;built in&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zigbee&lt;/td&gt;
&lt;td&gt;–&lt;/td&gt;
&lt;td&gt;–&lt;/td&gt;
&lt;td&gt;–&lt;/td&gt;
&lt;td&gt;built in (switchable)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Wires up to&lt;/td&gt;
&lt;td&gt;1.5 mm²&lt;/td&gt;
&lt;td&gt;1.5 mm²&lt;/td&gt;
&lt;td&gt;4 mm²&lt;/td&gt;
&lt;td&gt;4 mm²&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Printed wiring diagram&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Size (H × W × D)&lt;/td&gt;
&lt;td&gt;36 × 39 × 17 mm&lt;/td&gt;
&lt;td&gt;37 × 42 × 16 mm&lt;/td&gt;
&lt;td&gt;37 × 42 × 16 mm&lt;/td&gt;
&lt;td&gt;37 × 42 × 16 mm&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;em&gt;Sources: datasheets in the Shelly Knowledge Base, my own devices.&lt;/em&gt;&lt;/p&gt;
&lt;h3 id="gen1-the-brilliant-idea"&gt;Gen1: the brilliant idea
&lt;/h3&gt;&lt;p&gt;The first generation arrived in 2018 with the Shelly 1 and, shortly after, the 2.5. The idea was brilliant: a small relay behind the switch, straight on Wi-Fi, with its own web interface – no hub or bridge at all. Under the hood an &lt;strong&gt;ESP8266&lt;/strong&gt; with just 2 MB of storage, outside slotted screws and terminals for wires up to 1.5 mm². A solid start, with plenty of room for improvement.&lt;/p&gt;
&lt;h3 id="gen2-plus-bluetooth-scripts-slats"&gt;Gen2 (Plus): Bluetooth, scripts, slats
&lt;/h3&gt;&lt;p&gt;The Plus devices – for me the &lt;strong&gt;Plus 2PM&lt;/strong&gt; – brought an &lt;strong&gt;ESP32&lt;/strong&gt; and with it Bluetooth. Setup via the app gets easier, and the Shelly can receive Bluetooth sensors and pass them on, for example to Home Assistant. Scripts run directly on the device, and cloud connection and local MQTT suddenly work at the same time.&lt;/p&gt;
&lt;p&gt;Particularly important for me: &lt;strong&gt;percentage-accurate slat control&lt;/strong&gt; for venetian blinds. How to set it up and use it in automations: &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2026/09/17/shelly-raffstore-tilt/" &gt;Tilt Venetian Blind Slats to the Percent with Shelly and Home Assistant&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/plus-2pm-skripte.jpeg"
width="1600"
height="1385"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/plus-2pm-skripte_hu_b6f24987f89eec63.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/plus-2pm-skripte_hu_a836dd7b16649a8c.webp 1024w"
loading="lazy"
alt="Web interface of a Shelly Plus 2PM with a script open in the code editor"
class="gallery-image"
data-flex-grow="115"
data-flex-basis="277px"
&gt;
&lt;em&gt;Scripts directly on the Shelly – here the Bluetooth script that Home Assistant installs itself.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;On the outside, the case is one millimetre flatter (a little wider and taller in return), and there&amp;rsquo;s finally a small &lt;strong&gt;printed wiring diagram&lt;/strong&gt;. Just right when you&amp;rsquo;re kneeling in front of the wall and the manual is, of course, in the kitchen.&lt;/p&gt;
&lt;h3 id="gen3-skipped"&gt;Gen3: skipped
&lt;/h3&gt;&lt;p&gt;I skipped the third generation. Same case, a new chip with twice the storage, a KNX connection via a gateway, and Matter on some models. Most importantly, the terminals now take &lt;strong&gt;wires up to 4 mm²&lt;/strong&gt; – thick wires and ferrules finally go in without fiddling.&lt;/p&gt;
&lt;h3 id="gen4-matter-and-zigbee-built-in"&gt;Gen4: Matter and Zigbee built in
&lt;/h3&gt;&lt;p&gt;The &lt;strong&gt;2PM Gen4&lt;/strong&gt; keeps the same case, but a lot changes inside: &lt;strong&gt;Wi-Fi 6&lt;/strong&gt;, still on 2.4 GHz (so no new Wi-Fi needed), &lt;strong&gt;Bluetooth 5.0&lt;/strong&gt;, twice the RAM of the Gen3 according to the datasheet, and &lt;strong&gt;Matter and Zigbee built in&lt;/strong&gt;. The Gen4 ships in Matter mode; pressing the button five times switches it to the Zigbee profile.&lt;/p&gt;
&lt;p&gt;And on the outside there are finally &lt;strong&gt;combination screws for slotted and Phillips&lt;/strong&gt;. Don&amp;rsquo;t laugh – but I love it: tightening with a Phillips screwdriver without constantly slipping out of the slot.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/kombischraube.jpeg"
width="1600"
height="1309"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/kombischraube_hu_bb270598eda93849.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/kombischraube_hu_c497122cf6db11b9.webp 1024w"
loading="lazy"
alt="Phillips screwdriver in the combination screw of a Shelly 2PM Gen4"
class="gallery-image"
data-flex-grow="122"
data-flex-basis="293px"
&gt;
&lt;em&gt;Combination screw on the Gen4: fits slotted and Phillips screwdrivers.&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="the-terminals-different-in-every-generation"&gt;The terminals: different in every generation
&lt;/h2&gt;&lt;p&gt;My personal highlight: with every generation, the terminal order changes again.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/klemmen-vergleich.png"
width="1600"
height="780"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/klemmen-vergleich_hu_f31b3cdbf5f97fe0.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/klemmen-vergleich_hu_b43586b78b59d683.webp 1024w"
loading="lazy"
alt="Diagram of the terminal order: Shelly 2.5 SW2 O2 L L O1 SW1 N, Plus 2PM N O1 L L O2 S1 S2, 2PM Gen4 O1 L L O2 S1 S2 N"
class="gallery-image"
data-flex-grow="205"
data-flex-basis="492px"
&gt;
&lt;em&gt;German labels: Neutralleiter = neutral, Phase = live, Ausgänge = motor outputs, Tastereingänge = switch inputs.&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;strong&gt;neutral&lt;/strong&gt; sits on the far right on the 2.5, on the far left on the Plus 2PM, and on the far right again on the Gen4.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;switch inputs&lt;/strong&gt; were split across both sides on the 2.5 (SW2 left, SW1 right). Since the second generation they sit next to each other and are called S1 and S2.&lt;/li&gt;
&lt;li&gt;The two &lt;strong&gt;L terminals&lt;/strong&gt; are next to each other on all three devices.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So please: &lt;strong&gt;wire by the label, not by habit&lt;/strong&gt; – especially when you replace a 2.5 one to one.&lt;/p&gt;
&lt;h2 id="the-swap"&gt;The swap
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;230 V:&lt;/strong&gt; breaker off, verify the circuit is dead – and if you&amp;rsquo;re unsure, get advice from a qualified electrician. I&amp;rsquo;ve collected the typical pitfalls in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2026/06/18/shelly-5-fehler/" &gt;Shelly installation: 5 mistakes almost everyone makes&lt;/a&gt;, the basic rules in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/working-safely-with-mains-voltage/" &gt;Working safely with mains voltage&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="the-mishap-a-broken-wire"&gt;The mishap: a broken wire
&lt;/h3&gt;&lt;p&gt;On the very first swap, something happened that can happen to you too: the wire was already worn from all the removing and reinstalling, and it broke off. The small piece of bare wire was, of course, stuck in the front of the terminal. In the end I only got it out with a lot of fiddling and very pointy tweezers.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/ader-in-klemme.jpeg"
width="1600"
height="1066"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/ader-in-klemme_hu_5b82ad4bbbeb5e97.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/ader-in-klemme_hu_4fd2df46b4927f27.webp 1024w"
loading="lazy"
alt="A broken-off piece of wire stuck in the front of the old Shelly’s terminal"
class="gallery-image"
data-flex-grow="150"
data-flex-basis="360px"
&gt;
&lt;em&gt;The broken-off piece of wire is stuck in the front of the terminal.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;My tip: if a box has been opened a few times already, take a close look at the wires and trim them cleanly once before this happens to you.&lt;/p&gt;
&lt;h3 id="calibrate-and-flip-the-direction"&gt;Calibrate and flip the direction
&lt;/h3&gt;&lt;p&gt;Next, the usual Shelly calibration run. And bam: the shutter went down on &amp;ldquo;up&amp;rdquo;. Direction swapped during wiring – but you don&amp;rsquo;t have to rewire. In the web interface, the cover settings have a &lt;strong&gt;&amp;ldquo;Reverse directions&amp;rdquo;&lt;/strong&gt; checkbox for exactly this.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/reverse-directions.jpeg"
width="1600"
height="604"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/reverse-directions_hu_1930b3d9a9815956.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/reverse-directions_hu_c76c6e8bff4bc8a8.webp 1024w"
loading="lazy"
alt="Shelly web interface with the Reverse direction option enabled"
class="gallery-image"
data-flex-grow="264"
data-flex-basis="635px"
&gt;
&lt;em&gt;Swap the direction in software instead of rewiring.&lt;/em&gt;&lt;/p&gt;
&lt;h3 id="the-matter-qr-code--twice"&gt;The Matter QR code – twice
&lt;/h3&gt;&lt;p&gt;A detail I really like: the Gen4 comes with the Matter QR code twice. Once stuck firmly on the device – which of course is no longer accessible once it&amp;rsquo;s installed. And once as a loose sticker. I stuck that one on the inside of the switch cover. If I ever need to pair the device again, I can get to the code without opening the box.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/matter-qr-geraet.jpeg"
width="1000"
height="1062"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/matter-qr-geraet_hu_549bb28f1519963e.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/matter-qr-geraet_hu_e8e0b58e67a003f4.webp 1024w"
loading="lazy"
alt="Matter QR code sticker on the side of the Shelly 2PM Gen4"
class="gallery-image"
data-flex-grow="94"
data-flex-basis="225px"
&gt;
&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/matter-qr-schalterdeckel.jpeg"
width="1200"
height="920"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/matter-qr-schalterdeckel_hu_4d1e76b3d4059dd4.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/matter-qr-schalterdeckel_hu_856056c5c378935f.webp 1024w"
loading="lazy"
alt="Loose Matter sticker on the inside of a switch cover, labelled “unten” (bottom)"
class="gallery-image"
data-flex-grow="130"
data-flex-basis="313px"
&gt;
&lt;em&gt;On the device and loose in the switch cover. I&amp;rsquo;ve blurred the QR code and pairing number.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;As long as the Shelly is online, the QR code is also available virtually in the web interface.&lt;/p&gt;
&lt;h2 id="setup-matter-instead-of-an-open-hotspot"&gt;Setup: Matter instead of an open hotspot
&lt;/h2&gt;&lt;p&gt;The biggest difference during setup isn&amp;rsquo;t the hardware, it&amp;rsquo;s &lt;strong&gt;Matter&lt;/strong&gt;. You set up the old devices via an open, unencrypted Wi-Fi hotspot – and without the Shelly app that&amp;rsquo;s always a bit fiddly. I paired the Gen4 straight from the &lt;strong&gt;Home Assistant app&lt;/strong&gt; on my iPhone: scan the QR code, done, the device is on Wi-Fi. Matter transfers the credentials encrypted. It hardly gets safer or more convenient.&lt;/p&gt;
&lt;p&gt;But: at first, &lt;strong&gt;no shutter&lt;/strong&gt; showed up in Home Assistant. Why, and how I fixed it myself in Home Assistant, is in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/shelly-matter-fix/" &gt;Shelly via Matter was broken – so I fixed it in Home Assistant&lt;/a&gt;. In short: use &lt;strong&gt;Home Assistant 2026.9.3 or later&lt;/strong&gt; and calibrate the Shelly.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Version number pitfall:&lt;/strong&gt; via Matter, Home Assistant shows firmware version 1.3.0. That has nothing to do with the Shelly firmware version in the web interface – mine showed 1.7, and 2.0 after the update. Two different numbers, so don&amp;rsquo;t be surprised.&lt;/p&gt;
&lt;h2 id="three-tips-for-the-swap"&gt;Three tips for the swap
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Passive Bluetooth:&lt;/strong&gt; if, like me, you receive Bluetooth sensors via your Shellys, enable passive Bluetooth mode on the Gen4 in Home Assistant again (Shelly integration → Configure → Bluetooth scanner mode &amp;ldquo;Passive&amp;rdquo;). Then everything keeps working as before.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/ble-passiv.jpeg"
width="1600"
height="1005"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/ble-passiv_hu_b13087b8d8125649.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/ble-passiv_hu_bf8bff54804d3d90.webp 1024w"
loading="lazy"
alt="Home Assistant Shelly integration dialog with Bluetooth scanner mode set to Passive (German UI)"
class="gallery-image"
data-flex-grow="159"
data-flex-basis="382px"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Venetian blinds:&lt;/strong&gt; you can tilt the slats to the percent – by the way, the second generation can already do that, my old 2.5 couldn&amp;rsquo;t. Details in the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2026/09/17/shelly-raffstore-tilt/" &gt;venetian blind article&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Same entity ID:&lt;/strong&gt; give the new device the same entity ID in Home Assistant as the old one. Then your automations and dashboards keep running without a single change – for me, among others, the shading from &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/11/23/home-assistant-a-z-j-is-for-blinds-more-than-just-up-and-down/" &gt;Home Assistant A-Z: J for Jalousien&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/entitaets-id.jpeg"
width="1000"
height="1399"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/entitaets-id_hu_3a8e80f066673d13.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/08/shelly-gen4-umstieg/entitaets-id_hu_332be6f21d1c70a7.webp 1024w"
loading="lazy"
alt="Home Assistant settings of a shutter entity with the entity ID changed to cover.rollo_schlafzimmer_sued (German UI)"
class="gallery-image"
data-flex-grow="71"
data-flex-basis="171px"
&gt;&lt;/p&gt;
&lt;p&gt;The basics of shutter control with Shelly – switches, terminals, device profile – are in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/11/09/make-your-blinds-smart-with-shelly-no-cloud-local-and-affordable/" &gt;Making blinds smart with Shelly&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;The 30-cent fix wasn&amp;rsquo;t a bad recommendation. It brings a dead Shelly back to life for very little money – and who wants to throw away a device after two or three years? Back then, the Plus devices also weren&amp;rsquo;t attractive enough for me to switch right away.&lt;/p&gt;
&lt;p&gt;After two or more repair cycles, though, it&amp;rsquo;s a different story. The Gen4 brings a lot of new features, is easier to wire and safer to set up. For me, it&amp;rsquo;s now a well-rounded package.&lt;/p&gt;
&lt;p&gt;Which Shelly generation runs in your home? Are you happy with it, or do you miss one of the new features? Let me know in the comments. The Gen4 can do a lot more than fits into one article – Matter, Zigbee or the Shelly integration is something I&amp;rsquo;ll look at more closely.&lt;/p&gt;
&lt;h2 id="products-from-this-article"&gt;Products from this article
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Shelly 2PM Gen4&lt;/strong&gt; – directly from Shelly &lt;em&gt;(paid link)&lt;/em&gt;: &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;https://upf.ai/l24blt88&lt;/a&gt; · discount code &lt;code&gt;SMARTHOMEABERSICHER-10OFF&lt;/code&gt; for 10% off&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Shelly 2PM Gen4&lt;/strong&gt; on Amazon &lt;em&gt;(paid link)&lt;/em&gt;: &lt;a class="link" href="https://link.amazon/B05GmP3lz" target="_blank" rel="noopener"
&gt;https://link.amazon/B05GmP3lz&lt;/a&gt; · the discount code doesn&amp;rsquo;t apply there&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Shelly via Matter was broken – so I fixed it in Home Assistant</title><link>https://smarthome-aber-sicher.de/en/blog/2026/10/01/shelly-matter-fix/</link><pubDate>Thu, 01 Oct 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/10/01/shelly-matter-fix/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/cover.jpeg" alt="Featured image of post Shelly via Matter was broken – so I fixed it in Home Assistant" /&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Ad:&lt;/strong&gt; Shelly provided the Shelly 2PM Gen4 devices free of charge. No payment, no content requirements, no approval before publication. Links marked &lt;em&gt;(paid link)&lt;/em&gt; are affiliate links.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Shelly sent me a whole box of the new &lt;strong&gt;Shelly 2PM Gen4&lt;/strong&gt; – my first Shellys with &lt;strong&gt;Matter over Wi-Fi&lt;/strong&gt;. So I tried it right away. And even though smart home is all I&amp;rsquo;ve been doing for years: I failed, right on the first device. The bug had been known for over a year. Since &lt;strong&gt;Home Assistant 2026.9.3&lt;/strong&gt; it&amp;rsquo;s gone – because I ended up fixing it myself.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/VGnvdrnVeyo?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_3517480879470482568_hu_830e6a430f3cdda1.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="the-symptom-device-yes-shutter-no"&gt;The symptom: device yes, shutter no
&lt;/h2&gt;&lt;p&gt;Pairing via Matter is pleasant: scan the QR code in the Home Assistant app, done. No open Wi-Fi hotspot, no Wi-Fi password sent in plain text, no Shelly app – Matter transfers the credentials to the device encrypted.&lt;/p&gt;
&lt;p&gt;But: Home Assistant created &lt;strong&gt;no cover entity&lt;/strong&gt;. The device was there, firmware version and IP address too – but no up, no down, no stop.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/geraet-ohne-rollladen.jpeg"
width="1600"
height="754"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/geraet-ohne-rollladen_hu_e2680c412222b8ee.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/geraet-ohne-rollladen_hu_2d0e08a86c6686ea.webp 1024w"
loading="lazy"
alt="Home Assistant device page “Rollladen Balkon nord”: Shelly 2PM Gen4 via Matter with firmware 1.3.0, but no shutter controls"
class="gallery-image"
data-flex-grow="212"
data-flex-basis="509px"
&gt;
&lt;em&gt;Device detected, firmware shown – but no shutter controls.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I wasn&amp;rsquo;t the first: the problem has been documented since &lt;strong&gt;August 2025&lt;/strong&gt; in &lt;a class="link" href="https://github.com/home-assistant/core/issues/149876" target="_blank" rel="noopener"
&gt;home-assistant/core#149876&lt;/a&gt;, with more than 30 comments.&lt;/p&gt;
&lt;h2 id="the-clue-the-venetian-blind"&gt;The clue: the venetian blind
&lt;/h2&gt;&lt;p&gt;On the next install I swapped two devices: one for a regular roller shutter, one for external venetian blinds. For the blinds I enabled &lt;strong&gt;Slat Control&lt;/strong&gt; in the Shelly web interface – and suddenly the cover entity appeared, with sliders for position and tilt.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/raffstore-zwei-regler.jpeg"
width="1600"
height="900"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/raffstore-zwei-regler_hu_2cd8dfc3454b89f4.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/raffstore-zwei-regler_hu_c4350f8e2facfdcd.webp 1024w"
loading="lazy"
alt="Home Assistant dialog for venetian blinds with two sliders: position on the left, tilt on the right"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;
&lt;em&gt;This is what venetian blinds look like in Home Assistant: one slider for position, one for tilt.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The regular shutter: still nothing. Enabled Slat Control there as a test – entity appeared, but with a second slider that does nothing.&lt;/p&gt;
&lt;h2 id="the-cause"&gt;The cause
&lt;/h2&gt;&lt;p&gt;With Matter, a device reports what it can do and delivers the matching values:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;What the Shelly reports (no slats)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;FeatureMap&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;lift yes, tilt &lt;strong&gt;no&lt;/strong&gt; – correct&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;AttributeList&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;still contains the tilt value &lt;code&gt;CurrentPositionTiltPercent100ths&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Value&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;null&lt;/code&gt; – i.e. &amp;ldquo;empty&amp;rdquo;, not the number 0&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/matter-json-null.jpeg"
width="941"
height="880"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/matter-json-null_hu_fef743369775e9a8.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/matter-json-null_hu_dbf379fd31783328.webp 1024w"
loading="lazy"
alt="Excerpt from the Shelly’s Matter server data: attribute 1/258/15 is null, attribute 1/258/65532 has the value 5"
class="gallery-image"
data-flex-grow="106"
data-flex-basis="256px"
&gt;
&lt;em&gt;Excerpt from the Matter server: cluster 258 is window covering. Attribute 15 (tilt) is &lt;code&gt;null&lt;/code&gt;, attribute 65532 (FeatureMap) is 5 – lift yes, tilt no.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Home Assistant used to treat the tilt value as &lt;strong&gt;required&lt;/strong&gt; during discovery. Required value empty → the device matches no schema → &lt;strong&gt;no&lt;/strong&gt; entity at all, not even a simple one for a shutter without slats.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/keine-schublade-passt.jpeg"
width="1600"
height="660"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/keine-schublade-passt_hu_58580e072e81ec41.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/keine-schublade-passt_hu_a47977b4732f50d1.webp 1024w"
loading="lazy"
alt="Diagram: Home Assistant checks four schemas – no position, lift only, tilt only, lift plus tilt – and none matches the Shelly"
class="gallery-image"
data-flex-grow="242"
data-flex-basis="581px"
&gt;
&lt;em&gt;Four &amp;ldquo;drawers&amp;rdquo; for covers – because of the empty tilt value, the Shelly fits none of them.&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="whose-fault-is-it"&gt;Whose fault is it?
&lt;/h2&gt;&lt;p&gt;You could argue that without slats, the Shelly shouldn&amp;rsquo;t report the tilt value at all. I asked Shelly support. Their answer: they can&amp;rsquo;t support individual smart home systems, and other Matter controllers such as Apple Home handle this behavior just fine. A fair point – so the fix had to happen in Home Assistant.&lt;/p&gt;
&lt;h2 id="the-fix"&gt;The fix
&lt;/h2&gt;&lt;p&gt;My pull request &lt;a class="link" href="https://github.com/home-assistant/core/pull/182042" target="_blank" rel="noopener"
&gt;home-assistant/core#182042&lt;/a&gt; changes two things in the Matter integration with 17 lines of code:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The tilt value is &lt;strong&gt;optional&lt;/strong&gt; instead of required during discovery. If it&amp;rsquo;s empty, a cover entity is still created.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;tilt slider&lt;/strong&gt; only appears if the device&amp;rsquo;s FeatureMap reports tilt – otherwise you&amp;rsquo;d get a slider that does nothing.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;On top of that: tests with a simulated Shelly and real-world tests on my own devices (with and without slats, calibrated and uncalibrated). Submitted Saturday evening, merged Sunday morning: after more than a year of an open issue, the review took less than 17 hours.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/pull-request-merged.jpeg"
width="1600"
height="900"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/pull-request-merged_hu_f8b2d2a75736217a.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/pull-request-merged_hu_64f6d2ef33c28725.webp 1024w"
loading="lazy"
alt="Pull request home-assistant/core#182042 on GitHub with the status “Merged”"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;
&lt;em&gt;My first pull request for Home Assistant – merged.&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="what-you-need-to-do-now"&gt;What you need to do now
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Update Home Assistant to 2026.9.3 or later.&lt;/strong&gt; The fix is listed in the &lt;a class="link" href="https://www.home-assistant.io/blog/2026/09/02/release-20269/" target="_blank" rel="noopener"
&gt;release notes&lt;/a&gt; under 2026.9.3.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Calibrate your Shelly:&lt;/strong&gt; start a calibration run in the Shelly web interface. Without calibration, no cover entity appears even with the fix.&lt;/li&gt;
&lt;li&gt;If the shutter still doesn&amp;rsquo;t show up: in the device view, open the three-dot menu and run &lt;strong&gt;&amp;ldquo;Re-interview device&amp;rdquo;&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/geraet-erneut-abfragen.jpeg"
width="776"
height="1281"
srcset="https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/geraet-erneut-abfragen_hu_bd2edd3e72856eac.webp 480w, https://smarthome-aber-sicher.de/blog/2026/10/01/shelly-matter-fix/geraet-erneut-abfragen_hu_eb2d0506d16f05dd.webp 1024w"
loading="lazy"
alt="Three-dot menu on the Home Assistant device page with the entry “Re-interview device” (German UI: „Gerät erneut abfragen“)"
class="gallery-image"
data-flex-grow="60"
data-flex-basis="145px"
&gt;&lt;/p&gt;
&lt;p&gt;If you have venetian blinds: I show how to set up slat control and use it in automations in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2026/09/17/shelly-raffstore-tilt/" &gt;Tilt Venetian Blind Slats to the Percent with Shelly and Home Assistant&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="your-opinion-matters"&gt;Your opinion matters
&lt;/h2&gt;&lt;p&gt;That an uncalibrated Shelly doesn&amp;rsquo;t show up as a shutter via Matter at all is confusing, especially for beginners. Should Home Assistant create it anyway – at least with up, down and stop? Or is &amp;ldquo;calibrate first&amp;rdquo; perfectly fine? Tell me in the comments. If many of you agree, I&amp;rsquo;ll look into it next.&lt;/p&gt;
&lt;h2 id="products-from-this-article"&gt;Products from this article
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Shelly 2PM Gen4&lt;/strong&gt; – directly from Shelly &lt;em&gt;(paid link)&lt;/em&gt;: &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;https://upf.ai/l24blt88&lt;/a&gt; · discount code &lt;code&gt;SMARTHOMEABERSICHER-10OFF&lt;/code&gt; for 10% off&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>b-parasite: Have an Open-Source Soil Moisture Sensor for Home Assistant Manufactured</title><link>https://smarthome-aber-sicher.de/en/blog/2026/09/24/b-parasite-bodenfeuchtesensor/</link><pubDate>Thu, 24 Sep 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/09/24/b-parasite-bodenfeuchtesensor/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/09/24/b-parasite-bodenfeuchtesensor/cover.jpeg" alt="Featured image of post b-parasite: Have an Open-Source Soil Moisture Sensor for Home Assistant Manufactured" /&gt;&lt;p&gt;&lt;em&gt;Ad: Links to PCBWay are affiliate links.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;For me, the &lt;strong&gt;b-parasite&lt;/strong&gt; is the best soil moisture sensor there is – and you can&amp;rsquo;t buy it anywhere. No manufacturer, no shop. There&amp;rsquo;s only a blueprint, free on &lt;a class="link" href="https://github.com/rbaron/b-parasite" target="_blank" rel="noopener"
&gt;GitHub&lt;/a&gt;. I had ten of them made, and here I&amp;rsquo;ll show you the whole journey: from the blueprint to the flower pot.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/6d8Nm_WTD44?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_11083620843110358826_hu_13b436a647740805.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;em&gt;The video is in German with English subtitles.&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="what-is-the-b-parasite"&gt;What is the b-parasite?
&lt;/h2&gt;&lt;p&gt;The b-parasite is an open hardware project: a PCB whose lower half works as a &lt;strong&gt;capacitive soil moisture sensor&lt;/strong&gt;. It also carries a &lt;strong&gt;temperature and humidity&lt;/strong&gt; sensor (SHTC3) and a &lt;strong&gt;phototransistor&lt;/strong&gt; for brightness.&lt;/p&gt;
&lt;p&gt;At its heart is a Nordic &lt;strong&gt;nRF52840&lt;/strong&gt; in an E73 radio module. Unlike the usual ESP controllers it has no Wi-Fi, but &lt;strong&gt;Bluetooth Low Energy&lt;/strong&gt; – which makes it extremely power-efficient. A single &lt;strong&gt;CR2032 coin cell&lt;/strong&gt; lasts for many months.&lt;/p&gt;
&lt;p&gt;The firmware transmits using the &lt;strong&gt;BTHome v2&lt;/strong&gt; standard, which Home Assistant understands without any extra integration.&lt;/p&gt;
&lt;p&gt;Getting to a finished sensor takes four steps:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Have the board manufactured and assembled&lt;/li&gt;
&lt;li&gt;Flash the firmware&lt;/li&gt;
&lt;li&gt;Set up a Bluetooth gateway for Home Assistant (e.g. a Shelly)&lt;/li&gt;
&lt;li&gt;Coat the board against moisture&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="step-1-ordering-the-board--no-kicad-skills-required"&gt;Step 1: Ordering the board – no KiCad skills required
&lt;/h2&gt;&lt;p&gt;I can&amp;rsquo;t use KiCad, and faced with an order form of 30 options – copper weight, solder mask, surface finish – I wouldn&amp;rsquo;t know what to pick. The good news: you don&amp;rsquo;t have to create the manufacturing files yourself, and almost every option stays at its default. Below is exactly what I ordered, step by step.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Correction (26 Sep 2026):&lt;/strong&gt; In the video I recommend the Shared Project on PCBWay and say the commission goes to the author. That&amp;rsquo;s not true: Raphael Baron, the developer of the b-parasite, wrote to me that the listing was &lt;strong&gt;not created by him&lt;/strong&gt; – so the commission goes to someone else. I&amp;rsquo;ve removed the link. Raphael doesn&amp;rsquo;t want to set up a Shared Project of his own, so you create the order yourself as described below. At Raphael&amp;rsquo;s request, I&amp;rsquo;ll donate the commission I receive via &lt;a class="link" href="https://pcbway.com/g/U1JrnD" target="_blank" rel="noopener"
&gt;my PCBWay link&lt;/a&gt; to charity.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;My recommendation: add the assembly service (PCB+Assembly).&lt;/strong&gt; The SMD parts are only millimetres in size – not something you just solder yourself – and you don&amp;rsquo;t have to buy them separately.&lt;/p&gt;
&lt;h3 id="how-to-place-the-order"&gt;How to place the order
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;1. Get the files.&lt;/strong&gt; I&amp;rsquo;ve bundled everything PCBWay needs into one package: &lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/blog/2026/09/24/b-parasite-bodenfeuchtesensor/b-parasite-2.0.0-pcbway.zip" &gt;b-parasite-2.0.0-pcbway.zip&lt;/a&gt;&lt;/strong&gt; (80 KB). It contains:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;gerber.zip&lt;/code&gt; – the manufacturing data for the board, the way PCBWay wants it&lt;/li&gt;
&lt;li&gt;&lt;code&gt;parasite.csv&lt;/code&gt; – the &lt;strong&gt;bill of materials&lt;/strong&gt; (BOM)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;parasite-top-pos.csv&lt;/code&gt; – the &lt;strong&gt;centroid/pick-and-place file&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The files are taken unmodified from Raphael Baron&amp;rsquo;s &lt;a class="link" href="https://github.com/rbaron/b-parasite/tree/main/kicad" target="_blank" rel="noopener"
&gt;kicad folder&lt;/a&gt; (hardware version 2.0.0) and, like the original, are licensed under &lt;a class="link" href="https://creativecommons.org/licenses/by-sa/4.0/" target="_blank" rel="noopener"
&gt;CC BY-SA 4.0&lt;/a&gt;. I only repackaged them because GitHub doesn&amp;rsquo;t offer downloads of individual folders.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Create the PCB.&lt;/strong&gt; Sign in via &lt;a class="link" href="https://pcbway.com/g/U1JrnD" target="_blank" rel="noopener"
&gt;my PCBWay link&lt;/a&gt;. The link takes you to the home page; the order form is under &lt;strong&gt;PCB Instant Quote&lt;/strong&gt; in the top menu. The only things to fill in are &lt;strong&gt;size (22 × 126.4 mm)&lt;/strong&gt; and &lt;strong&gt;quantity&lt;/strong&gt; (e.g. 10, minimum is 5 boards). I left everything else at the defaults (2 layers, FR-4 TG150, 1.6 mm thickness, 6/6 mil track/spacing, 0.3 mm min. hole, green solder mask with white silkscreen, HASL with lead, 1 oz copper).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;About the surface finish:&lt;/strong&gt; With HASL I ran into the battery pad issue described &lt;a class="link" href="#pitfall-no-voltage-at-the-battery-pad" &gt;further down&lt;/a&gt;. According to PCBWay, &lt;strong&gt;ENIG&lt;/strong&gt; (immersion gold) avoids it altogether. It roughly doubles the board price, though – for ten boards from about 18 to about 40 US dollars. I&amp;rsquo;d stick with HASL and rough up the pad if needed.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Add assembly.&lt;/strong&gt; Further down on the same page, tick &lt;strong&gt;Assembly Service&lt;/strong&gt; and choose these options:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Turnkey&lt;/strong&gt; – PCBWay sources all parts&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Assembly side: Top side&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Quantity: the same as for the boards.&lt;/strong&gt; My order initially had 5 boards and 20 assemblies, which cost me a round of questions.&lt;/li&gt;
&lt;li&gt;everything else (function test, conformal coating, firmware loading …) set to &amp;ldquo;No&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;4. Upload the files.&lt;/strong&gt; Don&amp;rsquo;t bother looking for an upload field up to this point: PCBWay only asks for the files after the price calculation. So click &lt;strong&gt;Calculate&lt;/strong&gt; and then &lt;strong&gt;Save to Cart&lt;/strong&gt;. The next page is where you upload the &lt;code&gt;gerber.zip&lt;/code&gt;, the BOM (&lt;code&gt;parasite.csv&lt;/code&gt;) and the centroid file (&lt;code&gt;parasite-top-pos.csv&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5. Don&amp;rsquo;t forget the battery holder.&lt;/strong&gt; The coin cell holder sits on the bottom side and has no part number in the BOM. PCBWay still fitted it on my boards, using the type Raphael recommends as well. To make sure yours get it too, add this to the order note:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Please also assemble BT1 (battery holder, bottom side): MYOUNG MY-2032-05, LCSC C964829
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;6. Wait for the quote.&lt;/strong&gt; At PCBWay, a person reviews assembly orders. After a few days you get a quote with an itemised BOM, possibly with questions. Then you pay via the shopping cart.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;7. Check the approval photos.&lt;/strong&gt; Before final soldering, PCBWay sends photos of the assembled boards. Pay particular attention to the orientation of &lt;strong&gt;D2&lt;/strong&gt; (LED) and &lt;strong&gt;Q4&lt;/strong&gt; (phototransistor) – PCBWay had marked exactly these two in my photos. According to the &lt;a class="link" href="https://github.com/rbaron/b-parasite/wiki/How-to-order:-PCB-fabrication-and-SMT-assembly" target="_blank" rel="noopener"
&gt;b-parasite wiki&lt;/a&gt;, the phototransistor&amp;rsquo;s collector goes to the dot on the silkscreen.&lt;/p&gt;
&lt;h3 id="what-does-it-cost"&gt;What does it cost?
&lt;/h3&gt;&lt;p&gt;For ten assembled boards you end up at &lt;strong&gt;roughly 20 US dollars per sensor&lt;/strong&gt;, including shipping. About half of that is the E73 radio module with the nRF52840, which alone costs around 10 dollars.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Lead time:&lt;/strong&gt; Manufacturing alone takes only a few days. With assembly, it took two to three weeks including shipping in my case.&lt;/p&gt;
&lt;h2 id="pitfall-no-voltage-at-the-battery-pad"&gt;Pitfall: no voltage at the battery pad
&lt;/h2&gt;&lt;p&gt;First coin cell in – and nothing happened. No LED, no Bluetooth. The multimeter showed a perfectly good cell, but hardly any voltage reached the board.&lt;/p&gt;
&lt;p&gt;Looking into the battery holder from the side revealed small bumps on the large battery pad – enough to keep the coin cell from sitting flat. Together with PCBWay support, who responded very quickly, the cause was clear: residue from the production process.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Fix:&lt;/strong&gt; Carefully rough up the pad once with very fine sandpaper. After that, battery power works.&lt;/p&gt;
&lt;h2 id="step-2-flashing-the-firmware-with-an-esp32"&gt;Step 2: Flashing the firmware with an ESP32
&lt;/h2&gt;&lt;p&gt;The author provides precompiled firmware in the &lt;a class="link" href="https://github.com/rbaron/b-parasite/releases" target="_blank" rel="noopener"
&gt;releases&lt;/a&gt;. For the assembled hardware version 2.0.0 you need:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;blinky_nrf52840_2.0.0.hex&lt;/code&gt; – test firmware, the LED blinks&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ble_nrf52840_2.0.0.hex&lt;/code&gt; – the actual sensor firmware (BTHome)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The nRF52840 is programmed via &lt;strong&gt;SWD&lt;/strong&gt;. Professional programmers are expensive – the cheaper route is the open-source project &lt;strong&gt;&lt;a class="link" href="https://github.com/atc1441/ESP32_nRF52_SWD" target="_blank" rel="noopener"
&gt;ESP32_nRF52_SWD&lt;/a&gt;&lt;/strong&gt;, which turns an ESP32 into an SWD flasher with a web interface. It was written by the same developer behind the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2026/08/13/obi-energy-tracker-lokal/" &gt;OpenOBI firmware&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Wiring according to the project:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;b-parasite (nRF52)&lt;/th&gt;
&lt;th&gt;ESP32&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;SWDCLK&lt;/td&gt;
&lt;td&gt;GPIO 21&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SWDIO&lt;/td&gt;
&lt;td&gt;GPIO 19&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GND&lt;/td&gt;
&lt;td&gt;GND&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;VCC&lt;/td&gt;
&lt;td&gt;3V3&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Two rules before you start:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Only one power source:&lt;/strong&gt; either the coin cell or the 3.3 V from the ESP32 – never both at the same time.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Erase first:&lt;/strong&gt; The flasher doesn&amp;rsquo;t erase memory automatically. Run &lt;em&gt;Erase&lt;/em&gt; before flashing.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I always flash in two steps: first &lt;strong&gt;Blinky&lt;/strong&gt; – if the LED blinks, wiring and contacts are fine. Then the &lt;strong&gt;BLE firmware&lt;/strong&gt;. This saves troubleshooting time.&lt;/p&gt;
&lt;p&gt;During upload a white window with an hourglass appears – that&amp;rsquo;s normal. It&amp;rsquo;s done when the inconspicuous message &lt;em&gt;completed&lt;/em&gt; shows up.&lt;/p&gt;
&lt;h3 id="tip-convert-hex-to-bin"&gt;Tip: convert HEX to BIN
&lt;/h3&gt;&lt;p&gt;The flasher accepts HEX uploads, but they take several minutes. HEX files are text-encoded and much larger than the actual data. As &lt;strong&gt;BIN&lt;/strong&gt; (offset &lt;code&gt;0&lt;/code&gt;), the same content flashes in seconds – a real difference with ten boards.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# using the Python tool intelhex&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pip install intelhex
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;hex2bin.py --pad&lt;span class="o"&gt;=&lt;/span&gt;FF ble_nrf52840_2.0.0.hex ble_nrf52840_2.0.0.bin
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# alternatively with objcopy from the ARM toolchain&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;arm-none-eabi-objcopy -I ihex -O binary --gap-fill 0xFF &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ble_nrf52840_2.0.0.hex ble_nrf52840_2.0.0.bin
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Did it work?&lt;/strong&gt; Unlike Blinky, the BLE firmware doesn&amp;rsquo;t blink continuously – it&amp;rsquo;s meant to save power. After a reset the LED blinks &lt;strong&gt;twice&lt;/strong&gt;, and the values then appear in Home Assistant.&lt;/p&gt;
&lt;h2 id="step-3-adding-it-to-home-assistant"&gt;Step 3: Adding it to Home Assistant
&lt;/h2&gt;&lt;p&gt;Home Assistant needs a &lt;strong&gt;Bluetooth gateway&lt;/strong&gt; that receives BTHome packets. I use a &lt;strong&gt;Shelly Gen2 or newer&lt;/strong&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;In Home Assistant, open the Shelly device and click the &lt;strong&gt;gear icon&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Set the Bluetooth scanner mode to at least &lt;strong&gt;passive&lt;/strong&gt; (active works too) and confirm.&lt;/li&gt;
&lt;li&gt;Wait for the sensor&amp;rsquo;s next measurement cycle – or briefly press the &lt;strong&gt;button&lt;/strong&gt; on the board.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The b-parasite then shows up under discovered devices. Once added, it provides these entities:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Soil moisture&lt;/li&gt;
&lt;li&gt;Temperature&lt;/li&gt;
&lt;li&gt;Humidity&lt;/li&gt;
&lt;li&gt;Illuminance&lt;/li&gt;
&lt;li&gt;Voltage and battery level&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All ten of my boards worked right away.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Device called &amp;ldquo;E73…&amp;rdquo; instead of &amp;ldquo;b-parasite&amp;rdquo;?&lt;/strong&gt; Some of my sensors first appeared under the radio module&amp;rsquo;s name. That&amp;rsquo;s purely cosmetic – all values arrive. You can rename the devices yourself; in my case Home Assistant eventually named them correctly anyway.&lt;/p&gt;
&lt;h2 id="step-4-coating-against-moisture"&gt;Step 4: Coating against moisture
&lt;/h2&gt;&lt;p&gt;The &lt;a class="link" href="https://github.com/rbaron/b-parasite/wiki" target="_blank" rel="noopener"
&gt;project wiki&lt;/a&gt; explicitly warns against putting the board into soil uncoated: moisture can creep under the solder mask and cause corrosion.&lt;/p&gt;
&lt;p&gt;So I spray the &lt;strong&gt;lower half&lt;/strong&gt; with a plastic-based protective coating: top side, 20 minutes to dry, flip, bottom side, another 20 minutes. A simple cardboard mask keeps the upper half with the electronics and battery holder free.&lt;/p&gt;
&lt;p&gt;If you prefer something more enclosed, the repository also has &lt;strong&gt;3D-printable cases&lt;/strong&gt;. I think the bare boards look cooler – a matter of taste.&lt;/p&gt;
&lt;h2 id="hands-on-test-how-good-are-the-readings"&gt;Hands-on test: how good are the readings?
&lt;/h2&gt;&lt;h3 id="moisture-percentage-is-not-an-absolute-value"&gt;Moisture percentage is not an absolute value
&lt;/h3&gt;&lt;p&gt;The percentage is &lt;strong&gt;not universally calibrated&lt;/strong&gt;. The only certainties: dry in the air the sensor reads 0 %, in a glass of water 100 %. Everything in between depends on soil type, compaction, how the sensor sits and how moisture is distributed.&lt;/p&gt;
&lt;p&gt;Over several weeks, though, you can nicely see the soil slowly drying out – and every watering as a steep rise. Just moving the sensor to a different spot in the pot changed my reading by about &lt;strong&gt;10 percentage points&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For automations this means:&lt;/strong&gt; don&amp;rsquo;t rely on a fixed threshold like &amp;ldquo;water below 20 %&amp;rdquo; – set the threshold individually per plant and sensor.&lt;/p&gt;
&lt;h3 id="battery-life-extrapolation-doesnt-work"&gt;Battery life: extrapolation doesn&amp;rsquo;t work
&lt;/h3&gt;&lt;p&gt;The author mentions up to two years of runtime in the repository. Some of my sensors have been running since April and have lost about &lt;strong&gt;18 mV&lt;/strong&gt; of their initial voltage.&lt;/p&gt;
&lt;p&gt;A linear extrapolation gave almost &lt;strong&gt;23 years&lt;/strong&gt; for one sensor and &lt;strong&gt;0.8 years&lt;/strong&gt; for another. Both are nonsense: a CR2032&amp;rsquo;s voltage doesn&amp;rsquo;t drop linearly. It stays almost flat for a long time and then falls off steeply at the end. Depending on where on that curve you measure, the extrapolation gives wildly different results.&lt;/p&gt;
&lt;p&gt;A better approach is a &lt;strong&gt;Home Assistant trigger on a minimum voltage&lt;/strong&gt; that reminds you to change the battery in time.&lt;/p&gt;
&lt;h3 id="radio-gaps"&gt;Radio gaps
&lt;/h3&gt;&lt;p&gt;The sensor transmits every &lt;strong&gt;10 minutes&lt;/strong&gt;. In my setup roughly every tenth packet didn&amp;rsquo;t arrive, and the biggest gap in the log was about an hour. For a plant sensor that&amp;rsquo;s no problem – soil doesn&amp;rsquo;t dry out in an hour.&lt;/p&gt;
&lt;h2 id="verdict-is-it-worth-the-effort"&gt;Verdict: is it worth the effort?
&lt;/h2&gt;&lt;p&gt;If you only want to know whether your plant is thirsty: probably not. A ready-made sensor is less hassle – for example the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2026/01/11/never-water-wrong-again-zigbee-soil-moisture-sensor-in-real-world-testing/" &gt;Zigbee soil moisture sensor from my hands-on test&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;But if you want a sensor that&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;lasts a very long time on a coin cell,&lt;/li&gt;
&lt;li&gt;runs open firmware nobody can shut down,&lt;/li&gt;
&lt;li&gt;works fully locally – no cloud, app or account,&lt;/li&gt;
&lt;li&gt;and simply shows up in Home Assistant,&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;then for me the b-parasite is the best soil moisture sensor you can get. You just have to have it built.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The effort in concrete terms:&lt;/strong&gt;&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Effort&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Ordering and waiting&lt;/td&gt;
&lt;td&gt;2–3 weeks, hardly any work&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Flashing&lt;/td&gt;
&lt;td&gt;about 1–2 hours for ten devices&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Coating&lt;/td&gt;
&lt;td&gt;about 30 minutes for the whole batch&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="giveaway-3-b-parasite-sensors"&gt;Giveaway: 3 b-parasite sensors
&lt;/h2&gt;&lt;p&gt;I&amp;rsquo;m giving away three sensors from this batch. To enter: like &lt;a class="link" href="https://youtu.be/6d8Nm_WTD44" target="_blank" rel="noopener"
&gt;the video on YouTube&lt;/a&gt;, subscribe to the channel and reply under the pinned comment explaining why you&amp;rsquo;d like to win one.&lt;/p&gt;
&lt;h2 id="links"&gt;Links
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/rbaron/b-parasite" target="_blank" rel="noopener"
&gt;b-parasite on GitHub&lt;/a&gt; (repository, wiki, releases, cases)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/atc1441/ESP32_nRF52_SWD" target="_blank" rel="noopener"
&gt;ESP32_nRF52_SWD – SWD flasher for nRF52&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.home-assistant.io/integrations/bthome/" target="_blank" rel="noopener"
&gt;BTHome integration in Home Assistant&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Ad: I earn a commission via &lt;a class="link" href="https://pcbway.com/g/U1JrnD" target="_blank" rel="noopener"
&gt;my PCBWay link&lt;/a&gt; at no extra cost to you. PCBWay had no influence on the content of this article.&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Tilt Venetian Blind Slats to the Percent with Shelly and Home Assistant</title><link>https://smarthome-aber-sicher.de/en/blog/2026/09/17/shelly-raffstore-tilt/</link><pubDate>Thu, 17 Sep 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/09/17/shelly-raffstore-tilt/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/09/17/shelly-raffstore-tilt/cover.jpeg" alt="Featured image of post Tilt Venetian Blind Slats to the Percent with Shelly and Home Assistant" /&gt;&lt;p&gt;Don&amp;rsquo;t just move your external venetian blinds up and down with &lt;strong&gt;Shelly&lt;/strong&gt; and &lt;strong&gt;Home Assistant&lt;/strong&gt; – tilt the slats precisely, to the percent. For years this only worked with ugly workarounds. Since &lt;strong&gt;firmware 1.5.0&lt;/strong&gt; (early 2025), Shelly devices from Gen2 onwards support it natively. I overlooked the feature for more than a year and only found it because of a bug somewhere completely different – today I&amp;rsquo;m a big fan. Here&amp;rsquo;s how to set it up, plus the two automations that only flash by in the video, &lt;strong&gt;complete and ready to copy&lt;/strong&gt;.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/glYi1i-WOdQ?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_11039627060953415559_hu_e07a8cc57b2bc3f8.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="position-and-tilt-two-independent-values"&gt;Position and tilt: two independent values
&lt;/h2&gt;&lt;p&gt;With slat control enabled, a cover entity in Home Assistant has two values:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;th&gt;Meaning&lt;/th&gt;
&lt;th&gt;0 %&lt;/th&gt;
&lt;th&gt;50 %&lt;/th&gt;
&lt;th&gt;100 %&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Position&lt;/strong&gt; (&lt;code&gt;current_position&lt;/code&gt;)&lt;/td&gt;
&lt;td&gt;Height of the blind&lt;/td&gt;
&lt;td&gt;fully closed&lt;/td&gt;
&lt;td&gt;half&lt;/td&gt;
&lt;td&gt;fully open&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tilt&lt;/strong&gt; (&lt;code&gt;current_tilt_position&lt;/code&gt;)&lt;/td&gt;
&lt;td&gt;Slat angle&lt;/td&gt;
&lt;td&gt;slats pointing down&lt;/td&gt;
&lt;td&gt;horizontal&lt;/td&gt;
&lt;td&gt;slats pointing up&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The key point: the blind stays at a fixed height, and you still control exactly how much light and sun gets through – purely via the slat angle. In the video I show this on my office blind with a Shelly Plus 2PM: I only move the tilt from 20 to 50 to 80 %, and the height stays the same the whole time.&lt;/p&gt;
&lt;h2 id="backstory-my-ugly-workarounds"&gt;Backstory: my ugly workarounds
&lt;/h2&gt;&lt;p&gt;This wasn&amp;rsquo;t always possible natively. My south-facing windows originally had four &lt;strong&gt;Shelly 2.5&lt;/strong&gt; – first-generation devices that still don&amp;rsquo;t support tilt. My workaround back then: four custom switches in Home Assistant that sent a very short pulse via the Shelly REST API, &lt;strong&gt;200 milliseconds&lt;/strong&gt; up or down, to move the slats somewhat precisely. Yes, it was every bit as hacky as it sounds.&lt;/p&gt;
&lt;p&gt;Later I replaced them with second-generation devices – but completely missed the new feature in early 2025. My wake-up routine had a similar trick (more below). By now I&amp;rsquo;ve thrown all of that out.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Which Shellys support tilt?&lt;/strong&gt; All cover-capable Shellys from Gen2 onwards (Plus and Pro series as well as Gen3/Gen4) with firmware 1.5.0 or later. First-generation devices (e.g. Shelly 2.5) don&amp;rsquo;t.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="shelly-setup-slat-control"&gt;Shelly setup: Slat Control
&lt;/h2&gt;&lt;p&gt;In the Shelly web interface: &lt;strong&gt;Cover → Settings → Slat Control&lt;/strong&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Open Time / Close Time:&lt;/strong&gt; how long a full slat rotation takes (all the way down to all the way up). Shelly suggests 1.5 s – mine is &lt;strong&gt;1.1 s&lt;/strong&gt;. Adjust this to your blind, otherwise the calculated percentages will be off.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Don&amp;rsquo;t confuse this&lt;/strong&gt; with the regular travel-time calibration of the blind. That one runs automatically; the slat time has to be entered manually.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Retain Slat Position:&lt;/strong&gt; keeps the slat angle when the blind moves. If tilt is at 50 % and you move the blind halfway up, Shelly restores 50 % afterwards.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Precise Slat Position:&lt;/strong&gt; according to the docs, this makes slat control even more precise. I haven&amp;rsquo;t noticed any difference in daily use – if you know what it actually does, let me know in the comments.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The wall switch behaves differently, too:&lt;/strong&gt; a short press now only moves the slats (in 20 % steps), a long press moves the whole blind as usual. A short press while moving stops it.&lt;/p&gt;
&lt;h2 id="how-i-found-the-feature-a-matter-bug"&gt;How I found the feature: a Matter bug
&lt;/h2&gt;&lt;p&gt;I didn&amp;rsquo;t discover Slat Control on my blinds but somewhere completely different: I&amp;rsquo;m currently testing the new &lt;strong&gt;Shelly Gen4 devices&lt;/strong&gt;, including their Matter support. If you add a Shelly to Home Assistant via Matter and Slat Control is &lt;strong&gt;not&lt;/strong&gt; enabled, Home Assistant doesn&amp;rsquo;t create a cover entity at all.&lt;/p&gt;
&lt;p&gt;The reason: Shelly then reports no value for tilt – &lt;code&gt;null&lt;/code&gt; in programming terms, not to be confused with the number 0. That&amp;rsquo;s exactly what trips up Home Assistant&amp;rsquo;s Matter integration. As soon as Slat Control is enabled, a real number arrives and the cover entity shows up normally. While debugging this, I came across the setting for the first time.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; I contributed a bugfix to Home Assistant for this, shipping with &lt;strong&gt;HA 2026.9.3&lt;/strong&gt;. More on that – and on Matter and Zigbee with the Gen4 devices – in my upcoming videos.&lt;/p&gt;
&lt;h2 id="in-home-assistant-attribute-and-action"&gt;In Home Assistant: attribute and action
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Read: attribute &lt;code&gt;current_tilt_position&lt;/code&gt; on the cover entity&lt;/li&gt;
&lt;li&gt;Set: &lt;code&gt;cover.set_cover_tilt_position&lt;/code&gt; – analogous to &lt;code&gt;cover.set_cover_position&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover.set_cover_tilt_position&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover.office_blind&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;tilt_position&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;50&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id="important-move-first-wait-then-tilt"&gt;Important: move first, wait, then tilt
&lt;/h3&gt;&lt;p&gt;In theory Home Assistant can combine position and tilt in one call, but not every device handles that cleanly – it caused problems for me. So:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Move the blind (&lt;code&gt;cover.close_cover&lt;/code&gt; or &lt;code&gt;cover.set_cover_position&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wait until it has arrived&lt;/strong&gt; (&lt;code&gt;wait_template&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Only then call &lt;code&gt;cover.set_cover_tilt_position&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Without the wait, the commands can override each other and the blind ends up in a state you never wanted.&lt;/p&gt;
&lt;h2 id="automation-1-sun-protection-based-on-the-suns-position"&gt;Automation 1: sun protection based on the sun&amp;rsquo;s position
&lt;/h2&gt;&lt;p&gt;My setup consists of two blueprints. The YAML is identical to the German version of this article – labels and descriptions inside the blueprints are in German.&lt;/p&gt;
&lt;h3 id="blueprint-a-is-the-sun-hitting-the-window"&gt;Blueprint A: is the sun hitting the window?
&lt;/h3&gt;&lt;p&gt;This blueprint turns on an &lt;code&gt;input_boolean&lt;/code&gt; per window front (e.g. &lt;code&gt;input_boolean.sudfenster_beschienen&lt;/code&gt;) as soon as the sun actually shines onto the glass. It takes into account the compass direction, the orientation of my house (&lt;code&gt;offset: 23&lt;/code&gt; degrees) and the roof overhang: if the sun is high enough, the overhang shades the window and nothing needs to close.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;span class="lnt"&gt;18
&lt;/span&gt;&lt;span class="lnt"&gt;19
&lt;/span&gt;&lt;span class="lnt"&gt;20
&lt;/span&gt;&lt;span class="lnt"&gt;21
&lt;/span&gt;&lt;span class="lnt"&gt;22
&lt;/span&gt;&lt;span class="lnt"&gt;23
&lt;/span&gt;&lt;span class="lnt"&gt;24
&lt;/span&gt;&lt;span class="lnt"&gt;25
&lt;/span&gt;&lt;span class="lnt"&gt;26
&lt;/span&gt;&lt;span class="lnt"&gt;27
&lt;/span&gt;&lt;span class="lnt"&gt;28
&lt;/span&gt;&lt;span class="lnt"&gt;29
&lt;/span&gt;&lt;span class="lnt"&gt;30
&lt;/span&gt;&lt;span class="lnt"&gt;31
&lt;/span&gt;&lt;span class="lnt"&gt;32
&lt;/span&gt;&lt;span class="lnt"&gt;33
&lt;/span&gt;&lt;span class="lnt"&gt;34
&lt;/span&gt;&lt;span class="lnt"&gt;35
&lt;/span&gt;&lt;span class="lnt"&gt;36
&lt;/span&gt;&lt;span class="lnt"&gt;37
&lt;/span&gt;&lt;span class="lnt"&gt;38
&lt;/span&gt;&lt;span class="lnt"&gt;39
&lt;/span&gt;&lt;span class="lnt"&gt;40
&lt;/span&gt;&lt;span class="lnt"&gt;41
&lt;/span&gt;&lt;span class="lnt"&gt;42
&lt;/span&gt;&lt;span class="lnt"&gt;43
&lt;/span&gt;&lt;span class="lnt"&gt;44
&lt;/span&gt;&lt;span class="lnt"&gt;45
&lt;/span&gt;&lt;span class="lnt"&gt;46
&lt;/span&gt;&lt;span class="lnt"&gt;47
&lt;/span&gt;&lt;span class="lnt"&gt;48
&lt;/span&gt;&lt;span class="lnt"&gt;49
&lt;/span&gt;&lt;span class="lnt"&gt;50
&lt;/span&gt;&lt;span class="lnt"&gt;51
&lt;/span&gt;&lt;span class="lnt"&gt;52
&lt;/span&gt;&lt;span class="lnt"&gt;53
&lt;/span&gt;&lt;span class="lnt"&gt;54
&lt;/span&gt;&lt;span class="lnt"&gt;55
&lt;/span&gt;&lt;span class="lnt"&gt;56
&lt;/span&gt;&lt;span class="lnt"&gt;57
&lt;/span&gt;&lt;span class="lnt"&gt;58
&lt;/span&gt;&lt;span class="lnt"&gt;59
&lt;/span&gt;&lt;span class="lnt"&gt;60
&lt;/span&gt;&lt;span class="lnt"&gt;61
&lt;/span&gt;&lt;span class="lnt"&gt;62
&lt;/span&gt;&lt;span class="lnt"&gt;63
&lt;/span&gt;&lt;span class="lnt"&gt;64
&lt;/span&gt;&lt;span class="lnt"&gt;65
&lt;/span&gt;&lt;span class="lnt"&gt;66
&lt;/span&gt;&lt;span class="lnt"&gt;67
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;blueprint&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Fensterbescheinung berechnen&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Berechnet ob für eine bestimmte Himmelsrichtung die Sonne auf die Fenster scheint&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;domain&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;automation&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;input&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target_azimuth&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Himmelsrichtung&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Die zu betrachtende (ideale) Himmelsrichtung&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;selector&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;select&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;options&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;value&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;0&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;label&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Nord&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;value&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;90&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;label&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Ost&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;value&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;180&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;label&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Süd&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;value&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;270&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;label&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;West&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;boolean_entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Zustandsschalter&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Eine Entity die auf &amp;#34;ein&amp;#34; geschaltet wird, wenn die Sonne auf die Fenster scheint&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;selector&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;domain&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_boolean&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;sensor.sun_solar_elevation&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;numeric_state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;sensor.sun_solar_elevation&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;above&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;variables&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target_azimuth&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input target_azimuth&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;offset&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;23&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# house orientation offset from true compass direction&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;azimuth&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;{{ states(&amp;#39;sensor.sun_solar_azimuth&amp;#39;)|float }}&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;elevation&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;{{ states(&amp;#39;sensor.sun_solar_elevation&amp;#39;)|float }}&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;roof_overhang&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;86&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# roof overhang in cm&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;window_height&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;200&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# window height in cm&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;if&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|-&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% set target_azimuth = target_azimuth|int + offset %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% set delta = (target_azimuth - azimuth)|abs %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ delta &amp;lt; 90 or delta &amp;gt; 270 }}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;-&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% set target_azimuth = target_azimuth|int + offset %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% set degrees = 90-(azimuth-target_azimuth)|abs %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% set effective_roof_overhang = roof_overhang / sin(degrees / 180 *
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; 3.1415) %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% set max_elevation = (atan(window_height/effective_roof_overhang)) /
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; 3.1415 * 180 %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ 0 &amp;lt; elevation and elevation &amp;lt; max_elevation }}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;then&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_boolean.turn_on&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;{}&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input boolean_entity&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;else&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_boolean.turn_off&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;{}&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input boolean_entity&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;mode&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;single&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;sensor.sun_solar_azimuth&lt;/code&gt; and &lt;code&gt;sensor.sun_solar_elevation&lt;/code&gt; come from the built-in Sun integration (you may need to enable them). Adjust &lt;code&gt;offset&lt;/code&gt;, &lt;code&gt;roof_overhang&lt;/code&gt; and &lt;code&gt;window_height&lt;/code&gt; to your house.&lt;/p&gt;
&lt;h3 id="blueprint-b-close-the-blind-and-tilt-the-slats"&gt;Blueprint B: close the blind and tilt the slats
&lt;/h3&gt;&lt;p&gt;This blueprint reacts to the &lt;code&gt;input_boolean&lt;/code&gt; from blueprint A: when the sun hits the window, the blind closes, waits until it&amp;rsquo;s really closed and then tilts the slats to the configured value. When the sun moves away, it opens again – but only if the automation closed it in the first place.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt; 10
&lt;/span&gt;&lt;span class="lnt"&gt; 11
&lt;/span&gt;&lt;span class="lnt"&gt; 12
&lt;/span&gt;&lt;span class="lnt"&gt; 13
&lt;/span&gt;&lt;span class="lnt"&gt; 14
&lt;/span&gt;&lt;span class="lnt"&gt; 15
&lt;/span&gt;&lt;span class="lnt"&gt; 16
&lt;/span&gt;&lt;span class="lnt"&gt; 17
&lt;/span&gt;&lt;span class="lnt"&gt; 18
&lt;/span&gt;&lt;span class="lnt"&gt; 19
&lt;/span&gt;&lt;span class="lnt"&gt; 20
&lt;/span&gt;&lt;span class="lnt"&gt; 21
&lt;/span&gt;&lt;span class="lnt"&gt; 22
&lt;/span&gt;&lt;span class="lnt"&gt; 23
&lt;/span&gt;&lt;span class="lnt"&gt; 24
&lt;/span&gt;&lt;span class="lnt"&gt; 25
&lt;/span&gt;&lt;span class="lnt"&gt; 26
&lt;/span&gt;&lt;span class="lnt"&gt; 27
&lt;/span&gt;&lt;span class="lnt"&gt; 28
&lt;/span&gt;&lt;span class="lnt"&gt; 29
&lt;/span&gt;&lt;span class="lnt"&gt; 30
&lt;/span&gt;&lt;span class="lnt"&gt; 31
&lt;/span&gt;&lt;span class="lnt"&gt; 32
&lt;/span&gt;&lt;span class="lnt"&gt; 33
&lt;/span&gt;&lt;span class="lnt"&gt; 34
&lt;/span&gt;&lt;span class="lnt"&gt; 35
&lt;/span&gt;&lt;span class="lnt"&gt; 36
&lt;/span&gt;&lt;span class="lnt"&gt; 37
&lt;/span&gt;&lt;span class="lnt"&gt; 38
&lt;/span&gt;&lt;span class="lnt"&gt; 39
&lt;/span&gt;&lt;span class="lnt"&gt; 40
&lt;/span&gt;&lt;span class="lnt"&gt; 41
&lt;/span&gt;&lt;span class="lnt"&gt; 42
&lt;/span&gt;&lt;span class="lnt"&gt; 43
&lt;/span&gt;&lt;span class="lnt"&gt; 44
&lt;/span&gt;&lt;span class="lnt"&gt; 45
&lt;/span&gt;&lt;span class="lnt"&gt; 46
&lt;/span&gt;&lt;span class="lnt"&gt; 47
&lt;/span&gt;&lt;span class="lnt"&gt; 48
&lt;/span&gt;&lt;span class="lnt"&gt; 49
&lt;/span&gt;&lt;span class="lnt"&gt; 50
&lt;/span&gt;&lt;span class="lnt"&gt; 51
&lt;/span&gt;&lt;span class="lnt"&gt; 52
&lt;/span&gt;&lt;span class="lnt"&gt; 53
&lt;/span&gt;&lt;span class="lnt"&gt; 54
&lt;/span&gt;&lt;span class="lnt"&gt; 55
&lt;/span&gt;&lt;span class="lnt"&gt; 56
&lt;/span&gt;&lt;span class="lnt"&gt; 57
&lt;/span&gt;&lt;span class="lnt"&gt; 58
&lt;/span&gt;&lt;span class="lnt"&gt; 59
&lt;/span&gt;&lt;span class="lnt"&gt; 60
&lt;/span&gt;&lt;span class="lnt"&gt; 61
&lt;/span&gt;&lt;span class="lnt"&gt; 62
&lt;/span&gt;&lt;span class="lnt"&gt; 63
&lt;/span&gt;&lt;span class="lnt"&gt; 64
&lt;/span&gt;&lt;span class="lnt"&gt; 65
&lt;/span&gt;&lt;span class="lnt"&gt; 66
&lt;/span&gt;&lt;span class="lnt"&gt; 67
&lt;/span&gt;&lt;span class="lnt"&gt; 68
&lt;/span&gt;&lt;span class="lnt"&gt; 69
&lt;/span&gt;&lt;span class="lnt"&gt; 70
&lt;/span&gt;&lt;span class="lnt"&gt; 71
&lt;/span&gt;&lt;span class="lnt"&gt; 72
&lt;/span&gt;&lt;span class="lnt"&gt; 73
&lt;/span&gt;&lt;span class="lnt"&gt; 74
&lt;/span&gt;&lt;span class="lnt"&gt; 75
&lt;/span&gt;&lt;span class="lnt"&gt; 76
&lt;/span&gt;&lt;span class="lnt"&gt; 77
&lt;/span&gt;&lt;span class="lnt"&gt; 78
&lt;/span&gt;&lt;span class="lnt"&gt; 79
&lt;/span&gt;&lt;span class="lnt"&gt; 80
&lt;/span&gt;&lt;span class="lnt"&gt; 81
&lt;/span&gt;&lt;span class="lnt"&gt; 82
&lt;/span&gt;&lt;span class="lnt"&gt; 83
&lt;/span&gt;&lt;span class="lnt"&gt; 84
&lt;/span&gt;&lt;span class="lnt"&gt; 85
&lt;/span&gt;&lt;span class="lnt"&gt; 86
&lt;/span&gt;&lt;span class="lnt"&gt; 87
&lt;/span&gt;&lt;span class="lnt"&gt; 88
&lt;/span&gt;&lt;span class="lnt"&gt; 89
&lt;/span&gt;&lt;span class="lnt"&gt; 90
&lt;/span&gt;&lt;span class="lnt"&gt; 91
&lt;/span&gt;&lt;span class="lnt"&gt; 92
&lt;/span&gt;&lt;span class="lnt"&gt; 93
&lt;/span&gt;&lt;span class="lnt"&gt; 94
&lt;/span&gt;&lt;span class="lnt"&gt; 95
&lt;/span&gt;&lt;span class="lnt"&gt; 96
&lt;/span&gt;&lt;span class="lnt"&gt; 97
&lt;/span&gt;&lt;span class="lnt"&gt; 98
&lt;/span&gt;&lt;span class="lnt"&gt; 99
&lt;/span&gt;&lt;span class="lnt"&gt;100
&lt;/span&gt;&lt;span class="lnt"&gt;101
&lt;/span&gt;&lt;span class="lnt"&gt;102
&lt;/span&gt;&lt;span class="lnt"&gt;103
&lt;/span&gt;&lt;span class="lnt"&gt;104
&lt;/span&gt;&lt;span class="lnt"&gt;105
&lt;/span&gt;&lt;span class="lnt"&gt;106
&lt;/span&gt;&lt;span class="lnt"&gt;107
&lt;/span&gt;&lt;span class="lnt"&gt;108
&lt;/span&gt;&lt;span class="lnt"&gt;109
&lt;/span&gt;&lt;span class="lnt"&gt;110
&lt;/span&gt;&lt;span class="lnt"&gt;111
&lt;/span&gt;&lt;span class="lnt"&gt;112
&lt;/span&gt;&lt;span class="lnt"&gt;113
&lt;/span&gt;&lt;span class="lnt"&gt;114
&lt;/span&gt;&lt;span class="lnt"&gt;115
&lt;/span&gt;&lt;span class="lnt"&gt;116
&lt;/span&gt;&lt;span class="lnt"&gt;117
&lt;/span&gt;&lt;span class="lnt"&gt;118
&lt;/span&gt;&lt;span class="lnt"&gt;119
&lt;/span&gt;&lt;span class="lnt"&gt;120
&lt;/span&gt;&lt;span class="lnt"&gt;121
&lt;/span&gt;&lt;span class="lnt"&gt;122
&lt;/span&gt;&lt;span class="lnt"&gt;123
&lt;/span&gt;&lt;span class="lnt"&gt;124
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;blueprint&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Rollos nach Sonnenstand schliessen und öffnen&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Schliesst und öffnet Rollos abhängig von einer Boolean Entity und optional Fensterkontakten&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;domain&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;automation&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;input&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;sun_hits_window_entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Sonnenstandsindikator&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;selector&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;domain&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_boolean&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;window_open_entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Fensterkontakt&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;default&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;selector&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;domain&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;binary_sensor&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;cover&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Rolladen&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;selector&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;domain&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;add_conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Weitere Bedingungen&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;default&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;selector&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;tilt_after_close&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Tilt nach dem Schliessen&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;-&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; Optional: Lamellen-Position (%), auf die nach dem Schliessen
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; gekippt wird. Leer lassen, um den Tilt unangetastet zu lassen.&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;default&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;selector&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;number&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;min&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;-&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;max&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;100&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;step&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;mode&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;slider&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- !&lt;span class="l"&gt;input sun_hits_window_entity&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;from&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;off&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;on&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;sun_true&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- !&lt;span class="l"&gt;input sun_hits_window_entity&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;from&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;on&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;off&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;sun_false&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input window_open_entity&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;from&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;on&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;off&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;closed&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;binary_sensor.sonne_scheint&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;from&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;off&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;on&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;brightness_level&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input add_conditions&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;choose&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;trigger&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;sun_true&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;closed&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;brightness_level&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input sun_hits_window_entity&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;on&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input cover&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;open&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;-&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ cover not in
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; states.sensor.automation_cover_state.state }}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Cover wurde heute noch nicht automatisiert geschlossen&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input window_open_entity&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;off&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;binary_sensor.sonne_scheint&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;on&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;sequence&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover.close_cover&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;{}&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input cover&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;if&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;{{ tilt_after_close|int(-1) &amp;gt;= 0 }}&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;then&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;wait_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;{{ is_state(cover, &amp;#39;closed&amp;#39;) }}&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;timeout&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;60&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;continue_on_timeout&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover.set_cover_tilt_position&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;tilt_position&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;{{ tilt_after_close|int(-1) }}&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input cover&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;trigger&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;sun_false&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;-&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ cover in
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; states.sensor.automation_cover_state.state }}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Cover wurde heute automatisiert geschlossen&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;sequence&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover.open_cover&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;{}&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input cover&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;variables&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;cover&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input cover&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;tilt_after_close&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input tilt_after_close&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;mode&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;restart&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Two entities are specific to my house – replace or remove them:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;binary_sensor.sonne_scheint&lt;/code&gt; (&amp;ldquo;sun is shining&amp;rdquo;) – a brightness sensor so nothing closes on cloudy days.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sensor.automation_cover_state&lt;/code&gt; – remembers which blinds were closed automatically today. That way the automation never opens a blind you closed yourself, and never closes one again that you opened manually.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Using the blueprint looks like this:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Blinds: living room south – close/open based on sun position&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;use_blueprint&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;path&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;homeassistant/sun_close_blinds.yaml&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;input&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;sun_hits_window_entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_boolean.sudfenster_beschienen&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;window_open_entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;binary_sensor.window_contact_living_room_south&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;cover&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover.blind_living_room_south&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;tilt_after_close&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;50&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;tilt_after_close: 50&lt;/code&gt; sets the slats horizontal. Depending on the window and the incoming light, a different value may work better.&lt;/p&gt;
&lt;h2 id="automation-2-wake-up-routine-with-daylight"&gt;Automation 2: wake-up routine with daylight
&lt;/h2&gt;&lt;p&gt;My wake-up routine gently brings up lights and radio in the morning. The last step used to be an ugly hack: if the blind was fully closed, it was moved to &lt;strong&gt;position 1 %&lt;/strong&gt; so some light could come through the slat gaps. It sort of worked, but it wasn&amp;rsquo;t real tilt.&lt;/p&gt;
&lt;p&gt;Now the blind stays closed and only the slats are tilted:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Tilt slats to 50% (if fully closed)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;if&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover.bedroom_blind&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;attribute&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;current_position&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;then&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Set tilt to 50%&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover.set_cover_tilt_position&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover.bedroom_blind&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;tilt_position&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;50&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;continue_on_error&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;The &lt;code&gt;current_position: 0&lt;/code&gt; condition makes sure an already opened blind isn&amp;rsquo;t touched. &lt;code&gt;continue_on_error&lt;/code&gt; prevents the whole routine from aborting if the Shelly happens to be unreachable.&lt;/p&gt;
&lt;p&gt;The rest of the routine, in short:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;10 minutes after the trigger: dim up the bedroom lights over 20 minutes (&lt;code&gt;transition: 1200&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Set Sonos volume to 0 and start my favorite station – with up to 3 attempts until the player actually reports &lt;code&gt;playing&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Raise the volume in 8 steps, 2 minutes apart&lt;/li&gt;
&lt;li&gt;Tilt the slats (see above)&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="my-takeaway"&gt;My takeaway
&lt;/h2&gt;&lt;p&gt;The feature has been in the firmware since early 2025 – and it&amp;rsquo;s worth browsing your Shelly settings every now and then, even if you think you know your device inside out.&lt;/p&gt;
&lt;p&gt;Two questions for you: do you know what &lt;strong&gt;Precise Slat Position&lt;/strong&gt; actually does? And do you have blinds that could tilt, but you&amp;rsquo;re not using it yet? Let me know in the comments!&lt;/p&gt;
&lt;p&gt;If you haven&amp;rsquo;t automated your blinds with Shelly at all yet, start with my article &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/11/09/make-your-blinds-smart-with-shelly-no-cloud-local-and-affordable/" &gt;Make Blinds Smart with Shelly&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ad:&lt;/strong&gt; Want to get a Shelly? Use the code &lt;strong&gt;SMARTHOMEABERSICHER-10OFF&lt;/strong&gt; for 10 % off via &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;this link&lt;/a&gt; (&lt;em&gt;affiliate link&lt;/em&gt;).&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Shelly supplied the Gen4 devices briefly shown in the video free of charge. Shelly had no influence on the content of this article.&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>My Radio Mutes Its Own Ads</title><link>https://smarthome-aber-sicher.de/en/blog/2026/09/03/radiowerbung-stummschalten/</link><pubDate>Thu, 03 Sep 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/09/03/radiowerbung-stummschalten/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/09/03/radiowerbung-stummschalten/cover.jpeg" alt="Featured image of post My Radio Mutes Its Own Ads" /&gt;&lt;p&gt;Half past six, bathroom, the radio is on. Music, news, traffic report — and then the first ad jingle of the day. It cuts off after a blink. Nobody pressed a button. The speaker muted itself.&lt;/p&gt;
&lt;p&gt;Behind it is no language model detecting ads, no audio fingerprinting, no subscription service. Behind it is an automation with two triggers — and a station that voluntarily announces when ads are playing.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s the actual joke of the thing: I didn&amp;rsquo;t have to build the detection at all. &lt;strong&gt;SWR1 delivers it for free.&lt;/strong&gt;&lt;/p&gt;
&lt;!-- Insert YouTube embed once the video is live --&gt;
&lt;!-- &lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/VIDEOID?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/img/sas_youtube.png" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
--&gt;
&lt;h2 id="the-station-gives-it-away-itself"&gt;The station gives it away itself
&lt;/h2&gt;&lt;p&gt;Every radio station sends a small text channel alongside the audio. On FM, this is known as RDS radio text; on an internet stream, the same text arrives as title metadata. Whether the station taps the same source internally, I don&amp;rsquo;t know — all that matters to us is that the same text arrives at the speaker.&lt;/p&gt;
&lt;p&gt;The crucial point: this text field is &lt;strong&gt;not a static station name&lt;/strong&gt;. It changes constantly. On SWR1, a sample from a single morning included this, among other things:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Walk of life / Dire Straits
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Get lucky / Daft Punk feat. Pharrell Williams
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;I don&amp;#39;t like Mondays / The Boomtown Rats
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Something stupid / Robbie Williams &amp;amp; Nicole Kidman
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Guten Morgen Baden-Württemberg mit Cora Klausnitzer &amp;amp; Matthias
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;SWR1 Baden-Württemberg Verkehrsservice
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;SWR1 Stau-Hotline: 0711-929 10 100
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Aktuelle Nachrichten auch auf swr1.de
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Nachricht über die SWR1 App
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;SWR1 Baden-Württemberg
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Werbung in SWR1 ← the marker everything listens for
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Song title, artist, presenter, traffic report, phone numbers — and right in the middle, the announcement that ads are currently playing. The station says so because the field is maintained anyway. Nobody thought that someone would build a mute automation on top of it.&lt;/p&gt;
&lt;p&gt;My Sonos speaker reads this metadata from the stream, and the Sonos integration passes it into Home Assistant as the &lt;code&gt;media_title&lt;/code&gt; attribute. That makes the ad block a perfectly normal state change in the system — and everything Home Assistant can do with state changes now works for radio ads too.&lt;/p&gt;
&lt;p&gt;The signal chain is short:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;SWR1 broadcast
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └─ Radio text in the stream (&amp;#34;Werbung in SWR1&amp;#34;)
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └─ Sonos speaker reads the stream metadata
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └─ Sonos integration exposes it as the media_title attribute
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └─ Automation triggers on the exact text
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └─ media_player.volume_mute
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="step-1-find-your-stations-marker"&gt;Step 1: Find your station&amp;rsquo;s marker
&lt;/h2&gt;&lt;p&gt;This is the most important section of this article, because &lt;code&gt;Werbung in SWR1&lt;/code&gt; works &lt;strong&gt;exclusively for SWR1 Baden-Württemberg&lt;/strong&gt;. Other stations phrase it differently, or don&amp;rsquo;t send a marker at all. Before you build anything, you need to check what your station actually sends.&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s how:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Play your target station on the speaker you want to control later.&lt;/li&gt;
&lt;li&gt;In Home Assistant, open &lt;strong&gt;Developer Tools → States&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Find your media player entity, e.g. &lt;code&gt;media_player.bathroom&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Watch the &lt;code&gt;media_title&lt;/code&gt; attribute column while an ad block plays.&lt;/li&gt;
&lt;li&gt;Note the text &lt;strong&gt;exactly&lt;/strong&gt;: capitalization, spaces, special characters. The trigger compares character by character.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Faster: use &lt;strong&gt;Developer Tools → Template&lt;/strong&gt;. This line shows you the live radio text without hunting through a long attribute list:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-jinja" data-lang="jinja"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="nv"&gt;state_attr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;media_player.bathroom&amp;#39;&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;media_title&amp;#39;&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt;&lt;span class="x"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;If you don&amp;rsquo;t want to sit next to the screen and wait for the next ad block, mirror the radio text into a template sensor. It then shows up in history, and you can review at your leisure what ran through over the day:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;sensor&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Radio Text Bathroom&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;{{ state_attr(&amp;#39;media_player.bathroom&amp;#39;, &amp;#39;media_title&amp;#39;) }}&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;If you can&amp;rsquo;t find a usable marker, that&amp;rsquo;s where it ends — your station simply doesn&amp;rsquo;t send the information. Annoying, but honestly the more likely outcome. I got lucky with SWR1.&lt;/p&gt;
&lt;h2 id="step-2-two-triggers-one-if"&gt;Step 2: Two triggers, one &lt;code&gt;if&lt;/code&gt;
&lt;/h2&gt;&lt;p&gt;Now comes the ingredient many people don&amp;rsquo;t have on their radar: &lt;strong&gt;Home Assistant can trigger on an attribute change, not just on a state change.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The state of my speaker is &lt;code&gt;playing&lt;/code&gt; the entire time. It doesn&amp;rsquo;t change when the ad starts — audio keeps playing, after all. What changes is the &lt;code&gt;media_title&lt;/code&gt; attribute. That&amp;rsquo;s exactly what the trigger listens for via the line &lt;code&gt;attribute: media_title&lt;/code&gt;. Without it, the automation would never fire. If you&amp;rsquo;re still missing the trigger basics, start with &lt;a class="link" href="https://smarthome-aber-sicher.de/en/post/ha-az/01-automationen/" &gt;Home Assistant A-Z: A for Automations&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The second trick is symmetry:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;to: Werbung in SWR1&lt;/code&gt; — the radio text changes &lt;strong&gt;to&lt;/strong&gt; the marker: ads start, mute.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;from: Werbung in SWR1&lt;/code&gt; — the radio text changes &lt;strong&gt;away from&lt;/strong&gt; the marker: ads are over, audio back on.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Two triggers, two IDs, one &lt;code&gt;if&lt;/code&gt;. That&amp;rsquo;s all there is to it:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;span class="lnt"&gt;18
&lt;/span&gt;&lt;span class="lnt"&gt;19
&lt;/span&gt;&lt;span class="lnt"&gt;20
&lt;/span&gt;&lt;span class="lnt"&gt;21
&lt;/span&gt;&lt;span class="lnt"&gt;22
&lt;/span&gt;&lt;span class="lnt"&gt;23
&lt;/span&gt;&lt;span class="lnt"&gt;24
&lt;/span&gt;&lt;span class="lnt"&gt;25
&lt;/span&gt;&lt;span class="lnt"&gt;26
&lt;/span&gt;&lt;span class="lnt"&gt;27
&lt;/span&gt;&lt;span class="lnt"&gt;28
&lt;/span&gt;&lt;span class="lnt"&gt;29
&lt;/span&gt;&lt;span class="lnt"&gt;30
&lt;/span&gt;&lt;span class="lnt"&gt;31
&lt;/span&gt;&lt;span class="lnt"&gt;32
&lt;/span&gt;&lt;span class="lnt"&gt;33
&lt;/span&gt;&lt;span class="lnt"&gt;34
&lt;/span&gt;&lt;span class="lnt"&gt;35
&lt;/span&gt;&lt;span class="lnt"&gt;36
&lt;/span&gt;&lt;span class="lnt"&gt;37
&lt;/span&gt;&lt;span class="lnt"&gt;38
&lt;/span&gt;&lt;span class="lnt"&gt;39
&lt;/span&gt;&lt;span class="lnt"&gt;40
&lt;/span&gt;&lt;span class="lnt"&gt;41
&lt;/span&gt;&lt;span class="lnt"&gt;42
&lt;/span&gt;&lt;span class="lnt"&gt;43
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;blueprint&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Mute Sonos on Ads&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Mutes playback when the RDS stream reports an ad marker&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;domain&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;automation&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;input&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;media_player&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Media Player&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;description&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;The media player entity to control&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;selector&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;domain&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;media_player&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- !&lt;span class="l"&gt;input media_player&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;attribute&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;media_title&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Werbung in SWR1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;mute&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- !&lt;span class="l"&gt;input media_player&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;attribute&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;media_title&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;from&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Werbung in SWR1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;unmute&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;if&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;trigger&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;mute&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;then&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;media_player.volume_mute&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;is_volume_muted&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input media_player&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;else&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;media_player.volume_mute&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;is_volume_muted&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;input media_player&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;To install it, drop the file into your Home Assistant configuration under &lt;code&gt;blueprints/automation/&amp;lt;your-name&amp;gt;/sonos_ad_mute.yaml&lt;/code&gt;, reload blueprints under &lt;strong&gt;Settings → Automations &amp;amp; Scenes → Blueprints&lt;/strong&gt;, and create automations from it. How blueprints work in general is covered in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/post/ha-az/02-blueprints/" &gt;Home Assistant A-Z: B for Blueprints&lt;/a&gt;. You can also just paste the content from &lt;code&gt;trigger:&lt;/code&gt; onward as a normal automation and replace &lt;code&gt;!input media_player&lt;/code&gt; with your entity.&lt;/p&gt;
&lt;p&gt;Two notes on the code that I don&amp;rsquo;t want to withhold:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The syntax is the classic one.&lt;/strong&gt; &lt;code&gt;platform:&lt;/code&gt; and &lt;code&gt;service:&lt;/code&gt; are the older form; newer Home Assistant versions prefer &lt;code&gt;triggers:&lt;/code&gt; and &lt;code&gt;actions:&lt;/code&gt;. The old form still works, and since this is my blueprint running in production, I&amp;rsquo;m showing it exactly as it sits on my system.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The &lt;code&gt;else&lt;/code&gt; branch is deliberately simple — and exactly for that reason a dead end.&lt;/strong&gt; It unmutes on every trigger that isn&amp;rsquo;t &lt;code&gt;mute&lt;/code&gt;. With exactly two triggers, that&amp;rsquo;s clean. As soon as you add a third, it unmutes too, and you get a bug that takes a while to find. Anyone extending this should turn the &lt;code&gt;if/else&lt;/code&gt; into a &lt;code&gt;choose&lt;/code&gt; beforehand. I collect this kind of pitfall in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/post/ha-5-automation-fehler/" &gt;5 Automation Mistakes Everyone Makes in Home Assistant&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="if-your-station-isnt-quite-so-unambiguous"&gt;If your station isn&amp;rsquo;t quite so unambiguous
&lt;/h2&gt;&lt;p&gt;For SWR1, the text is always identical, so an exact comparison is enough. If your station sends varying text — say, with an appended timestamp or changing wording — you need a trigger that checks for a text fragment instead of the whole string:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;span class="lnt"&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ &amp;#39;Werbung&amp;#39; in (state_attr(&amp;#39;media_player.bathroom&amp;#39;, &amp;#39;media_title&amp;#39;) or &amp;#39;&amp;#39;) }}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;mute&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ &amp;#39;Werbung&amp;#39; not in (state_attr(&amp;#39;media_player.bathroom&amp;#39;, &amp;#39;media_title&amp;#39;) or &amp;#39;&amp;#39;) }}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;unmute&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Warning:&lt;/strong&gt; this variant is &lt;em&gt;not&lt;/em&gt; running for me — I don&amp;rsquo;t need it. It&amp;rsquo;s the obvious path, but untested. If you build it, check especially that the word doesn&amp;rsquo;t accidentally show up in song titles or programme announcements too. Otherwise your radio happily mutes itself during a segment about advertising agencies.&lt;/p&gt;
&lt;h2 id="one-automation-per-speaker"&gt;One automation per speaker
&lt;/h2&gt;&lt;p&gt;The blueprint is instantiated five times for me — once per room:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Room&lt;/th&gt;
&lt;th&gt;Entity&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Office&lt;/td&gt;
&lt;td&gt;&lt;code&gt;media_player.office&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bedroom&lt;/td&gt;
&lt;td&gt;&lt;code&gt;media_player.bedroom&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bathroom&lt;/td&gt;
&lt;td&gt;&lt;code&gt;media_player.bathroom&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Living room&lt;/td&gt;
&lt;td&gt;&lt;code&gt;media_player.living_room&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Terrace&lt;/td&gt;
&lt;td&gt;&lt;code&gt;media_player.terrace&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Looks like unnecessary copy-paste, but it&amp;rsquo;s necessary: &lt;strong&gt;on Sonos, muting is a property of the individual speaker.&lt;/strong&gt; Even when several speakers are grouped together, each one has to be muted separately. Which is exactly what a blueprint is for — click five times, pick an entity five times, done. What else those five speakers draw in standby power, and how I switch them off at night, is covered in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/post/5-energiespar-tipps/" &gt;5 Smart Home Automations: Saving Power with Home Assistant&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="ten-days-of-recording-what-does-it-actually-do"&gt;Ten days of recording: what does it actually do?
&lt;/h2&gt;&lt;p&gt;An automation like this quietly runs in the background, and after a few weeks you no longer notice whether it&amp;rsquo;s actually doing anything. So I evaluated my Home Assistant database, period &lt;strong&gt;August 17–27, 2026&lt;/strong&gt;, i.e. ten days.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Result: 73 detected ad blocks — and the automation has worked reliably since it was set up.&lt;/strong&gt; Not a single case where the marker was in the radio text and the mute didn&amp;rsquo;t fire.&lt;/p&gt;
&lt;p&gt;Nearly all triggers cluster between 6 and 9 a.m.:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Hour&lt;/th&gt;
&lt;th&gt;Ad blocks&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;06:00&lt;/td&gt;
&lt;td&gt;44&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;07:00&lt;/td&gt;
&lt;td&gt;15&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;08:00&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12:00&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;13:00&lt;/td&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;18:00&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Before you conclude that SWR1 airs particularly heavy morning advertising: these numbers don&amp;rsquo;t show that. They only show when I have the radio on — almost exclusively in the morning, as an alarm and breakfast companion. I have no data on how many hours I listen at which time of day, and without that denominator, the distribution isn&amp;rsquo;t evidence of ad timing, just a picture of my listening habits. What the numbers do show: whenever the radio is on, the automation fires reliably.&lt;/p&gt;
&lt;p&gt;On block length: for 31 blocks a clean end could be measured, 30 of which fell within a plausible range.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Median: 117 seconds&lt;/strong&gt; — just under two minutes per ad block&lt;/li&gt;
&lt;li&gt;Mean: 97 seconds&lt;/li&gt;
&lt;li&gt;Range: 17 to 150 seconds&lt;/li&gt;
&lt;li&gt;Sum of these 30 blocks: roughly &lt;strong&gt;49 minutes of silence over ten days&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Scaling the median up to all 73 blocks lands around two hours — but that&amp;rsquo;s an estimate, not a measurement, so I&amp;rsquo;d rather quote the 49 minutes that actually show up in the data.&lt;/p&gt;
&lt;p&gt;One quirk from the evaluation I&amp;rsquo;m keeping: one block clocked in at 2216 seconds, over 36 minutes. No ad block is that long. What actually happened: the speaker was switched off mid-ad, the radio text stayed put, and the end was only registered the next time it was switched on. Not a bug in the automation, but a good example of why you shouldn&amp;rsquo;t dump raw recorder data into a statistic unfiltered.&lt;/p&gt;
&lt;h2 id="where-the-limits-are"&gt;Where the limits are
&lt;/h2&gt;&lt;p&gt;So you know what you&amp;rsquo;re signing up for — five real limitations:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. The marker is hard-coded and station-specific.&lt;/strong&gt; &lt;code&gt;Werbung in SWR1&lt;/code&gt; applies to SWR1 Baden-Württemberg and nowhere else. Whether other SWR stations use the same text, I haven&amp;rsquo;t tested. That&amp;rsquo;s why the observation step above comes so early: it&amp;rsquo;s the actual work of rebuilding this.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. It mutes, it doesn&amp;rsquo;t skip.&lt;/strong&gt; The ad time keeps running, it&amp;rsquo;s just silent. On a live stream there&amp;rsquo;s no other way — there&amp;rsquo;s nothing to skip to.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Only radio streams with metadata.&lt;/strong&gt; Spotify, music from your own library, or line-in have no such field. The whole approach depends entirely on a station voluntarily sending something.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. One automation per speaker&lt;/strong&gt;, as above.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5. The automation is in charge of the mute.&lt;/strong&gt; If you mute your speaker yourself for your own reasons and an ad block ends during that time, the automation lifts your mute. That happens rarely and doesn&amp;rsquo;t really hurt, but the interaction isn&amp;rsquo;t thought through.&lt;/p&gt;
&lt;p&gt;And one number I checked with a stopwatch instead of estimating: latency. How many seconds of ads get through before the audio drops depends on how quickly the speaker updates the stream metadata and the integration passes the event on. For me that&amp;rsquo;s on average &lt;strong&gt;one to two seconds&lt;/strong&gt; — the ad jingle is just barely audible, then it&amp;rsquo;s quiet.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;The appeal of this automation isn&amp;rsquo;t the automation itself. It&amp;rsquo;s trivial: two triggers, one branch, two lines of action.&lt;/p&gt;
&lt;p&gt;The appeal is that a problem that sounds like it needs machine learning and audio analysis dissolves into thin air the moment you look in the right place. The information was there the whole time. It just sat in a field nobody looks at.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s a pattern that works more often in smart homes than you&amp;rsquo;d think: before you start detecting something, check whether someone is already telling you. Entity attributes are an underrated goldmine for this — and the fact that Home Assistant can trigger on them directly makes them immediately usable.&lt;/p&gt;
&lt;p&gt;What&amp;rsquo;s in your &lt;code&gt;media_title&lt;/code&gt; when your station plays ads? Tell me in the comments — I&amp;rsquo;m curious which stations else deliver this.&lt;/p&gt;</description></item><item><title>Make Your Doorbell Smart Without Disturbing the Neighbors (Siedle + ESPHome)</title><link>https://smarthome-aber-sicher.de/en/blog/2026/08/27/tuersprechanlage-minimalinvasiv/</link><pubDate>Thu, 27 Aug 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/08/27/tuersprechanlage-minimalinvasiv/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/cover.jpeg" alt="Featured image of post Make Your Doorbell Smart Without Disturbing the Neighbors (Siedle + ESPHome)" /&gt;&lt;p&gt;My doorbell is a completely normal, old Siedle intercom handset. No WiFi, no app, no cloud. And yet it pings my phone whenever someone rings — and I can open the door straight from &lt;strong&gt;Home Assistant&lt;/strong&gt;. Here&amp;rsquo;s the catch: I&amp;rsquo;m not the only one on this system — four neighboring apartments in this building hang off the very same wiring. One wrong move, and I take down the whole building&amp;rsquo;s intercom. That&amp;rsquo;s exactly why I&amp;rsquo;m showing you here how to make any doorbell smart without bothering your neighbors — and the trick is simpler than you might think.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/aufbau-uebersicht.jpg"
width="1600"
height="1200"
srcset="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/aufbau-uebersicht_hu_783f445a1348190a.webp 480w, https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/aufbau-uebersicht_hu_6be72ab5ccfd05b9.webp 1024w"
loading="lazy"
alt="Open Siedle intercom handset with the extra electronics on the left, the original circuit board remains untouched on the right"
class="gallery-image"
data-flex-grow="133"
data-flex-basis="320px"
&gt;&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/XhTBJuM_umA?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_10266766925972456244_hu_749d35365fc1400b.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Safety note:&lt;/strong&gt; Working on an intercom system is at your own risk. The terminals carry both DC and AC voltages — always work de-energized, measure your own values, and never load the bus line directly. In multi-party buildings, a single mistake can disturb every neighbor&amp;rsquo;s system — which is why galvanic isolation via an optocoupler isn&amp;rsquo;t a nice-to-have here, it&amp;rsquo;s mandatory.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="why-not-just-buy-a-ready-made-solution"&gt;Why not just buy a ready-made solution?
&lt;/h2&gt;&lt;p&gt;Roughly every second intercom system in Germany is made by &lt;strong&gt;Siedle&lt;/strong&gt; — so there&amp;rsquo;s a good chance you have one too. And if you don&amp;rsquo;t, the principle still carries over. Of course there are off-the-shelf solutions: the &lt;strong&gt;Nuki Opener&lt;/strong&gt;, for example, is wired in parallel to the system and can then open the door. That means locking yourself into the Nuki and app ecosystem, needing an extra battery, and spending around €100. Or the official Siedle solution, the &lt;strong&gt;Siedle IQ HTS&lt;/strong&gt; — that replaces the intercom handset entirely and hooks into the Siedle app. An expensive full swap, and you&amp;rsquo;re stuck in the manufacturer&amp;rsquo;s cloud.&lt;/p&gt;
&lt;p&gt;Both work. But both mean depending on a manufacturer, a cloud that has to keep running, and handing over control. I wanted the opposite: a robust, local solution that still works in ten years — one no vendor can pull the plug on. So I built it myself.&lt;/p&gt;
&lt;h2 id="the-principle-in-one-sentence"&gt;The principle in one sentence
&lt;/h2&gt;&lt;p&gt;And here comes the single most important sentence of this whole project: &lt;strong&gt;you don&amp;rsquo;t need to understand the entire system — and you definitely don&amp;rsquo;t need to reverse-engineer the bus protocol.&lt;/strong&gt; You only need to do two things: find the right signal, and electronically &amp;ldquo;press&amp;rdquo; the buttons that are already there.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Read (inputs):&lt;/strong&gt; Is the front door ringing? Is the apartment door ringing?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Control (outputs):&lt;/strong&gt; everything you could already operate directly on the device itself — in my case, the door opener and the stairwell light.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;There&amp;rsquo;s no more magic to it than that. Exactly what the ring signal looks like technically varies from system to system, but the approach stays the same. I&amp;rsquo;ll show it to you concretely using my Siedle system as the example (intercom handset &lt;strong&gt;HTS 811-0&lt;/strong&gt;, 1+n technology).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb1-kanaluebersicht.png"
width="3840"
height="2160"
srcset="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb1-kanaluebersicht_hu_ef9c906865bdf32b.webp 480w, https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb1-kanaluebersicht_hu_c896a0addf2de274.webp 1024w"
loading="lazy"
alt="Principle sketch: two inputs read, two outputs switched — the ESP connects centrally via optocouplers and transistors"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;&lt;/p&gt;
&lt;h2 id="detecting-the-ring-the-voltage-trick"&gt;Detecting the ring: the voltage trick
&lt;/h2&gt;&lt;p&gt;How does the ESP detect that it&amp;rsquo;s ringing? Through the voltage on the line. At rest, my system sits at around &lt;strong&gt;18 volts&lt;/strong&gt;. When the front door rings, the voltage briefly jumps to &lt;strong&gt;24 volts&lt;/strong&gt;, the ringtone plays, and it drops to about &lt;strong&gt;15 volts&lt;/strong&gt;. The circuit detects exactly this jump.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb2-spannungsverlauf.png"
width="3840"
height="2160"
srcset="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb2-spannungsverlauf_hu_b4e406db02d33d33.webp 480w, https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb2-spannungsverlauf_hu_b216224c606ae450.webp 1024w"
loading="lazy"
alt="Voltage curve during a ring: stable resting voltage, short peak, drop during the ring tone"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;&lt;/p&gt;
&lt;p&gt;I measured these exact values on my own system myself — on a different 1+n installation, the absolute values may vary depending on the power supply type, cable length, number of subscribers, or age of the installation. But the basic behavior — a stable resting voltage, a short peak when it rings, and a drop during the ring tone — is, according to Siedle&amp;rsquo;s own system manual, characteristic of the entire 1+n series, so it applies to every Siedle device using this technology. More on that in a detailed thread on &lt;a class="link" href="https://www.mikrocontroller.net" target="_blank" rel="noopener"
&gt;mikrocontroller.net&lt;/a&gt; and in the Siedle system manual.&lt;/p&gt;
&lt;p&gt;The trick in the circuit: a &lt;strong&gt;Zener diode in front of the optocoupler&lt;/strong&gt;. It makes sure nothing gets through at rest — only at the ring peak does the optocoupler switch through, and the ESP knows: it&amp;rsquo;s ringing. I even distinguish between two different rings: the front door, and the apartment door bell right in front of the flat, the so-called &lt;strong&gt;floor call&lt;/strong&gt;. That runs over its own terminal with AC voltage, so there&amp;rsquo;s a second optocoupler for that.&lt;/p&gt;
&lt;h2 id="opening-the-door-press-the-button-instead-of-rebuilding-the-protocol"&gt;Opening the door: press the button instead of rebuilding the protocol
&lt;/h2&gt;&lt;p&gt;Now it gets really interesting. With Siedle&amp;rsquo;s 1+n system, &amp;ldquo;door open&amp;rdquo; isn&amp;rsquo;t transmitted digitally at all — it&amp;rsquo;s sent as a &lt;strong&gt;tone frequency&lt;/strong&gt;, a whistle tone around 20 kilohertz that&amp;rsquo;s modulated onto the line. The outdoor station at the front door listens in, recognizes exactly this frequency with a filter, and then switches the door buzzer. The light button does the same thing, just with a different frequency.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb3-fmton.png"
width="3840"
height="2160"
srcset="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb3-fmton_hu_f45c1765e0e450e4.webp 480w, https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb3-fmton_hu_b56a1f034ea6e98d.webp 1024w"
loading="lazy"
alt="Principle of opening the door: the ESP presses the existing button, the handset itself generates the tone-frequency whistle"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;&lt;/p&gt;
&lt;p&gt;I could try to somehow recreate and inject that frequency myself. But that only makes things needlessly complex, and I&amp;rsquo;d risk disturbing the whole system again. So instead I do it the other way around — and this is really the key trick: I simply press the existing &lt;strong&gt;door-opener button&lt;/strong&gt; with my ESP. It closes the button&amp;rsquo;s contacts for a brief moment, like an extra finger. The handset itself then generates the whistle tone on the line, all on its own. I don&amp;rsquo;t need to understand the frequency at all — I just press the button. And that&amp;rsquo;s been working reliably for months, even with the handset hung up.&lt;/p&gt;
&lt;p&gt;So I don&amp;rsquo;t damage the buttons while soldering, I don&amp;rsquo;t tap the signal directly at the buttons at all — instead, at two &lt;strong&gt;test points on the back of the circuit board&lt;/strong&gt; that I found beforehand with a multimeter; they&amp;rsquo;re directly wired 1:1 to the buttons.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/platine-rueckseite.jpg"
width="1600"
height="1200"
srcset="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/platine-rueckseite_hu_2427b169f9bf0f3a.webp 480w, https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/platine-rueckseite_hu_eb9706f6fac9f88e.webp 1024w"
loading="lazy"
alt="Back of the original circuit board with the two marked test points, wired 1:1 to the buttons"
class="gallery-image"
data-flex-grow="133"
data-flex-basis="320px"
&gt;&lt;/p&gt;
&lt;h2 id="the-hardware-compact-and-cheap"&gt;The hardware: compact and cheap
&lt;/h2&gt;&lt;p&gt;The hardware is pretty manageable: an &lt;strong&gt;ESP8266 NodeMCU&lt;/strong&gt; as the microcontroller with WiFi, an &lt;strong&gt;LM2596&lt;/strong&gt; step-down converter that taps the ESP&amp;rsquo;s power supply straight from the system voltage — no extra power supply needed. Then there&amp;rsquo;s the coupling stage: optocouplers with resistors and a Zener diode for the two ring inputs, plus two transistors for the door-opener and light outputs. All soldered onto a small perfboard that fits easily inside the intercom handset&amp;rsquo;s housing — the original circuit board stays almost completely untouched right next to it.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/controller-board.jpg"
width="1600"
height="1200"
srcset="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/controller-board_hu_fe5d3ca3f69d0ce4.webp 480w, https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/controller-board_hu_b6d04b7db09a5a1b.webp 1024w"
loading="lazy"
alt="Close-up of the controller board: ESP8266 NodeMCU, LM2596 step-down converter, and the optocoupler coupling stage"
class="gallery-image"
data-flex-grow="133"
data-flex-basis="320px"
&gt;&lt;/p&gt;
&lt;p&gt;The whole system is fed from a central Siedle power rectifier down in the basement, which delivers around 23 volts for the bus and 12 volts for the door buzzer. The few milliamps I tap off for my ESP don&amp;rsquo;t disturb the other devices in the other apartments at all.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/netzteil-keller.jpg"
width="1600"
height="1200"
srcset="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/netzteil-keller_hu_6caef775b24b6901.webp 480w, https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/netzteil-keller_hu_3f69f98e481bbb5c.webp 1024w"
loading="lazy"
alt="Siedle power rectifier in the basement — the central power supply for all five apartments’ shared system"
class="gallery-image"
data-flex-grow="133"
data-flex-basis="320px"
&gt;&lt;/p&gt;
&lt;h2 id="esphome-three-details-that-matter-day-to-day"&gt;ESPHome: three details that matter day to day
&lt;/h2&gt;&lt;p&gt;The software is ESPHome — two &lt;code&gt;binary_sensor&lt;/code&gt;s for the two bells, two &lt;code&gt;switch&lt;/code&gt;es for the door opener and the light. Sounds like about twenty lines of YAML, and it is. But three details decide whether this thing actually runs reliably day to day:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;inverted&lt;/code&gt;&lt;/strong&gt; — the optocoupler pulls the pin to ground, so active means &lt;em&gt;low&lt;/em&gt;, not &lt;em&gt;high&lt;/em&gt;. Instead of changing that in hardware, it&amp;rsquo;s a single line of YAML — plus a &lt;code&gt;delay_on&lt;/code&gt; for debouncing, so a random glitch on the line doesn&amp;rsquo;t trigger a phantom ring.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The 500 ms pulse&lt;/strong&gt; — the door opener isn&amp;rsquo;t a permanent switch, it&amp;rsquo;s a switch that turns itself back off. That&amp;rsquo;s not just a nice-to-have: if the WiFi drops out mid-action for whatever reason, the switch would otherwise stay on permanently and the door would stay open. The ESP simply counts down that half-second itself, completely without the network.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;restore_mode&lt;/code&gt; + pin choice&lt;/strong&gt; — &lt;code&gt;restore_mode&lt;/code&gt; is set to &amp;ldquo;always off,&amp;rdquo; so the ESP doesn&amp;rsquo;t restore the last state after a power outage and unintentionally open the door. And the door opener and light sit on D1 and D2 — on the ESP8266, the pins that are guaranteed to do nothing during boot. A few other pins do change state briefly at startup, and the door would buzz briefly on every restart if wired to one of those.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;There&amp;rsquo;s one thing I&amp;rsquo;d do differently today: my bell is wired to pin D4, and D4 is also one of those special pins that has to be &lt;em&gt;high&lt;/em&gt; during boot. As an input, it&amp;rsquo;s run problem-free for months for me — but if it rang in the exact second the ESP restarts, it wouldn&amp;rsquo;t boot. In practice that&amp;rsquo;s basically never happened, and I&amp;rsquo;m not going to re-solder it now — but if you&amp;rsquo;re building this yourself, use &lt;strong&gt;D5 or D6&lt;/strong&gt; for the bell instead.&lt;/p&gt;
&lt;h2 id="the-payoff-four-entities-in-home-assistant"&gt;The payoff: four entities in Home Assistant
&lt;/h2&gt;&lt;p&gt;In Home Assistant I now have four entities: front door bell, apartment bell, door opener, and light. From those I can build whatever I want — a push notification to my phone when it rings, manually opening the door from the dashboard or by voice command, or automatically opening the door when a visitor knows the secret ring signal and presses the bell in the right rhythm.&lt;/p&gt;
&lt;h2 id="conclusion-a-question-of-proportionality"&gt;Conclusion: a question of proportionality
&lt;/h2&gt;&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb6-vergleich.png"
width="3840"
height="2160"
srcset="https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb6-vergleich_hu_92c62680e75c0cd7.webp 480w, https://smarthome-aber-sicher.de/blog/2026/08/27/tuersprechanlage-minimalinvasiv/sb6-vergleich_hu_fc4e28cfdbd291f.webp 1024w"
loading="lazy"
alt="Comparison table: DIY solution vs. Nuki Opener vs. Siedle IQ HTS"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;&lt;/p&gt;
&lt;p&gt;Off-the-shelf solutions like the Nuki Opener or the Siedle IQ HTS aren&amp;rsquo;t bad — they&amp;rsquo;re just a different answer to a different priority: convenience and manufacturer support in exchange for money and a bit of control. My approach is deliberately minimally invasive: no bus reverse-engineering, no cloud, no intervention that could endanger other apartments in the building. Just two signals to detect and two buttons to press electronically — galvanically isolated, reversible, and for well under €20 in materials.&lt;/p&gt;
&lt;h2 id="github-repo"&gt;GitHub repo
&lt;/h2&gt;&lt;p&gt;My complete ESPHome config, the documentation, the voltage graph, the circuit diagram, and the labeled photos of my system are all in the GitHub repo:&lt;/p&gt;
&lt;p&gt;➡️ &lt;a class="link" href="https://github.com/jowi24/siedle-hts-811-esphome" target="_blank" rel="noopener"
&gt;github.com/jowi24/siedle-hts-811-esphome&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you also have a Siedle 1+n system, you can dive straight in. If you have a different one, use this as a starting point for your own solution — the tricks in this article should get you there quickly.&lt;/p&gt;
&lt;h2 id="now-its-your-turn"&gt;Now it&amp;rsquo;s your turn
&lt;/h2&gt;&lt;p&gt;Is your doorbell smart yet? Have you built something yourself, or are you rebuilding my approach right now — whether with Siedle or another system? Let me know in the comments how you&amp;rsquo;d extend this, and what automations you use with your own intercom. Improvement suggestions and pull requests for the repo are always welcome.&lt;/p&gt;</description></item><item><title>5 Home Assistant Automations That Save Energy</title><link>https://smarthome-aber-sicher.de/en/blog/2026/08/20/5-energiespar-tipps/</link><pubDate>Thu, 20 Aug 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/08/20/5-energiespar-tipps/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/20/5-energiespar-tipps/cover.jpeg" alt="Featured image of post 5 Home Assistant Automations That Save Energy" /&gt;&lt;p&gt;My router, speakers, AV receiver, and printer used to draw a combined &lt;strong&gt;76 watts while doing nothing&lt;/strong&gt;. If they ran around the clock, that would cost almost €180 per year at my electricity rate. This is where automations help me: not through one spectacular trick, but by preventing small amounts of wasted energy every day.&lt;/p&gt;
&lt;p&gt;Here are five solutions from my actual home. Four reliably reduce my energy costs. The fifth sounded sensible but provided no benefit with my heat pump, so I removed it again.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/c2aS27Vpoik?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_10688103180443632614_hu_91362729c38d5a8c.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="1-automatically-switch-off-standby-power-hogs"&gt;1. Automatically switch off standby power hogs
&lt;/h2&gt;&lt;p&gt;My home currently draws around &lt;strong&gt;55 watts of base load&lt;/strong&gt; when idle. This includes devices that need to remain reachable for the smart home, such as Shelly modules, sensors, and my home server. I consciously accept that consumption.&lt;/p&gt;
&lt;p&gt;Several other devices, however, used to stay on even when nobody needed them:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Device&lt;/th&gt;
&lt;th style="text-align: right"&gt;Power&lt;/th&gt;
&lt;th style="text-align: right"&gt;Annual cost if always on&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;FRITZ!Box router&lt;/td&gt;
&lt;td style="text-align: right"&gt;16 W&lt;/td&gt;
&lt;td style="text-align: right"&gt;almost €40&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Five Sonos speakers&lt;/td&gt;
&lt;td style="text-align: right"&gt;35 W&lt;/td&gt;
&lt;td style="text-align: right"&gt;over €80&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AV receiver&lt;/td&gt;
&lt;td style="text-align: right"&gt;15 W&lt;/td&gt;
&lt;td style="text-align: right"&gt;around €35&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Printer&lt;/td&gt;
&lt;td style="text-align: right"&gt;10 W&lt;/td&gt;
&lt;td style="text-align: right"&gt;around €24&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Together, these examples add up to &lt;strong&gt;76 watts&lt;/strong&gt;. My actual savings are lower than the theoretical €180 because I do not keep the devices off permanently. Home Assistant simply makes sure they are off whenever I do not need them.&lt;/p&gt;
&lt;p&gt;When I leave the apartment, I long-press the hallway light switch. This deliberate &amp;ldquo;I&amp;rsquo;m leaving&amp;rdquo; signal switches off Sonos, the receiver, and the printer. The manual trigger is intentional: for this use case, I prefer an unambiguous button press over presence detection that occasionally gets it wrong.&lt;/p&gt;
&lt;p&gt;I also switch off the FRITZ!Box at night. My smart home continues to run locally without internet access. I explain why local operation matters in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/post/ha-az/15-offline/" &gt;Home Assistant A–Z: O for Offline&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There is a small downside: the Sonos speakers need about a minute after power-up, while the router takes roughly two minutes before everything is available again.&lt;/p&gt;
&lt;h2 id="2-run-large-loads-on-solar-power"&gt;2. Run large loads on solar power
&lt;/h2&gt;&lt;p&gt;If you have solar panels, flexible high-power appliances should run whenever enough of your own electricity is available. In my home, this mainly applies to the washing machine and electric car.&lt;/p&gt;
&lt;p&gt;My washing machine is connected to Home Assistant through Home Connect. In the morning, I load it, select a program, and enable remote start. Once around &lt;strong&gt;2.5 kilowatts of surplus solar power&lt;/strong&gt; are available, Home Assistant starts the machine automatically.&lt;/p&gt;
&lt;p&gt;The car follows the same principle. My Heidelberg Energy Control wallbox is connected to the solar system through Home Assistant and &lt;strong&gt;evcc&lt;/strong&gt;. The Cupra Tavascan charges primarily on surplus solar power unless a defined minimum state of charge takes priority. Of the roughly &lt;strong&gt;3,500 kilowatt-hours&lt;/strong&gt; the car uses each year, about &lt;strong&gt;1,500 kilowatt-hours&lt;/strong&gt; come from my own roof despite my relatively small solar array.&lt;/p&gt;
&lt;h2 id="3-get-reminded-to-ventilate-efficiently"&gt;3. Get reminded to ventilate efficiently
&lt;/h2&gt;&lt;p&gt;Leaving a window open for too long wastes heating energy in winter. With a heat pump, that directly becomes additional electricity consumption. I therefore monitor the windows I regularly open using six Homematic contact sensors. The outdoor temperature comes from my heat pump sensor via Modbus.&lt;/p&gt;
&lt;p&gt;My simple rule, deliberately tailored to my home, is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Below 5 °C: send a reminder after 5 minutes&lt;/li&gt;
&lt;li&gt;Between 5 and 15 °C: use the temperature as the number of minutes&lt;/li&gt;
&lt;li&gt;Above 15 °C: do not send a reminder&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If a window remains open beyond that limit, the Home Assistant app sends a push notification. This prevents forgotten windows without creating unnecessary alerts during mild weather. These values are not a universal ventilation formula; they are thresholds that work well for my building.&lt;/p&gt;
&lt;h2 id="bonus-automate-the-electricity-price-too"&gt;Bonus: Automate the electricity price too
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Advertising:&lt;/strong&gt; This section is part of a paid partnership with remind.me. The service is currently available in Germany.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Automations can reduce consumption or shift it to times when your own solar power is available. Another factor is the price per kilowatt-hour. During my most recent provider switch, I saved 5 cents per kilowatt-hour and received an additional €250 switching bonus.&lt;/p&gt;
&lt;p&gt;The &lt;strong&gt;remind.me&lt;/strong&gt; switching service checks once a year for the best suitable electricity, gas, or heat-pump tariff and prepares the switch. New-customer bonuses are included, and you have the right to veto every switch.&lt;/p&gt;
&lt;p&gt;👉 &lt;a class="link" href="https://www.remind.me/wp-wechselservice-sieger-fur-strom-und-gas/?utm_source=smarthome&amp;amp;utm_medium=infl&amp;amp;utm_campaign=youtube" target="_blank" rel="noopener"
&gt;Learn more about the remind.me switching service&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="4-why-i-removed-night-setback"&gt;4. Why I removed night setback
&lt;/h2&gt;&lt;p&gt;Turning down the heating at night sounds like an obvious way to save energy. Whether it works depends on the building, heat emitters, heat source, and control system.&lt;/p&gt;
&lt;p&gt;In a poorly insulated older building with conventional radiators, night setback can indeed save energy. With my combination of a &lt;strong&gt;heat pump, underfloor heating, and a high-mass screed floor&lt;/strong&gt;, however, the room temperature barely drops overnight. If the controller then catches up in the morning using a higher flow temperature, that less efficient operation can consume the small theoretical saving.&lt;/p&gt;
&lt;p&gt;Night setback provided no measurable benefit in my setup, so I removed the automation. The better rule is not to apply it blindly, but to compare actual consumption over equivalent periods.&lt;/p&gt;
&lt;h2 id="5-shutters-save-energy-in-summer-and-winter"&gt;5. Shutters save energy in summer and winter
&lt;/h2&gt;&lt;p&gt;My shutters close automatically based on the position of the sun. This saves energy in two ways:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;In summer&lt;/strong&gt;, they keep solar heat outside, reducing the work required from an air conditioner.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;In winter&lt;/strong&gt;, closed shutters add another layer in front of the windows at night, reducing heat loss and the amount of electricity required by the heat pump.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I explain how to create sun-dependent shading with Home Assistant blueprints in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/post/ha-az/10-jalousien/" &gt;Home Assistant A–Z: J for Shutters&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;None of these automations is a revolution on its own. Together, however, they prevent unnecessary standby consumption, make better use of solar power, and reduce wasted heating or cooling energy. Once configured, most of them run almost entirely by themselves.&lt;/p&gt;
&lt;p&gt;Night setback is the important counterexample: an automation does not automatically save energy just because it is commonly presented as an energy-saving tip. What matters is what it actually does in your home.&lt;/p&gt;
&lt;p&gt;Which smart home automation saves the most energy for you – and which supposed energy-saving trick did you switch off again?&lt;/p&gt;</description></item><item><title>OBI Energy Tracker Fully Local: OpenOBI Without the Cloud</title><link>https://smarthome-aber-sicher.de/en/blog/2026/08/13/obi-energy-tracker-lokal/</link><pubDate>Thu, 13 Aug 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/08/13/obi-energy-tracker-lokal/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/13/obi-energy-tracker-lokal/cover.jpeg" alt="Featured image of post OBI Energy Tracker Fully Local: OpenOBI Without the Cloud" /&gt;&lt;p&gt;The OBI Energy Tracker is an inexpensive way to read a smart electricity meter. Out of the box, however, its readings pass through the heyOBI app and OBI&amp;rsquo;s cloud. The open-source &lt;strong&gt;OpenOBI&lt;/strong&gt; firmware lets you run the bridge entirely on your local network: the reader still communicates over LoRa, the bridge provides a local dashboard, and Home Assistant receives the data from your own MQTT broker.&lt;/p&gt;
&lt;p&gt;This guide covers the complete migration. The initial setup is fairly technical, but once it is finished, the OBI app, OBI cloud, and HACS integration are no longer required.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/jpf5LPp90N4?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_10288586215662482266_hu_fb257b6a145d8083.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt; Installing third-party firmware is at your own risk and may affect your warranty. Record and securely store the TEA key before starting. There is no convenient one-click option for returning to the original firmware.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="what-you-need"&gt;What you need
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;OBI Energy Tracker bridge and optical reader&lt;/li&gt;
&lt;li&gt;computer with Python 3, Bluetooth, and access to the bridge&amp;rsquo;s network&lt;/li&gt;
&lt;li&gt;TCP port 8883 available during setup&lt;/li&gt;
&lt;li&gt;valid heyOBI login to retrieve the device-specific TEA key&lt;/li&gt;
&lt;li&gt;local MQTT broker, such as Home Assistant&amp;rsquo;s Mosquitto add-on&lt;/li&gt;
&lt;li&gt;project files from &lt;a class="link" href="https://github.com/atc1441/OBI_Energy_Tracker_Local_Cloud" target="_blank" rel="noopener"
&gt;atc1441/OBI_Energy_Tracker_Local_Cloud&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you only want to see the readings in Home Assistant and do not mind using OBI&amp;rsquo;s cloud, the &lt;a class="link" href="https://github.com/mla157/hacs-obienergytracker-integration" target="_blank" rel="noopener"
&gt;HACS integration by mla157&lt;/a&gt; is the easier route. This guide deliberately uses the fully local open-firmware approach.&lt;/p&gt;
&lt;h2 id="how-the-local-data-path-works"&gt;How the local data path works
&lt;/h2&gt;&lt;p&gt;The optical reader collects OBIS values such as imported energy, exported energy, and current power from the meter. It sends them to the bridge over &lt;strong&gt;868 MHz LoRa&lt;/strong&gt;. The ESP32-C3-based bridge normally forwards those readings to the manufacturer&amp;rsquo;s cloud service.&lt;/p&gt;
&lt;p&gt;During the migration, a computer briefly takes over the role of that cloud. The bridge receives Wi-Fi credentials, certificates, and the temporary MQTTS server address over Bluetooth. It then downloads OpenOBI as a regular over-the-air update. This helper server is not needed afterward: OpenOBI publishes directly to your permanent MQTT broker.&lt;/p&gt;
&lt;h2 id="1-prepare-the-environment"&gt;1. Prepare the environment
&lt;/h2&gt;&lt;p&gt;Clone the project, open the &lt;code&gt;04-connect-your-own-cloud&lt;/code&gt; directory, and create a virtual Python environment. Then install the three required packages:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;python3 -m venv .venv
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;source&lt;/span&gt; .venv/bin/activate
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pip install cryptography bleak paho-mqtt
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Use a Bluetooth Low Energy scanner to find the bridge&amp;rsquo;s full name. It starts with &lt;code&gt;OBI-&lt;/code&gt; but is not printed on the enclosure.&lt;/p&gt;
&lt;h2 id="2-retrieve-the-tea-key"&gt;2. Retrieve the TEA key
&lt;/h2&gt;&lt;p&gt;In the &lt;code&gt;tools&lt;/code&gt; directory, run the helper and enter your heyOBI login and the bridge&amp;rsquo;s Bluetooth name when prompted:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; tools
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;python fetch_tea_key.py
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;The result is the device-specific, 32-character &lt;strong&gt;TEA key&lt;/strong&gt;. It authorizes Bluetooth configuration changes, so treat it like a device password and never publish it.&lt;/p&gt;
&lt;h2 id="3-generate-certificates-and-start-the-temporary-server"&gt;3. Generate certificates and start the temporary server
&lt;/h2&gt;&lt;p&gt;Generate the certificates using the local IP address of the computer that will host the temporary server. The bridge must be able to reach this address, and it should not change during the process.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;python gen_certs.py --host &amp;lt;LOCAL-BROKER-IP&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;The script creates certificates and &lt;code&gt;ble_config.json&lt;/code&gt; in the &lt;code&gt;pki&lt;/code&gt; directory. In a second terminal, start the included MQTTS server and leave it running:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;python mqtts_server.py --host 0.0.0.0 --port &lt;span class="m"&gt;8883&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;This helper emulates only the cloud functions required for provisioning and OTA. It is &lt;strong&gt;not&lt;/strong&gt; a replacement for the permanent Mosquitto broker used later.&lt;/p&gt;
&lt;h2 id="4-move-the-bridge-over-bluetooth"&gt;4. Move the bridge over Bluetooth
&lt;/h2&gt;&lt;p&gt;Hold the bridge button for more than two seconds to enter Bluetooth setup mode. Then transfer the configuration, TEA key, and Wi-Fi credentials:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;python ble_provision.py --config pki/ble_config.json --key &amp;lt;TEA-KEY&amp;gt; --unbind &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; --ssid &amp;lt;WIFI-NAME&amp;gt; --password &amp;lt;WIFI-PASSWORD&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;--unbind&lt;/code&gt; removes an existing association with the OBI account. The original firmware reliably handles Wi-Fi passwords only up to &lt;strong&gt;32 bytes&lt;/strong&gt;. If the bridge does not connect despite correct credentials, check the password length first.&lt;/p&gt;
&lt;p&gt;After provisioning, the original firmware searches for the optical reader. Hold the reader&amp;rsquo;s large orange button for more than ten seconds and select it in the terminal. You can skip this step when your only goal is the firmware update by adding &lt;code&gt;--no-pair-sensor&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;CONNECT&lt;/code&gt; in the server log confirms that the bridge reached the local computer. If an &lt;code&gt;EnergyTrackingSensor&lt;/code&gt; message with a real &lt;code&gt;energy&lt;/code&gt; value also appears, the reader and LoRa link are working as well.&lt;/p&gt;
&lt;h2 id="5-install-openobi-over-the-air"&gt;5. Install OpenOBI over the air
&lt;/h2&gt;&lt;p&gt;Download the current firmware image from the project&amp;rsquo;s &lt;a class="link" href="https://github.com/atc1441/OBI_Energy_Tracker_Local_Cloud/releases" target="_blank" rel="noopener"
&gt;release page&lt;/a&gt;. Only the file containing &lt;code&gt;obi_gateway_c3&lt;/code&gt; is intended for the original OBI bridge.&lt;/p&gt;
&lt;p&gt;Stop the temporary server and restart it with the path to the firmware image:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;python mqtts_server.py --host 0.0.0.0 --port &lt;span class="m"&gt;8883&lt;/span&gt; &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; --ota-firmware &amp;lt;PATH-TO-OBI_GATEWAY_C3-FIRMWARE&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;The bridge downloads the image in blocks. Do not interrupt power or network access until it reaches 100 percent and reboots. OpenOBI is then running, and its local dashboard is available at the IP address assigned by your router.&lt;/p&gt;
&lt;h2 id="6-bind-the-reader-in-openobi"&gt;6. Bind the reader in OpenOBI
&lt;/h2&gt;&lt;p&gt;The reader initially appears dimmed and unbound in the dashboard. Select &lt;strong&gt;Bind to gateway&lt;/strong&gt; for that specific reader. OpenOBI does not require another button press on the reader.&lt;/p&gt;
&lt;p&gt;Once bound, the dashboard shows imported energy, exported energy, current power, battery voltage, and radio diagnostics such as RSSI and SNR. You can also choose the reporting interval: &lt;code&gt;Live&lt;/code&gt; provides fast updates, while longer intervals conserve the reader&amp;rsquo;s battery.&lt;/p&gt;
&lt;h2 id="7-connect-home-assistant-through-mqtt"&gt;7. Connect Home Assistant through MQTT
&lt;/h2&gt;&lt;p&gt;Under &lt;strong&gt;Settings &amp;gt; MQTT&lt;/strong&gt;, enter the address of your permanent MQTT broker. In a typical Home Assistant installation, this is the Mosquitto add-on. Plain MQTT usually uses port 1883 and MQTTS port 8883. The username and password belong to your own broker, not your heyOBI account.&lt;/p&gt;
&lt;p&gt;The base topic can remain &lt;code&gt;obi/gateway&lt;/code&gt;. Enable &lt;strong&gt;MQTT Discovery&lt;/strong&gt; and save the connection. The OpenOBI dashboard should then report a connected status.&lt;/p&gt;
&lt;p&gt;Home Assistant automatically creates two MQTT devices: the LoRa gateway and the optical meter reader. Their energy sensors have the correct units and device classes, so they can be used directly in the Energy dashboard and automations. No HACS package, YAML, or custom templates are required.&lt;/p&gt;
&lt;h2 id="troubleshooting"&gt;Troubleshooting
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The bridge is found over Bluetooth but cannot be configured:&lt;/strong&gt; Hold its button for more than two seconds immediately before running the command.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No Wi-Fi connection:&lt;/strong&gt; Verify the SSID and password; the original firmware accepts no more than 32 bytes for the password.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No &lt;code&gt;CONNECT&lt;/code&gt; in the server log:&lt;/strong&gt; Check the local IP address, firewall, and reachability of port 8883.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wrong firmware image:&lt;/strong&gt; Use only an image containing &lt;code&gt;obi_gateway_c3&lt;/code&gt; for the original bridge.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reader remains unbound:&lt;/strong&gt; Bind your specific reader in the OpenOBI dashboard and check its radio values.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No devices in Home Assistant:&lt;/strong&gt; Verify the broker credentials, base topic, and MQTT Discovery setting.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;After this one-time migration, the complete measurement path stays on your network: the reader transmits to the gateway, OpenOBI publishes to the local MQTT broker, and Home Assistant processes the values without a manufacturer cloud. The temporary server and heyOBI login are no longer needed.&lt;/p&gt;
&lt;p&gt;For a look at the original app and cloud experience, read my &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2026/07/23/obi-energy-tracker/" &gt;OBI Energy Tracker review&lt;/a&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclosure:&lt;/strong&gt; I bought the second Energy Tracker used for this conversion myself. The following product link is an affiliate link. If you buy at the regular price, I receive a commission at no additional cost to you. The linked shop and product are intended for the German market.&lt;/p&gt;
&lt;p&gt;👉 &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F9685751%2Fobi-energy-tracker-smarter-stromzaehler-ausleser-mit-heyobi-app" target="_blank" rel="noopener"
&gt;View the OBI Energy Tracker at OBI&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Drip Irrigation Holiday Test: How 20 Liters of Water Ended Up in My Living Room</title><link>https://smarthome-aber-sicher.de/en/blog/2026/08/06/neo-drip-irrigation-nas-wv08w-test-cloud-and-pump-fail/</link><pubDate>Thu, 06 Aug 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/08/06/neo-drip-irrigation-nas-wv08w-test-cloud-and-pump-fail/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/08/06/neo-tropfenbewaesserung-nas-wv08w-test-cloud-und-pumpe-fail/cover.jpeg" alt="Featured image of post Drip Irrigation Holiday Test: How 20 Liters of Water Ended Up in My Living Room" /&gt;&lt;p&gt;I&amp;rsquo;m a Smart Home nerd through and through – and when I go on holiday, I&amp;rsquo;d love to have &lt;strong&gt;the watering of my plants automated&lt;/strong&gt; as well. On my terrace an automatic drip irrigation system has been running for many years now; it works brilliantly and takes a lot of work off my hands. So the idea was obvious: use something like that &lt;strong&gt;indoors&lt;/strong&gt; too – at least while I&amp;rsquo;m away. Finally no more bothering the neighbors!&lt;/p&gt;
&lt;p&gt;What I didn&amp;rsquo;t realize back then: &lt;strong&gt;just how badly this experience would turn out.&lt;/strong&gt; When I came back from holiday, my drip tray had flooded right to the brim – not because I had planned it that way, but because the irrigation system had drained my &lt;strong&gt;entire water supply onto the bottom of the tray&lt;/strong&gt;. And – small teaser – that wasn&amp;rsquo;t even the only problem. Two things went wrong for me, and the second one is even far more annoying than the first.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Disclosure: The NEO Indoor Drip Irrigation Water Timer (NAS-WV08W) was provided to me free of charge by the manufacturer – with no conditions attached to the content. Because I received the device for free, I label this post as &lt;strong&gt;advertising&lt;/strong&gt;. It doesn&amp;rsquo;t change my assessment, as you&amp;rsquo;ll notice in a moment.&lt;/em&gt;&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/x5U8t-4kDCQ?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_16206651149812918179_hu_46d41b8208b7111f.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;hr&gt;
&lt;h2 id="the-idea-watering-by-app-while-on-holiday"&gt;The idea: watering by app while on holiday
&lt;/h2&gt;&lt;p&gt;I tested the &lt;strong&gt;NEO Indoor Drip Irrigation Water Timer (model NAS-WV08W)&lt;/strong&gt; – a drip irrigation system for indoors, with a pump, hoses and app control. My test subjects were two plants in my living room: a &lt;strong&gt;poinsettia&lt;/strong&gt; and a &lt;strong&gt;lucky clover&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Important, and in hindsight my rescue: I put the entire test setup &lt;strong&gt;into a drip tray&lt;/strong&gt;. Pure precautionary instinct – without it my living room floor would have been flooded.&lt;/p&gt;
&lt;p&gt;I set the system up about a week before the holiday. Originally I wanted to integrate it into &lt;strong&gt;Home Assistant&lt;/strong&gt;, but I didn&amp;rsquo;t manage to get that running in the short time available – classic nerd problem: too little time, too much ambition. So for this first holiday I fell back on the manufacturer&amp;rsquo;s app: &lt;strong&gt;Smart Life&lt;/strong&gt; (the well-known Tuya app). It runs through the &lt;strong&gt;cloud&lt;/strong&gt;, but for a first test I thought to myself: that&amp;rsquo;ll be fine.&lt;/p&gt;
&lt;p&gt;Second spoiler: &lt;strong&gt;it wasn&amp;rsquo;t fine.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="first-the-important-part-the-siphon-principle"&gt;First, the important part: the siphon principle
&lt;/h2&gt;&lt;p&gt;One thing I noticed during testing already – and you need to remember it, because it becomes important in a moment: &lt;strong&gt;The plant has to sit higher than the water tank.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Otherwise this is what happens: as soon as the hose outlet sits &lt;strong&gt;lower than the water level&lt;/strong&gt; in the tank and the pump has run briefly, so that the hoses are full of water, water flows through the hose all by itself via the so-called &lt;strong&gt;siphon principle&lt;/strong&gt; – drop by drop, even though the pump has long been off. So the pump does &lt;strong&gt;not&lt;/strong&gt; stop the flow.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s the same trick you use to fill up a jerrycan from your neighbor&amp;rsquo;s car: once it&amp;rsquo;s going, the difference in height keeps pulling the liquid along by itself until the tank is empty.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s exactly what the manual says as well, and I set it up accordingly – &lt;strong&gt;plant on top, tank below&lt;/strong&gt; – and during the test week everything worked flawlessly. Every time I tapped &amp;ldquo;water&amp;rdquo; in the app, it ran perfectly. &lt;strong&gt;Remember this section&lt;/strong&gt; – it explains the mess later on.&lt;/p&gt;
&lt;h2 id="problem-1-the-cloud-was-gone--and-the-app-kept-quiet"&gt;Problem 1: the cloud was gone – and the app kept quiet
&lt;/h2&gt;&lt;p&gt;Then came the holiday, and with it &lt;strong&gt;problem number one.&lt;/strong&gt; First look at the app while I was away: &lt;strong&gt;no cloud connection&lt;/strong&gt; to the device.&lt;/p&gt;
&lt;p&gt;What exactly caused it, I still can&amp;rsquo;t say for sure today. According to my DHCP server, the device did log into the Wi-Fi now and then, but apparently only sporadically. What really annoyed me, though, was something else:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The app never clearly showed me this connection problem.&lt;/strong&gt; Instead – at least that&amp;rsquo;s how it looked to me – it had quietly &lt;strong&gt;fallen back to Bluetooth&lt;/strong&gt; back home during testing, without telling me. At home everything worked over that connection, so nothing stood out. Only once I was away did that Bluetooth connection fail too, with an error message. And Bluetooth is of very little use when you&amp;rsquo;re a few hundred kilometers away.&lt;/p&gt;
&lt;p&gt;For me that&amp;rsquo;s simply &lt;strong&gt;badly solved&lt;/strong&gt;: an app should clearly show me a connection problem and not silently fall back to something that can&amp;rsquo;t work at all in a different situation. The result: &lt;strong&gt;I couldn&amp;rsquo;t control the device while on holiday at all.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="problem-2-20-liters-of-water-by-pure-physics"&gt;Problem 2: 20 liters of water by pure physics
&lt;/h2&gt;&lt;p&gt;After the holiday I found &lt;strong&gt;problem number two&lt;/strong&gt; – and this is where the siphon principle from earlier comes back into play.&lt;/p&gt;
&lt;p&gt;The &lt;strong&gt;hose had come loose from the pump&lt;/strong&gt; and was just lying on the bottom of the tray – so lower than the water surface in the canister. And you remember: as soon as the hose outlet sits lower than the water level, the water keeps flowing all by itself.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s exactly what happened. Through this very effect my &lt;strong&gt;entire water supply ran into the tray within a few minutes&lt;/strong&gt; – no pump needed, the difference in height does it all by itself. &lt;strong&gt;20 liters of water, almost completely drained.&lt;/strong&gt; The drip tray was filled accordingly.&lt;/p&gt;
&lt;h3 id="the-cause-a-missing-barb"&gt;The cause: a missing barb
&lt;/h3&gt;&lt;p&gt;So the question remains: &lt;strong&gt;why did the hose come loose at all?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I took a close look at the construction afterwards – and found something: &lt;strong&gt;all&lt;/strong&gt; the other plug connections on this device have little &lt;strong&gt;barbs&lt;/strong&gt; that secure the hose. Only &lt;strong&gt;the connectors on the pump&lt;/strong&gt; on my unit don&amp;rsquo;t. Since the device is new, I don&amp;rsquo;t assume wear is the cause – this important safety feature is &lt;strong&gt;simply missing.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;To sum up, two things went wrong for me:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;No remote control while on holiday&lt;/strong&gt;, because the app obscured the connection problem rather than clearly showing it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A hose that slipped off&lt;/strong&gt; at exactly the spot where the safety feature that&amp;rsquo;s meant to prevent that is missing.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;In the end, what got watered was: &lt;strong&gt;nothing except my tray.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="what-neo-says-about-it"&gt;What NEO says about it
&lt;/h2&gt;&lt;p&gt;After the holiday I confronted the manufacturer &lt;strong&gt;NEO&lt;/strong&gt; with my experience and asked for a statement. On the plus side: NEO answered &lt;strong&gt;quickly and in detail&lt;/strong&gt; – though not on every point the way I would have liked.&lt;/p&gt;
&lt;h3 id="the-pump-fixed--but-only-for-new-devices"&gt;The pump: fixed – but only for new devices
&lt;/h3&gt;&lt;p&gt;NEO admits that the &lt;strong&gt;pump connector has been reworked&lt;/strong&gt; and given a barb that secures the hose – so &lt;strong&gt;exactly the spot that failed on my unit.&lt;/strong&gt; Sounds good at first.&lt;/p&gt;
&lt;p&gt;The catch, quite literally: according to NEO, this improved connector only comes &lt;strong&gt;on new devices from upcoming production batches.&lt;/strong&gt; For devices already in use – like mine, and maybe yours too – there is &lt;strong&gt;no replacement and no spare part&lt;/strong&gt;, that would be too much effort.&lt;/p&gt;
&lt;p&gt;Translated, that means: the manufacturer has fixed this spot – but anyone who already owns the device today is left empty-handed for now. Honestly, that&amp;rsquo;s the point that annoys me personally the most.&lt;/p&gt;
&lt;h3 id="the-app-the-silent-fallback-is-confirmed"&gt;The app: the silent fallback is confirmed
&lt;/h3&gt;&lt;p&gt;For the app I asked very specifically: if the device falls back to Bluetooth – &lt;strong&gt;does the app actually tell the user?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;NEO&amp;rsquo;s answer: &lt;strong&gt;no, it doesn&amp;rsquo;t&lt;/strong&gt; – but they are working on an update that improves exactly this. As the cause of the switch itself, NEO suspects my home network. I can&amp;rsquo;t conclusively prove that everything at my place really was fine – there were no other incidents during that period though, and my Home Assistant watches closely.&lt;/p&gt;
&lt;p&gt;For me, the question of the cause doesn&amp;rsquo;t change the core issue: &lt;strong&gt;no matter why&lt;/strong&gt; the device switches to Bluetooth – the fact that it &lt;strong&gt;doesn&amp;rsquo;t show me&lt;/strong&gt; and leaves me believing everything is running normally, &lt;strong&gt;that&lt;/strong&gt; is the problem. And NEO confirms exactly that themselves.&lt;/p&gt;
&lt;p&gt;That the manufacturer responded to both points so openly and so quickly is something I explicitly give them credit for – that&amp;rsquo;s far from a given.&lt;/p&gt;
&lt;h2 id="what-you-can-take-away-from-this"&gt;What you can take away from this
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Look closely.&lt;/strong&gt; During setup I had already noticed that these barbs weren&amp;rsquo;t fitted everywhere – I just didn&amp;rsquo;t think anything more of it. A mistake.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Plan for the worst case.&lt;/strong&gt; Putting a drip tray under the test setup was the best decision of the whole exercise.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloud control is not a sure thing.&lt;/strong&gt; For anything safety-relevant (and water in the living room is exactly that), don&amp;rsquo;t blindly rely on an app that hides connection problems.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;For me, the NEO NAS-WV08W disappointed on &lt;strong&gt;two&lt;/strong&gt; counts: an app that hides the loss of the cloud connection behind a silent Bluetooth fallback, and a pump connector without the safety feature that every other connection has. Together they meant that &lt;strong&gt;nothing got watered&lt;/strong&gt; while I was away – and that afterwards 20 liters of water were standing in the tray.&lt;/p&gt;
&lt;p&gt;To be fair: NEO has recognized the design flaw at the pump and fixed it in production, and wants to deliver the missing app warning via an update. For &lt;strong&gt;existing devices&lt;/strong&gt; that changes nothing in the short term – and that&amp;rsquo;s exactly where a manufacturer should go further, in my view.&lt;/p&gt;
&lt;h2 id="your-opinion-matters"&gt;Your opinion matters!
&lt;/h2&gt;&lt;p&gt;The open question for me remains: &lt;strong&gt;what do I do on my next holiday?&lt;/strong&gt; I&amp;rsquo;d genuinely appreciate your tip or advice – and if you&amp;rsquo;ve had your own experience with smart (indoor) watering, please share it &lt;strong&gt;in the comments&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;And if you haven&amp;rsquo;t had enough of plant topics: in my &lt;a class="link" href="https://smarthome-aber-sicher.de/en/erdfeuchte-zigbee-sensor" &gt;test of the NEO Zigbee soil moisture sensor&lt;/a&gt; I take a look at another device from the same manufacturer – with a considerably happier ending.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;d like to try a (different) irrigation solution yourself and support me along the way: &lt;a class="link" href="https://amzn.to/4fErLtO" target="_blank" rel="noopener"
&gt;this Amazon search for indoor irrigation&lt;/a&gt;* will find you plenty of alternatives. Or take a look at my partner OBI: &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fsearch%2Findoor%2520bew%25C3%25A4sserung%2F" target="_blank" rel="noopener"
&gt;indoor irrigation at OBI&lt;/a&gt;*. If you buy through these links, you&amp;rsquo;re helping this blog on the side.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;(Affiliate links – through the partner programs of Amazon and other retailers I earn from qualifying purchases)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Thanks for reading – take care of yourself and your Smart Home!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Your Joachim&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>15-Year-Old Dishwasher, Smarter Than Home Connect</title><link>https://smarthome-aber-sicher.de/en/blog/2026/07/30/bsh-maschinen-hacken/</link><pubDate>Thu, 30 Jul 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/07/30/bsh-maschinen-hacken/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/cover.jpeg" alt="Featured image of post 15-Year-Old Dishwasher, Smarter Than Home Connect" /&gt;&lt;p&gt;My dishwasher is a Siemens from 2010 – 15 years old, no WiFi, no app, no cloud. Exactly the kind of appliance you&amp;rsquo;d normally just replace at some point without a second thought. In my kitchen, though, &lt;strong&gt;Home Assistant&lt;/strong&gt; shows me at any moment, to the minute, which program is running, how much time is left, whether the door is open, and whether I need to refill the salt – all of it locally, in my own house, without a single data packet ever leaving it.&lt;/p&gt;
&lt;p&gt;Sounds like a relaxed afternoon of tinkering? It wasn&amp;rsquo;t. Along the way, one careless move fried the heart of the machine, and I had to pay &lt;strong&gt;€315 in &amp;ldquo;tuition&amp;rdquo;&lt;/strong&gt; before a single dish came out clean again. How a &amp;ldquo;dumb&amp;rdquo; old appliance ended up doing more than plenty of new ones with Home Connect – and how you can skip the expensive detour – is what this post is about.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/maschine-tuer-offen.jpeg"
width="1600"
height="900"
srcset="https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/maschine-tuer-offen_hu_11fd96f6dd046521.webp 480w, https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/maschine-tuer-offen_hu_348d7f177e6c72bc.webp 1024w"
loading="lazy"
alt="The Siemens dishwasher with its door open, blue-lit interior, and control panel"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/NSkQ78OTgHY?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_16229499893492605392_hu_fe8d960531b0757b.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Update 23 Sep 2026:&lt;/strong&gt; New in this article – how I automatically start the dishwasher on solar surplus using a 1-hour delay timer, even though the board only listens in. Including a surprise when cutting power during the delay. &lt;a class="link" href="#pv-start" &gt;Jump to the tip&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Safety note:&lt;/strong&gt; Working on household appliances is at your own risk. Depending on the device, the internal bus may not be safely isolated from mains – never connect the device and a computer at the same time, and always work de-energized. Opening the appliance can void your warranty.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="the-idea-just-listen-in-on-what-the-machine-says-anyway"&gt;The idea: just listen in on what the machine says anyway
&lt;/h2&gt;&lt;p&gt;It all started with a talk at the &lt;strong&gt;Chaos Communication Congress&lt;/strong&gt; – &lt;a class="link" href="https://www.youtube.com/watch?v=Q1S-PVo3GlA" target="_blank" rel="noopener"
&gt;»Hacking washing machines«&lt;/a&gt;. Two security researchers showed how Miele devices, and &lt;strong&gt;BSH&lt;/strong&gt; devices (Bosch, Siemens, Neff &amp;amp; co.), tick internally. One detail was worth its weight in gold to me: almost every BSH machine has an internal data bus, called the &lt;strong&gt;D-Bus&lt;/strong&gt;, that the individual modules use to talk to each other – the power module, the display, the sensors, and on newer devices also the WiFi module for Home Connect.&lt;/p&gt;
&lt;p&gt;The bus is proprietary, but by now pretty well understood. On my machine it runs at around &lt;strong&gt;13.5 volts and 9600 baud&lt;/strong&gt; over two simple wires. So the plan was equally simple: tap in with a small microcontroller and just listen. Nothing to invent, nothing to rewire – just something to learn to listen to. Whatever the machine says internally, it&amp;rsquo;s already sending out anyway.&lt;/p&gt;
&lt;h2 id="the-moment-that-cost-315"&gt;The moment that cost €315
&lt;/h2&gt;&lt;p&gt;So much for the theory. In practice, I had my adapter board (more on that below) in hand and, of course, wanted to get started right away. The obvious spot seemed to be up in the door, right behind the display – according to voices online, the bus should be there. So I plugged it in. And: nothing. No data, dead end.&lt;/p&gt;
&lt;p&gt;To get to the bottom of it, I wanted to measure whether the bus even reaches up there. Out came the multimeter, probes onto the pins, which sit really close together – and in exactly that moment a probe slipped and briefly shorted two contacts.&lt;/p&gt;
&lt;p&gt;The bill came instantly: first the fuse blew, then nothing happened at all when I switched the machine back on. A couple of lights still blinked defiantly, but the rest of the machine was dead. The central &lt;strong&gt;power module&lt;/strong&gt; – basically the heart of the device – was gone, and the &lt;strong&gt;front module&lt;/strong&gt; with buttons, LEDs, and time display right along with it.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/platine-verschmort.jpeg"
width="1600"
height="900"
srcset="https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/platine-verschmort_hu_2ef333395f5c3f9b.webp 480w, https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/platine-verschmort_hu_a163cebe8bdaecf6.webp 1024w"
loading="lazy"
alt="The dishwasher’s power module removed, with a clearly visible short-circuit scorch mark on the left edge of the board"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;
&lt;em&gt;The machine&amp;rsquo;s central power module – the black scorch mark on the left edge is the short circuit that cost me €315.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Nothing for it: gritting my teeth, I ordered replacement parts. Power and front module together, &lt;strong&gt;€315&lt;/strong&gt;. On top of that, half the machine had to come apart just to reach the modules at all – all done myself, with what felt like half of YouTube&amp;rsquo;s repair community for backup. Between &amp;ldquo;board arrives in January&amp;rdquo; and &amp;ldquo;machine runs again in March,&amp;rdquo; quite a bit of time passed, during which we went back to washing dishes by hand. My family&amp;rsquo;s enthusiasm was, let&amp;rsquo;s say, limited.&lt;/p&gt;
&lt;p&gt;The lesson, and I mean this seriously: never poke around with pointed probe tips inside tight connectors while there&amp;rsquo;s voltage on them. That one second cost me not just money, but a lot of nerves too.&lt;/p&gt;
&lt;h2 id="back-to-square-one--this-time-with-respect"&gt;Back to square one – this time with respect
&lt;/h2&gt;&lt;p&gt;After the repair I gave it another go, now with a lot more caution. The key insight: the board doesn&amp;rsquo;t belong up at the display, but down at the power module. According to other people&amp;rsquo;s experience reports on GitHub, it should have worked up top too – I never could fully clarify what went wrong in my case. After the expensive lesson, though, I didn&amp;rsquo;t want to take any more risks and stuck to what had worked for most people.&lt;/p&gt;
&lt;p&gt;Down at the power module the mounting is fiddlier, but there are two dedicated pins meant for a service technician to read out. Clamped on there – and, sure enough, on the very first try: clean data, stable power, everything running exactly as it should.&lt;/p&gt;
&lt;h2 id="the-hardware-a-20-board-instead-of-a-300-module"&gt;The hardware: a €20 board instead of a €300 module
&lt;/h2&gt;&lt;p&gt;The centerpiece is a small adapter board that brings the bus level from 13.5 volts down to something a microcontroller can handle. Mine carries an &lt;strong&gt;ESP32-C6&lt;/strong&gt; running &lt;strong&gt;ESPHome&lt;/strong&gt; – the open-source firmware that turns microcontrollers like this into full Home Assistant devices without much programming knowledge.&lt;/p&gt;
&lt;p&gt;The board itself comes from an &lt;a class="link" href="https://github.com/Bouni/BSH-Board" target="_blank" rel="noopener"
&gt;open-source project on GitHub&lt;/a&gt;. I got mine fully assembled through a group order for just under &lt;strong&gt;€20&lt;/strong&gt;, connectors included – the full PCB layout is published, so anyone can have one built or make it themselves. There&amp;rsquo;s even a 3D-printable case with press-fit magnets in the repo, so the whole thing sticks neatly to the machine.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/esp32-board.jpeg"
width="1600"
height="1040"
srcset="https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/esp32-board_hu_ee76808c6830ebf1.webp 480w, https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/esp32-board_hu_1a5b43ff373afe67.webp 1024w"
loading="lazy"
alt="The fully assembled adapter board with an ESP32-C6, in close-up"
class="gallery-image"
data-flex-grow="153"
data-flex-basis="369px"
&gt;
&lt;em&gt;The complete adapter board: an ESP32-C6 plus a level shifter for the 13.5-volt bus – for just under €20 through a group order.&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="from-a-jumble-of-bytes-to-meaning--with-logs-and-ai"&gt;From a jumble of bytes to meaning – with logs and AI
&lt;/h2&gt;&lt;p&gt;Now I had a data stream. At first, though, that&amp;rsquo;s just a jumble of bytes: how do you know which packet means &amp;ldquo;door open&amp;rdquo; and which one means &amp;ldquo;47 minutes left&amp;rdquo;? Luckily, I didn&amp;rsquo;t have to start from scratch – there&amp;rsquo;s already groundwork out there, ready-made ESPHome components that log the bus traffic in general. My job was to translate all of that onto my specific machine.&lt;/p&gt;
&lt;p&gt;I ran targeted wash cycles – for example the 40-degree automatic program with SpeedPerfect – and recorded the complete ESPHome log for each run. I then handed those logs to an AI, with clear context: &amp;ldquo;This was a 40-degree automatic wash cycle with SpeedPerfect – analyze the communication and note which patterns correspond to which state.&amp;rdquo; Repeated for many different runs: other programs, other options, door open, door closed. Bit by bit, raw bytes turned into an ESPHome configuration tailored to my machine – including documentation of everything found.&lt;/p&gt;
&lt;p&gt;It now runs so reliably that I&amp;rsquo;ve officially published it:&lt;/p&gt;
&lt;p&gt;👉 &lt;a class="link" href="https://github.com/jowi24/bsh-dbus-sx66t096eu" target="_blank" rel="noopener"
&gt;My ESPHome config + docs on GitHub&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you have exactly the same machine (&lt;strong&gt;Siemens SX66T096EU&lt;/strong&gt;), you can take the configuration over directly. For a different BSH model, the patterns are generally similar but, depending on the device generation, not always identical. My config still works as a starting point – combined with exactly this logging-plus-AI workflow to adapt it to your own device.&lt;/p&gt;
&lt;h2 id="the-payoff-the-dashboard"&gt;The payoff: the dashboard
&lt;/h2&gt;&lt;p&gt;And then the moment that made all the effort worth it: my Home Assistant dashboard shows, while the machine is running, the current program, the status, whether the door is open or closed – and above all the exact remaining time. Not an estimate, but exactly the signal shown on the machine&amp;rsquo;s own display. It&amp;rsquo;s the same communication my board is listening in on, after all.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/ha-dashboard.jpeg"
width="1600"
height="900"
srcset="https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/ha-dashboard_hu_5f9f6e91450eb6cf.webp 480w, https://smarthome-aber-sicher.de/blog/2026/07/30/bsh-maschinen-hacken/ha-dashboard_hu_b5f6caad6cfc699a.webp 1024w"
loading="lazy"
alt="The Home Assistant dashboard for the dishwasher, showing device info, sensors like remaining time, salt, and door state, plus the activity history"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;
&lt;em&gt;Every sensor straight from the D-Bus: program, remaining time, door, salt, rinse aid – live in Home Assistant, with no Home Connect involved.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I switched my &amp;ldquo;empty the dishwasher&amp;rdquo; notification (from an earlier video) straight over to the bus. That makes it better in two ways: it now detects the end of the cycle precisely instead of with a time delay – and it cleans itself up. As soon as the door opens, Home Assistant knows someone&amp;rsquo;s emptying the machine, and the reminder disappears on its own.&lt;/p&gt;
&lt;p&gt;And because the machine also reports over the bus when salt or rinse aid is running low, I show that as a small hint right on the dashboard – instead of only noticing the next time I urgently need it.&lt;/p&gt;
&lt;h2 id="old-beats-new"&gt;Old beats new
&lt;/h2&gt;&lt;p&gt;I used to detect the end of the cycle via a switchable socket with power monitoring – a Shelly measuring power draw – and infer from the wattage curve: still running, or done. That works, but it&amp;rsquo;s always a bit of interpretation. The route via the bus gives me the actual status instead: running, not running, which program, how much time is left, even error messages. Considerably more precise – and, as a smart-home nerd, honestly a lot more satisfying too.&lt;/p&gt;
&lt;p&gt;Which brings things full circle to the title: a 15-year-old machine with neither an app nor a cloud ends up giving me more, and more reliable, data than plenty of brand-new devices with Home Connect – all while staying 100% in the house. No account to set up, no cloud to rely on, no dependency on some manufacturer&amp;rsquo;s server.&lt;/p&gt;
&lt;p&gt;One thing matters to me here: right now I&amp;rsquo;m only reading with the board – I&amp;rsquo;m deliberately not controlling the machine with it. Whether and how the bus can safely be used for sending too is being discussed in the community; as long as that isn&amp;rsquo;t cleanly figured out, I&amp;rsquo;m sticking to just listening in. For everything shown here, that&amp;rsquo;s completely enough.&lt;/p&gt;
&lt;h2 id="pv-start"&gt;Update 23 Sep 2026 – Practical tip: start the dishwasher on solar surplus using the delay timer
&lt;/h2&gt;&lt;p&gt;The board only listening in doesn&amp;rsquo;t mean I can&amp;rsquo;t influence the machine at all. The trick: I don&amp;rsquo;t control it over the bus, but the old-fashioned way – via the power supply, using the Shelly smart plug that still sits in front of the machine anyway. The board just supplies the knowledge of &lt;em&gt;when&lt;/em&gt; the right moment to cut power is.&lt;/p&gt;
&lt;p&gt;Operation stays entirely at the machine: if I set a delay timer of &lt;strong&gt;exactly 1 hour&lt;/strong&gt;, Home Assistant reads that as &amp;ldquo;please wash with solar power&amp;rdquo;. Why exactly 1 hour? It&amp;rsquo;s quick to set on the machine – and I practically never use it as a genuine desired start time. Longer delays like 3 or 6 hours, on the other hand, I mean seriously; they should apply, so they run exactly as set. No app, no extra button – and anyone who doesn&amp;rsquo;t know about the automation just uses the machine as usual.&lt;/p&gt;
&lt;h3 id="what-i-learned-let-it-start-first-then-cut-the-power"&gt;What I learned: let it start first, then cut the power
&lt;/h3&gt;&lt;p&gt;My first approach was the obvious one: cut the power just before the delay runs out and switch it back on when there&amp;rsquo;s PV surplus. That backfired. If you cut power &lt;strong&gt;during the delay&lt;/strong&gt;, the machine doesn&amp;rsquo;t resume the delay when power returns – it &lt;strong&gt;resets it to a flat 30 minutes&lt;/strong&gt;. Measured on two days in a row, even though 7 and 5 minutes were left when power was cut. That&amp;rsquo;s a reset, not a resume.&lt;/p&gt;
&lt;p&gt;The counter-test showed the right way: let the delay run out normally, the program starts, and only &lt;strong&gt;60 seconds later&lt;/strong&gt; does the Shelly switch off. In that first minute the machine draws only about 20 watts, so it isn&amp;rsquo;t heating yet. When I switched it back on a good two hours later, the program continued immediately – the remaining time counted down from the very first minute. So a program that has already started resumes without any delay.&lt;/p&gt;
&lt;h3 id="how-the-flow-works"&gt;How the flow works
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;1-hour delay detected:&lt;/strong&gt; the delay sensor from the bus jumps to 0.95–1.0 h → a helper &lt;code&gt;spulmaschine_wartet_auf_pv&lt;/code&gt; is switched on. The jump &lt;em&gt;upwards&lt;/em&gt; matters: a 3-hour delay counting down through 1.0 doesn&amp;rsquo;t trigger it.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Program started:&lt;/strong&gt; the bus status has reported &amp;ldquo;running&amp;rdquo; for 60 s → Shelly off, push notification to my phone.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sun&amp;rsquo;s out:&lt;/strong&gt; PV surplus above 2000 W for 5 minutes → Shelly on, the program continues. At 4 pm at the latest it starts even without surplus, so there are clean dishes by evening.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Switched on by hand:&lt;/strong&gt; if someone switches the Shelly on themselves, the postponement is cancelled – otherwise the automation would switch a manual start off again 60 s later (which is exactly what happened to me).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The core is the switch-off trigger on the bus status instead of the remaining delay time:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;triggers&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;binary_sensor.geschirrspuler_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;on&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;for&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;seconds&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;60&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;programm_gestartet&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;I calculate the PV surplus as a template sensor: inverter output minus house consumption minus wallbox – i.e. what would otherwise go to the grid or the battery. Threshold and latest start time are adjustable as helpers on the dashboard.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Does this work without the bus module?&lt;/strong&gt; In principle yes, since the control runs purely through the smart plug. Without the bus, though, you lose the delay timer as your &amp;ldquo;control knob&amp;rdquo; and the exact program start. You can detect the start via power measurement instead, as described in my &lt;a class="link" href="https://smarthome-aber-sicher.de/en/sas/geschirrspueler/" &gt;older dishwasher article&lt;/a&gt; – just with a bit more fuzziness. And most importantly: test first with your own machine whether it really resumes after a power interruption. Not every machine does, and the behaviour during the delay surprised even me.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;It&amp;rsquo;s worth keeping old devices alive and making them smart instead of throwing them away. But let&amp;rsquo;s be honest, too: this path is not for a relaxed Saturday afternoon. You open up a device, work on electronics, and – as my €315 bill shows – you can break something. If you&amp;rsquo;re up for it: my complete config and docs are on GitHub (linked above), so you don&amp;rsquo;t have to start from zero.&lt;/p&gt;
&lt;p&gt;And if this is all a bit too deep into the machine for you, but you&amp;rsquo;d still like to know when your dishwasher is done: check out my older video, where I solved exactly that without opening anything up – using nothing but a smart plug.&lt;/p&gt;
&lt;p&gt;👉 &lt;a class="link" href="https://smarthome-aber-sicher.de/en/sas/geschirrspueler/" &gt;Making any dishwasher smart – without cloud or rewiring&lt;/a&gt;&lt;/p&gt;</description></item><item><title>OBI Energy Tracker – For Beginners AND Home Assistant Pros</title><link>https://smarthome-aber-sicher.de/en/blog/2026/07/23/obi-energy-tracker/</link><pubDate>Thu, 23 Jul 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/07/23/obi-energy-tracker/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/07/23/obi-energy-tracker/cover.jpeg" alt="Featured image of post OBI Energy Tracker – For Beginners AND Home Assistant Pros" /&gt;&lt;p&gt;OBI launched a small electricity-meter reader at under €15 – and I&amp;rsquo;d argue it&amp;rsquo;s a small sensation. At that price there simply hasn&amp;rsquo;t been anything comparable, neither for beginners nor for advanced users. In this article I&amp;rsquo;ll show you two things: whether the &lt;strong&gt;OBI Energy Tracker&lt;/strong&gt; is worth it for beginners and what the app can really do – and how to get the data into Home Assistant, &lt;strong&gt;with the OBI cloud, but also completely without the OBI cloud and app&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;How I even got hold of the device: a friend forwarded me the heyOBI newsletter about the Energy Tracker and asked if I wanted to take a look. I thought it sounded interesting, and he put me in touch with someone at OBI – that&amp;rsquo;s how I ended up with my test unit.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclosure:&lt;/strong&gt; The device was provided to me by OBI free of charge. No fee, no requirements – my opinion stays my own. Links marked &lt;em&gt;(paid link)&lt;/em&gt; are affiliate links.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/VADwfrMmhrs?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_15120372319787065565_hu_9589a3fd7f2604b7.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-has-changed-since-publication"&gt;What has changed since publication
&lt;/h2&gt;&lt;p&gt;This article is no longer quite the one that went live in July. Two things have changed, and more than a hundred comments brought in real-world numbers that aren&amp;rsquo;t in the video yet. I&amp;rsquo;m adding them here.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The price went up.&lt;/strong&gt; The €15 were a launch offer. Right after the video went live, OBI raised it to the regular €29.99 – several of you pointed that out. Compared to a Tibber Pulse (around €130) that&amp;rsquo;s still a fair price, but it&amp;rsquo;s no longer the bargain it was.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multiple sensors on one bridge now work.&lt;/strong&gt; When the video came out this was only announced. Today the &lt;a class="link" href="https://www.obi.de/energy-tracker/faq" target="_blank" rel="noopener"
&gt;OBI FAQ&lt;/a&gt; states it plainly: with one account and one bridge you can run several sensors and track several electricity meters at the same time.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The official smart home integration is still missing.&lt;/strong&gt; The FAQ still lists it as &amp;ldquo;firmly planned&amp;rdquo; – with no date.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="the-problem-smart-meters-in-germany"&gt;The problem: smart meters in Germany
&lt;/h2&gt;&lt;p&gt;Smart meters and Germany – that&amp;rsquo;s an absolute disaster. Only about 5% of all meters in this country are so far a real smart meter, even though it would have solid advantages for both sides.&lt;/p&gt;
&lt;p&gt;Most of us instead have a simple digital meter – in technical terms a &lt;strong&gt;modern metering device&lt;/strong&gt;. An important distinction, because it often gets mixed up: a real &lt;strong&gt;intelligent metering system&lt;/strong&gt;, i.e. the actual smart meter, is that modern metering device &lt;em&gt;plus&lt;/em&gt; a gateway that sends the data to the grid operator on its own. That gateway is exactly what most people are missing – they only have the optical interface on the front to read the data out locally. And yet the question nags at anyone with a smart home: where does all the energy actually go?&lt;/p&gt;
&lt;h2 id="what-is-the-obi-energy-tracker"&gt;What is the OBI Energy Tracker?
&lt;/h2&gt;&lt;p&gt;The device consists of two parts:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;a &lt;strong&gt;sensor&lt;/strong&gt; that is magnetically placed on the optical interface of your meter, and&lt;/li&gt;
&lt;li&gt;a &lt;strong&gt;bridge&lt;/strong&gt; that receives the data via radio (868 MHz) and passes it on to your WLAN.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The regular retail price is €29.99. At launch the device sold for around €15 – that introductory offer has since expired.&lt;/p&gt;
&lt;p&gt;👉 &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F9685751%2Fobi-energy-tracker-smarter-stromzaehler-ausleser-mit-heyobi-app" target="_blank" rel="noopener"
&gt;OBI Energy Tracker at OBI&lt;/a&gt; &lt;em&gt;(paid link)&lt;/em&gt;&lt;/p&gt;
&lt;h3 id="range-what-gets-through-concrete"&gt;Range: what gets through concrete?
&lt;/h3&gt;&lt;p&gt;By far the most common question in the comments: does the radio link reach from the meter in the basement up to the flat? That&amp;rsquo;s exactly what the two-part design is for. At the meter, the sensor needs neither a socket nor WLAN – only the bridge needs WLAN, and it can sit anywhere in between where both work.&lt;/p&gt;
&lt;p&gt;OBI gives concrete numbers in its &lt;a class="link" href="https://www.obi.de/energy-tracker/faq" target="_blank" rel="noopener"
&gt;FAQ&lt;/a&gt;: in tests across various households, &lt;strong&gt;up to 6 floors&lt;/strong&gt; were bridged between bridge and sensor, while &amp;ldquo;unusually thick reinforced concrete ceilings&amp;rdquo; cut that down to &lt;strong&gt;2 to 3 floors&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;The reports from the comments cover both ends of that range. &lt;code&gt;@tudymsydym&lt;/code&gt; gets three floors through 1970s concrete down into the basement, where the meter sits in what is effectively a Faraday cage – with water meters transmitting in the same 868 MHz band all around it. For &lt;code&gt;@m2kurim&lt;/code&gt;, on the other hand, nothing arrived from the fourth floor down to the basement; he solved it with an &lt;strong&gt;external magnetic-mount antenna&lt;/strong&gt; on the sensor. If you run the open firmware, you also get the &lt;strong&gt;spreading factor&lt;/strong&gt; as a lever: SF9 instead of the default SF7 noticeably extends range and penetrates walls better, at the cost of longer transmissions and therefore battery life.&lt;/p&gt;
&lt;h3 id="battery-and-power-consumption"&gt;Battery and power consumption
&lt;/h3&gt;&lt;p&gt;According to the FAQ, the sensor runs &lt;strong&gt;up to two years&lt;/strong&gt; on two AA batteries; if you&amp;rsquo;d rather not swap them, you can power it over USB-C instead. For the bridge, the manual lists a &amp;ldquo;max. power&amp;rdquo; of 3.5 W – and someone in the comments rightly took issue with that, since extrapolated it would mean around €10 of electricity a year just for watching your consumption. So I measured it for over an hour: the &lt;strong&gt;average draw is about 0.5 W&lt;/strong&gt;, and the 3.5 W are the peak during active radio transmission. That works out to just under 4.4 kWh a year, so more like €1.50 to €2.&lt;/p&gt;
&lt;h3 id="why-its-interesting"&gt;Why it&amp;rsquo;s interesting
&lt;/h3&gt;&lt;p&gt;What was there comparable so far? The best-known candidate is the &lt;strong&gt;Tibber Pulse&lt;/strong&gt; – but it costs around €130 for non-Tibber customers and is only usable in a limited way without an active Tibber electricity plan. Or the classic DIY route: an infrared reading head with USB on the meter, plus a Raspberry Pi and a rather crude console tool (&lt;a class="link" href="https://www.volkszaehler.org/" target="_blank" rel="noopener"
&gt;Volkszähler&lt;/a&gt; / vzlogger). It works – but it&amp;rsquo;s not for the masses.&lt;/p&gt;
&lt;p&gt;For €15, a beginner gets a finished app, while the advanced user gets a device that can even be pulled completely locally into the smart home (more on that below). A Shelly Pro 3EM can do more, but needs an electrician and DIN-rail space. The OBI is the simple, cheap way in – without touching any wiring.&lt;/p&gt;
&lt;h2 id="setup-and-the-obi-app"&gt;Setup and the OBI app
&lt;/h2&gt;&lt;p&gt;The first curiosity: the feature is tucked into the completely normal &lt;strong&gt;OBI app&lt;/strong&gt;, which at first feels like a shopping app. Only under &lt;em&gt;Profile&lt;/em&gt; does the Energy Tracker show up as its own item. Unusual – but it works, and pairing the bridge and sensor is straightforward; every step is explained in the app.&lt;/p&gt;
&lt;h3 id="unlocking-the-meter-pin-from-the-metering-point-operator"&gt;Unlocking the meter (PIN from the metering point operator)
&lt;/h3&gt;&lt;p&gt;One point where many people get stuck: many digital meters only release the optical interface once you unlock them with a &lt;strong&gt;PIN&lt;/strong&gt;. You get it from your &lt;strong&gt;metering point operator&lt;/strong&gt; – you even have a legal right to it, but you have to request it once (many offer a contact form for this).&lt;/p&gt;
&lt;h2 id="a-tour-of-the-app"&gt;A tour of the app
&lt;/h2&gt;&lt;p&gt;The &lt;strong&gt;overview&lt;/strong&gt; immediately shows the status of bridge and sensor. The &lt;strong&gt;consumption analysis&lt;/strong&gt; is really well done for beginners:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;at the top the absolute meter reading, separated into consumption and feed-in,&lt;/li&gt;
&lt;li&gt;a daily overview as a bar,&lt;/li&gt;
&lt;li&gt;an &lt;strong&gt;analysis&lt;/strong&gt; view with day/week/month and the trend as a curve,&lt;/li&gt;
&lt;li&gt;and – for those who don&amp;rsquo;t need it that precise – aggregated four-hour blocks (morning/afternoon/evening).&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="csv-export"&gt;CSV export
&lt;/h3&gt;&lt;p&gt;The data can be downloaded as a &lt;strong&gt;CSV&lt;/strong&gt; and analysed further in a spreadsheet. The values are provided in &lt;strong&gt;five-minute intervals&lt;/strong&gt;. In my export you can nicely see the solar bell curve of my PV system (over 5 kW of feed-in around noon, with dips from passing clouds) and the big load blocks when the EV charges.&lt;/p&gt;
&lt;h3 id="standby-analysis--handy-but-with-a-caveat"&gt;Standby analysis – handy, but with a caveat
&lt;/h3&gt;&lt;p&gt;I find the &lt;strong&gt;standby analysis&lt;/strong&gt; especially interesting: on a completed day the app shows the standby consumption – not just in watts, but also as a share of daily consumption. Very vivid for getting a feel for your own base load.&lt;/p&gt;
&lt;p&gt;An important caveat from an &amp;ldquo;…but secure&amp;rdquo; perspective: the sensor measures at the &lt;strong&gt;grid connection point&lt;/strong&gt; – it only sees what flows between you and the grid, not what happens behind the meter inside the house. If, like me, you have a PV system with a &lt;strong&gt;battery&lt;/strong&gt;, the battery covers the base load at night and almost nothing shows up at the grid. So the standby figure is mainly meaningful for households &lt;strong&gt;without&lt;/strong&gt; a battery. If you have a battery and want a clean reading, it&amp;rsquo;s best to disable it for a day.&lt;/p&gt;
&lt;h3 id="firmware-update"&gt;Firmware update
&lt;/h3&gt;&lt;p&gt;At the start a firmware update was pending – it ran in the background and was simply done after a few minutes. Nothing a beginner stumbles over.&lt;/p&gt;
&lt;h2 id="interim-verdict-for-beginners"&gt;Interim verdict for beginners
&lt;/h2&gt;&lt;p&gt;For beginners the device is absolutely solid: cheap, simple, and the app does its job.&lt;/p&gt;
&lt;h2 id="credit-where-its-due-the-data-act-page"&gt;Credit where it&amp;rsquo;s due: the Data Act page
&lt;/h2&gt;&lt;p&gt;Despite all the criticism of cloud solutions, one thing I find genuinely great: OBI has its own &lt;strong&gt;&lt;a class="link" href="https://www.obi.de/energy-tracker/data-act" target="_blank" rel="noopener"
&gt;Data Act page&lt;/a&gt;&lt;/strong&gt;. It states completely transparently what the device does and how it communicates – encrypted via &lt;strong&gt;MQTT&lt;/strong&gt; in &lt;strong&gt;JSON&lt;/strong&gt;, meter readings every five minutes, roughly &lt;strong&gt;19 MB per month&lt;/strong&gt; in total. Even the exact values that are read out (consumption, feed-in, current power) are listed, and only the technically necessary data is stored on the device itself. This openness is a requirement under the EU Data Act – but very few manufacturers implement it this cleanly. A big compliment for that.&lt;/p&gt;
&lt;h2 id="in-home-assistant-the-easy-way-via-the-cloud-hacs"&gt;In Home Assistant: the easy way via the cloud (HACS)
&lt;/h2&gt;&lt;p&gt;Many of you run Home Assistant as your smart home hub and want the values right there. For that, there&amp;rsquo;s an unofficial integration in the Community Store (&lt;strong&gt;HACS&lt;/strong&gt;): install it, enter your heyOBI credentials – and your meter readings show up as sensors in Home Assistant.&lt;/p&gt;
&lt;p&gt;➡️ &lt;a class="link" href="https://github.com/mla157/hacs-obienergytracker-integration" target="_blank" rel="noopener"
&gt;hacs-obienergytracker-integration (GitHub)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The catch: this integration doesn&amp;rsquo;t get the data &lt;strong&gt;from the device, but from the OBI cloud&lt;/strong&gt;. It logs in with your heyOBI account and queries OBI&amp;rsquo;s server. So without the cloud nothing works, and if OBI changes the interface, it breaks.&lt;/p&gt;
&lt;h2 id="completely-local--without-the-obi-cloud"&gt;Completely local – without the OBI cloud
&lt;/h2&gt;&lt;p&gt;For anyone who wants to be truly independent, there&amp;rsquo;s another project: &lt;strong&gt;&lt;a class="link" href="https://github.com/atc1441/OBI_Energy_Tracker_Local_Cloud" target="_blank" rel="noopener"
&gt;OBI Energy Tracker Local Cloud&lt;/a&gt;&lt;/strong&gt; by Aaron Christophel (atc1441). The community has fully reverse-engineered the device. With it, you can redirect the bridge so that it no longer sends its data to OBI&amp;rsquo;s servers (on AWS), but &lt;strong&gt;directly to a server at your home&lt;/strong&gt; – and if you want, you can even flash your own open-source firmware onto the device.&lt;/p&gt;
&lt;p&gt;Roughly sketched: the meter provides its data optically to the sensor, which transmits it over 868 MHz to the bridge, and the bridge normally opens an encrypted MQTT connection to the cloud. Because an openly documented AWS IoT protocol is used here, you can point the bridge at your &lt;strong&gt;own local server&lt;/strong&gt; – for example next to Home Assistant on the same Raspberry Pi. Optionally, an open-source firmware replaces the OBI software entirely, flashed via the normal update mechanism, without opening the case. The result: the tracker runs completely offline, in real time, directly in Home Assistant.&lt;/p&gt;
&lt;p&gt;Rebuilding this step by step would go beyond this article. &lt;strong&gt;The detailed guide is now its own video&lt;/strong&gt;: &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2026/08/13/obi-energy-tracker-lokal/" &gt;OBI Energy Tracker locally: OpenOBI without the cloud&lt;/a&gt; – from redirecting the cloud to proving that really not a single byte leaves your network.&lt;/p&gt;
&lt;h2 id="what-obi-is-planning-next"&gt;What OBI is planning next
&lt;/h2&gt;&lt;p&gt;Good news to finish, especially for those who don&amp;rsquo;t want to tinker themselves: according to the &lt;a class="link" href="https://www.obi.de/energy-tracker/faq" target="_blank" rel="noopener"
&gt;OBI FAQ&lt;/a&gt;, an &lt;strong&gt;official integration into smart home systems&lt;/strong&gt; (Home Assistant, OpenHAB, FHEM) is &amp;ldquo;firmly planned&amp;rdquo; – in OBI&amp;rsquo;s own words, &amp;ldquo;our heart beats for open source&amp;rdquo;. The point about &lt;strong&gt;multiple sensors on one bridge&lt;/strong&gt;, previously announced there, has meanwhile been delivered. In the heyOBI newsletter, OBI additionally announces a &lt;strong&gt;live mode&lt;/strong&gt; with per-second values and a consumption comparison with other households. So a lot of what&amp;rsquo;s still community tinkering today may soon arrive officially – and then this little device gets even more interesting.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Even at its now regular €30, the OBI Energy Tracker is a surprisingly good way to make your own power consumption visible – with a clean app and exemplary data transparency. The cloud requirement and the still-missing official HA integration are the weak spots. For tinkerers, though, the ability to run the device completely locally is exactly what tips the scales.&lt;/p&gt;
&lt;p&gt;👉 &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F9685751%2Fobi-energy-tracker-smarter-stromzaehler-ausleser-mit-heyobi-app" target="_blank" rel="noopener"
&gt;Buy the OBI Energy Tracker at OBI&lt;/a&gt; &lt;em&gt;(paid link)&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>3,500 km EV Road Trip: Charging with a Portable Wallbox</title><link>https://smarthome-aber-sicher.de/en/blog/2026/07/16/go-e-roadtrip/</link><pubDate>Thu, 16 Jul 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/07/16/go-e-roadtrip/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/07/16/go-e-roadtrip/cover.jpg" alt="Featured image of post 3,500 km EV Road Trip: Charging with a Portable Wallbox" /&gt;&lt;p&gt;Four weeks, 3,500 kilometres, a fully electric car – from Germany through Austria and Italy all the way to Croatia and back. The big question upfront: is this relaxing, or is charging on holiday pure stress? My joker in the luggage was a portable wallbox, the go-e Charger Gemini flex. Here&amp;rsquo;s what I learned about charging from strangers&amp;rsquo; sockets along the way – including the moments when things didn&amp;rsquo;t go smoothly.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Transparency: The go-e Charger Gemini flex was provided to me by go-e free of charge as a permanent loan for this test. (Ad)&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;Note from go-e:&lt;/strong&gt; According to the operating and installation manual, the go-e Charger Gemini flex must be used hanging vertically, or mounted vertically in the included wall bracket on a flat wall. I didn&amp;rsquo;t always handle it that way on my trip; I&amp;rsquo;ve marked the relevant spots in the video. Please don&amp;rsquo;t copy this.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/kuzBjk6murY?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_15049106815397593224_hu_4290dd0c5365e96d.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;hr&gt;
&lt;h2 id="how-this-came-about"&gt;How this came about
&lt;/h2&gt;&lt;p&gt;A bit of backstory, because transparency matters to me: go-e didn&amp;rsquo;t come to me – I reached out to them. I&amp;rsquo;d thought the go-e Charger was genuinely great long before this. My parents-in-law have been using one for ages, though in their case the hardwired version on the wall. When the road trip came up, I figured it was the perfect match: test the portable version in real travel life for a whole month and show it here on the channel. Hard to beat that.&lt;/p&gt;
&lt;p&gt;Which is why I was all the more pleased that go-e was completely open to supporting me – and my still fairly small channel – with the wallbox. That&amp;rsquo;s also exactly why this video isn&amp;rsquo;t a paid-for puff piece but my honest travel report: everything that worked, and the moments when it didn&amp;rsquo;t.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="what-actually-matters-the-cost"&gt;What actually matters: the cost
&lt;/h2&gt;&lt;p&gt;At a fast charger you quickly pay around &lt;strong&gt;€0.80 per kilowatt-hour&lt;/strong&gt; on the road. At a private socket in a holiday flat, it was often just &lt;strong&gt;around €0.10 at night&lt;/strong&gt; here in Croatia – and in some places the electricity was even free. EVs simply aren&amp;rsquo;t the norm there yet, and hosts are correspondingly relaxed about it.&lt;/p&gt;
&lt;p&gt;I kept a log over the four weeks: all told, I &lt;strong&gt;saved over €280&lt;/strong&gt; compared to what fast charging would have cost. Over an entire holiday, that&amp;rsquo;s a real difference.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="charging-from-an-unknown-schuko-socket-how-many-amps-are-safe"&gt;Charging from an unknown Schuko socket: how many amps are safe?
&lt;/h2&gt;&lt;p&gt;The most common case on the road is the ordinary household socket – the Schuko. The immediate question is how much current you can reasonably draw from it.&lt;/p&gt;
&lt;p&gt;go-e recommends &lt;strong&gt;6 amps&lt;/strong&gt; for unknown sockets. That&amp;rsquo;s the safe bet – but on my Cupra Tavascan (77 kWh) it means roughly &lt;strong&gt;33 hours&lt;/strong&gt; from 20 to 80 percent. The full &lt;strong&gt;16 amps&lt;/strong&gt; you should never draw continuously from a normal Schuko: it isn&amp;rsquo;t built for that and can overheat over time.&lt;/p&gt;
&lt;p&gt;I wanted to know for sure and had my &lt;a class="link" href="https://smarthome-aber-sicher.de/en/thermalmaster-p3" &gt;thermal camera&lt;/a&gt; with me:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;First flat, overnight at &lt;strong&gt;10 A&lt;/strong&gt;: 6 A brought the socket to about 25 °C, 10 A to around 30–35 °C – both perfectly fine.&lt;/li&gt;
&lt;li&gt;Second flat, even at &lt;strong&gt;12 A&lt;/strong&gt; – but there was a dedicated Schuko with its own fuse and RCD, mounted in the garage specifically for the car.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Rule of thumb without a thermal camera:&lt;/strong&gt; if you touch the Schuko plug after an hour and it&amp;rsquo;s hot, something is wrong – dial the charging power right back.&lt;/p&gt;
&lt;p&gt;I show what Schuko charging looks like in thermal view as one of five use cases in the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/thermalmaster-p3" &gt;thermal camera video&lt;/a&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="more-than-schuko-the-adapter-set"&gt;More than Schuko: the adapter set
&lt;/h2&gt;&lt;p&gt;Schuko isn&amp;rsquo;t everything. The go-e Charger comes with an adapter set of three adapters, and that&amp;rsquo;s what makes the box truly flexible:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Schuko adapter&lt;/strong&gt; for the normal household socket.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Blue camping plug&lt;/strong&gt; (blue CEE) – familiar from campsites, found almost everywhere there, and rated to deliver 16 A continuously.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Red CEE adapter&lt;/strong&gt; for industrial power sockets. Important: not every red socket is the same – some are for 11 kW, some for 22 kW, and they differ in size. That&amp;rsquo;s what the red-to-red adapter in the set is for.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id="control-via-the-app--local-no-cloud"&gt;Control via the app – local, no cloud
&lt;/h2&gt;&lt;p&gt;The box is controlled through the go-e app. The nice part: it opens its own Wi-Fi hotspot – you need no internet and no cloud, everything runs locally.&lt;/p&gt;
&lt;p&gt;One pitfall cost me some nerves early on: &lt;strong&gt;your phone has to be on the box&amp;rsquo;s Wi-Fi&lt;/strong&gt;, otherwise the app can&amp;rsquo;t find the box. If you&amp;rsquo;re also in range of the holiday flat&amp;rsquo;s Wi-Fi with internet, the phone happily prefers that one – and the box is &amp;ldquo;gone&amp;rdquo;. When in doubt, quickly check which network your phone is actually on.&lt;/p&gt;
&lt;p&gt;A word on the &lt;strong&gt;charging log&lt;/strong&gt;, in case you want to settle up with your host: the box does keep a log, but on the road it has no network and therefore no date or time. For our billing we simply used the car&amp;rsquo;s charging log instead.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="safety--practical-details"&gt;Safety &amp;amp; practical details
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;LEDs can be switched off&lt;/strong&gt; – handy when charging in a publicly accessible car park where you don&amp;rsquo;t want the box drawing attention at night.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cable locking&lt;/strong&gt; at the box – so a spontaneous theft isn&amp;rsquo;t easy.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Built-in RFID reader&lt;/strong&gt;: you can set the box to charge only after authorisation with the included chip.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Unplugging order:&lt;/strong&gt; always pull the Schuko plug only once charging has stopped. The Type 2 plug at the car is locked and built to be disconnected under load – the Schuko isn&amp;rsquo;t. Pull it under load and you get small arcs that can destroy the socket over time.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h2 id="the-glitch-in-split"&gt;The glitch in Split
&lt;/h2&gt;&lt;p&gt;Of all places, at the dedicated socket in Split the charge stopped abruptly one night – the go-e app said &amp;ldquo;phase not available&amp;rdquo;. First thought: is the box broken? It wasn&amp;rsquo;t. At the same time there was a heavy thunderstorm and a brief power cut. I only noticed because the car automatically pushed a notification to my phone. Restarted the charge, everything ran normally again.&lt;/p&gt;
&lt;p&gt;The lesson: if a charge cuts out, don&amp;rsquo;t immediately blame the box – often the power source is the culprit.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="too-bulky-for-travel-the-dual-benefit"&gt;Too bulky for travel? The dual benefit
&lt;/h2&gt;&lt;p&gt;Yes, the box is bigger than a plain charging cable. But the point is: you only need &lt;strong&gt;one&lt;/strong&gt; wallbox. At home, have an electrician fit a blue or red CEE socket and run the box on its included wall bracket as a fixed installation. When you head off on holiday, unplug it and take it along. No second purchase.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="verdict"&gt;Verdict
&lt;/h2&gt;&lt;p&gt;Does a portable wallbox pay off for travellers? After 3,500 kilometres, a clear yes for me. I was independent of public charging infrastructure at every stop, charged far more cheaply and could top the car up overnight – almost like at home. There are a few things to keep in mind, but comfort and savings combined won me over.&lt;/p&gt;
&lt;p&gt;If you want to take a closer look at the go-e Charger Gemini flex, you&amp;rsquo;ll find it on Amazon in the &lt;a class="link" href="https://amzn.to/4wufK0Q" target="_blank" rel="noopener"
&gt;11 kW version&lt;/a&gt;* (the one I used) and the &lt;a class="link" href="https://amzn.to/4aJgQ0r" target="_blank" rel="noopener"
&gt;22 kW version&lt;/a&gt;&lt;em&gt;, plus the matching &lt;a class="link" href="https://amzn.to/4y9O4QF" target="_blank" rel="noopener"
&gt;adapter set&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;* Links marked with an asterisk are affiliate links. As a partner I earn from qualifying purchases – at no extra cost to you.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Plug In a USB Stick, Own the Device – the FatFs Flaw</title><link>https://smarthome-aber-sicher.de/en/blog/2026/07/09/fatfs-cve-2026/</link><pubDate>Thu, 09 Jul 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/07/09/fatfs-cve-2026/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/07/09/fatfs-cve-2026/cover.jpg" alt="Featured image of post Plug In a USB Stick, Own the Device – the FatFs Flaw" /&gt;&lt;p&gt;It was one of those moments where I stop mid-scroll through the news feed. A headline, half technical, half sensational – and a gut feeling that instantly says: &lt;em&gt;Oh no. I&amp;rsquo;m going to have to make a video about this again.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;The story: security researchers had found seven flaws in a piece of software most people have never heard of. The name sounded harmless – &lt;strong&gt;FatFs&lt;/strong&gt;. But the deeper I read, the clearer it became: this isn&amp;rsquo;t some niche topic for firmware nerds. This tiny piece of code sits inside &lt;strong&gt;millions&lt;/strong&gt; of devices. Very likely in your home, too. And the way these flaws were found honestly gave me goosebumps.&lt;/p&gt;
&lt;p&gt;So: grabbed a tea, opened the research doc, set up the camera. Here&amp;rsquo;s the whole story.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/bLoQb63tEHg?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_10329901374376856212_hu_92ada0334869f14c.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="the-nightmare-in-one-sentence"&gt;The nightmare in one sentence
&lt;/h2&gt;&lt;p&gt;Imagine someone plugs an ordinary USB stick into your device. They don&amp;rsquo;t type anything, don&amp;rsquo;t open a file, don&amp;rsquo;t crack a password or bypass a firewall. They just plug it in. And in that very moment, the device no longer belongs to you – it belongs to them.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s exactly what the most dangerous of these flaws makes possible. No sophisticated network attack, no stolen password – a rigged storage medium is enough. And the crazy part: the code that makes this possible is probably running in a device in your home right now.&lt;/p&gt;
&lt;h2 id="what-even-is-fatfs"&gt;What even is FatFs?
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;FatFs&lt;/strong&gt; is a free, platform-independent software module written in C. Its only job: to teach a device how to read and write &lt;strong&gt;FAT- and exFAT-formatted&lt;/strong&gt; USB sticks and SD cards.&lt;/p&gt;
&lt;p&gt;Sounds trivial. But it&amp;rsquo;s exactly what you need when a device doesn&amp;rsquo;t have a full operating system like your laptop does. Your security camera, your ESP32 hobby project, an industrial controller, a drone – none of these have a Windows or Linux kernel to read the USB stick for them. They need a small, lean driver that handles exactly that. And very often that driver is FatFs.&lt;/p&gt;
&lt;p&gt;Because FatFs is so small, so free, and so reliable, it&amp;rsquo;s baked into the &lt;strong&gt;base kits&lt;/strong&gt; (SDKs) that countless devices build upon – not just hobby projects, but finished products sold in the millions worldwide. A tiny building block with a gigantic reach.&lt;/p&gt;
&lt;h3 id="the-sore-spot-maintained-by-a-single-person"&gt;The sore spot: maintained by a single person
&lt;/h3&gt;&lt;p&gt;And here&amp;rsquo;s the first part that gives you pause. FatFs is essentially maintained by &lt;strong&gt;one single person&lt;/strong&gt; – the Japanese developer known by the handle &amp;ldquo;ChaN&amp;rdquo;. No security team. No security mailing list. No vulnerability reporting channel. No CVE history.&lt;/p&gt;
&lt;p&gt;One person, as a volunteer, looks after code that runs in millions of devices. That&amp;rsquo;s not a criticism of that person – on the contrary, it&amp;rsquo;s an admirable contribution to the common good. But it&amp;rsquo;s the core of the problem we&amp;rsquo;re about to hit. (If you want the pattern behind this: it&amp;rsquo;s &lt;a class="link" href="https://xkcd.com/2347/" target="_blank" rel="noopener"
&gt;exactly the kind of &amp;ldquo;lonely dependency in the foundation&amp;rdquo; that xkcd nailed in a legendary 2020 comic&lt;/a&gt;.)&lt;/p&gt;
&lt;h2 id="the-most-dangerous-flaw-cve-2026-6682"&gt;The most dangerous flaw: CVE-2026-6682
&lt;/h2&gt;&lt;p&gt;Each of these vulnerabilities gets a unique ID and a severity score – a number between 0 and 10. The worst of the seven is &lt;strong&gt;CVE-2026-6682&lt;/strong&gt;, rated &amp;ldquo;high&amp;rdquo; with a &lt;strong&gt;CVSS score of 7.6&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;What happens technically? Here it is, without the jargon:&lt;/p&gt;
&lt;p&gt;When your device reads a memory card, it &lt;strong&gt;blindly trusts&lt;/strong&gt; the size values stored on the medium for each file. It does its math with those numbers to find its way around the card – which file sits where, how long it is, where to read.&lt;/p&gt;
&lt;p&gt;Now the attacker writes &lt;strong&gt;completely absurd numbers&lt;/strong&gt; onto a manipulated SD card. The device does its math with them anyway, because it trusts the card. And in doing so, &lt;strong&gt;the calculation overflows&lt;/strong&gt; – a so-called integer overflow. A bit like an old odometer rolling over from 9,999 back to 0. Except here it&amp;rsquo;s not the counter that breaks – the device suddenly starts writing to a &lt;strong&gt;completely wrong location in memory&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;And that&amp;rsquo;s exactly what an attacker can exploit to inject their own malicious code. The researchers at runZero put it bluntly:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;Every physical access is a jailbreak.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Why does this work so reliably? Because small IoT devices almost never have the protections your PC has long had: no random shuffling of memory addresses (ASLR), often no real memory protection. What would fail at several hurdles on a modern PC sails right through on a bare microcontroller.&lt;/p&gt;
&lt;h3 id="not-just-one-flaw--seven"&gt;Not just one flaw – seven
&lt;/h3&gt;&lt;p&gt;CVE-2026-6682 is the most spectacular, but it doesn&amp;rsquo;t come alone. There are seven vulnerabilities in total (CVE-2026-6682 through -6688), and three of them have code-execution potential:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;CVE&lt;/th&gt;
&lt;th&gt;Short description&lt;/th&gt;
&lt;th&gt;Impact&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;6682&lt;/strong&gt; ⭐&lt;/td&gt;
&lt;td&gt;Integer overflow on FAT32 mount&lt;/td&gt;
&lt;td&gt;Code execution (RCE), CVSS 7.6&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;6683&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Division by zero (exFAT)&lt;/td&gt;
&lt;td&gt;Crash / denial of service&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;6684&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Infinite loop on partition scan&lt;/td&gt;
&lt;td&gt;Device hangs on mount&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;6685&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Integer underflow in cache&lt;/td&gt;
&lt;td&gt;Silent data corruption&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;6686&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Uninitialized memory after seek&lt;/td&gt;
&lt;td&gt;Old, deleted data readable&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;6687&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Stack overflow via exFAT label&lt;/td&gt;
&lt;td&gt;Code execution (esp. STM32)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;6688&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Overflow via long filename&lt;/td&gt;
&lt;td&gt;Code execution&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The common denominator across all seven: FatFs &lt;strong&gt;blindly trusts&lt;/strong&gt; the metadata on the storage medium – file size, label length, partition count – and does its math with it without ever checking whether the values are even plausible.&lt;/p&gt;
&lt;h2 id="how-big-is-the-blast-radius"&gt;How big is the blast radius?
&lt;/h2&gt;&lt;p&gt;Now the key question: does this even affect me?&lt;/p&gt;
&lt;p&gt;Among the affected projects is &lt;strong&gt;Espressif&amp;rsquo;s ESP-IDF&lt;/strong&gt; – the development foundation for the famous &lt;strong&gt;ESP32 chips&lt;/strong&gt;. And if you know my channel, you know these chips are &lt;em&gt;everywhere&lt;/em&gt;. In &lt;strong&gt;ESPHome&lt;/strong&gt; devices, in &lt;strong&gt;Shellys&lt;/strong&gt;, in countless hobby projects – but also in masses of commercial off-the-shelf products. I&amp;rsquo;ve already made &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/09/14/esphome-security-vulnerability-critical-cve-affects-all-esp32-devices-live-hack-demonstrates-the-problem/" &gt;several videos about ESP security flaws&lt;/a&gt;, and it just doesn&amp;rsquo;t stop.&lt;/p&gt;
&lt;p&gt;The researchers verified &lt;strong&gt;17 concrete projects&lt;/strong&gt; that contain vulnerable FatFs code:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;espressif/esp-idf&lt;/strong&gt; (ESP32) – the basis of ESPHome, Tasmota, Shelly &amp;amp; co.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;STM32Cube&lt;/strong&gt; – in countless industrial and consumer devices&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zephyr RTOS&lt;/strong&gt; and &lt;strong&gt;MicroPython&lt;/strong&gt; – growing IoT platforms&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ArduPilot&lt;/strong&gt; – flight control for drones&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Keystone3&lt;/strong&gt; – a hardware crypto wallet (this is about real money)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Samsung TizenRT&lt;/strong&gt;, RT-Thread, Mbed, RIOT, NodeMCU and more&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Explicitly named as an attack target: &lt;strong&gt;security cameras with an SD card slot&lt;/strong&gt;. Exactly the kind of camera many of us have hanging by the front door, in the garage, or in the stairwell.&lt;/p&gt;
&lt;p&gt;And here&amp;rsquo;s the truly insidious part: you can&amp;rsquo;t even easily check whether your specific device is affected. Because which manufacturer writes on the box which filesystem driver they&amp;rsquo;ve buried deep in their firmware? Nobody does. So the honest rule of thumb is: &lt;strong&gt;if you own an embedded device with an SD card or USB slot, assume in case of doubt that it could be affected.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="the-real-twist-an-ai-found-the-flaws"&gt;The real twist: an AI found the flaws
&lt;/h2&gt;&lt;p&gt;Now comes the part that made me want to do this video in the first place. Because &lt;em&gt;how&lt;/em&gt; these flaws were found is almost more interesting than the flaws themselves.&lt;/p&gt;
&lt;p&gt;These same researchers had already looked at FatFs once before – back in &lt;strong&gt;2017&lt;/strong&gt;. Back then they combed through the code by hand with human experts and fuzzed it for days. The result: a few minor bugs. Nothing earth-shattering.&lt;/p&gt;
&lt;p&gt;Now, in early 2026 – almost ten years later – they look at the same code again. But this time with a new helper: &lt;strong&gt;GitHub Copilot&lt;/strong&gt;, an AI coding assistant of the kind developers now use by the millions every day. No specialized attack framework, no elaborate fuzzing pipeline. The plain default mode in VS Code, with a few simple prompts.&lt;/p&gt;
&lt;p&gt;And suddenly out tumbled flaws that &lt;strong&gt;nobody had seen in 2017 – even though the vulnerable code already existed back then.&lt;/strong&gt; An off-the-shelf AI with a few simple prompts uncovered it within days.&lt;/p&gt;
&lt;p&gt;The researchers&amp;rsquo; sentence that gave me goosebumps:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;If we can uncover issues like these through the thoughtful use of AI-assisted vulnerability research, then just about anyone else can too.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;And that is the real story. Here it&amp;rsquo;s the good guys who used the tool – and who reported their findings responsibly. But we have to assume that just as many others are doing the exact same thing right now. And they most certainly don&amp;rsquo;t publish their findings.&lt;/p&gt;
&lt;p&gt;The barrier to finding flaws in the &amp;ldquo;long tail&amp;rdquo; of old, long-overlooked code has just &lt;strong&gt;collapsed&lt;/strong&gt;. For defenders and attackers alike.&lt;/p&gt;
&lt;h2 id="the-second-shock-theres-no-patch"&gt;The second shock: there&amp;rsquo;s no patch
&lt;/h2&gt;&lt;p&gt;&amp;ldquo;Alright,&amp;rdquo; you might think, &amp;ldquo;then an update will come and it&amp;rsquo;s sorted.&amp;rdquo; And that&amp;rsquo;s exactly where the next problem lies.&lt;/p&gt;
&lt;p&gt;Remember the one-man project? The researchers contacted the maintainer back &lt;strong&gt;in March 2026&lt;/strong&gt;, several times since. They even brought in &lt;strong&gt;JPCERT/CC&lt;/strong&gt; – Japan&amp;rsquo;s coordination center for security vulnerabilities. The response to date: &lt;strong&gt;radio silence.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;That means there&amp;rsquo;s no central patch to simply roll out. &lt;strong&gt;Every single project&lt;/strong&gt; that builds on FatFs – ESP-IDF, Zephyr, STM32Cube, MicroPython and all the rest – now has to find the flaws itself, fix them itself, and then ship the updates to its own devices. And the manufacturers of those devices in turn have to follow suit.&lt;/p&gt;
&lt;p&gt;The researchers therefore estimate the window until widespread remediation in &lt;strong&gt;years, not days or weeks&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="staying-honest-the-physical-access-fallacy"&gt;Staying honest: the &amp;ldquo;physical access&amp;rdquo; fallacy
&lt;/h2&gt;&lt;p&gt;And now let&amp;rsquo;s take a breath. Because here comes the part many sensational headlines leave out – and where most people make a thinking error.&lt;/p&gt;
&lt;p&gt;This attack requires &lt;strong&gt;physical access&lt;/strong&gt;. The manipulated card or stick actually has to be plugged into the device. This is explicitly &lt;strong&gt;not&lt;/strong&gt; the &amp;ldquo;a hacker breaks into your camera from the internet tonight&amp;rdquo; scenario. If a device sits safely in your home and no stranger can reach it, such a jailbreak isn&amp;rsquo;t a catastrophe.&lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s even a fair objection I keep reading in the comments on other reports: for &amp;ldquo;locked-down&amp;rdquo; devices you own yourself, being able to jailbreak them via USB is arguably more of a &lt;strong&gt;feature&lt;/strong&gt; than a threat. There&amp;rsquo;s something to that.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But&lt;/strong&gt; – and here&amp;rsquo;s the thinking error – there very much are situations where this hits you hard:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Used devices.&lt;/strong&gt; You buy a camera or hobby device secondhand and don&amp;rsquo;t know what&amp;rsquo;s on the included memory card.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cameras in accessible spots.&lt;/strong&gt; Doorbell, garage, stairwell, office building – anywhere someone could quickly swap an SD card.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The unattended moment.&lt;/strong&gt; A cleaner, a technician, a visitor. A few seconds of physical access is enough. In security this is called &amp;ldquo;evil maid&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The supply chain.&lt;/strong&gt; Rigged storage media that arrive already manipulated.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;So this isn&amp;rsquo;t an apocalyptic scenario. It&amp;rsquo;s about &lt;strong&gt;realistically assessing your own threat model&lt;/strong&gt; – instead of panicking or reflexively dismissing the whole thing.&lt;/p&gt;
&lt;h2 id="your-smart-home-survival-tips"&gt;Your smart home survival tips
&lt;/h2&gt;&lt;p&gt;You can barely verify whether a device is affected. But you&amp;rsquo;re not powerless:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Install updates.&lt;/strong&gt; I say it in every other video – but that&amp;rsquo;s exactly what updates are for. As soon as Espressif, ESPHome or your camera manufacturer follows up: install, don&amp;rsquo;t dismiss.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Think about which devices strangers can reach.&lt;/strong&gt; Not every device is equally exposed. The camera on the outside wall is a different risk than the sensor in your living room.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Always reset and reflash used devices&lt;/strong&gt; before letting them into your network. You never know what the previous owner left on them.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="the-real-lesson"&gt;The real lesson
&lt;/h2&gt;&lt;p&gt;In the end, this one flaw isn&amp;rsquo;t the big story. FatFs will get fixed, sooner or later. The real lesson is a different one:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;AI has driven the cost of finding bugs like these to near zero.&lt;/strong&gt; Code that flew under the radar for ten years is now uncovered in days – by off-the-shelf tools anyone can use. That&amp;rsquo;s good news when the good guys are faster. And unsettling news when they&amp;rsquo;re not.&lt;/p&gt;
&lt;p&gt;Over the coming years we&amp;rsquo;ll see &lt;strong&gt;a lot more&lt;/strong&gt; reports like this. That&amp;rsquo;s exactly why this video mattered so much to me.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="sources--further-reading"&gt;Sources &amp;amp; further reading
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;runZero – original report:&lt;/strong&gt; &lt;a class="link" href="https://www.runzero.com/blog/fatfs-bugs/" target="_blank" rel="noopener"
&gt;Seven FatFs bugs, one very large blast radius&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;runZero – research repo with PoC &amp;amp; details:&lt;/strong&gt; &lt;a class="link" href="https://github.com/runZeroInc/vulns-2026-fatfs-chance" target="_blank" rel="noopener"
&gt;vulns-2026-fatfs-chance&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Risky Business:&lt;/strong&gt; &lt;a class="link" href="https://news.risky.biz/risky-bulletin-fatfs-bugs-enable-physical-access-attacks-on-a-load-of-devices/" target="_blank" rel="noopener"
&gt;FatFs bugs enable physical access attacks on a load of devices&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;FatFs – official project page:&lt;/strong&gt; &lt;a class="link" href="http://elm-chan.org/fsw/ff/00index_e.html" target="_blank" rel="noopener"
&gt;elm-chan.org/fsw/ff&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="more-on-the-blog"&gt;More on the blog
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/09/14/esphome-security-vulnerability-critical-cve-affects-all-esp32-devices-live-hack-demonstrates-the-problem/" &gt;ESPHome security flaw: critical CVE hits all ESP32 devices&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;Do you find AI hunting for security flaws more reassuring or more unsettling?&lt;/strong&gt; Let me know in the comments – I&amp;rsquo;m curious about your take.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>From EASY to NERD: 3 Smart Home Devices Nobody Knows</title><link>https://smarthome-aber-sicher.de/en/blog/2026/06/25/quirky-smarthome-devices/</link><pubDate>Thu, 25 Jun 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/06/25/quirky-smarthome-devices/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/06/25/quirky-smarthome-devices/cover.jpeg" alt="Featured image of post From EASY to NERD: 3 Smart Home Devices Nobody Knows" /&gt;&lt;p&gt;&amp;ldquo;You always go just a little bit further than everyone else.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;A friend said that to me recently. We were talking about smart home setups — who has what, who&amp;rsquo;s planning what — and at some point he just dropped that sentence. Not as criticism. More like an observation.&lt;/p&gt;
&lt;p&gt;And he&amp;rsquo;s right. I don&amp;rsquo;t just buy something. I google whether I could build it myself first. And if I end up buying it anyway, I check whether I can hack it.&lt;/p&gt;
&lt;p&gt;The video this article accompanies is a kind of inventory of that tendency. Three devices I actually use every day. One I had shipped to me. One I took apart eight years ago and never fully closed back up. And one I soldered myself.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/dcLsb_bmUXU?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_15659908110868747765_hu_f56f04a98349bd16.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="the-countertop-dishwasher-i-didnt-know-existed"&gt;The countertop dishwasher I didn&amp;rsquo;t know existed
&lt;/h2&gt;&lt;p&gt;The Blitzhome BH-CDW1 was sent to me by the manufacturer. And that&amp;rsquo;s honestly exactly why I know about it — because I would never have searched for it myself. I didn&amp;rsquo;t even know this product category existed.&lt;/p&gt;
&lt;p&gt;A dishwasher the size of a large microwave. No fixed water connection required. Fits dishes for two to three people. And in the smart version — the BH-CDW1, about ten euros more than the base model — you also get Wi-Fi, an app, and a remaining time display.&lt;/p&gt;
&lt;p&gt;I live alone. I didn&amp;rsquo;t have a dishwasher before because fitting one in my rented flat felt like too much hassle. This thing changed my mind. It&amp;rsquo;s quiet, fast, and I put it on the kitchen counter. No plumber, no burst pipes, no stress.&lt;/p&gt;
&lt;p&gt;Smart home? Sort of, yes. But the real point is different: it&amp;rsquo;s the only one of the three devices you can just go out and buy. Which is exactly why it comes first.&lt;/p&gt;
&lt;p&gt;Available on Amazon:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4vGeJ5G" target="_blank" rel="noopener"
&gt;Blitzhome BH-CDW (standard)&lt;/a&gt; (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4vpFbR2" target="_blank" rel="noopener"
&gt;Blitzhome BH-CDW1 (smart version with app)&lt;/a&gt; (affiliate link)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Disclosure: This device was provided to me free of charge by the manufacturer. The review reflects my own opinion.&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="the-range-hood-i-havent-touched-since-2017"&gt;The range hood I haven&amp;rsquo;t touched since 2017
&lt;/h2&gt;&lt;p&gt;Now it gets more personal.&lt;/p&gt;
&lt;p&gt;I have a problem with my range hood. Not technical — human. I forget to turn it off. On low speed it&amp;rsquo;s so quiet it disappears from my awareness entirely. I cook, I eat, I walk to the living room — and the hood keeps running silently.&lt;/p&gt;
&lt;p&gt;By 2017 I&amp;rsquo;d had enough. I&amp;rsquo;d just started working with ESP8266 modules. I thought: there has to be a way.&lt;/p&gt;
&lt;p&gt;The hood is a Sombra model by Gutmann. A normal device, nothing special — except for one thing: the front panel with its buttons and LEDs communicates with the control unit via a completely standard network cable. RJ45 connector. Standard cable. I simply tapped my ESP8266 in between.&lt;/p&gt;
&lt;p&gt;The chip listens to the lines via hardware interrupt — a matrix controller running at 1000 Hz. Every button press, every LED change. And it can simulate button presses itself. Without the hood ever noticing.&lt;/p&gt;
&lt;p&gt;The first test was — let&amp;rsquo;s call it memorable. I had everything wired up, powered it on, and then a relay clicked. And nothing worked anymore. No lights, no response, the hood completely dead.&lt;/p&gt;
&lt;p&gt;I went to the basement, pulled the fuse, waited a minute. Restarted. Everything came back — thank god, nothing was broken.&lt;/p&gt;
&lt;p&gt;What had really worried me: the manufacturer Gutmann no longer exists. Bankrupt for years. No spare parts, no customer service. If I&amp;rsquo;d fried the control unit, the device would have been scrap. Irreplaceable.&lt;/p&gt;
&lt;p&gt;Since then the hood has run for eight years without a single intervention. In Home Assistant I can see the light state, the fan speed from 0 to 4, schedule it with a timer — and I get a notification when the grease filter needs cleaning. I reset the filter reminder directly from HA.&lt;/p&gt;
&lt;p&gt;This isn&amp;rsquo;t ESPHome. It&amp;rsquo;s a manual Arduino project, compiled in VS Code, because the timing is too critical for ESPHome. Not pretty. But stable.&lt;/p&gt;
&lt;p&gt;The full build writeup from back then: &lt;a class="link" href="https://joachim-wilke.de/blog/2017/12/27/do-it-yourself-iot-modul-fur-die-dunstabzugshaube/" target="_blank" rel="noopener"
&gt;DIY IoT module for the range hood&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="the-plant-sensor-you-cant-buy-anywhere"&gt;The plant sensor you can&amp;rsquo;t buy anywhere
&lt;/h2&gt;&lt;p&gt;I stumbled across the b-parasite project on GitHub completely by accident. No company behind it, no web shop, no support. Someone designed a PCB, published the files, and the community ran with it.&lt;/p&gt;
&lt;p&gt;I knew immediately: I want this.&lt;/p&gt;
&lt;p&gt;You order the bare PCB from the manufacturer of your choice. You solder it yourself — an ESP8266 and a CR2032 battery holder are the most expensive components. You end up at around ten euros per sensor. Commercial plant sensors start at €20, €30 — and do half as much.&lt;/p&gt;
&lt;p&gt;The sensor sits in the soil and measures moisture. It broadcasts over Bluetooth Low Energy — not directly to Home Assistant, that would be too far — but to my Shellys, which act as BLE gateways. The Shellys forward the data. In HA I can see the current moisture level for every houseplant.&lt;/p&gt;
&lt;p&gt;I soldered ten of them.&lt;/p&gt;
&lt;p&gt;The most practical thing about it: when I&amp;rsquo;m on holiday and a plant is about to die, HA sends me a notification. I message my neighbour. She comes over. Not based on gut feeling, not based on a calendar — exactly when it&amp;rsquo;s needed.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="easy-diy-nerd--and-that-extra-bit-further"&gt;EASY, DIY, NERD — and that extra bit further
&lt;/h2&gt;&lt;p&gt;Three devices. A countertop dishwasher off the shelf. A range hood that&amp;rsquo;s been hacked for eight years. Hand-soldered plant sensors.&lt;/p&gt;
&lt;p&gt;What they have in common: nobody in my circle of friends has any of them. And all three solve problems that nothing off the shelf solves.&lt;/p&gt;
&lt;p&gt;My friend is right. I always go a little bit further. But that&amp;rsquo;s exactly what keeps smart home interesting for me.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What&amp;rsquo;s your quirkiest smart home device?&lt;/strong&gt; Self-built, discovered by accident, or just absurdly practical — write it in the comments.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Shelly Installation: 5 Mistakes Almost Everyone Makes</title><link>https://smarthome-aber-sicher.de/en/blog/2026/06/18/shelly-5-fehler/</link><pubDate>Thu, 18 Jun 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/06/18/shelly-5-fehler/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/06/18/shelly-5-fehler/cover.jpeg" alt="Featured image of post Shelly Installation: 5 Mistakes Almost Everyone Makes" /&gt;&lt;p&gt;Shellys are small, affordable, and powerful. And yet the same mistakes come up again and again during installation – some just annoying, some genuinely dangerous. Here are the five I see most often.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/CXT4IFP6TQE?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_14878402247182683053_hu_ed61ddc40a0e9903.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;hr&gt;
&lt;h2 id="mistake-1-no-neutral-wire--installed-anyway"&gt;Mistake 1: No Neutral Wire – Installed Anyway
&lt;/h2&gt;&lt;p&gt;Many older installations in Germany have no neutral wire in the switch box – normally the blue wire, sometimes grey in older setups. Instead, you only find the live and switch wires.&lt;/p&gt;
&lt;p&gt;Some Shelly models offer a &amp;ldquo;No-Neutral&amp;rdquo; mode. Sounds tempting – and it works in many cases. The problem: in No-Neutral mode, a small residual current always flows through the load. Whether this causes flickering or simply doesn&amp;rsquo;t work at all depends on the LED driver. Shelly specifies minimum load values – many modern, highly efficient LEDs fall below them. The mistake isn&amp;rsquo;t No-Neutral itself, it&amp;rsquo;s installing without testing first.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What helps:&lt;/strong&gt; First check whether a neutral wire is available in a cable duct or distribution board – it&amp;rsquo;s often there, just not routed to the switch box. If there really isn&amp;rsquo;t one: choose a Shelly model that explicitly supports No-Neutral, install it, test it – and only then put the switch cover on.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dangerous edge case:&lt;/strong&gt; Some people, lacking a neutral wire, reach for the green-yellow protective earth as a return path. This is life-threatening. The protective earth is not a neutral wire substitute – misusing it can put the housing of connected devices under voltage.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="mistake-2-too-little-space--the-hot-box"&gt;Mistake 2: Too Little Space – The Hot Box
&lt;/h2&gt;&lt;p&gt;Shellys are small. But not so small that they fit effortlessly into every flush-mount box – especially when there&amp;rsquo;s already a light switch and several cables in there.&lt;/p&gt;
&lt;p&gt;The symptom: the box gets warm. That&amp;rsquo;s heat with nowhere to go because the Shelly is squeezed in. Shellys have a built-in temperature limit – when it gets too hot they shut off automatically. That sounds like a safety feature, but it&amp;rsquo;s a sign something is fundamentally wrong.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What helps:&lt;/strong&gt; Check before installing whether the space is genuinely sufficient. Don&amp;rsquo;t squeeze, don&amp;rsquo;t bend. If in doubt, have a deeper box fitted. Also: in the Shelly settings there&amp;rsquo;s an &lt;strong&gt;Eco Mode&lt;/strong&gt; (Web UI → Settings → WiFi → Eco Mode) that reduces Wi-Fi transmit power when idle, which also lowers self-heating. I enable it as a matter of course.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="mistake-3-wrong-tools--nicked-wires"&gt;Mistake 3: Wrong Tools – Nicked Wires
&lt;/h2&gt;&lt;p&gt;Side cutters along the side of the cable – almost everyone does it. The outer sheath comes off, looks tidy. Until you look more closely: a nick in the wire insulation is almost inevitable this way. Sometimes just a small scratch. You can barely see it – but under load or over time, that&amp;rsquo;s exactly what can cause a short circuit or insulation failure.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What helps:&lt;/strong&gt; Two tools solve this permanently:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cable stripping tool&lt;/strong&gt; (I use the &lt;a class="link" href="https://amzn.to/4dq8aO7" target="_blank" rel="noopener"
&gt;Knipex ErgoStrip&lt;/a&gt;&lt;em&gt;, also at &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F2926186%2Fknipex-ergostrip-universal-abmantelungswerkzeug" target="_blank" rel="noopener"
&gt;OBI&lt;/a&gt;&lt;/em&gt;): One rotation around the cable and the outer sheath is cleanly separated – without touching the wires.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Self-adjusting wire stripper&lt;/strong&gt; (&lt;a class="link" href="https://amzn.to/3RoPztg" target="_blank" rel="noopener"
&gt;Knipex PreciStrip&lt;/a&gt;&lt;em&gt;, also at &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F2926202%2Fknipex-automatische-abisolierzange-180-mm" target="_blank" rel="noopener"
&gt;OBI&lt;/a&gt;&lt;/em&gt;): Detects the wire cross-section automatically, cuts only the insulation, no nicked copper.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Once you&amp;rsquo;ve tried them, you&amp;rsquo;ll never reach for side cutters again.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="mistake-4-bad-connections"&gt;Mistake 4: Bad Connections
&lt;/h2&gt;&lt;p&gt;The right tools alone aren&amp;rsquo;t enough – there are three typical mistakes when making the actual connection:&lt;/p&gt;
&lt;h3 id="wrong-strip-length"&gt;Wrong Strip Length
&lt;/h3&gt;&lt;p&gt;Too short: the terminal barely grips the copper, contact resistance increases, the connection runs hot. Too long: bare copper protrudes beyond the terminal – short circuit risk to the neighbouring terminal.&lt;/p&gt;
&lt;p&gt;The correct length is in the manual for your Shelly model – usually &lt;strong&gt;6–7 mm&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="clamping-stranded-wire-directly"&gt;Clamping Stranded Wire Directly
&lt;/h3&gt;&lt;p&gt;Anyone working with extensions or flexible cables is dealing with stranded wire. Clamping stranded wire directly into a screw terminal is a fire hazard: the individual strands bend, oxidise, and the connection deteriorates over time.&lt;/p&gt;
&lt;h3 id="tinning-stranded-wire--sounds-good-is-wrong"&gt;Tinning Stranded Wire – Sounds Good, Is Wrong
&lt;/h3&gt;&lt;p&gt;Tinning stranded wire before clamping it sounds like a good idea. It isn&amp;rsquo;t. Solder deforms under sustained clamping pressure – this is called cold creep. The connection that felt solid at installation will work loose over time. It&amp;rsquo;s not a question of whether, but when.&lt;/p&gt;
&lt;h3 id="the-right-solution-ferrules"&gt;The Right Solution: Ferrules
&lt;/h3&gt;&lt;p&gt;The solution is the &lt;strong&gt;ferrule&lt;/strong&gt; – a small metal sleeve you slide over the stripped stranded wire and crimp with a ferrule crimping tool. Once crimped, it behaves like solid wire in the terminal. The &lt;a class="link" href="https://amzn.to/3RnqpLE" target="_blank" rel="noopener"
&gt;Knipex ferrule crimper&lt;/a&gt;* (also at &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F2954519%2Fknipex-crimpzange-fuer-aderendhuelsen-mit-kunststoff-ueberzogen-180-mm" target="_blank" rel="noopener"
&gt;OBI&lt;/a&gt;*) makes this quick and precise.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="mistake-5-working-live"&gt;Mistake 5: Working Live
&lt;/h2&gt;&lt;p&gt;Before you do anything at a flush-mount box, there are five safety rules for working on 230-volt mains: isolate, secure against re-energisation, verify absence of voltage, cover adjacent live parts, obtain clearance.&lt;/p&gt;
&lt;p&gt;Do you know them by heart? If not, that&amp;rsquo;s not a criticism – but it&amp;rsquo;s a clear signal: this work belongs in professional hands. Section 13 of the German Low Voltage Connection Regulation (NAV) states exactly that: work on 230-volt mains may generally only be carried out by registered qualified electricians. This video and this article help you understand the principles and prepare yourself as well as possible – but the actual work belongs with a professional.&lt;/p&gt;
&lt;p&gt;All five rules with explanations, the right test equipment and the typical traps in the wall box are collected on a separate page: &lt;a class="link" href="https://smarthome-aber-sicher.de/en/working-safely-with-mains-voltage/" &gt;Working safely with mains voltage&lt;/a&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="want-shelly-or-home-assistant-installed-professionally"&gt;Want Shelly or Home Assistant Installed Professionally?
&lt;/h2&gt;&lt;p&gt;&lt;em&gt;This section is a paid collaboration with Gerlach Smart Solutions.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Anyone who&amp;rsquo;d rather hand off the installation usually runs into two problems: most electricians don&amp;rsquo;t know Shelly and tend to recommend expensive proprietary systems instead. And even when someone does install Shelly, the service typically ends with the last screw – automations and setup are left to you. Because anyone who wants to use Shelly or Home Assistant professionally needs more than individual devices: a solution that fits the electrical installation, the building, and the desired functions – and is properly installed, configured, and commissioned afterwards.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a class="link" href="https://gerlach-smart-solutions.de/pages/contact?utm_source=youtube&amp;amp;utm_medium=sponsoring&amp;amp;utm_campaign=smarthome_aber_sicher&amp;amp;utm_content=shelly_fehler_video" target="_blank" rel="noopener"
&gt;Gerlach Smart Solutions&lt;/a&gt;&lt;/strong&gt; does exactly that. Benjamin Gerlach is a master electrician and DEKRA-certified expert, specialised in open systems like Shelly and Home Assistant. The focus is on retrofitting existing buildings – roller shutters, lighting circuits, energy monitoring, PV surplus use – as well as well-thought-out smart home solutions in new builds. The service is a complete package: free initial assessment, selection of appropriate components, professional installation by qualified electricians – followed by setup, optimisation, remote maintenance, and programming of scenes, schedules, and automations. From planning to a finished, everyday-ready smart home, nationwide across Germany.&lt;/p&gt;
&lt;p&gt;If you want to install yourself but aren&amp;rsquo;t yet sure about product selection, planning, or preparation: Gerlach also offers consultancy. And if you&amp;rsquo;re using your own electrician, you can request a complete planning document as a basis.&lt;/p&gt;
&lt;p&gt;You remain in full control of your own system. No cloud lock-in, no dependency on the service provider for every small change.&lt;/p&gt;
&lt;p&gt;👉 &lt;a class="link" href="https://gerlach-smart-solutions.de/pages/contact?utm_source=youtube&amp;amp;utm_medium=sponsoring&amp;amp;utm_campaign=smarthome_aber_sicher&amp;amp;utm_content=shelly_fehler_video" target="_blank" rel="noopener"
&gt;Request a free initial assessment&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Use code &lt;strong&gt;SICHER25&lt;/strong&gt; to save €25 on a subsequent installation booking.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="summary"&gt;Summary
&lt;/h2&gt;&lt;p&gt;Five mistakes, all avoidable. Check the neutral wire situation beforehand. Verify that the space is sufficient. Use the right tools. Connect properly: observe the correct strip length, always use ferrules with stranded wire, never tin it. And never work at a flush-mount box without properly isolating the circuit first.&lt;/p&gt;
&lt;p&gt;Have you made any of these mistakes yourself – or do you know other Shelly pitfalls? Let me know in the comments under the video.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;* Affiliate links (Amazon &amp;amp; OBI/Awin). As a partner I earn from qualifying purchases. No additional cost to you.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Thermal Imaging in the Smart Home: 5 Use Cases</title><link>https://smarthome-aber-sicher.de/en/blog/2026/06/11/thermalmaster-p3/</link><pubDate>Thu, 11 Jun 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/06/11/thermalmaster-p3/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/06/11/thermalmaster-p3/cover.jpg" alt="Featured image of post Thermal Imaging in the Smart Home: 5 Use Cases" /&gt;&lt;p&gt;A thermal imaging camera sounds like professional gear for thermographers or energy consultants. But as a smart home enthusiast, I use one for all kinds of things: checking electrics, finding hotspots in devices, inspecting my solar array – and making problems visible that all my sensors in Home Assistant simply cannot detect.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Transparency: The Thermal Master P3 was provided to me free of charge by the manufacturer – with no conditions on the content. (Ad)&lt;/em&gt;&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/cIzYSqcCcbw?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_3718416289628370459_hu_1b2cac3dca865f38.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;hr&gt;
&lt;h2 id="what-a-thermal-image-actually-shows"&gt;What a thermal image actually shows
&lt;/h2&gt;&lt;p&gt;The color gradient from blue to red shows temperature differences – but &lt;strong&gt;relatively&lt;/strong&gt;: the coldest spot in the image is always blue, the warmest always red, whether we&amp;rsquo;re talking 20 or 80 degrees. For context, the camera displays the warmest and coldest spot as absolute readings, plus the exact temperature at the center of the image.&lt;/p&gt;
&lt;p&gt;One detail shows how sensitive it is: the imprint of my hand on the desk was still visible seconds later – from body heat alone.&lt;/p&gt;
&lt;p&gt;The Thermal Master P3 offers a resolution of 512×384, a focus ring for close-up and distance shots, and a dual-image mode that overlays the thermal and the visual image.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="use-case-1-checking-shelly-flush-mounted-boxes"&gt;Use case 1: Checking Shelly flush-mounted boxes
&lt;/h2&gt;&lt;p&gt;Behind one of my light switches sits a Shelly 1 Plus for the underfloor heating. From the outside everything looks normal – but the thermal image shows 25 degrees on the outside of the box, with an ambient temperature of 21 degrees. Inside it&amp;rsquo;s definitely more – otherwise nothing would be measurable outside.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s not dramatic – but &lt;strong&gt;Eco Mode&lt;/strong&gt; makes the difference visible: it throttles the Wi-Fi chip during idle periods, and the outside temperature drops to 23 degrees. Less heat means less power consumption and, above all, slower aging of the electronics. I&amp;rsquo;ve personally &lt;a class="link" href="https://smarthome-aber-sicher.de/repair-shelly" &gt;repaired Shellys with failed capacitors&lt;/a&gt; before. What goes wrong during installation – from too little space in the box to the wrong tools – I cover in a separate article: &lt;a class="link" href="https://smarthome-aber-sicher.de/shelly-5-fehler" &gt;5 mistakes almost everyone makes when installing Shelly&lt;/a&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="use-case-2-exposing-standby-power-hogs"&gt;Use case 2: Exposing standby power hogs
&lt;/h2&gt;&lt;p&gt;In the thermal image: a box, clearly warmer than its surroundings. In the visual image: my Sonos Play One – &lt;strong&gt;3.8 watts in standby&lt;/strong&gt;, officially stated by Sonos.&lt;/p&gt;
&lt;p&gt;For comparison: in 2010 the EU mandated that household devices may draw a maximum of 1 watt in standby. The Play One launched in 2013, but as an audio device with active network standby it falls under an exemption – a loophole Sonos is happy to use.&lt;/p&gt;
&lt;p&gt;With five of them in my home, that means 20 watts around the clock: &lt;strong&gt;175 kWh per year, roughly 50 euros&lt;/strong&gt; – just for standby. I now deliberately disconnect them from the mains.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="use-case-3-comparing-thermal-design--raspberry-pi-vs-zimaboard"&gt;Use case 3: Comparing thermal design – Raspberry Pi vs. Zimaboard
&lt;/h2&gt;&lt;p&gt;On a Raspberry Pi 4 under load you immediately see chips and voltage regulators heating up in concentrated spots – the heat piles up at individual points. Small stick-on heat sinks barely make a measurable difference.&lt;/p&gt;
&lt;p&gt;The &lt;a class="link" href="https://smarthome-aber-sicher.de/zimaboard2-migration" &gt;Zimaboard 2&lt;/a&gt; with its massive aluminum case shows the opposite: no sharp edges in the thermal gradient, no hotspots – the heat spreads evenly across the entire enclosure. The chip isn&amp;rsquo;t any cooler, but the energy is dissipated in a controlled way.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s the real value of the camera: you don&amp;rsquo;t just see &lt;em&gt;whether&lt;/em&gt; something is hot – you see &lt;em&gt;how&lt;/em&gt; a device handles heat.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="use-case-4-checking-the-solar-array-for-hotspots"&gt;Use case 4: Checking the solar array for hotspots
&lt;/h2&gt;&lt;p&gt;A neat effect: solar modules appear &lt;strong&gt;cooler&lt;/strong&gt; than their surroundings in the thermal image – solar cells convert light into electricity rather than heat, and reflect part of the radiation.&lt;/p&gt;
&lt;p&gt;What stands out are &amp;ldquo;blotches&amp;rdquo;: irregular heat patterns on individual modules. That&amp;rsquo;s a warning sign – it could be a cell defect or just dirt. In my case it was harmless (a sun reflection during filming), but the principle holds: otherwise your yield quietly drops without any visible reason from the outside.&lt;/p&gt;
&lt;p&gt;A once-a-year scan of the array – a use case that pays off for every solar owner.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="use-case-5-charging-an-ev-from-an-unknown-schuko-socket"&gt;Use case 5: Charging an EV from an unknown Schuko socket
&lt;/h2&gt;&lt;p&gt;On my road trip to Croatia I charged my EV from a Schuko socket at a vacation rental – an unfamiliar electrical installation of unknown age and dimensioning. Schuko sockets are not designed for continuous full load at 16 amps.&lt;/p&gt;
&lt;p&gt;My approach: start at the mobile wallbox&amp;rsquo;s minimum (6 A), check the thermal image, then step up to 10 A. Wallbox and charging cable visibly warm up – that&amp;rsquo;s just physics. A look straight into the socket (cable briefly unplugged): warm, but well within limits. Continuous charging at 10 A was no problem at this socket.&lt;/p&gt;
&lt;p&gt;Without the camera I would have either charged far too cautiously or simply hoped for the best.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Heat is, in the end, nothing but wasted energy – and a thermal camera makes it visible before any sensor does. For smart home users with their own electrics, a home server, a solar array, or an EV, it&amp;rsquo;s a tool that pays off surprisingly often.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Deal (until June 28 only):&lt;/strong&gt; The Thermal Master P3 is €45 off on &lt;a class="link" href="https://amzn.to/4gd8a5Q" target="_blank" rel="noopener"
&gt;Amazon&lt;/a&gt;* – discount code &lt;code&gt;THERMALCM10&lt;/code&gt;. According to the manufacturer, the best price this year.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;* Links marked with an asterisk are affiliate links. As a partner I earn from qualifying purchases – at no extra cost to you.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Smart Home Time Bombs: Cloud Dies, Device Dies</title><link>https://smarthome-aber-sicher.de/en/blog/2026/06/04/cloud-leichen/</link><pubDate>Thu, 04 Jun 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/06/04/cloud-leichen/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/06/04/cloud-leichen/cover.jpeg" alt="Featured image of post Smart Home Time Bombs: Cloud Dies, Device Dies" /&gt;&lt;p&gt;A video of mine that had barely attracted any attention for months suddenly jumped to over 16,000 views within a few days. I hadn&amp;rsquo;t changed anything. YouTube hadn&amp;rsquo;t pushed it. But on one specific day, someone in a corporate headquarters had pressed a button — and in doing so, switched off a piece of thousands of people&amp;rsquo;s smart homes.&lt;/p&gt;
&lt;p&gt;Bose had shut down the cloud service for SoundTouch.&lt;/p&gt;
&lt;p&gt;And people flooded my channel — angry, stunned, looking for answers.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/Xoty2-D4SqM?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_12329051031779866349_hu_c6751e4774e84ac.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="i-could-just-throw-up"&gt;&amp;ldquo;I could just throw up&amp;rdquo;
&lt;/h2&gt;&lt;p&gt;The comments that poured in over the following days left a real impression on me. Not because they were so aggressive — but because they were so honest.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;Today it was over. Our SoundTouch is dead. Radio too. Never cloud devices again, never Bose again.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;I could just throw up. I&amp;rsquo;ve had several speakers for over 10 years to listen to the radio, and now nothing works. Absolute disgrace.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;6 speakers as multiroom setup. Mega scandal. Never Bose again.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;This is criminal.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;None of these people had fundamentally done anything wrong. They bought expensive brand-name products, took care of them, and used them every single day for years. And then someone in a corporate headquarters decided: this isn&amp;rsquo;t worth it anymore. We&amp;rsquo;re shutting down the servers.&lt;/p&gt;
&lt;p&gt;I don&amp;rsquo;t own a Bose SoundTouch myself. I watched the whole thing from the outside — as someone who had already made a video about exactly this risk. But I know the feeling anyway. From people around me. Over and over again. A friend who wakes up in the morning and his smart plugs no longer respond. An acquaintance whose heating control suddenly goes offline because the manufacturer &amp;ldquo;discontinued the cloud subscription.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;People who bought in good faith. And who bear no responsibility for what happened.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;That&amp;rsquo;s exactly why I made this video. Not to bash Bose. But because the pattern keeps repeating.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="this-is-not-an-isolated-incident-its-a-pattern"&gt;This is not an isolated incident. It&amp;rsquo;s a pattern.
&lt;/h2&gt;&lt;p&gt;Bose wasn&amp;rsquo;t the first. And won&amp;rsquo;t be the last.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Insteon, April 2022:&lt;/strong&gt; Overnight, without any warning, all servers shut down. Around 100,000 users wake up one morning: nothing works anymore. No cloud, no app, no support. The CEO was unreachable.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Wink, May 2020:&lt;/strong&gt; Users were suddenly given a choice — pay a monthly fee or accept shutdown. Less than a week&amp;rsquo;s notice. The packaging had explicitly stated: no subscription fees.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Belkin WeMo, January 2026:&lt;/strong&gt; Announced in July 2025, shut down in January 2026. All devices affected, regardless of age. Only after public pressure was a partial refund offered.&lt;/p&gt;
&lt;p&gt;The pattern is always the same: buy a device. Use it for years. One day an email arrives. Or maybe nothing at all. And suddenly it&amp;rsquo;s over.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you how to spot these time bombs — before you buy, not after.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="my-own-blind-spot"&gt;My own blind spot
&lt;/h2&gt;&lt;p&gt;I&amp;rsquo;ve been sensitive to this issue for a long time. My entire smart home runs locally — no external server, no cloud dependency. Switching to Home Assistant was the moment I understood that I genuinely wanted to be in control of my smart home.&lt;/p&gt;
&lt;p&gt;But honestly, I still have a blind spot: my Shark robot vacuum.&lt;/p&gt;
&lt;p&gt;It runs on the Shark cloud. And I know exactly what that means. At some point an app update, a server shutdown, or a corporate acquisition could cause my Home Assistant integration to simply stop working. I know this. And I haven&amp;rsquo;t changed it yet.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s my deliberate compromise. And that&amp;rsquo;s the difference: you can use cloud devices. But you should &lt;em&gt;know&lt;/em&gt; that you&amp;rsquo;re doing so.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Whether your devices are at risk — and how to find out quickly — is what I explain in the video.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="whats-really-at-stake"&gt;What&amp;rsquo;s really at stake
&lt;/h2&gt;&lt;p&gt;The Bose story didn&amp;rsquo;t affect me because of the technology. And not because of the money.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s about trust.&lt;/p&gt;
&lt;p&gt;The trust that a product will work tomorrow just as it does today. That I can tell a friend, three years from now, whose smart home setup I helped build: that still works. You&amp;rsquo;re in control of that.&lt;/p&gt;
&lt;p&gt;That trust is the foundation of every smart home. And it&amp;rsquo;s more fragile than most people think.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you four concrete questions to identify risky devices — and three steps you can take starting today to protect yourself.&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="further-reading"&gt;Further reading
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/bose-soundtouch-open-source/" &gt;Bose backtracks – Open Source saves €1,000 speakers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/cloud-vs-lokal/" &gt;Cloud or local? Running smart devices safely&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;Which cloud has already died on you?&lt;/strong&gt; Write it in the comments — I&amp;rsquo;m genuinely curious about your story.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>The €5 IKEA Button's Secret Zigbee Mode – How to Use It</title><link>https://smarthome-aber-sicher.de/en/blog/2026/05/20/ikea-bilresa-zigbee/</link><pubDate>Wed, 20 May 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/05/20/ikea-bilresa-zigbee/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/05/20/ikea-bilresa-zigbee/cover.jpeg" alt="Featured image of post The €5 IKEA Button's Secret Zigbee Mode – How to Use It" /&gt;&lt;p&gt;The packaging says Matter. The IKEA website says Matter. All the marketing: Matter.&lt;/p&gt;
&lt;p&gt;And yet there&amp;rsquo;s Zigbee inside. Complete, functional, usable – and IKEA doesn&amp;rsquo;t say a word about it.&lt;/p&gt;
&lt;h2 id="a-button-for-five-euros"&gt;A button for five euros
&lt;/h2&gt;&lt;p&gt;In late 2025, IKEA added two new remotes to their lineup under the &lt;strong&gt;Bilresa&lt;/strong&gt; name. The &lt;strong&gt;E2489&lt;/strong&gt; with two buttons – up and down – and the &lt;strong&gt;E2490&lt;/strong&gt; with a scroll wheel and an additional button. Both cost around five euros. Both run on two AAA batteries. And both say: Matter.&lt;/p&gt;
&lt;p&gt;Matter over Thread, to be precise. Which means: without a Thread Border Router – like an Apple TV, a HomePod mini, or the ZBT-2 for Home Assistant – nothing works out of the box.&lt;/p&gt;
&lt;p&gt;Or does it?&lt;/p&gt;
&lt;p&gt;Zigbee and Thread share the same radio standard – IEEE 802.15.4 at 2.4 GHz. A single chip can do both; it&amp;rsquo;s just a matter of firmware. IKEA chose to market Thread externally. But for backward compatibility with older IKEA bulbs via Touchlink, the Zigbee stack in the chip is still fully present. And that&amp;rsquo;s exactly what we can use.&lt;/p&gt;
&lt;h2 id="what-this-means--and-why-its-worth-it"&gt;What this means – and why it&amp;rsquo;s worth it
&lt;/h2&gt;&lt;p&gt;For anyone already running a Zigbee network, this is pretty good news. Because the Bilresa costs a fraction of what comparable Zigbee buttons typically cost.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/05/20/ikea-bilresa-zigbee/preisvergleich.png"
width="1920"
height="1080"
srcset="https://smarthome-aber-sicher.de/blog/2026/05/20/ikea-bilresa-zigbee/preisvergleich_hu_d7c6b31ab8abb036.webp 480w, https://smarthome-aber-sicher.de/blog/2026/05/20/ikea-bilresa-zigbee/preisvergleich_hu_ff242604848a8e28.webp 1024w"
loading="lazy"
alt="Price comparison: IKEA Bilresa vs. Philips Hue Dimmer vs. Aqara Mini Switch"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;&lt;/p&gt;
&lt;p&gt;The Bilresa holds its own: two buttons, single click, double click and long press per button – that&amp;rsquo;s six different actions you can freely assign in Home Assistant. AAA batteries instead of CR2032. And of course: no IKEA account, no cloud, everything local.&lt;/p&gt;
&lt;p&gt;The only thing you need is a Zigbee coordinator – which you most likely already have.&lt;/p&gt;
&lt;h2 id="the-honest-warning-first"&gt;The honest warning first
&lt;/h2&gt;&lt;p&gt;I&amp;rsquo;ll say this before anyone ends up disappointed: Zigbee mode is &lt;strong&gt;not officially supported by IKEA&lt;/strong&gt;. It exists as a side effect of Touchlink backward compatibility – not as an intentional feature.&lt;/p&gt;
&lt;p&gt;What that means in practice: while the button is paired in your Zigbee network, it receives &lt;strong&gt;no firmware updates from IKEA&lt;/strong&gt;. Those only come via the Matter/Thread path. That doesn&amp;rsquo;t happen by accident – and if you ever re-pair the button via Matter and install an update in the process, the Zigbee mode could disappear.&lt;/p&gt;
&lt;p&gt;In Zigbee operation itself: no risk. And for five euros, that&amp;rsquo;s a reasonable trade-off.&lt;/p&gt;
&lt;h2 id="pairing-the-button-sequence-ikea-doesnt-document"&gt;Pairing: the button sequence IKEA doesn&amp;rsquo;t document
&lt;/h2&gt;&lt;p&gt;The pairing is the trickiest part of the whole thing. It&amp;rsquo;s not intuitive, and if you don&amp;rsquo;t know the steps, you won&amp;rsquo;t figure it out on your own.&lt;/p&gt;
&lt;p&gt;In brief:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Factory Reset:&lt;/strong&gt; Remove the cover, hold the pairing button for about 10 seconds until the LED pulses amber. Don&amp;rsquo;t let go too early.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Touchlink mode:&lt;/strong&gt; Press the pairing button &lt;strong&gt;4 times quickly&lt;/strong&gt; in a row. The LED flashes amber rapidly.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enable Permit Join&lt;/strong&gt; in Zigbee2MQTT or ZHA.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zigbee mode:&lt;/strong&gt; Press the pairing button &lt;strong&gt;8 times quickly&lt;/strong&gt; in a row. The LEDs go completely dark – that&amp;rsquo;s correct. No visual confirmation.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Your coordinator will now find the button. In Zigbee2MQTT it appears as &lt;em&gt;BILRESA remote control with buttons&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Speed matters. No long pauses between presses, otherwise the button won&amp;rsquo;t recognize the sequence. If it doesn&amp;rsquo;t work the first time: just start over. The video shows the entire process live, including the stumbling blocks I ran into myself.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/opGSYrUdOI0?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_14225973547346993834_hu_259ed4ee6d9e5bbc.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="six-actions-one-decision"&gt;Six actions, one decision
&lt;/h2&gt;&lt;p&gt;What arrives in Zigbee2MQTT after pairing is clean: the E2489 sends single click, double click and long press for each of the two buttons. Six different events you can freely link to automations in Home Assistant.&lt;/p&gt;
&lt;p&gt;One small thing to know in advance: the button waits about one second before sending a single-click event – it needs to check whether a second click follows. That&amp;rsquo;s by design and can&amp;rsquo;t be changed. For turning lights on/off, that&amp;rsquo;s perfectly fine. For time-sensitive use cases like alarms, you should be aware of it.&lt;/p&gt;
&lt;p&gt;For automations in Home Assistant, there are two approaches: with the &lt;code&gt;experimental_event_entities&lt;/code&gt; setting enabled in Zigbee2MQTT, each button gets an action entity you can use to build automations with normal state selection. Alternatively – and without that setting – a direct MQTT topic trigger works just as well. Both approaches are explained in the video.&lt;/p&gt;
&lt;h2 id="zigbee-or-matter--which-is-right-for-when"&gt;Zigbee or Matter – which is right for when?
&lt;/h2&gt;&lt;p&gt;If you&amp;rsquo;re wondering whether to go the official Matter route instead, here&amp;rsquo;s a direct comparison:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/05/20/ikea-bilresa-zigbee/zigbee-vs-matter.png"
width="1920"
height="1080"
srcset="https://smarthome-aber-sicher.de/blog/2026/05/20/ikea-bilresa-zigbee/zigbee-vs-matter_hu_892fb0fa0ed4ce5b.webp 480w, https://smarthome-aber-sicher.de/blog/2026/05/20/ikea-bilresa-zigbee/zigbee-vs-matter_hu_3b5b1fcc8b641631.webp 1024w"
loading="lazy"
alt="Zigbee vs. Matter – comparison for the IKEA Bilresa"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
&gt;&lt;/p&gt;
&lt;p&gt;My take: if you already have a running Zigbee network and the button is only going to work in Home Assistant – go with Zigbee. Faster, more reliable, no additional gateway needed. If you&amp;rsquo;re committed to Matter long-term or running multiple platforms in parallel, the official route is the better choice.&lt;/p&gt;
&lt;h2 id="links-from-the-video"&gt;Links from the video
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://www.ikea.com/de/de/p/bilresa-fernbedienung-smart-30602035/" target="_blank" rel="noopener"
&gt;IKEA Bilresa E2489 (Dual-Button) in the IKEA shop&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.zigbee2mqtt.io/devices/E2489.html" target="_blank" rel="noopener"
&gt;Zigbee2MQTT documentation E2489&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.zigbee2mqtt.io/devices/E2490.html" target="_blank" rel="noopener"
&gt;Zigbee2MQTT documentation E2490 (Scroll-Wheel)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;If you&amp;rsquo;d like to support via Amazon: using &lt;a class="link" href="https://amzn.to/3ZXjXN2" target="_blank" rel="noopener"
&gt;this link&lt;/a&gt; earns me a small commission – regardless of what you buy, the price stays the same for you. Thank you.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Raspberry Pi out, ZimaBoard in – this surprised me</title><link>https://smarthome-aber-sicher.de/en/blog/2026/05/13/zimaboard2-migration/</link><pubDate>Wed, 13 May 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/05/13/zimaboard2-migration/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/05/13/zimaboard2-migration/cover.png" alt="Featured image of post Raspberry Pi out, ZimaBoard in – this surprised me" /&gt;&lt;p&gt;I&amp;rsquo;m not someone who touches a home server when it&amp;rsquo;s running. My Raspberry Pi 4 had been rock-solid for years, handling Home Assistant, MQTT, InfluxDB and a handful of other services – and I was, honestly, content with it. Not excited, but content.&lt;/p&gt;
&lt;p&gt;Then an email arrived from IceWhale.&lt;/p&gt;
&lt;h2 id="a-board-i-hadnt-ordered"&gt;A board I hadn&amp;rsquo;t ordered
&lt;/h2&gt;&lt;p&gt;The pitch came in late March, and unlike most collaboration requests that get my channel name wrong or offer razors to a smart home channel, this one was targeted: &lt;em&gt;You&amp;rsquo;re running a local stack with Home Assistant and MQTT – want to try it on a ZimaBoard 2?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I was skeptical. Not about the board – about myself. Someone who hasn&amp;rsquo;t fundamentally touched their Pi stack in years doesn&amp;rsquo;t just adopt a new platform on a whim. It&amp;rsquo;s work. It&amp;rsquo;s risk. And in the worst case, the smart home is down for days.&lt;/p&gt;
&lt;p&gt;Then I looked at the specs. Then I ran the benchmarks. And then the decision had basically already made itself.&lt;/p&gt;
&lt;h2 id="the-old-setup--what-was-actually-running"&gt;The old setup – what was actually running
&lt;/h2&gt;&lt;p&gt;For years, this was my home server foundation: a &lt;strong&gt;Raspberry Pi 4 with 8 GB RAM&lt;/strong&gt;, Debian on top, and a whole zoo of Docker containers on top of that. Home Assistant, Mosquitto, InfluxDB, Grafana, Paperless-ngx, Zigbee2MQTT, Pihole, DiyHue – all on a single board. For storage, a SATA SSD was attached via a &lt;strong&gt;USB adapter&lt;/strong&gt;, because SD cards for a 24/7 system had felt too risky for a long time.&lt;/p&gt;
&lt;p&gt;The whole thing sat in a 3D-printed case with a 12 cm fan on top. I was genuinely proud of that case back then. It did its job. Quiet too.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/05/13/zimaboard2-migration/infrastruktur.png"
width="2300"
height="1029"
srcset="https://smarthome-aber-sicher.de/blog/2026/05/13/zimaboard2-migration/infrastruktur_hu_159d570641760402.webp 480w, https://smarthome-aber-sicher.de/blog/2026/05/13/zimaboard2-migration/infrastruktur_hu_fec5d809457fd369.webp 1024w"
loading="lazy"
alt="Infrastructure: Raspberry Pi 4 vs ZimaBoard 2"
class="gallery-image"
data-flex-grow="223"
data-flex-basis="536px"
&gt;&lt;/p&gt;
&lt;p&gt;That was my stack – the old Pi setup on the left, what runs now on the right. The video explains the difference better than any description, but the most important change at a glance: instead of everything flat in Docker, the ZimaBoard now runs &lt;strong&gt;Proxmox&lt;/strong&gt;, with a Debian VM for the Docker stack underneath, and two lean LXC containers for Pihole and DiyHue. Cleaner, more flexible, and services no longer step on each other.&lt;/p&gt;
&lt;h2 id="why-the-pi-wasnt-actually-ideal"&gt;Why the Pi wasn&amp;rsquo;t actually ideal
&lt;/h2&gt;&lt;p&gt;Here&amp;rsquo;s what surprised me most – not the new features of the ZimaBoard, but what I&amp;rsquo;d forgotten about my old setup.&lt;/p&gt;
&lt;p&gt;The biggest weak point was storage access. Attaching an SSD via USB sounds harmless, but it costs you: every write operation goes through the USB controller, the CPU has to assist, and &lt;strong&gt;peak latency under load hit 196 ms&lt;/strong&gt;. Those are the small stutters you sometimes feel in Home Assistant – loading the interface, saving an automation, writing to InfluxDB. You get used to it. You start thinking it&amp;rsquo;s normal.&lt;/p&gt;
&lt;p&gt;It isn&amp;rsquo;t.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2026/05/13/zimaboard2-migration/vergleich.png"
width="2008"
height="1058"
srcset="https://smarthome-aber-sicher.de/blog/2026/05/13/zimaboard2-migration/vergleich_hu_7889c2a5bbd1be2c.webp 480w, https://smarthome-aber-sicher.de/blog/2026/05/13/zimaboard2-migration/vergleich_hu_fccee03365f28db.webp 1024w"
loading="lazy"
alt="Benchmark comparison: Raspberry Pi 4 vs ZimaBoard 2"
class="gallery-image"
data-flex-grow="189"
data-flex-basis="455px"
&gt;&lt;/p&gt;
&lt;p&gt;The ZimaBoard has a &lt;strong&gt;native SATA connection&lt;/strong&gt; – no USB detour, no controller overhead. Peak latency in the same test: &lt;strong&gt;46 ms&lt;/strong&gt;. Double the throughput, 76% less latency, and the Intel N100 barely breaks a sweat.&lt;/p&gt;
&lt;p&gt;Power draw increases slightly: from around 8 watts to 12 watts. Four watts more, roughly €10 per year. I think that&amp;rsquo;s a fair trade.&lt;/p&gt;
&lt;h2 id="whats-in-the-video"&gt;What&amp;rsquo;s in the video
&lt;/h2&gt;&lt;p&gt;The full migration – including the snags I ran into along the way – is in the video. I show:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;What migrating a running Docker stack to a new platform actually looks like in practice&lt;/li&gt;
&lt;li&gt;Why Proxmox as a hypervisor makes more sense for a home server than bare Debian&lt;/li&gt;
&lt;li&gt;How to pass a Zigbee USB stick through to a Proxmox VM&lt;/li&gt;
&lt;li&gt;What I&amp;rsquo;d do differently next time – and there is something&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;And at the end I ask a question where I genuinely need your input. The context explains itself in the video.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/dk9sCrhfRbw?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_17667962270911977646_hu_2dd62dc6a2070121.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="try-the-board-yourself"&gt;Try the board yourself
&lt;/h2&gt;&lt;p&gt;If you want to test the ZimaBoard 2 yourself: IceWhale set up a discount code for my channel. With &lt;strong&gt;smarthomeabersicher15&lt;/strong&gt; you save $15 in their shop. I get a small commission, you don&amp;rsquo;t pay more.&lt;/p&gt;
&lt;p&gt;👉 &lt;a class="link" href="https://shop.zimaspace.com/products/zimaboard2-single-board-server?sca_ref=10888972.IIUVG7KSUTjc&amp;amp;utm_source=joachim-wilke&amp;amp;utm_medium=affiliate&amp;amp;utm_campaign=zimaspace_affiliate&amp;amp;utm_content=Joachim-Wilke" target="_blank" rel="noopener"
&gt;ZimaBoard 2 in the IceWhale Shop&lt;/a&gt; &lt;em&gt;(affiliate link)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;👉 &lt;a class="link" href="https://shop.zimaspace.com/products/2-bay-hdd-rack-tray-for-zimaboard-2?sca_ref=10888972.IIUVG7KSUTjc&amp;amp;utm_source=joachim-wilke&amp;amp;utm_medium=affiliate&amp;amp;utm_campaign=zimaspace_affiliate&amp;amp;utm_content=Joachim-Wilke" target="_blank" rel="noopener"
&gt;2-Bay HDD Rack Tray for ZimaBoard 2&lt;/a&gt; &lt;em&gt;(affiliate link)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This video was made in collaboration with IceWhale – the board was provided to me at no cost. The technical assessment and everything I say is my own opinion.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>The Automation You Never Want – But Must Have</title><link>https://smarthome-aber-sicher.de/en/blog/2026/04/29/the-automation-you-hopefully-never-need-but-absolutely-should-have/</link><pubDate>Wed, 29 Apr 2026 18:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/04/29/the-automation-you-hopefully-never-need-but-absolutely-should-have/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/04/29/die-automation-die-du-hoffentlich-nie-brauchst-aber-unbedingt-haben-solltest/cover.jpeg" alt="Featured image of post The Automation You Never Want – But Must Have" /&gt;&lt;p&gt;My first video about the XSense smoke detectors surprised me a little. Not because of the numbers – but because of one particular moment in the video.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;d briefly mentioned what I&amp;rsquo;d built for the Home Assistant integration: when a smoke detector goes off, all lights come on, all blinds go up, and I get a push notification on my phone. Just a quick aside because it fit the topic. But those few seconds apparently triggered something – in the comments, and at XSense itself.&lt;/p&gt;
&lt;h2 id="how-this-video-came-about"&gt;How this video came about
&lt;/h2&gt;&lt;p&gt;Shortly after publishing the first video, XSense reached out. I explained the blind and automatic light idea in an email – and they found it so interesting that they asked me to make a detailed video about it. Show exactly how it&amp;rsquo;s built. What happens step by step. And why.&lt;/p&gt;
&lt;p&gt;So here it is.&lt;/p&gt;
&lt;h2 id="why-this-automation-matters-more-than-it-sounds"&gt;Why this automation matters more than it sounds
&lt;/h2&gt;&lt;p&gt;I&amp;rsquo;ll say it plainly: this isn&amp;rsquo;t a cool toy. This is an automation I hope you never need. But if you do need it, every second counts.&lt;/p&gt;
&lt;p&gt;In a fire, two things rob you of the precious time to escape: &lt;strong&gt;disorientation and panic.&lt;/strong&gt; Someone woken from sleep in the middle of the night often doesn&amp;rsquo;t immediately know where they are, where the door is, how to get out. And if everything is dark and the blinds are down – that&amp;rsquo;s a serious problem.&lt;/p&gt;
&lt;p&gt;A well-designed automation can help counter exactly that. Not as a replacement for smoke detectors, escape route plans or fire extinguishers – but as one more layer that works silently and reliably when it matters.&lt;/p&gt;
&lt;h2 id="whats-in-the-video"&gt;What&amp;rsquo;s in the video
&lt;/h2&gt;&lt;p&gt;I build the complete automation live – from the MQTT entity of the smoke detector to the finished, tested automation chain in Home Assistant.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What happens when an alarm is triggered:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Push notification&lt;/strong&gt; to your smartphone – immediately, even if you&amp;rsquo;re not home&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;All lights come on&lt;/strong&gt; – escape routes become visible, no one stumbles in the dark&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;All blinds go up&lt;/strong&gt; – windows become accessible as emergency exits, firefighters can see what&amp;rsquo;s happening from outside&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I also show what to watch out for when building it so the automation works when it actually matters – including when the internet is down or Home Assistant just restarted.&lt;/p&gt;
&lt;p&gt;And I explain why I deliberately didn&amp;rsquo;t add an automatic emergency call – it sounds like a good idea, but in practice it isn&amp;rsquo;t.&lt;/p&gt;
&lt;hr&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/Bvav2c8F6Co?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_15245472759056073469_hu_bb74cb9cc1bca6d3.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;What have you already automated for emergencies at home? Write it in the comments – I&amp;rsquo;m genuinely curious how you&amp;rsquo;ve solved this.&lt;/p&gt;
&lt;h2 id="the-devices-from-the-video"&gt;The devices from the video
&lt;/h2&gt;&lt;p&gt;The XSense system the automation is built on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;6-pack starter set + base station&lt;/strong&gt; (affiliate link):
👉 &lt;a class="link" href="https://tidd.ly/4d7NCtr" target="_blank" rel="noopener"
&gt;XS01-M 6-pack at XSense&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;12-pack + base station&lt;/strong&gt; (affiliate link):
👉 &lt;a class="link" href="https://tidd.ly/4cXza6m" target="_blank" rel="noopener"
&gt;XS01-M 12-pack at XSense&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Discount code:&lt;/strong&gt; &lt;code&gt;AFQ3XSENSE&lt;/code&gt; → 12% off your entire order (X-Sense shop only, valid until September 30, 2026). Combinable with official website deals where applicable – during sitewide promotions the system automatically applies the lowest price (the code may then not apply at checkout), so just check the final price at checkout.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Alternatively via Amazon:&lt;/strong&gt;
👉 &lt;a class="link" href="https://amzn.to/46Dncwk" target="_blank" rel="noopener"
&gt;XSense smoke detectors on Amazon&lt;/a&gt; (affiliate link)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This video was made in collaboration with XSense. Affiliate links: the price stays the same for you, but you support the work on my channel.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>IKEA vs. Eve: Which Matter over Thread Sensors Win?</title><link>https://smarthome-aber-sicher.de/en/blog/2026/04/16/ikea-vs.-eve-which-matter-over-thread-sensors-are-really-worth-it/</link><pubDate>Thu, 16 Apr 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/04/16/ikea-vs.-eve-which-matter-over-thread-sensors-are-really-worth-it/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/04/16/ikea-vs.-eve-welche-matter-over-thread-sensoren-lohnen-sich-wirklich/cover.jpeg" alt="Featured image of post IKEA vs. Eve: Which Matter over Thread Sensors Win?" /&gt;&lt;p&gt;I hadn&amp;rsquo;t planned this at all.&lt;/p&gt;
&lt;p&gt;The last video about Matter and Thread had barely been online for a week when the same question kept showing up in the comments: &lt;em&gt;What about IKEA?&lt;/em&gt; First a few times, then more and more — until I couldn&amp;rsquo;t ignore it any longer. So I put both systems side by side and took a close look.&lt;/p&gt;
&lt;p&gt;Honestly, the result surprised me.&lt;/p&gt;
&lt;h2 id="a-price-difference-that-calls-everything-into-question"&gt;A price difference that calls everything into question
&lt;/h2&gt;&lt;p&gt;IKEA sells a Matter over Thread window contact for around &lt;strong&gt;€8&lt;/strong&gt;. The comparable Eve Door &amp;amp; Window sensor costs &lt;strong&gt;four times&lt;/strong&gt; as much. And it&amp;rsquo;s similar for motion sensors.&lt;/p&gt;
&lt;p&gt;That means concretely: you could equip your whole home with Thread sensors for under €100. That sounds almost too good. So — where&amp;rsquo;s the catch?&lt;/p&gt;
&lt;p&gt;The answer is more complicated than expected — and depends heavily on what you&amp;rsquo;re actually trying to do.&lt;/p&gt;
&lt;h2 id="whats-in-the-video"&gt;What&amp;rsquo;s in the video
&lt;/h2&gt;&lt;p&gt;I go through five categories and take an honest look at each one:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Door/window contacts&lt;/strong&gt; — For low-risk areas, IKEA does its job absolutely solidly. At the front door or combined with an alarm system, I&amp;rsquo;d personally still stick with proven solutions — not because IKEA is bad, but because Eve and Aqara have years of track record there.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Motion sensors&lt;/strong&gt; — There&amp;rsquo;s a clear winner here: Eve. The IKEA sensor reacts noticeably slower and reportedly hangs occasionally according to user reports. For applications where response time matters, this is a real difference.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Smart plugs&lt;/strong&gt; — Both measure energy consumption, which is far from a given at this price point. But Eve has a decisive advantage: the Eve Energy is a Full Thread Device — it actively strengthens your Thread network. The IKEA plug does not.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Water sensors&lt;/strong&gt; — IKEA has a simple point sensor for ~€7. Eve delivers a 2-meter sensor cable that can be extended to over 100 meters — and costs accordingly. For simple protection under the kitchen sink, IKEA is perfectly adequate.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Air quality&lt;/strong&gt; — Here IKEA surprises: the Alp Stuga measures CO2, particulate matter, temperature, and humidity for around €20. Eve currently has nothing comparable in their lineup. In testing, the readings are surprisingly close to much more expensive devices.&lt;/p&gt;
&lt;hr&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/IbObebyotE0?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_4092299052167239841_hu_624ae050d5577fba.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;&lt;strong&gt;Team IKEA or Team Eve?&lt;/strong&gt; Just write it in the comments — I&amp;rsquo;m curious who wins the vote.&lt;/p&gt;
&lt;h2 id="products-from-the-video"&gt;Products from the video
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Eve Systems&lt;/strong&gt; (Matter over Thread, fully local):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/41pHLJs" target="_blank" rel="noopener"
&gt;Eve Door &amp;amp; Window&lt;/a&gt; – door and window sensor, Thread, runs forever on one battery (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/47j8bjC" target="_blank" rel="noopener"
&gt;Eve Motion&lt;/a&gt; – motion sensor, same principle, same philosophy (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4uThhh2" target="_blank" rel="noopener"
&gt;Eve Energy&lt;/a&gt; – smart plug with energy monitoring (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4sSrE3r" target="_blank" rel="noopener"
&gt;Eve Thermo&lt;/a&gt; – radiator thermostat, Thread-based, no account needed (affiliate link)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;For Home Assistant&lt;/strong&gt; (Thread Border Router):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4bzvCYs" target="_blank" rel="noopener"
&gt;ZBT-2 Thread Border Router&lt;/a&gt; – the stick for Home Assistant to set up your own Thread network (affiliate link)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;IKEA&lt;/strong&gt; – the sensors shown in the video (Mittelpunkt, Mixspray, Clyppa, Alp Stuga) are available directly in the IKEA online shop. No hub needed if you&amp;rsquo;re using Home Assistant.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;A small note: IKEA apparently doesn&amp;rsquo;t need an affiliate program — I recommend their products here anyway, but earn nothing from it. If you&amp;rsquo;d still like to support me: just do your &lt;a class="link" href="https://amzn.to/3ZXjXN2" target="_blank" rel="noopener"
&gt;next Amazon purchase through this link&lt;/a&gt; — whatever you buy, I get a small commission, and the price doesn&amp;rsquo;t change for you.&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="related-articles"&gt;Related articles
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/matter-thread/" &gt;Is Zigbee dead now? Matter &amp;amp; Thread – 10 answers you need to know&lt;/a&gt; – The basics of Matter and Thread that this video grew out of&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Is Zigbee Dead? Matter &amp; Thread – 10 Key Answers</title><link>https://smarthome-aber-sicher.de/en/blog/2026/04/01/is-zigbee-dead-now-matter-thread-10-answers-you-need-to-know/</link><pubDate>Wed, 01 Apr 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/04/01/is-zigbee-dead-now-matter-thread-10-answers-you-need-to-know/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/04/01/ist-zigbee-jetzt-tot-matter-thread-10-antworten-die-du-kennen-musst/cover.jpeg" alt="Featured image of post Is Zigbee Dead? Matter &amp; Thread – 10 Key Answers" /&gt;&lt;p&gt;I&amp;rsquo;m about to buy an air purifier — the &lt;a class="link" href="https://amzn.to/3PBinxL" target="_blank" rel="noopener"
&gt;Bosch Air 4000i&lt;/a&gt; (affiliate link). Sounds unremarkable — and it would be, if not for a small note on the packaging: &lt;em&gt;Matter over Thread&lt;/em&gt; or &lt;em&gt;Matter over Wi-Fi&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;There I stood. A device I consciously want to buy because it supports Matter — and I realized I actually had no idea what that concretely means. Matter has been part of smart home discussions for three years now. Three years. I&amp;rsquo;d kept catching glimpses of it, kept setting it aside. &lt;em&gt;Probably not that important. Zigbee works just fine.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Then came the air purifier.&lt;/p&gt;
&lt;h2 id="the-moment-that-triggered-this-video"&gt;The moment that triggered this video
&lt;/h2&gt;&lt;p&gt;I&amp;rsquo;d planned to make a detailed video about that device — setup, Home Assistant, automations, the full package. But before I can do that meaningfully, I need to understand what&amp;rsquo;s actually happening under the hood. What is Matter? What is Thread? What do they have to do with each other? And why should I even pay attention to this when buying new hardware?&lt;/p&gt;
&lt;p&gt;So I sat down and researched. Not just a quick Google — I really dived deep. Specifications, comparisons, forum posts, real-world tests. And I noticed: the information is out there, but it&amp;rsquo;s scattered everywhere, often technically overloaded, or stuck in the year 2022.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;I&amp;rsquo;ve now summarized my research in a video — in the form of 10 questions and 10 answers that really help.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="10-questions-youll-finally-get-a-clear-answer-to"&gt;10 questions you&amp;rsquo;ll finally get a clear answer to
&lt;/h2&gt;&lt;p&gt;The chaos has many faces. Matter, Thread, Border Router, MoW, MoT — it&amp;rsquo;s easy to lose the overview. That&amp;rsquo;s why I picked the questions that came up for me — and that I keep reading in comments and forums.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;#1 What&amp;rsquo;s the difference between Matter and Thread?&lt;/strong&gt; — Constantly thrown in the same pot. But they&amp;rsquo;re fundamentally different things. I explain it with an analogy that really sticks.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;#2 Do I need a new, expensive hub for this?&lt;/strong&gt; — The honest answer is: sort of. When you need a Thread Border Router — and when your existing router is enough.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;#3 Matter over Wi-Fi or Matter over Thread?&lt;/strong&gt; — Both options are listed on the packaging. What you should choose depends on one single question.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;#4 Why not just evolve Zigbee?&lt;/strong&gt; — Thread uses the same chips. So why a new standard anyway? There&amp;rsquo;s more behind it than you&amp;rsquo;d think — and it has to do with IPv6.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;#5 How does pairing work?&lt;/strong&gt; — QR code, app, done. No cloud account, no manufacturer app, no subscription. It really is that simple.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;#6 Is Zigbee dead now?&lt;/strong&gt; — No. But the answer is more nuanced than you might expect.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;#7 What about privacy?&lt;/strong&gt; — For everyone who cares about local control — this is good news.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;#8 Why do Thread devices sometimes go offline?&lt;/strong&gt; — There&amp;rsquo;s a very specific, common reason for this. And an equally specific tip that solves the problem permanently.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;#9 Is switching over worth it now?&lt;/strong&gt; — My honest assessment, without sugarcoating.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;#10 Which specific devices do I recommend?&lt;/strong&gt; — One manufacturer committed early to Matter over Thread and consistently built their entire product range around it. I&amp;rsquo;ll introduce them.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;All of that — compact, jargon-free, straight from real-world experience — is in the video:&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/WbJRijTfy9A?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_10116610996704731913_hu_a259e6eee0d35385.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;Where are you at with this topic? Do you already have Matter or Thread devices running, or are you still waiting? Just write &lt;strong&gt;&amp;ldquo;Thread&amp;rdquo;&lt;/strong&gt;, &lt;strong&gt;&amp;ldquo;Matter&amp;rdquo;&lt;/strong&gt;, or &lt;strong&gt;&amp;ldquo;Still waiting&amp;rdquo;&lt;/strong&gt; in the comments — I&amp;rsquo;m genuinely curious where the community stands.&lt;/p&gt;
&lt;h2 id="devices-from-the-video"&gt;Devices from the video
&lt;/h2&gt;&lt;p&gt;If you want to get started right away, here are the products I recommend in the video — all Matter over Thread, fully local, no cloud dependency:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/41pHLJs" target="_blank" rel="noopener"
&gt;Eve Door &amp;amp; Window&lt;/a&gt; – door and window sensor, Thread, runs forever on one battery (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/47j8bjC" target="_blank" rel="noopener"
&gt;Eve Motion&lt;/a&gt; – motion sensor, same principle, same philosophy (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4uThhh2" target="_blank" rel="noopener"
&gt;Eve Energy&lt;/a&gt; – smart plug with energy monitoring (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4sSrE3r" target="_blank" rel="noopener"
&gt;Eve Thermo&lt;/a&gt; – radiator thermostat, Thread-based, no account needed (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4bzvCYs" target="_blank" rel="noopener"
&gt;ZBT-2 Thread Border Router&lt;/a&gt; – the stick for Home Assistant to set up your own Thread network (affiliate link)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;And the trigger for this whole video:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/3PBinxL" target="_blank" rel="noopener"
&gt;Bosch Air 4000i Air Purifier&lt;/a&gt; – Matter-capable, I&amp;rsquo;ll be making a separate hands-on video about it soon (affiliate link)&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="related-articles"&gt;Related articles
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/matter-thread-ikea-eve/" &gt;IKEA vs. Eve: Which Matter over Thread Sensors Are Really Worth It?&lt;/a&gt; – Came straight from the comments: a concrete price comparison of both systems&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>5 New Automation Mistakes in Home Assistant</title><link>https://smarthome-aber-sicher.de/en/blog/2026/03/18/5-new-automation-mistakes-in-home-assistant-are-you-affected-too/</link><pubDate>Wed, 18 Mar 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/03/18/5-new-automation-mistakes-in-home-assistant-are-you-affected-too/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/03/18/5-neue-automations-fehler-in-home-assistant-bist-du-auch-betroffen/cover.jpg" alt="Featured image of post 5 New Automation Mistakes in Home Assistant" /&gt;&lt;p&gt;It was a perfectly normal evening. I built an automation, started it — and it simply didn&amp;rsquo;t do what it was supposed to. No error in the logs. No red bar. Just: nothing.&lt;/p&gt;
&lt;p&gt;After twenty minutes of searching, I found the mistake. And then something became clear to me: &lt;strong&gt;That wasn&amp;rsquo;t a one-off slip. That was a pattern.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;My &lt;a class="link" href="https://smarthome-aber-sicher.de/ha/5-automation-fehler" &gt;first video on the 5 most common automation mistakes&lt;/a&gt; was a hit back then — the comments went wild. And many of you wrote: &amp;ldquo;I knew all of these and still do them anyway.&amp;rdquo; I get it. I really do.&lt;/p&gt;
&lt;p&gt;Since then, quite a bit has changed in Home Assistant. New features, new possibilities — and a whole new category of traps to fall into. Trigger IDs, for example. Or AI-generated automations that look so plausibly correct — and then aren&amp;rsquo;t.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;I&amp;rsquo;ve picked out five of them. Five new mistakes I had to learn the hard way myself&lt;/strong&gt; — and that I keep seeing when talking to the community. Some are insidious because the mistake only surfaces weeks later. One of them costs you all the progress of a running automation — at exactly the moment you least expect it.&lt;/p&gt;
&lt;h2 id="five-mistakes-that-sound-more-harmless-than-they-are"&gt;Five mistakes that sound more harmless than they are
&lt;/h2&gt;&lt;h3 id="mistake-1-the-trigger-id-trap"&gt;Mistake 1: The Trigger ID Trap
&lt;/h3&gt;&lt;p&gt;Trigger IDs are one of the features that have genuinely upgraded Home Assistant in recent years. You can finally consolidate multiple triggers in one automation and still tell them apart. Practical, elegant, modern.&lt;/p&gt;
&lt;p&gt;And that&amp;rsquo;s exactly why this trap is so sneaky. &lt;strong&gt;Anyone who&amp;rsquo;s discovered the feature wants to use it for everything.&lt;/strong&gt; Ten triggers, twelve conditions, a huge choose block — and at some point, actions fire that shouldn&amp;rsquo;t be firing at all. No error in the logs. Everything runs. Just wrong.&lt;/p&gt;
&lt;p&gt;How to use trigger IDs properly — and where the line is — I show in the video.&lt;/p&gt;
&lt;h3 id="mistake-2-the-light-burns-even-when-the-suns-still-out"&gt;Mistake 2: The light burns even when the sun&amp;rsquo;s still out
&lt;/h3&gt;&lt;p&gt;You built an automation: lights on at 6 PM. In October, that&amp;rsquo;s perfect. In March, the lamp is on while it&amp;rsquo;s still broad daylight outside. In December, you&amp;rsquo;ve been sitting in the dark for an hour.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Hard-coded times feel right when you set them up — and they get their revenge for the rest of the year.&lt;/strong&gt; Most of us have at least one such automation hidden somewhere. Sometimes even several.&lt;/p&gt;
&lt;p&gt;The good news: Home Assistant has everything you need to solve this permanently. What exactly — you&amp;rsquo;ll see in the video.&lt;/p&gt;
&lt;h3 id="mistake-3-the-silent-total-loss"&gt;Mistake 3: The silent total loss
&lt;/h3&gt;&lt;p&gt;This is the mistake that surprised me most — and at the same time the one most people completely underestimate. You build an automation with a long &lt;code&gt;wait&lt;/code&gt; action. Everything runs. At some point you apply an update. Home Assistant restarts.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;And your automation? It remembers nothing.&lt;/strong&gt; No hint, no log, no error message. The progress is simply gone. That can mean: a reminder is never sent. A lamp stays on. A door remains unnoticed open.&lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s an elegant solution for this — and it&amp;rsquo;s simpler than you&amp;rsquo;d think. But it requires a change of thinking. I explain how in the video.&lt;/p&gt;
&lt;h3 id="mistake-4-the-script-that-silently-refuses"&gt;Mistake 4: The script that silently refuses
&lt;/h3&gt;&lt;p&gt;Anyone who knows &lt;a class="link" href="https://smarthome-aber-sicher.de/ha/automation-modi" &gt;automation modes&lt;/a&gt; feels confident. Single, Restart, Parallel, Queue — that&amp;rsquo;s clear. But now here&amp;rsquo;s the trick question: &lt;strong&gt;Are you also keeping an eye on the modes of your scripts?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In the default mode &lt;code&gt;Single&lt;/code&gt;, if a script is already running and gets called again, absolutely nothing happens. No error message. The script is simply ignored. Depending on your use case, your system then runs silently into the void — and you don&amp;rsquo;t know why.&lt;/p&gt;
&lt;h3 id="mistake-5-the-automation-that-looks-like-a-good-idea"&gt;Mistake 5: The automation that looks like a good idea
&lt;/h3&gt;&lt;p&gt;We use AI. That&amp;rsquo;s normal, that&amp;rsquo;s sensible, that&amp;rsquo;s fast. ChatGPT, Gemini, the built-in Home Assistant assistant — they can all deliver a first draft of an automation in seconds. And it looks good. &lt;strong&gt;Really good.&lt;/strong&gt; Structured, plausible, commented.&lt;/p&gt;
&lt;p&gt;The problem: ancient syntax from three-year-old training data. Entities that don&amp;rsquo;t even exist in your installation. Logic errors that only surface when they&amp;rsquo;ve already surfaced. &lt;strong&gt;AI code doesn&amp;rsquo;t check itself — you have to do that.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In the video, I show a real example and explain where you need to look especially carefully.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;All five mistakes — with screenshots, real examples, and a look inside the automation editor — are in the video:&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/JtxwotEp3LM?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_1819668054275543591_hu_6e1daf83e6132149.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;Write in the comments afterwards which mistake got you the most — just the number, e.g. &amp;ldquo;Mistake 3&amp;rdquo;. That&amp;rsquo;s how I know what&amp;rsquo;s really on your mind.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;→ If you want to secure your automations, the next step is security: &lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-5-security-fehler/" &gt;Securing Home Assistant – 5 mistakes to avoid in your smart home&lt;/a&gt;&lt;/p&gt;</description></item><item><title>XSense Smoke Detectors Tested: How Secure Are They?</title><link>https://smarthome-aber-sicher.de/en/blog/2026/03/11/xsense-smoke-detectors/</link><pubDate>Wed, 11 Mar 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/03/11/xsense-smoke-detectors/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/03/11/xsense-rauchmelder/cover.jpeg" alt="Featured image of post XSense Smoke Detectors Tested: How Secure Are They?" /&gt;&lt;p&gt;&lt;strong&gt;Imagine there&amp;rsquo;s a fire — and your smart home reacts instantly.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s exactly what I tried out with the new XSense smoke detectors. The special thing: they can be connected locally via MQTT to Home Assistant — completely without cloud dependency. In my test I didn&amp;rsquo;t just document the setup and integration, but also simulated the real emergency: what happens when the internet goes down? How reliable is the alarm chain? And how easy is the setup really?&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/AvN0QCcU5vI?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_17888405614452756959_hu_766e269e30c27bc4.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-to-expect-in-the-video"&gt;What to expect in the video
&lt;/h2&gt;&lt;p&gt;In this comprehensive test, I show you how the alarm chain works in practice, how far the radio range actually reaches, and how reliable the low battery warnings are. You&amp;rsquo;ll learn step by step how to get the MQTT integration working in Home Assistant, and I give you concrete tips for secure automations that protect your escape routes in an emergency and warn you with push notifications. At the end, I share my personal verdict and tell you who this system is really worth it for.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Curious? Then watch the video and find out how to make your home even safer!&lt;/strong&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="basics-why-networked-smoke-detectors"&gt;Basics: Why networked smoke detectors?
&lt;/h2&gt;&lt;p&gt;In Germany, smoke detectors have been mandatory in all states since 2024 — in bedrooms, children&amp;rsquo;s rooms, and hallways that serve as escape routes. There&amp;rsquo;s a good reason for this: most fire victims don&amp;rsquo;t die from the fire itself, but from smoke inhalation — often at night while asleep, when you don&amp;rsquo;t notice the smoke in time. A smoke detector gives you the life-saving minutes you need to escape.&lt;/p&gt;
&lt;p&gt;Interestingly, it&amp;rsquo;s not required that these smoke detectors be networked with each other — but that&amp;rsquo;s exactly where things get interesting. Imagine there&amp;rsquo;s a fire in the basement or a distant room of your home. You might not even hear a single smoke detector there, especially at night with closed doors.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Networked smoke detectors trigger together:&lt;/strong&gt; when one detector detects smoke, all of them raise the alarm, and you&amp;rsquo;re guaranteed to be warned everywhere in your house. That can ultimately determine whether your escape route is still smoke-free or not.&lt;/p&gt;
&lt;h2 id="the-xsense-system-in-detail"&gt;The XSense system in detail
&lt;/h2&gt;&lt;p&gt;Specifically, I tested this networked smoke detector kit from XSense: &lt;strong&gt;six smoke detectors plus a central base station&lt;/strong&gt;. The detectors are networked with each other and can trigger simultaneously in an emergency. The base station also serves as an interface to the XSense app and — this is new — to the &lt;strong&gt;local integration via MQTT&lt;/strong&gt; in Home Assistant.&lt;/p&gt;
&lt;p&gt;The base station comes with a power adapter, but it&amp;rsquo;s standard USB-C. I simply plugged it into the hub in my smart home server, saving an extra socket — a nice bonus.&lt;/p&gt;
&lt;p&gt;The smoke detectors need to be paired once using the XSense app. That worked seamlessly for me and was done quickly. This step is necessary so that the detectors know each other and can reliably alert each other in a fire — even though this alarm communication doesn&amp;rsquo;t go through the base but directly between the detectors.&lt;/p&gt;
&lt;h2 id="safety-first-smart-home-is-an-addition-not-a-prerequisite"&gt;Safety first: smart home is an addition, not a prerequisite
&lt;/h2&gt;&lt;p&gt;Before we go deeper into the smart home integration, there&amp;rsquo;s one point I want to make particularly clear: &lt;strong&gt;smoke detectors are safety devices.&lt;/strong&gt; The smart home connection is an addition, but must never be a prerequisite for an alarm to function at all.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s why I tested the behavior in a fire scenario first — using &lt;strong&gt;smoke detector test spray&lt;/strong&gt;. Because the test button on the detectors often only simulates the acoustic alarm, but doesn&amp;rsquo;t test the optical smoke detection. The spray simulates real smoke particles and is also used for professional functional testing.&lt;/p&gt;
&lt;p&gt;I must make an urgent warning here: never try to trigger a smoke detector with a lighter, a candle, or other smoke. The risk of irreparably damaging the detector in the process is enormous. And nothing would be more fatal than having the detector fail in a real emergency because you destroyed it during a test.&lt;/p&gt;
&lt;h2 id="alarm-chain--radio-range-in-the-test"&gt;Alarm chain &amp;amp; radio range in the test
&lt;/h2&gt;&lt;p&gt;When a smoke event is detected, the affected smoke detector triggers locally first, and a few seconds later the other detectors connected in the home respond — provided they&amp;rsquo;re within radio range, of course.&lt;/p&gt;
&lt;p&gt;The &lt;strong&gt;radio range is genuinely impressive&lt;/strong&gt;: I live in an apartment building, and only beyond four floors did the connection become unreliable.&lt;/p&gt;
&lt;p&gt;At the same time, the fire event is reliably displayed in the XSense app and — particularly relevant for us — the event is &lt;strong&gt;passed to Home Assistant via MQTT&lt;/strong&gt; by the base station, where we can react to it.&lt;/p&gt;
&lt;h2 id="automations-what-happens-in-an-emergency"&gt;Automations: what happens in an emergency
&lt;/h2&gt;&lt;p&gt;Based on this, I created an automation in Home Assistant that triggers a complete rescue chain in an emergency. First, it sends me a push notification to my smartphone so I&amp;rsquo;m immediately informed, even if I&amp;rsquo;m not home. At the same time, it automatically turns on all the lights in the house so escape routes are clearly visible and no one has to fumble around in the dark. And then something happens that might sound surprising at first: the automation raises all the blinds and roller shutters. Why? Simple — this frees up potential additional escape routes via windows, and the fire department can immediately see what&amp;rsquo;s happening in the house from outside.&lt;/p&gt;
&lt;p&gt;This complete chain works reliably in my test: from the smoke event through the communication to other detectors, through the communication to the base, the display in the XSense app, the MQTT event transmission to Home Assistant, and the subsequent triggering of the automation.&lt;/p&gt;
&lt;h3 id="automatically-alert-the-fire-department"&gt;Automatically alert the fire department?
&lt;/h3&gt;&lt;p&gt;Before anyone asks in the comments: could I theoretically use Home Assistant to automatically alert the fire department? &lt;strong&gt;Yes, technically yes&lt;/strong&gt; — given the right interface to the telephone network.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But:&lt;/strong&gt; legally and practically, I strongly advise against it! False alarms in Germany can result in costs and even legal consequences.&lt;/p&gt;
&lt;h2 id="offline-function-integration-without-the-cloud"&gt;Offline function: integration without the cloud
&lt;/h2&gt;&lt;p&gt;I of course specifically tested the new &lt;strong&gt;offline functionality&lt;/strong&gt;. When the XSense base station is switched on but offline, the app no longer works (logically — it needs a cloud connection). The local MQTT integration with Home Assistant continues to work as expected, however, since it runs completely locally in your home network.&lt;/p&gt;
&lt;p&gt;To test this further, I disconnected the internet connection and deliberately triggered a &lt;strong&gt;low battery warning&lt;/strong&gt; from a smoke detector by removing the battery and supplying it via a lab power supply with weak voltage. The MQTT message arrived in Home Assistant without any problems — &lt;strong&gt;even though the internet connection was down&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s exactly how a local integration should work: independent of cloud and internet, as long as the local network is stable.&lt;/p&gt;
&lt;h3 id="base-station-led-status"&gt;Base station LED status
&lt;/h3&gt;&lt;p&gt;You can easily tell whether the base station currently has contact with the cloud by the LED in the center of the device. If it glows blue, everything is fine and the cloud connection is established. Yellow light signals that the cloud connection is interrupted — which, as we&amp;rsquo;ve seen, isn&amp;rsquo;t a problem for the local MQTT integration. If the LED glows red, the device is restarting. And if it&amp;rsquo;s completely off, that indicates a problem with the power supply.&lt;/p&gt;
&lt;h2 id="test-button--mqtt-integration"&gt;Test button &amp;amp; MQTT integration
&lt;/h2&gt;&lt;p&gt;Manually testing the device (pressing the test button) is correctly displayed in the XSense app — there&amp;rsquo;s a notification that a test alarm has been triggered. &lt;strong&gt;However&lt;/strong&gt;, this event is currently not yet forwarded via MQTT to Home Assistant.&lt;/p&gt;
&lt;p&gt;I spoke with XSense support and learned that this is currently a limitation of the implementation. According to the manufacturer, this could be added in a future update — in my opinion, extremely useful for test scenarios, so I can test the entire signaling chain through to Home Assistant without having to use test spray.&lt;/p&gt;
&lt;h2 id="the-most-important-thing-primary-safety-independent-of-everything"&gt;The most important thing: primary safety independent of everything
&lt;/h2&gt;&lt;p&gt;The decisive point regarding safety: &lt;strong&gt;the networked alarm between smoke detectors always works&lt;/strong&gt; — even if the power has already gone out.&lt;/p&gt;
&lt;p&gt;Why? The answer is as simple as it is brilliant: every smoke detector has a built-in battery, and this networked alarm works exclusively via radio directly between the detectors. It requires neither contact with the base station nor an internet connection, let alone external power. The batteries in the detectors themselves are all that&amp;rsquo;s needed for the life-saving alarm chain.&lt;/p&gt;
&lt;p&gt;I tried all conceivable combinations — with power to the base station, with internet, without internet. This function &lt;strong&gt;worked flawlessly every time&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;The primary safety function (networking of the smoke detectors) is therefore not dependent on the app, MQTT, or a cloud connection. &lt;strong&gt;That&amp;rsquo;s exactly how it should be for a safety-critical system.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="battery-life--replacement"&gt;Battery life &amp;amp; replacement
&lt;/h2&gt;&lt;p&gt;The smoke detectors come with a battery included. According to manufacturer specifications, it should last one to two years — depending on how often you press the test button. I couldn&amp;rsquo;t verify this during the test period, of course.&lt;/p&gt;
&lt;p&gt;The battery replacement itself is pleasantly straightforward — you can reach the battery compartment easily and are done quickly. And don&amp;rsquo;t worry about forgetting the replacement: you&amp;rsquo;ll be warned about a low battery on every conceivable channel. The detectors start briefly beeping every few minutes, the XSense app signals a weak battery, and this is of course also forwarded via MQTT to Home Assistant. So it&amp;rsquo;s practically impossible to overlook the needed battery replacement.&lt;/p&gt;
&lt;h2 id="setup-mqtt-integration-step-by-step"&gt;Setup: MQTT integration step by step
&lt;/h2&gt;&lt;p&gt;For anyone who wants to set up the system practically, here are the steps for MQTT integration:&lt;/p&gt;
&lt;h3 id="prerequisites-and-first-steps"&gt;Prerequisites and first steps
&lt;/h3&gt;&lt;p&gt;Before you start, make sure your base station is running at least firmware version 1.7.0. The app version should also be as current as possible to use all functions.&lt;/p&gt;
&lt;p&gt;Setup begins in the XSense app, where you first go to &amp;ldquo;My Devices&amp;rdquo; and select the base station. In settings, check the firmware version and update if needed. You then find the &amp;ldquo;Connect with Home Assistant&amp;rdquo; option under the device settings. There you activate the MQTT connection and enter the IP address of your MQTT broker.&lt;/p&gt;
&lt;h3 id="authentication--this-is-where-it-gets-tricky"&gt;Authentication — this is where it gets tricky
&lt;/h3&gt;&lt;p&gt;Now comes the part where many people stumble. If you&amp;rsquo;re using Home Assistant OS, things are relatively straightforward: install the MQTT add-on if not already done, then enter your Home Assistant username and password. The reason is simple — the MQTT broker that comes with Home Assistant is typically secured with exactly these credentials.&lt;/p&gt;
&lt;p&gt;With a different setup, like mine, things look different. Here you must not enter the Home Assistant credentials, but the authentication data for your MQTT broker — in my case, Mosquitto, for example.&lt;/p&gt;
&lt;p&gt;Even if the app says &amp;ldquo;Home Assistant credentials,&amp;rdquo; don&amp;rsquo;t be confused. The manufacturer&amp;rsquo;s guide focuses on Home Assistant OS users, where Home Assistant and MQTT broker require the same credentials.&lt;/p&gt;
&lt;h3 id="after-successful-activation"&gt;After successful activation
&lt;/h3&gt;&lt;p&gt;If everything works, you&amp;rsquo;ll see &lt;strong&gt;&amp;ldquo;MQTT status: connected&amp;rdquo;&lt;/strong&gt;, regardless of your setup.&lt;/p&gt;
&lt;p&gt;In Home Assistant, after successful activation, multiple entities appear automatically. You can see the status of each individual smoke detector, the current battery status, the connection status to the base station, and of course the crucial alarm entities with which you can build your automations.&lt;/p&gt;
&lt;p&gt;All sensors are neatly grouped as devices, and each smoke detector appears as an independent device with its own entity. This makes it very easy and clear to use in automations.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note on naming:&lt;/strong&gt; If you&amp;rsquo;ve already named your smoke detectors in the XSense app and assigned them to rooms, that&amp;rsquo;s not transferred via MQTT. You&amp;rsquo;ll see the detectors in Home Assistant with their technical name (serial number) and then assign them to the correct rooms using the usual Home Assistant procedures. Once you&amp;rsquo;ve done that, you&amp;rsquo;re done.&lt;/p&gt;
&lt;h2 id="my-verdict-who-is-this-system-for"&gt;My verdict: Who is this system for?
&lt;/h2&gt;&lt;p&gt;The smoke detectors &lt;strong&gt;fulfill their core task reliably and autonomously&lt;/strong&gt;. The smart home integration via MQTT works very cleanly and reliably for real fire events or other safety-critical events like low battery status.&lt;/p&gt;
&lt;p&gt;Personally, I&amp;rsquo;d be happy if XSense expands the interface further and also signals the test button press via MQTT, so I can test my Home Assistant automations more easily.&lt;/p&gt;
&lt;h3 id="who-is-this-system-worth-it-for"&gt;Who is this system worth it for?
&lt;/h3&gt;&lt;p&gt;Let me be honest about who I&amp;rsquo;d recommend this system to. First, there are Home Assistant users who want to use networked smoke detectors and value local integration. For this group, the setup is definitely worth a look. But even if you don&amp;rsquo;t use Home Assistant, the system can be interesting — provided your smart home solution supports MQTT. Then you can integrate the smoke detectors locally and benefit from the same advantages. And even if you don&amp;rsquo;t want any smart home connection at all, you get a classic networked smoke detector system here that works completely reliably without the app and base station in a fire situation.&lt;/p&gt;
&lt;p&gt;If the setup interests you, here are the links to the tested set:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Directly from XSense:&lt;/strong&gt;
👉 &lt;a class="link" href="https://bit.ly/40foM3J" target="_blank" rel="noopener"
&gt;XSense Smoke Detector Starter Set&lt;/a&gt; with discount code &lt;strong&gt;AFQ3XSENSE&lt;/strong&gt; (12% off your entire order, valid until September 30, 2026). Combinable with official website deals where applicable – during sitewide promotions the system automatically applies the lowest price, so just check the final price at checkout.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Alternatively via Amazon:&lt;/strong&gt;
👉 &lt;a class="link" href="https://amzn.to/46Dncwk" target="_blank" rel="noopener"
&gt;XSense Smoke Detector Starter Set on Amazon&lt;/a&gt; (affiliate link)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This video was supported by XSense and the devices were provided to me free of charge. Affiliate links: your price stays the same, but you support the work on my channel.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Smart Garage with Shelly Blue: Door, Light &amp; More</title><link>https://smarthome-aber-sicher.de/en/blog/2026/03/05/smart-garage-2.0-garage-door-lighting-automations-with-shelly-blue/</link><pubDate>Thu, 05 Mar 2026 00:00:00 +0100</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/03/05/smart-garage-2.0-garage-door-lighting-automations-with-shelly-blue/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/03/05/smarte-garage-2.0-garagentor-licht-automationen-mit-shelly-blue/cover.jpeg" alt="Featured image of post Smart Garage with Shelly Blue: Door, Light &amp; More" /&gt;&lt;p&gt;About a year ago I had a deceptively simple idea for a video: just show how I made my &lt;strong&gt;garage door smart with a Shelly&lt;/strong&gt;. No big concept, no elaborate production — it was roughly my third video on this channel. I sat at the editing table that evening, thought &amp;ldquo;well, somebody will find it interesting&amp;rdquo; and clicked publish.&lt;/p&gt;
&lt;p&gt;I had absolutely no idea what would come of it.&lt;/p&gt;
&lt;h2 id="the-video-that-changed-everything"&gt;The video that changed everything
&lt;/h2&gt;&lt;p&gt;50 videos later, this &lt;a class="link" href="https://smarthome-aber-sicher.de/sas/shelly/garage" &gt;garage door video&lt;/a&gt; is by far the most watched on the entire channel. Way ahead of everything I&amp;rsquo;ve produced since with considerably more effort. And what surprises me even more than the total numbers: it keeps attracting new viewers to this day. Not as a brief spike after upload, but continuously, week after week, year after year. People who want to &lt;strong&gt;automate their garage door&lt;/strong&gt;, who are searching for a solution with &lt;strong&gt;Home Assistant&lt;/strong&gt;, who just want to see what&amp;rsquo;s possible with a &lt;strong&gt;Shelly&lt;/strong&gt; — they land there. Many stay.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ll admit: that left me speechless for a while. A spontaneous hobby video beats everything else. What does that say about YouTube? No idea. But it tells me something about you — and about the fact that this topic is clearly on a lot of people&amp;rsquo;s minds.&lt;/p&gt;
&lt;h2 id="the-moment-that-triggered-this-video"&gt;The moment that triggered this video
&lt;/h2&gt;&lt;p&gt;One winter not long ago, I was standing in the garage in the morning. I unplug the charging cable from the wallbox — and I&amp;rsquo;m standing in the dark. I&amp;rsquo;d forgotten the light. The garage door to the driveway was still closed. I feel my way to the switch, squeeze past the car, and think to myself: &lt;em&gt;that&amp;rsquo;s ridiculous. I have a smart home. Why isn&amp;rsquo;t the garage smart?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;A dumb question with a long answer — that I wanted to film.&lt;/p&gt;
&lt;p&gt;Since then, I&amp;rsquo;ve gradually rebuilt everything. The light now turns on automatically as soon as I open the door or the garage door moves — controlled via &lt;strong&gt;Shelly BLU motion sensors&lt;/strong&gt; and a &lt;strong&gt;Shelly Mini Gen3&lt;/strong&gt; that replaces the old impulse relay. And yes, the door now opens by itself when I unplug the charging cable in the morning. The logic runs directly on the devices, &lt;strong&gt;locally and independent of the cloud&lt;/strong&gt; — even when my &lt;strong&gt;Home Assistant&lt;/strong&gt; is applying an update and briefly unreachable.&lt;/p&gt;
&lt;p&gt;It wasn&amp;rsquo;t always easy. Getting several &lt;strong&gt;Shelly BLU sensors&lt;/strong&gt; bound locally to one actuator at the same time cost me a few evenings. But the result is a garage where I just drive in in the morning — and everything happens as if by magic.&lt;/p&gt;
&lt;h2 id="whats-in-the-video"&gt;What&amp;rsquo;s in the video
&lt;/h2&gt;&lt;p&gt;If you&amp;rsquo;re currently thinking about upgrading your &lt;strong&gt;smart garage&lt;/strong&gt; — or finally want to tackle the garage door topic — you&amp;rsquo;ll find my complete current setup in the video. From the &lt;strong&gt;Shelly Blue Door Window Sensor&lt;/strong&gt; for garage door state detection to &lt;strong&gt;garage lighting with motion sensors&lt;/strong&gt;, the &lt;strong&gt;wallbox automation&lt;/strong&gt;, and control via &lt;strong&gt;CarPlay and Android Auto&lt;/strong&gt;. Everything from real-world use, nothing staged for the video.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/dA9RcpKY-b8?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_11363751027585282283_hu_40f54ea3ec777255.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;If the video helps you — or if you have your own experience with your garage in &lt;strong&gt;Home Assistant&lt;/strong&gt; — feel free to write it in the comments. Not just because I&amp;rsquo;m genuinely curious, but because exactly these interactions help YouTube show the video to more people who are looking for exactly what you just found.&lt;/p&gt;
&lt;h2 id="hardware-used"&gt;Hardware used
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/44TG20K" target="_blank" rel="noopener"
&gt;Shelly 1PM Mini Gen3&lt;/a&gt;* (also at &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F8975468%2Fshelly-relaismodul-unterputz-plus-1pm-mini-g3-rot" target="_blank" rel="noopener"
&gt;OBI&lt;/a&gt;* or directly at &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;* – code SMARTHOMEABERSICHER-10OFF for 10% off) – replaces the old impulse relay and switches the garage light&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/3TaeLV9" target="_blank" rel="noopener"
&gt;Shelly BLU Motion&lt;/a&gt;* – battery-powered Bluetooth motion sensor Or directly at &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;* (code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4aOVEWL" target="_blank" rel="noopener"
&gt;Shelly BLU Door/Window&lt;/a&gt;* – door/window contact for garage door state detection Or directly at &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;* (code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;230 V:&lt;/strong&gt; The Shelly 1PM Mini replaces an impulse relay in the house wiring. What you need to know before installing it is in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/working-safely-with-mains-voltage/" &gt;Working safely with mains voltage&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="related-articles"&gt;Related articles
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-jalousie/" &gt;Make Roller Shutters Smart Safely with Shelly&lt;/a&gt; – Shelly modules for blinds: the same principle, different application&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-heizung/" &gt;No More Annoying Thermostats! Shelly Makes Your Heating Smart&lt;/a&gt; – Shelly for heating control: autonomous, affordable, local&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/repair-shelly/" &gt;Repair BROKEN Shellys – the 30 CENT repair that actually works!&lt;/a&gt; – When old Shellys act up: a capacitor for 50 cents saves the device&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>DJI Robot Vacuum Hacked: 7,000 Living Rooms Exposed</title><link>https://smarthome-aber-sicher.de/en/blog/2026/03/01/dji-robot-vacuum-hacked-7000-strangers-living-rooms-via-a-master-key/</link><pubDate>Sun, 01 Mar 2026 00:00:00 +0100</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/03/01/dji-robot-vacuum-hacked-7000-strangers-living-rooms-via-a-master-key/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/03/01/dji-saugroboter-gehackt-7000-fremde-wohnzimmer-per-generalschl%C3%BCssel/cover.jpeg" alt="Featured image of post DJI Robot Vacuum Hacked: 7,000 Living Rooms Exposed" /&gt;&lt;p&gt;A few days ago a press release turned up in my feed. I skim a lot of them every day – most I just scroll past. Not this one.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;DJI. Robot vacuum. 7,000 strangers&amp;rsquo; living rooms. A master key.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I read the article twice. And then I knew immediately: a follow-up video was needed.&lt;/p&gt;
&lt;h2 id="the-pattern-that-keeps-repeating"&gt;The pattern that keeps repeating
&lt;/h2&gt;&lt;p&gt;If you&amp;rsquo;ve read my &lt;a class="link" href="https://smarthome-aber-sicher.de/sas/saugroboter" &gt;robot vacuum article&lt;/a&gt;, you might be nodding right now. Back then it was Ecovacs. Hacked robots remotely controlled in real time, chasing pets and shouting slurs through their speakers. I tried to explain back then why that wasn&amp;rsquo;t an absurd one-off incident, but a structural problem with this entire product category.&lt;/p&gt;
&lt;p&gt;And now it&amp;rsquo;s happened again. Different manufacturer. Same category. Same fundamental vulnerability in principle.&lt;/p&gt;
&lt;p&gt;This bothers me – not because I want to vilify robot vacuums, but because I believe most people who buy one simply don&amp;rsquo;t know what&amp;rsquo;s actually happening with their data. With the &lt;strong&gt;floor plan of their home&lt;/strong&gt;. With &lt;strong&gt;camera footage&lt;/strong&gt;, if the model has one. With the question of who, besides themselves, could theoretically access all of that.&lt;/p&gt;
&lt;h2 id="what-happened-this-time"&gt;What happened this time
&lt;/h2&gt;&lt;p&gt;It started innocuously. A French developer, a brand-new &lt;strong&gt;DJI robot vacuum&lt;/strong&gt;, a free evening. The idea: control the robot around the apartment with a &lt;strong&gt;PS5 controller&lt;/strong&gt;. Mario Kart in real life, but with dust bunnies.&lt;/p&gt;
&lt;p&gt;To connect the controller, he needed the key from the app – nothing illegal, it was his own device. But when he used that key with the &lt;strong&gt;DJI server&lt;/strong&gt;, the server didn&amp;rsquo;t just download his own data – it downloaded data from thousands of others. &lt;strong&gt;Over 7,000 robots across 24 countries.&lt;/strong&gt; Battery levels, home floor plans, live camera feeds from strangers&amp;rsquo; living rooms. The key wasn&amp;rsquo;t a normal key. It was a &lt;strong&gt;master key for the entire system.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;DJI patched the vulnerability after it was reported. That&amp;rsquo;s good. But it doesn&amp;rsquo;t change the underlying picture.&lt;/p&gt;
&lt;h2 id="why-i-keep-talking-about-this"&gt;Why I keep talking about this
&lt;/h2&gt;&lt;p&gt;After making this video I naturally asked myself whether I&amp;rsquo;m starting to get repetitive. Robot vacuums again. Privacy again. Same topic again.&lt;/p&gt;
&lt;p&gt;But then I look at the comments under the old video. And I see how many people write that they simply hadn&amp;rsquo;t known how the technology behind it works. Not because they weren&amp;rsquo;t interested. But because hardly anyone explains it without immediately descending into panic or buzzwords.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s exactly what I want to do differently. No moralising, no fearmongering. Just: here are the facts. Here&amp;rsquo;s what they mean. And here are three concrete things you can do – if you want to. What you do with a &lt;strong&gt;camera-equipped robot vacuum&lt;/strong&gt; in your home is your decision. I just want that decision to be an informed one.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/gQ7-loIWzzY?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_10861157772701633233_hu_5d525a87e68c8de2.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;If you already have a view on this – or you have a &lt;strong&gt;robot vacuum&lt;/strong&gt; at home and feel a quiet unease stirring – write it in the comments. I genuinely appreciate every perspective. And yes, every comment helps the video reach more people who are asking themselves exactly these questions for the first time.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;Sources:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://www.heise.de/news/Sicherheitsluecke-bei-Saugrobotern-Tueftler-erhaelt-Zugriff-auf-tausende-Geraete-11179726.html" target="_blank" rel="noopener"
&gt;Heise: Security vulnerability in robot vacuums – developer gains access to thousands of devices&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.golem.de/news/sicherheitsluecke-dji-saugroboter-gab-zugriff-auf-tausende-fremde-geraete-2502-195000.html" target="_blank" rel="noopener"
&gt;Golem: Security vulnerability – DJI robot vacuum gave access to thousands of foreign devices&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>3 Smart Home devices I would buy AGAIN and again!</title><link>https://smarthome-aber-sicher.de/en/blog/2026/02/01/3-smart-home-devices-i-would-buy-again-and-again/</link><pubDate>Sun, 01 Feb 2026 08:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/02/01/3-smart-home-devices-i-would-buy-again-and-again/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/02/01/3-smarthome-ger%C3%A4te-die-ich-immer-wieder-kaufen-w%C3%BCrde/cover.jpeg" alt="Featured image of post 3 Smart Home devices I would buy AGAIN and again!" /&gt;&lt;p&gt;&lt;strong&gt;What makes a smart home device a true workhorse?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Many devices promise a lot – but which ones actually run reliably year after year? In my new video I share my personal top 3 that have been running without issues for years and genuinely improve my daily life.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Why I have 34 Shelly actuators installed and what makes them so special&lt;/li&gt;
&lt;li&gt;How 7 Aqara motion sensors provide comfort and automation (and why I wouldn&amp;rsquo;t want to live without them)&lt;/li&gt;
&lt;li&gt;What Homematic window contacts with 15 years of longevity teach you about &amp;ldquo;never change a running system&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;👉 &lt;strong&gt;Curious? The video shows all the details, practical examples and my golden rules for long-lasting smart home installations!&lt;/strong&gt;&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/A_dvY8rgkrs?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_10105384081013411400_hu_44d1762cac23b44a.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;&lt;strong&gt;Chapters &amp;amp; Topics:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Intro: What makes a good smart home device?&lt;/li&gt;
&lt;li&gt;Shelly in-wall actuators: Reliability &amp;amp; favourite projects&lt;/li&gt;
&lt;li&gt;Aqara motion sensors: Comfort gains &amp;amp; automation&lt;/li&gt;
&lt;li&gt;Homematic window contacts: 15 years of staying power&lt;/li&gt;
&lt;li&gt;Golden rules for smart home purchases&lt;/li&gt;
&lt;li&gt;Community question &amp;amp; outlook&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Join the discussion:&lt;/strong&gt;
Which device is YOUR smart home workhorse? What has been running absolutely flawlessly for you for years? Share your experience in the comments – your favourite might end up in the next video!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;My three long-runners on Amazon&lt;/strong&gt; (affiliate links): &lt;a class="link" href="https://amzn.to/3Sgj2CW" target="_blank" rel="noopener"
&gt;Shelly Plus 1 PM&lt;/a&gt; · &lt;a class="link" href="https://amzn.to/4h8V8qp" target="_blank" rel="noopener"
&gt;Aqara Motion Sensor P1&lt;/a&gt; · &lt;a class="link" href="https://amzn.to/3SVZWFI" target="_blank" rel="noopener"
&gt;Homematic IP door/window contact&lt;/a&gt; — you&amp;rsquo;ll also find the Shellys at &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F2191122017637%2Fshelly-smart-relais-1pm-unterputz-gen4-4er-pack" target="_blank" rel="noopener"
&gt;OBI as a 4-pack&lt;/a&gt;. Or directly at Shelly: &lt;strong&gt;&lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;&lt;/strong&gt; (affiliate link, code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Transparency: Some links in the video and blog are affiliate links. The price stays the same for you, but you support my work. Thank you!&lt;/em&gt;&lt;/p&gt;</description></item><item><title>3 Smart Home fails: devices I would NOT buy today!</title><link>https://smarthome-aber-sicher.de/en/blog/2026/01/25/3-smart-home-fails-devices-i-would-not-buy-today/</link><pubDate>Sun, 25 Jan 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/01/25/3-smart-home-fails-devices-i-would-not-buy-today/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/01/25/3-smarthome-fails-diese-ger%C3%A4te-w%C3%BCrde-ich-heute-nicht-mehr-kaufen/cover.png" alt="Featured image of post 3 Smart Home fails: devices I would NOT buy today!" /&gt;&lt;p&gt;Imagine: you get up in the morning, want to raise the blind – and nothing happens. Try the app? Nothing. Try the physical switch directly? Dead. And here&amp;rsquo;s the kicker: the fault is buried deep inside a wall-mounted junction box.&lt;/p&gt;
&lt;p&gt;That was the moment I realised: my smart home had just turned into a nightmare. &lt;strong&gt;And I&amp;rsquo;m not alone with experiences like this.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Today I&amp;rsquo;m showing you three devices that made it very clear to me where smart home can really go wrong. Not theoretical problems – but &lt;strong&gt;real fails that cost me time, money and nerves&lt;/strong&gt;. We&amp;rsquo;re talking about 14 actuators all failing. A robot vacuum that became useless overnight. And false alarms waking me up in the middle of the night.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Watch the video&lt;/strong&gt; – I demonstrate the problems live and show you what you can learn from them.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/T4y-lM1jtz8?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_15816590183337838966_hu_b00932e9a91408ab.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="fail-1-shelly-25--when-14-actuators-died-at-the-same-time"&gt;Fail #1: Shelly 2.5 – When 14 actuators died at the same time
&lt;/h2&gt;&lt;h3 id="the-slow-death-inside-the-wall"&gt;The slow death inside the wall
&lt;/h3&gt;&lt;p&gt;This is a Shelly 2.5 – an actuator for roller shutters and blinds. I have 14 of them installed. Fourteen! Nearly all in junction boxes, permanently wired behind wallpaper and plaster. My expectation was pretty clear: &lt;strong&gt;install once, close up, forget it. Set and forget.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;On the software side I was happy for a long time: locally controllable, great Home Assistant integration, no cloud dependency. Exactly what you want.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;And then the drama began.&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="the-same-defect--14-times"&gt;The same defect – 14 times
&lt;/h3&gt;&lt;p&gt;In all – yes, literally &lt;strong&gt;all&lt;/strong&gt; – of these Shelly 2.5 actuators, one component failed after some time, one by one. All fourteen, always the same defect. Morning routine, raise the blind? Nothing. App? Nothing. Physical switch? Dead.&lt;/p&gt;
&lt;p&gt;Now here&amp;rsquo;s the real nightmare: these things are of course sitting in junction boxes. That means: &lt;strong&gt;open the wall, pull out the actuator, desolder the capacitor, solder in a new one, reinstall, close the wall. Per actuator. Fourteen times.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;That was a genuine maintenance disaster for me. And I&amp;rsquo;m not alone. There are masses of reports about this Shelly generation online.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you exactly what went wrong&lt;/strong&gt; and how I carried out the repair. The detailed repair guide is in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/repair-shelly" &gt;this separate article&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id="small-consolation-repair-is-possible"&gt;Small consolation: repair is possible
&lt;/h3&gt;&lt;p&gt;With a soldering iron you can swap the faulty component for a few cents in parts. Before that: breaker off and verify the circuit is dead, more in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/working-safely-with-mains-voltage/" &gt;Working safely with mains voltage&lt;/a&gt;. But honestly: &lt;strong&gt;do you really want to open 14 wall boxes and replace capacitors?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Important note: this problem affects specifically the Shelly 2.5. The successors &lt;strong&gt;Shelly Plus 2PM&lt;/strong&gt; and the Gen 3 and Gen 4 are ones I use heavily myself and have had zero failures with so far. So this isn&amp;rsquo;t about bashing the manufacturer across the board.&lt;/p&gt;
&lt;h3 id="the-key-lesson"&gt;The key lesson
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Wait for long-term community experience before buying new products.&lt;/strong&gt; First generation? Let others be the testers. Second generation with solid reviews over a year? Then go ahead.&lt;/p&gt;
&lt;h2 id="fail-2-shark-robot-vacuum--when-the-cloud-kills-your-integration"&gt;Fail #2: Shark robot vacuum – When the cloud kills your integration
&lt;/h2&gt;&lt;h3 id="from-smart-home-star-to-useless-appliance"&gt;From smart home star to useless appliance
&lt;/h3&gt;&lt;p&gt;The second device frustrated me in a completely different way. It&amp;rsquo;s about my Shark robot vacuum. And upfront: &lt;strong&gt;the hardware is perfectly fine.&lt;/strong&gt; It vacuums well, navigates decently, does its job.&lt;/p&gt;
&lt;p&gt;For months I had it deeply integrated into my smart home. Built automations along the lines of: &amp;ldquo;When nobody&amp;rsquo;s home, start cleaning.&amp;rdquo; The Home Assistant integration ran perfectly. This wasn&amp;rsquo;t a toy – &lt;strong&gt;it was a solid, reliable part of my daily routine.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Watch in the video&lt;/strong&gt; how well the system worked – before everything fell apart.&lt;/p&gt;
&lt;h3 id="one-app-update-one-dead-integration"&gt;One app update. One dead integration.
&lt;/h3&gt;&lt;p&gt;And then, one morning: automation triggers – nothing happens. Home Assistant shows: connection lost. Maybe a bug? Open the app – it works. Robot starts via app. But the Home Assistant integration? &lt;strong&gt;Dead. Still dead weeks later. Permanently.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;What happened? The Shark app had updated itself automatically – as apps do. Completely normal, in the background. Without me actively deciding anything or consciously triggering it.&lt;/p&gt;
&lt;p&gt;But with this update, something had changed in the cloud interface. The result: &lt;strong&gt;the Home Assistant integration was broken. No workaround, no fallback, no local API.&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="the-moment-of-realisation"&gt;The moment of realisation
&lt;/h3&gt;&lt;p&gt;That was the moment I understood: &lt;strong&gt;I didn&amp;rsquo;t buy a device I&amp;rsquo;m in control of.&lt;/strong&gt; I bought a device whose capabilities can change at any time via a server update. Without my consent. Without warning. And I can do nothing about it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I explain in depth&lt;/strong&gt; why this is a fundamental problem with many cloud-dependent devices.&lt;/p&gt;
&lt;p&gt;Imagine buying a car – and a year later the manufacturer says: &amp;ldquo;Sorry, the radio only works with our app now.&amp;rdquo; That&amp;rsquo;s exactly what happened here. Except that the &amp;ldquo;radio&amp;rdquo; in my case was the entire smart home integration.&lt;/p&gt;
&lt;h3 id="the-lesson-an-exit-strategy-is-mandatory"&gt;The lesson: an exit strategy is mandatory
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Cloud is convenient – but you always need an exit strategy.&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Is there a local API?&lt;/li&gt;
&lt;li&gt;Can I flash alternative firmware?&lt;/li&gt;
&lt;li&gt;Does the device work without internet?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Bose recently handed us a similar case. If that interests you, here&amp;rsquo;s &lt;a class="link" href="https://smarthome-aber-sicher.de/bose-soundtouch-open-source" &gt;the article about Bose SoundTouch&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="fail-3-sonoff-zigbee-motion-sensor--the-night-time-false-alarms"&gt;Fail #3: Sonoff Zigbee motion sensor – The night-time false alarms
&lt;/h2&gt;&lt;h3 id="bought-cheap-paid-dearly"&gt;Bought cheap, paid dearly
&lt;/h3&gt;&lt;p&gt;The third device looks harmless at first glance: &lt;strong&gt;a Sonoff Zigbee motion sensor&lt;/strong&gt;. Cheap, bought 10 of them, quickly integrated, classic use case for lighting automations.&lt;/p&gt;
&lt;p&gt;And at first I thought: okay, maybe a bit sensitive. Adjust the calibration, reduce the range, tried everything.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But then reality hit:&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="the-night-time-horror"&gt;The night-time horror
&lt;/h3&gt;&lt;p&gt;Middle of the night – light comes on. I wake up, fall back asleep. Half an hour later: again. Three, four times per night. &lt;strong&gt;After two weeks I was nearly going mad.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I first thought: a bug in my automation. Checked all the logs. But no: the sensor is genuinely reporting motion. Where there isn&amp;rsquo;t any.&lt;/p&gt;
&lt;p&gt;Same during the day. Light comes on when nobody&amp;rsquo;s in the room. Shadow from outside? Reflection? An insect on the sensor? No idea. &lt;strong&gt;But it doesn&amp;rsquo;t matter – because the result is the same: the system isn&amp;rsquo;t reliable.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I demonstrate&lt;/strong&gt; what these false triggers feel like and what impact they have on your trust in the system.&lt;/p&gt;
&lt;h3 id="unreliability-is-the-death-of-any-automation"&gt;Unreliability is the death of any automation
&lt;/h3&gt;&lt;p&gt;In my view, this is the death of any automation. Because sooner or later you start disabling automations. Deactivating sensors. &lt;strong&gt;You lose trust in the system.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I replaced these sensors consistently with &lt;strong&gt;Aqara motion sensors&lt;/strong&gt;. More discreet, significantly more reliable – and suddenly the system works. No more false triggers. No more waking up at night. Just: &lt;strong&gt;it works&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="not-a-brand-problem-but-a-product-problem"&gt;Not a brand problem, but a product problem
&lt;/h3&gt;&lt;p&gt;Important: this isn&amp;rsquo;t a general Sonoff problem. I use plenty of other Sonoff devices myself – Sonoff Basic or S20 plug switches for example – flashed with Tasmota. Local, no cloud, rock-solid for years. Except once, a capacitor issue there too – but that stayed a one-off.&lt;/p&gt;
&lt;p&gt;The motion sensor is therefore a specific product problem, not a brand problem.&lt;/p&gt;
&lt;h3 id="the-lesson-test-first-then-scale-up"&gt;The lesson: test first, then scale up
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Test sensors in everyday use before buying ten of them.&lt;/strong&gt; One sensor for €10 is cheap – but ten faulty sensors are €100 of e-waste.&lt;/p&gt;
&lt;p&gt;Unreliable sensors cannot be &amp;ldquo;optimised&amp;rdquo;. No tuning, no configuration makes a bad sensor good. &lt;strong&gt;Replacing them decisively is the only solution.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="three-golden-rules-for-your-smart-home-purchases"&gt;Three golden rules for your smart home purchases
&lt;/h2&gt;&lt;p&gt;From these three fails I&amp;rsquo;ve developed three rules I explain in detail in the video:&lt;/p&gt;
&lt;h3 id="rule-1-have-an-exit-strategy"&gt;Rule 1: Have an exit strategy
&lt;/h3&gt;&lt;p&gt;Ask yourself:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Is there a local API?&lt;/li&gt;
&lt;li&gt;Can I flash alternative firmware?&lt;/li&gt;
&lt;li&gt;Does the device work without internet?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;If all the answers are &amp;ldquo;no&amp;rdquo; – think very carefully before buying.&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="rule-2-wait-for-community-experience"&gt;Rule 2: Wait for community experience
&lt;/h3&gt;&lt;p&gt;Wait for long-term reviews. Read user reports. &lt;strong&gt;Only install critical actuators where you can reach them again if needed.&lt;/strong&gt; So junction boxes only with absolutely proven hardware.&lt;/p&gt;
&lt;h3 id="rule-3-test-sensors-thoroughly"&gt;Rule 3: Test sensors thoroughly
&lt;/h3&gt;&lt;p&gt;Testing one sensor in real life for two weeks might cost you €10. &lt;strong&gt;Test first, then buy. Not the other way around.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="the-opposite-the-best-devices"&gt;The opposite: the best devices
&lt;/h2&gt;&lt;p&gt;If you want, in the next video I&amp;rsquo;ll do exactly the opposite: &lt;strong&gt;Three devices that have run absolutely reliably for years.&lt;/strong&gt; That I would buy again immediately. That cost me zero maintenance.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Watch the video and write &amp;ldquo;YES&amp;rdquo; in the comments&lt;/strong&gt; if that interests you!&lt;/p&gt;
&lt;p&gt;Or do you have a smart home device you could throw against the wall? What was your biggest fail? I&amp;rsquo;m looking forward to your stories in the comments!&lt;/p&gt;</description></item><item><title>Open Source Saves Bose SoundTouch – Bose Backs Down</title><link>https://smarthome-aber-sicher.de/en/blog/2026/01/18/bose-had-to-back-down-open-source-community-saves-soundtouch-speakers/</link><pubDate>Sun, 18 Jan 2026 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/01/18/bose-had-to-back-down-open-source-community-saves-soundtouch-speakers/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/01/18/bose-musste-zur%C3%BCckrudern-open-source-community-rettet-soundtouch-lautsprecher/cover.png" alt="Featured image of post Open Source Saves Bose SoundTouch – Bose Backs Down" /&gt;&lt;h2 id="the-turnaround-when-community-pressure-works"&gt;The Turnaround: When Community Pressure Works
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Update to my article from November 2025:&lt;/strong&gt; Remember? &lt;a class="link" href="https://smarthome-aber-sicher.de/cloud-ausgeschaltet" &gt;Bose wanted to shut down the cloud for SoundTouch&lt;/a&gt;, leaving €1,000 speakers stripped of their most important features. Now there&amp;rsquo;s a spectacular twist!&lt;/p&gt;
&lt;p&gt;On January 12, 2026, Golem reported: &lt;strong&gt;Bose does a 180°&lt;/strong&gt; and releases the SoundTouch speakers&amp;rsquo; Web API as &lt;strong&gt;Open Source&lt;/strong&gt;. The community has won!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I walk you through the whole story&lt;/strong&gt; – why this development affects EVERY smart home user, not just Bose owners. Because this is a &lt;strong&gt;precedent for the entire industry&lt;/strong&gt;.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/8X5RNRqgrYc?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_1023107552219721836_hu_17df13f46950e3b6.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-exactly-happened"&gt;What Exactly Happened?
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Make sure to watch the video&lt;/strong&gt; – there I explain all the details. Here are the key points:&lt;/p&gt;
&lt;h3 id="1-bose-opens-up-the-api"&gt;1. Bose Opens Up the API
&lt;/h3&gt;&lt;p&gt;Instead of simply shutting down the cloud, Bose has now released the &lt;strong&gt;Web API as Open Source&lt;/strong&gt;. This allows developers to build their own solutions and use the speakers without the Bose cloud.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Bose&amp;rsquo;s reasoning:&lt;/strong&gt; They want to &amp;ldquo;support the open-source community&amp;rdquo; and give interested parties &amp;ldquo;the opportunity to develop alternatives.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;This is a complete reversal from the original &amp;ldquo;we&amp;rsquo;re just pulling the plug&amp;rdquo; approach. &lt;strong&gt;In the video I show why this is so significant!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="2-more-time-for-development"&gt;2. More Time for Development
&lt;/h3&gt;&lt;p&gt;The shutdown was pushed back from &lt;strong&gt;February 2026&lt;/strong&gt; to &lt;strong&gt;May 6, 2026&lt;/strong&gt;. This gives the community &lt;strong&gt;three additional months&lt;/strong&gt; to develop working alternatives.&lt;/p&gt;
&lt;h3 id="3-the-app-stays-available"&gt;3. The App Stays Available
&lt;/h3&gt;&lt;p&gt;Originally, Bose planned to remove the SoundTouch app entirely from the Play Store and App Store. That was reversed – &lt;strong&gt;the app remains available&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="the-community-was-ahead-of-bose"&gt;The Community Was Ahead of Bose
&lt;/h2&gt;&lt;p&gt;The most exciting part of this whole story: the open source community was &lt;strong&gt;ahead of Bose&lt;/strong&gt;!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Before&lt;/strong&gt; Bose even released the API, there were already &lt;a class="link" href="https://github.com/topics/soundtouch" target="_blank" rel="noopener"
&gt;projects on Github&lt;/a&gt; working to keep the speakers usable after the server shutdown. Those projects can now be developed much more easily and reliably thanks to the official API release.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you concrete examples&lt;/strong&gt; of these community projects and explain what this means for the future.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Github projects&lt;/strong&gt; are already working on alternatives to the Bose cloud – and are now getting official support from the manufacturer.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="what-still-works-after-may"&gt;What Still Works After May?
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;To be clear&lt;/strong&gt; – the cloud is still being shut down. In the video I go into detail about what that means in practice:&lt;/p&gt;
&lt;h3 id="-gone-after-may-6-2026"&gt;❌ Gone after May 6, 2026:
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Direct music streaming&lt;/strong&gt; via the SoundTouch app&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reassigning station buttons&lt;/strong&gt; (existing assignments may continue to work)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloud-based services&lt;/strong&gt; (TuneIn, etc.)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="-still-functional"&gt;✅ Still functional:
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Bluetooth&lt;/strong&gt; (with the usual range limitations)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AirPlay&lt;/strong&gt; (for Apple users)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Spotify Connect&lt;/strong&gt; (if you have a Spotify subscription)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wired inputs&lt;/strong&gt; (AUX, HDMI, optical)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Local playback control&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Watch the video&lt;/strong&gt; for a complete analysis of what this means in practice!&lt;/p&gt;
&lt;h2 id="why-this-should-matter-to-you--even-without-bose"&gt;Why This Should Matter to You – Even Without Bose
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;This is the most important message of this article:&lt;/strong&gt; This story affects every smart home user, not just Bose owners. &lt;strong&gt;In the video I explain in detail why this sets a precedent for the entire industry.&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="three-important-lessons"&gt;Three Important Lessons:
&lt;/h3&gt;&lt;h3 id="1-community-power-works"&gt;1. Community Power Works
&lt;/h3&gt;&lt;p&gt;Public attention, critical coverage, and active community engagement can push manufacturers to rethink their decisions. Bose could have simply pulled the plug – but didn&amp;rsquo;t.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show&lt;/strong&gt; how public pressure made a concrete difference.&lt;/p&gt;
&lt;h3 id="2-open-source-protects-your-investments"&gt;2. Open Source Protects Your Investments
&lt;/h3&gt;&lt;p&gt;The more open the systems, the less dependent you are on the manufacturer. Even if a manufacturer drops support, the community can take over the project.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I analyze&lt;/strong&gt; what this means for your future buying decisions.&lt;/p&gt;
&lt;h3 id="3-new-buying-criteria-for-smart-home"&gt;3. New Buying Criteria for Smart Home
&lt;/h3&gt;&lt;p&gt;Before your next purchase, ask:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Is there an open API?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Does an active community exist?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Does the device work locally without the cloud?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Are there already open source alternatives?&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video I give you&lt;/strong&gt; a detailed checklist for your next smart home purchase.&lt;/p&gt;
&lt;h2 id="what-does-this-mean-for-other-manufacturers"&gt;What Does This Mean for Other Manufacturers?
&lt;/h2&gt;&lt;p&gt;The Bose case sends a clear signal to Vorwerk, Belkin, Logitech, Philips, and all other manufacturers shutting down their cloud services:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The community doesn&amp;rsquo;t give up.&lt;/strong&gt; If you shut down your cloud, the community will build alternatives. Better to support that actively – the way Bose is doing now.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;In the video I explain&lt;/strong&gt; why manufacturers can actually benefit from this development:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Save their reputation&lt;/strong&gt; instead of permanently damaging it&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Retain existing customers&lt;/strong&gt; instead of losing them&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Build trust&lt;/strong&gt; for future products&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Watch the video&lt;/strong&gt; for the full analysis!&lt;/p&gt;
&lt;h2 id="practical-tips-for-soundtouch-owners"&gt;Practical Tips for SoundTouch Owners
&lt;/h2&gt;&lt;p&gt;If you own a SoundTouch speaker, &lt;strong&gt;in the video I show you exactly&lt;/strong&gt; what you should do now:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Stay informed&lt;/strong&gt;: Follow the &lt;a class="link" href="https://github.com/topics/soundtouch" target="_blank" rel="noopener"
&gt;Github projects&lt;/a&gt; and community forums&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Test alternatives&lt;/strong&gt;: Try out Bluetooth, AirPlay, or Spotify Connect now&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Support the community&lt;/strong&gt;: If you can code – join the open source projects!&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Be patient&lt;/strong&gt;: The projects still need time until May 6, 2026&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;All links to the community projects&lt;/strong&gt; can be found in the video description!&lt;/p&gt;
&lt;h2 id="conclusion-a-win-win-situation"&gt;Conclusion: A Win-Win Situation
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;At the end of the day, this is a win-win for everyone involved:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For Bose:&lt;/strong&gt; Cloud costs saved, reputation partially rescued&lt;br&gt;
&lt;strong&gt;For users:&lt;/strong&gt; Devices remain usable, new possibilities through open source&lt;br&gt;
&lt;strong&gt;For the community:&lt;/strong&gt; An important precedent for the future&lt;/p&gt;
&lt;p&gt;This shows: &lt;strong&gt;Smart home can be sustainable&lt;/strong&gt; – when manufacturers and communities work together rather than against each other.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I analyze&lt;/strong&gt; what this development means for the smart home industry in the long run.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="connection-to-my-first-article"&gt;Connection to My First Article
&lt;/h2&gt;&lt;p&gt;This article is an update to: &lt;a class="link" href="https://smarthome-aber-sicher.de/cloud-ausgeschaltet" &gt;When Your Smart Home Suddenly Gets Dumb – and What You Can Do About It&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;There I described the problem; here I show the resolution. Exactly how it should work!&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="sources-and-further-links"&gt;Sources and Further Links
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://www.golem.de/news/bose-produkte-verlieren-funktionen-open-source-gemeinschaft-will-soundtouch-lautsprecher-retten-2601-204054.html" target="_blank" rel="noopener"
&gt;Golem.de: Open-Source-Gemeinschaft will Soundtouch-Lautsprecher retten&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/topics/soundtouch" target="_blank" rel="noopener"
&gt;Github: SoundTouch Open Source Projects&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://youtu.be/xNlPdCodqAY" target="_blank" rel="noopener"
&gt;My first video: When Your Smart Home Suddenly Gets Dumb&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;Did this article help you?&lt;/strong&gt; Share it with other SoundTouch owners! For more articles on secure and sustainable smart home solutions, browse the rest of the blog.&lt;/p&gt;
&lt;style&gt;
.bmc-btn svg {
height: 32px !important;
margin-bottom: 0px !important;
box-shadow: none !important;
border: none !important;
vertical-align: middle !important;
transform: scale(0.9);
flex-shrink: 0;
}
.bmc-btn {
width: 100%;
color: #000000;
height: 50px;
border-radius: 12px;
font-size: 24px;
font-weight: bold;
border: none;
margin-left: 8px;
padding: 0px 24px;
line-height: 27px;
text-decoration: none !important;
display: flex !important;
justify-content: center;
align-items: center;
font-family: 'Lato', cursive !important;
-webkit-box-sizing: border-box !important;
box-sizing: border-box !important;
}
.bmc-btn:hover, .bmc-btn:active, .bmc-btn:focus {
text-decoration: none !important;
cursor: pointer;
}
.bmc-btn-text {
text-align: center;
margin-top: 8px;
font-size: 12x;
}
.logo-outline {
fill: #000000;
}
.logo-coffee {
fill: #FFDD00;
}
&lt;/style&gt;
&lt;div class="bmc-btn-container" style="text-align: center;"&gt;
&lt;img src="https://smarthome-aber-sicher.de/img/bank_qr.png" alt="QR Code" class="bmc-btn" style="max-width: 200px; height: auto; display: block; margin: 0 auto;"&gt;
&lt;div class="bmc-btn-text"&gt;Scan this code with your banking app!&lt;/div&gt;
&lt;/div&gt;</description></item><item><title>Zigbee Soil Moisture Sensor Tested: Never Overwater</title><link>https://smarthome-aber-sicher.de/en/blog/2026/01/11/never-water-wrong-again-zigbee-soil-moisture-sensor-in-real-world-testing/</link><pubDate>Sun, 11 Jan 2026 08:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/01/11/never-water-wrong-again-zigbee-soil-moisture-sensor-in-real-world-testing/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/01/11/nie-wieder-falsch-gie%C3%9Fen-zigbee-bodenfeuchtesensor-im-praxistest/cover.png" alt="Featured image of post Zigbee Soil Moisture Sensor Tested: Never Overwater" /&gt;&lt;p&gt;Does this sound familiar? You&amp;rsquo;re standing in front of your potted plants wondering: &lt;strong&gt;Is the soil too dry or too moist?&lt;/strong&gt; Should I water now or hold off? Especially with a drip irrigation system, this question keeps coming up.&lt;/p&gt;
&lt;p&gt;A &lt;strong&gt;Zigbee soil moisture sensor&lt;/strong&gt; promises to help – finally delivering objective data instead of guesswork. But does the device actually hold up in practice? I&amp;rsquo;ve been testing the &lt;strong&gt;NEO Zigbee Soil Moisture Sensor&lt;/strong&gt; for two weeks in everyday use – with Home Assistant and Zigbee2MQTT.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;See the results in the video!&lt;/strong&gt;&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/0YprK_mlGrY?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_1545930114069375832_hu_249c674a47ce6e49.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="the-problem-watering-by-feel"&gt;The Problem: Watering by Feel
&lt;/h2&gt;&lt;h3 id="potted-plants-and-drip-irrigation"&gt;Potted Plants and Drip Irrigation
&lt;/h3&gt;&lt;p&gt;I have several potted plants on my balcony and installed a &lt;strong&gt;drip irrigation system&lt;/strong&gt; a while back. Sounds smart – but the question remains:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;How do I set up the irrigation correctly?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Is the soil too dry or too moist?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Am I watering too much or too little?&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This is exactly where the soil moisture sensor comes in: &lt;strong&gt;Objective measurements instead of gut feelings!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="the-neo-zigbee-soil-moisture-sensor"&gt;The NEO Zigbee Soil Moisture Sensor
&lt;/h2&gt;&lt;h3 id="what-can-it-do"&gt;What Can It Do?
&lt;/h3&gt;&lt;p&gt;The &lt;strong&gt;NEO Zigbee Soil Moisture Sensor&lt;/strong&gt; (model NAS-STH01B2) measures two important values:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Soil moisture in percent&lt;/strong&gt; – how moist is the soil?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Soil temperature&lt;/strong&gt; – how warm is the ground?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The device communicates via Zigbee&lt;/strong&gt; and runs on three AA batteries. It is specifically designed for &lt;strong&gt;outdoor use&lt;/strong&gt; – for indoor plants it would simply be too large.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show the device in detail&lt;/strong&gt; and explain what to watch out for during installation!&lt;/p&gt;
&lt;h3 id="oem-products-why-do-so-many-look-the-same"&gt;OEM Products: Why Do So Many Look the Same?
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Watch out:&lt;/strong&gt; If you search for soil moisture sensors on Amazon, you&amp;rsquo;ll notice that many devices &lt;strong&gt;look exactly the same&lt;/strong&gt; – just with different brand names.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The reason:&lt;/strong&gt; NEO is a so-called &lt;strong&gt;OEM manufacturer&lt;/strong&gt; (Original Equipment Manufacturer). This means:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The hardware comes from NEO&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Other companies sell it under their own name&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Technically the devices are identical&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The price can vary significantly though – &lt;strong&gt;currently between €20 and €30 on Amazon&lt;/strong&gt;. A different price doesn&amp;rsquo;t automatically mean better or worse technology. Often you&amp;rsquo;re simply paying for branding.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I explain the concept in more detail&lt;/strong&gt; and show you what to look for when buying!&lt;/p&gt;
&lt;h2 id="build-quality-and-housing"&gt;Build Quality and Housing
&lt;/h2&gt;&lt;h3 id="how-good-is-the-quality"&gt;How Good Is the Quality?
&lt;/h3&gt;&lt;p&gt;Especially for sensors that sit in moist soil outdoors, &lt;strong&gt;build quality is crucial&lt;/strong&gt;. I took a close look at the device:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The package contents are exemplary:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Battery cover&lt;/strong&gt; secured with a screw&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Remaining screws including a screwdriver&lt;/strong&gt; included in the box&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rubber plugs&lt;/strong&gt; for sealing against moisture&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="inserting-batteries-and-sealing-the-housing"&gt;Inserting Batteries and Sealing the Housing
&lt;/h3&gt;&lt;p&gt;The battery compartment holds &lt;strong&gt;three AA batteries&lt;/strong&gt; in a somewhat unusual arrangement. After inserting the batteries, the screws are tightened and the &lt;strong&gt;rubber plugs inserted&lt;/strong&gt; to seal the housing against moisture.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;One important point:&lt;/strong&gt; According to the instructions, the metal prongs should be &lt;strong&gt;completely in the soil&lt;/strong&gt; for correct measurements.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video you can see every step of the installation live!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="integration-in-home-assistant-with-zigbee2mqtt"&gt;Integration in Home Assistant with Zigbee2MQTT
&lt;/h2&gt;&lt;h3 id="zigbee-pairing-unremarkable-and-quick"&gt;Zigbee Pairing: Unremarkable and Quick
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Connecting to Home Assistant&lt;/strong&gt; via Zigbee2MQTT was done &lt;strong&gt;in a matter of seconds&lt;/strong&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Press and hold the button&lt;/strong&gt; – activate Zigbee pairing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sensor is automatically detected&lt;/strong&gt; – done!&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Several entities then appear:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Soil moisture&lt;/strong&gt; (in percent)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Temperature&lt;/strong&gt; (in 0.5-degree steps)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Battery status&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Additional entities&lt;/strong&gt; such as alarms or thresholds&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The extra entities come from the Tuya app world. In Home Assistant I honestly don&amp;rsquo;t need them – I prefer to build my own &lt;strong&gt;automations&lt;/strong&gt; directly in Home Assistant.&lt;/p&gt;
&lt;h3 id="temperature-in-05-degree-steps"&gt;Temperature in 0.5-Degree Steps
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;One notable point:&lt;/strong&gt; The temperature is reported in &lt;strong&gt;0.5-degree increments&lt;/strong&gt;. This may seem coarse at first, but is completely normal:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Either the &lt;strong&gt;sensor resolution&lt;/strong&gt; is that precise&lt;/li&gt;
&lt;li&gt;Or it&amp;rsquo;s a deliberately set &lt;strong&gt;Zigbee reporting threshold&lt;/strong&gt; to save battery&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For plant care, 0.5-degree steps are more than sufficient!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you all the entities in detail&lt;/strong&gt; and explain which ones are really useful.&lt;/p&gt;
&lt;h2 id="real-world-test-two-weeks-in-everyday-use"&gt;Real-World Test: Two Weeks in Everyday Use
&lt;/h2&gt;&lt;h3 id="how-do-the-readings-behave"&gt;How Do the Readings Behave?
&lt;/h3&gt;&lt;p&gt;I had the sensor &lt;strong&gt;log data in Home Assistant for two weeks&lt;/strong&gt;. &lt;strong&gt;The result:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The readings appear plausible&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;With dry soil the value drops continuously&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;After watering it rises noticeably&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;With a small time delay&lt;/strong&gt; – completely normal&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The Zigbee connection was flawless&lt;/strong&gt; – no dropouts, no connectivity issues.&lt;/p&gt;
&lt;h3 id="battery-status-useful"&gt;Battery Status: Useful?
&lt;/h3&gt;&lt;p&gt;Some Zigbee devices perform poorly when it comes to battery status – delivering completely unreliable values. With the NEO sensor I can&amp;rsquo;t make a final judgment after just two weeks.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Should I notice anything unusual&lt;/strong&gt;, I&amp;rsquo;ll report back in the video description, in the comments, or in an additional update video.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;I cover all of this in the video – make sure to watch it!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="why-three-aa-batteries-instead-of-a-coin-cell"&gt;Why Three AA Batteries Instead of a Coin Cell?
&lt;/h2&gt;&lt;h3 id="active-measurement-needs-more-power"&gt;Active Measurement Needs More Power
&lt;/h3&gt;&lt;p&gt;You might be wondering: &lt;strong&gt;Why three AA batteries&lt;/strong&gt;, when other Zigbee sensors get by with a CR2032 coin cell?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The answer is simple:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Soil moisture is actively measured&lt;/strong&gt; – current flows through the soil between the metal prongs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;This requires significantly more energy&lt;/strong&gt; than, for example, a door contact or temperature sensor&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zigbee itself is extremely efficient&lt;/strong&gt; – the energy consumption primarily comes from the measuring principle&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The stated runtime of &lt;strong&gt;approximately one year&lt;/strong&gt; is on the conservative side. How long the sensor actually lasts in practice remains to be seen.&lt;/p&gt;
&lt;h3 id="alternative-version-with-solar-panel--rechargeable-battery"&gt;Alternative: Version with Solar Panel &amp;amp; Rechargeable Battery
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Good news:&lt;/strong&gt; There&amp;rsquo;s also a &lt;strong&gt;version with a built-in solar panel and rechargeable battery&lt;/strong&gt; instead of disposable batteries. If you want to avoid changing batteries, you can find this version in the product list as well.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I explain both versions in detail&lt;/strong&gt; and show you which one is right for you!&lt;/p&gt;
&lt;h2 id="assessment--conclusion"&gt;Assessment &amp;amp; Conclusion
&lt;/h2&gt;&lt;h3 id="no-high-tech-precision--but-practical"&gt;No High-Tech Precision – But Practical!
&lt;/h3&gt;&lt;p&gt;The NEO Zigbee Soil Moisture Sensor is &lt;strong&gt;not a high-tech instrument for scientific accuracy&lt;/strong&gt;. But it doesn&amp;rsquo;t need to be!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Who is the sensor suitable for?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;✅ &lt;strong&gt;Home Assistant users&lt;/strong&gt; with Zigbee2MQTT or other Zigbee platforms&lt;br&gt;
✅ &lt;strong&gt;Plant enthusiasts&lt;/strong&gt; who want objective data instead of gut feelings&lt;br&gt;
✅ &lt;strong&gt;Budget-conscious users&lt;/strong&gt; – no €100+ like professional sensors&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What you should not expect:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;❌ Scientific accuracy&lt;br&gt;
❌ A maintenance-free solution for decades&lt;br&gt;
❌ Comparability between different pots/plants&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But as a pragmatic helper in everyday life&lt;/strong&gt; it works well for me – and I wouldn&amp;rsquo;t want to be without it!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;All details, impressions, and live demonstrations are in the video – be sure to watch it!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="share-your-experience"&gt;Share Your Experience!
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Write in the comments:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Are you already using soil moisture sensors?&lt;/li&gt;
&lt;li&gt;What has your experience been?&lt;/li&gt;
&lt;li&gt;Or are you still watering by feel?&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;&lt;strong&gt;Hardware links:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Zigbee Soil Moisture Sensor with batteries (NAS-STH01B2): &lt;a class="link" href="https://amzn.to/3Tbd2io" target="_blank" rel="noopener"
&gt;on Amazon&lt;/a&gt;*&lt;/li&gt;
&lt;li&gt;Zigbee Soil Moisture Sensor with solar &amp;amp; rechargeable battery: &lt;a class="link" href="https://amzn.to/4y7P0Vw" target="_blank" rel="noopener"
&gt;on Amazon&lt;/a&gt;*&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;(affiliate links – as an Amazon Associate I earn from qualifying purchases)&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Home Assistant A-Z: O is for Offline – No Internet?</title><link>https://smarthome-aber-sicher.de/en/blog/2026/01/04/home-assistant-a-z-o-is-for-offline-does-your-smart-home-work-without-internet/</link><pubDate>Sun, 04 Jan 2026 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2026/01/04/home-assistant-a-z-o-is-for-offline-does-your-smart-home-work-without-internet/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2026/01/04/home-assistant-a-z-o-wie-offline-l%C3%A4uft-dein-smart-home-auch-ohne-internet/cover.png" alt="Featured image of post Home Assistant A-Z: O is for Offline – No Internet?" /&gt;&lt;h2 id="a-confession-at-the-start-of-2026"&gt;A Confession at the Start of 2026
&lt;/h2&gt;&lt;p&gt;Time for a confession: &lt;strong&gt;I turn off my Fritzbox every night&lt;/strong&gt; – completely on purpose! And yes, my smart home keeps running anyway. It wasn&amp;rsquo;t always like that and took some work to get right. But why is it even worth checking whether your smart home still works offline?&lt;/p&gt;
&lt;p&gt;The answer is simpler than you might think. Watch the video and find out why you should review your automations – even if you&amp;rsquo;d never dream of switching off your own router!&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/N8t2-kkKCpE?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_17626579251637254658_hu_59c9b8aba09b18de.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="why-offline-functionality-matters"&gt;Why Offline Functionality Matters
&lt;/h2&gt;&lt;p&gt;You don&amp;rsquo;t have to be as radical as me and deliberately cut your internet connection. Still, it&amp;rsquo;s worth understanding &lt;strong&gt;when your smart home works offline&lt;/strong&gt; and where it might silently fail.&lt;/p&gt;
&lt;h3 id="internet-outages-are-not-rare"&gt;Internet Outages Are Not Rare
&lt;/h3&gt;&lt;p&gt;You won&amp;rsquo;t always be offline by choice. It happens like this too:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The internet goes down&lt;/strong&gt; (ISP outage, broken router)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Certain servers become unreachable&lt;/strong&gt; (cloud services down)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wi-Fi issues&lt;/strong&gt; in individual rooms&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In all of these cases, your smart home should &lt;strong&gt;reliably keep running for core functions&lt;/strong&gt;!&lt;/p&gt;
&lt;h3 id="the-smart-bed-example"&gt;The Smart Bed Example
&lt;/h3&gt;&lt;p&gt;A particularly striking (or alarming?) example: a &lt;strong&gt;smart bed costing $3,000&lt;/strong&gt;. When Amazon&amp;rsquo;s cloud servers went down, users had a serious problem:&lt;/p&gt;
&lt;p&gt;❌ The sleeping position could no longer be adjusted&lt;br&gt;
❌ Temperature regulation stopped working&lt;br&gt;
❌ Users were stuck &lt;strong&gt;sleeping in uncomfortable positions or sweating through the night&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In practice, it doesn&amp;rsquo;t matter whether Amazon&amp;rsquo;s server has issues or your internet connection does.&lt;/strong&gt; The effect would be the same either way.&lt;/p&gt;
&lt;h2 id="a-real-world-example-from-my-smart-home"&gt;A Real-World Example From My Smart Home
&lt;/h2&gt;&lt;p&gt;Let me show you with a &lt;strong&gt;concrete example from my own smart home&lt;/strong&gt;. In the video you can see the automation live, and I walk you through every step in detail!&lt;/p&gt;
&lt;h3 id="the-window-reminder-automation"&gt;The Window Reminder Automation
&lt;/h3&gt;&lt;p&gt;This automation reminds me when I leave a window open in cold outdoor temperatures, to prevent the apartment from cooling down unnecessarily.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Here&amp;rsquo;s how it works:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Trigger:&lt;/strong&gt; One of several windows is opened&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Condition:&lt;/strong&gt; Outdoor temperature is below 18°C&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Action:&lt;/strong&gt; After a set amount of time, a reminder to close the window&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="the-problem-with-cloud-based-sensors"&gt;The Problem With Cloud-Based Sensors
&lt;/h3&gt;&lt;p&gt;Originally I was relying on my &lt;strong&gt;weather sensor&lt;/strong&gt; – specifically the temperature from a &lt;strong&gt;weather forecast integration&lt;/strong&gt;. If you watch the history in the video, you&amp;rsquo;ll spot the problem immediately:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;At night the sensor was unavailable&lt;/strong&gt; (which makes sense – I&amp;rsquo;m cutting the internet, after all).&lt;/p&gt;
&lt;p&gt;This meant:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The automation cannot evaluate the condition&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The condition is treated as &amp;ldquo;false&amp;rdquo;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;The automation stops and doesn&amp;rsquo;t continue&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;I get no warning&lt;/strong&gt;, even if it&amp;rsquo;s freezing outside!&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="the-fix-use-local-sensors"&gt;The Fix: Use Local Sensors
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;The solution was straightforward:&lt;/strong&gt; I have a heat pump in the basement with an &lt;strong&gt;outdoor temperature sensor&lt;/strong&gt; connected to Home Assistant via &lt;strong&gt;MQTT&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Advantages:&lt;/strong&gt;
✅ The sensor is &lt;strong&gt;always available&lt;/strong&gt; (local via MQTT)&lt;br&gt;
✅ No dependency on internet or cloud&lt;br&gt;
✅ Automation runs reliably even at night&lt;/p&gt;
&lt;p&gt;In the video I show you exactly how I updated the conditions!&lt;/p&gt;
&lt;h2 id="resilient-automations-with-fallback-values"&gt;Resilient Automations With Fallback Values
&lt;/h2&gt;&lt;p&gt;But simply swapping the sensor isn&amp;rsquo;t enough. You also need to &lt;strong&gt;handle failures gracefully&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="float-conversion-with-a-default-value"&gt;Float Conversion With a Default Value
&lt;/h3&gt;&lt;p&gt;In the automation I check:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-jinja" data-lang="jinja"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="nv"&gt;states&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;sensor.waermepumpe_aussentemperatur&amp;#39;&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="nf"&gt;float&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;default&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;none&amp;#39;&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt;&lt;span class="x"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;What&amp;rsquo;s happening here?&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The sensor value is converted to a floating-point number&lt;/li&gt;
&lt;li&gt;If that &lt;strong&gt;fails&lt;/strong&gt; (e.g. sensor unavailable), &lt;code&gt;none&lt;/code&gt; is returned instead&lt;/li&gt;
&lt;li&gt;This lets me react in a controlled way rather than having the automation abort&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="safety-through-fallback-logic"&gt;Safety Through Fallback Logic
&lt;/h3&gt;&lt;p&gt;My final condition:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Is the temperature = none OR below 18°C?
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;In both cases the automation should continue running!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Why?&lt;/strong&gt; Better to be warned once too often than once too few. If I can&amp;rsquo;t read the value, I assume the worst case: it might be cold, so warn me anyway!&lt;/p&gt;
&lt;p&gt;In the video you can see the complete logic step by step!&lt;/p&gt;
&lt;h2 id="second-example-variable-wait-time"&gt;Second Example: Variable Wait Time
&lt;/h2&gt;&lt;p&gt;In the same automation I use a &lt;strong&gt;variable wait time&lt;/strong&gt; depending on outdoor temperature:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;10°C outside&lt;/strong&gt; → window can be open for up to 10 minutes before a warning&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;5°C outside&lt;/strong&gt; → window can be open for up to 5 minutes before a warning&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Below 5°C&lt;/strong&gt; → minimum wait time of 5 minutes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Here too I had originally used the weather sensor&lt;/strong&gt; – with the same problems!&lt;/p&gt;
&lt;h3 id="the-resilient-solution"&gt;The Resilient Solution
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-jinja" data-lang="jinja"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="cp"&gt;{{&lt;/span&gt; &lt;span class="o"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;states&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;sensor.waermepumpe_aussentemperatur&amp;#39;&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="nf"&gt;float&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;default&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="o"&gt;),&lt;/span&gt; &lt;span class="m"&gt;5&lt;/span&gt;&lt;span class="o"&gt;]&lt;/span&gt; &lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="nf"&gt;max&lt;/span&gt; &lt;span class="cp"&gt;}}&lt;/span&gt;&lt;span class="x"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;What does this do?&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Temperature is read and converted to float&lt;/li&gt;
&lt;li&gt;On failure: &lt;strong&gt;default value of 0&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Take the maximum of the temperature and 5&lt;/li&gt;
&lt;li&gt;Result: &lt;strong&gt;At least 5 minutes&lt;/strong&gt;, up to 18 minutes (when the condition fires)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This way the automation works &lt;strong&gt;reliably even when a sensor is unavailable&lt;/strong&gt;!&lt;/p&gt;
&lt;p&gt;Want to see the exact implementation? &lt;strong&gt;Watch the video&lt;/strong&gt; – I show you the automation live inside Home Assistant!&lt;/p&gt;
&lt;h2 id="how-do-you-identify-offline-dependent-integrations"&gt;How Do You Identify Offline-Dependent Integrations?
&lt;/h2&gt;&lt;p&gt;An important question: &lt;strong&gt;How do you even know which integrations require internet access?&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="in-the-video-i-show-you"&gt;In the video I show you:
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Weather integration&lt;/strong&gt; (requires internet):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Home Assistant explicitly labels it as &amp;ldquo;Cloud Polling&amp;rdquo; or similar&lt;/li&gt;
&lt;li&gt;Not available without internet&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;MQTT integration&lt;/strong&gt; (no internet needed):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Connects to a local MQTT broker&lt;/li&gt;
&lt;li&gt;Works completely offline&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tip:&lt;/strong&gt; Take a look at your integrations in Settings. Home Assistant usually marks cloud-based integrations clearly!&lt;/p&gt;
&lt;h2 id="why-i-turn-off-the-fritzbox-at-night"&gt;Why I Turn Off the Fritzbox at Night
&lt;/h2&gt;&lt;p&gt;In case you&amp;rsquo;re wondering why I do this at all:&lt;/p&gt;
&lt;h3 id="my-reasons"&gt;My reasons:
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Save standby power:&lt;/strong&gt; Around €10–15 per year&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sustainability:&lt;/strong&gt; I simply don&amp;rsquo;t need internet at night&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing smart home resilience:&lt;/strong&gt; Forces clean solutions&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Smartphone falls back to LTE:&lt;/strong&gt; I remain reachable regardless&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;It took some thought to get everything in the smart home working properly. But now I&amp;rsquo;m happy with it!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt; You don&amp;rsquo;t have to do the same. This is a personal choice. The lessons from it, however, apply to everyone!&lt;/p&gt;
&lt;h2 id="my-three-most-important-tips-for-you"&gt;My Three Most Important Tips for You
&lt;/h2&gt;&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/N8t2-kkKCpE?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_17626579251637254658_hu_59c9b8aba09b18de.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;You don&amp;rsquo;t need to turn off your router. But these three things are worth keeping in mind:&lt;/p&gt;
&lt;h3 id="1-make-core-functions-work-offline"&gt;1. Make Core Functions Work Offline
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Make sure these functions work without internet:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;✅ Lights&lt;br&gt;
✅ Blinds and shutters&lt;br&gt;
✅ Heating&lt;br&gt;
✅ Security functions&lt;/p&gt;
&lt;p&gt;These are essential to your home. They must not depend on an internet connection!&lt;/p&gt;
&lt;h3 id="2-comfort-functions-can-be-dependent"&gt;2. Comfort Functions Can Be Dependent
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Comfort functions&lt;/strong&gt; that you don&amp;rsquo;t strictly need can rely on internet services:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Weather forecasts on the dashboard&lt;/li&gt;
&lt;li&gt;Voice assistants&lt;/li&gt;
&lt;li&gt;Cloud notifications&lt;/li&gt;
&lt;li&gt;External data sources&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That&amp;rsquo;s perfectly fine – as long as the core functions keep working!&lt;/p&gt;
&lt;h3 id="3-review-your-automations-for-resilience"&gt;3. Review Your Automations for Resilience
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Go through your automations:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Which sensors are used?&lt;/li&gt;
&lt;li&gt;What happens if a sensor becomes unavailable?&lt;/li&gt;
&lt;li&gt;Are there sensible fallback values?&lt;/li&gt;
&lt;li&gt;Does the automation abort on errors or continue in a controlled way?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;This is an improvement you won&amp;rsquo;t notice every day.&lt;/strong&gt; But when it matters, you&amp;rsquo;ll be grateful your smart home still runs reliably!&lt;/p&gt;
&lt;h2 id="conclusion-resilience-is-not-rocket-science"&gt;Conclusion: Resilience Is Not Rocket Science
&lt;/h2&gt;&lt;p&gt;As you can see, &lt;strong&gt;resilient automations&lt;/strong&gt; are not rocket science. All it takes is:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Awareness&lt;/strong&gt; of which sensors are available offline&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Controlled error handling&lt;/strong&gt; with default values&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sensible fallback logic&lt;/strong&gt; instead of automation aborts&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Watch the video&lt;/strong&gt; to see everything live and explained step by step. Once you&amp;rsquo;ve gone through your own automations, I&amp;rsquo;d love to hear what you found!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Feel free to write your thoughts in the comments&lt;/strong&gt; below the video or this article.&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 15 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/14-nachtmodus/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← N · Nachtmodus&lt;/a&gt;&lt;span class="ha-az-nav-btn ha-az-nav-empty"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/nav&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Home Assistant A-Z: N is for Night Mode</title><link>https://smarthome-aber-sicher.de/en/blog/2025/12/28/home-assistant-a-z-n-is-for-night-mode-never-blinded-at-night-again/</link><pubDate>Sun, 28 Dec 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/12/28/home-assistant-a-z-n-is-for-night-mode-never-blinded-at-night-again/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/12/28/home-assistant-a-z-n-wie-nachtmodus-nie-wieder-geblendet-nachts/cover.png" alt="Featured image of post Home Assistant A-Z: N is for Night Mode" /&gt;&lt;h2 id="welcome-to-the-a-z-series-n-is-for-night-mode"&gt;Welcome to the A-Z Series: N is for Night Mode
&lt;/h2&gt;&lt;p&gt;In today&amp;rsquo;s episode of the &lt;strong&gt;Home Assistant A-Z Series&lt;/strong&gt; we tackle a topic that &lt;strong&gt;every smart home user knows&lt;/strong&gt;: How do you stop your hallway from &lt;strong&gt;lighting up like an airport runway&lt;/strong&gt; in the middle of the night?&lt;/p&gt;
&lt;p&gt;The answer is: &lt;strong&gt;night mode&lt;/strong&gt;! But not just any night mode – today I&amp;rsquo;ll show you how to use a &lt;strong&gt;central Smart Home status&lt;/strong&gt; to intelligently control all your automations. From dimmed night lights to closed blinds to gentle radio as you drift off to sleep!&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/arw9LZMtVr8?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_8922624886050655368_hu_8df17215c97a6df8.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="the-problem-being-blinded-at-night"&gt;The Problem: Being Blinded at Night
&lt;/h2&gt;&lt;p&gt;Sound familiar? You wake up in the middle of the night, need a quick bathroom trip, step into the hallway – and &lt;strong&gt;BAM!&lt;/strong&gt; Full brightness hits you square in the face. Your eyes need five minutes to recover. Any chance of relaxing back to sleep is gone.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;It doesn&amp;rsquo;t have to be this way!&lt;/strong&gt; With an intelligent night mode you can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ Use &lt;strong&gt;dimmed night lights&lt;/strong&gt; instead of full brightness&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Navigate&lt;/strong&gt; without being blinded&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Fall back asleep quickly&lt;/strong&gt; after your midnight trip&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Automatically adapt multiple rooms&lt;/strong&gt; (hallway, bathroom, etc.)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;And the best part:&lt;/strong&gt; All of this works &lt;strong&gt;automatically&lt;/strong&gt;, without you having to manually switch anything!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you the problem and the solution live!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="the-secret-a-central-smart-home-status"&gt;The Secret: A Central Smart Home Status
&lt;/h2&gt;&lt;p&gt;Many Home Assistant users build &lt;strong&gt;complicated automations&lt;/strong&gt; with dozens of conditions. &amp;ldquo;If the time is between 10 PM and 6 AM AND nobody is in the living room AND&amp;hellip;&amp;rdquo; – it quickly becomes a mess.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;My solution:&lt;/strong&gt; A &lt;strong&gt;central Smart Home status&lt;/strong&gt; that reflects the current state of your entire home!&lt;/p&gt;
&lt;h3 id="what-is-a-smart-home-status"&gt;What is a Smart Home Status?
&lt;/h3&gt;&lt;p&gt;Talking to other smart home users, I keep noticing: &lt;strong&gt;many people don&amp;rsquo;t bother maintaining a status in their smart home&lt;/strong&gt;. Yet it is &lt;strong&gt;incredibly useful&lt;/strong&gt;!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;A status is simply a Helper (Input Select)&lt;/strong&gt; that represents the current state of your smart home.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;My four states:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Present&lt;/strong&gt; – Normal operation, everyone is home&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Night&lt;/strong&gt; – Someone has gone to bed&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Away&lt;/strong&gt; – Nobody home&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Vacation&lt;/strong&gt; – Extended absence&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;That&amp;rsquo;s it!&lt;/strong&gt; These four states are enough to keep &lt;strong&gt;all my automations running appropriately&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video you can see the status live on my dashboard, including the history of the last 24 hours!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="why-is-a-status-so-powerful"&gt;Why is a Status so Powerful?
&lt;/h3&gt;&lt;p&gt;The big advantage: &lt;strong&gt;your automations become much simpler!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Instead of:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;time&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;after&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;22:00:00&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;before&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;06:00:00&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;group.all_persons&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;home&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;media_player.wohnzimmer&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;off&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;You simply write:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.smart_home_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Nacht&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Much more readable, maintainable, and flexible!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="live-my-smart-home-status"&gt;Live: My Smart Home Status
&lt;/h2&gt;&lt;p&gt;Let me &lt;strong&gt;show you my status live&lt;/strong&gt;. I have a helper called &lt;strong&gt;&amp;ldquo;Smart Home Status&amp;rdquo;&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Currently set to:&lt;/strong&gt; &amp;ldquo;Anwesend&amp;rdquo; (of course – I&amp;rsquo;m recording a video right now!)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the history of the last 24 hours&lt;/strong&gt; you can see:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🟢 &lt;strong&gt;Present&lt;/strong&gt; (daytime)&lt;/li&gt;
&lt;li&gt;🌙 &lt;strong&gt;Night&lt;/strong&gt; (from roughly 10:30 PM to 6:30 AM)&lt;/li&gt;
&lt;li&gt;🟢 &lt;strong&gt;Present&lt;/strong&gt; (after waking up)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The status is set &lt;strong&gt;automatically&lt;/strong&gt; and moves through different phases over the course of a normal day.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Make sure to watch the dashboard in the video – the visualization makes it even clearer!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="how-is-the-status-set-automatically"&gt;How is the Status Set Automatically?
&lt;/h2&gt;&lt;p&gt;Of course I don&amp;rsquo;t want to &lt;strong&gt;open the dashboard every evening&lt;/strong&gt; and manually click &amp;ldquo;Night&amp;rdquo;. That would be absurd!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;That&amp;rsquo;s why I have various automations&lt;/strong&gt;, all with the goal of changing the status.&lt;/p&gt;
&lt;h3 id="trigger-1-zigbee-button-by-the-bed"&gt;Trigger 1: Zigbee Button by the Bed
&lt;/h3&gt;&lt;p&gt;The &lt;strong&gt;most important automation&lt;/strong&gt;: I have a &lt;strong&gt;Zigbee button&lt;/strong&gt; next to my bed (e.g. an Aqara Wireless Mini Switch).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;When I press it:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Status switches to &amp;ldquo;Night&amp;rdquo;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;An automation cascade is triggered&lt;/strong&gt; (more on that in a moment!)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This is perfect, because the button press marks the exact moment when I &lt;strong&gt;go to bed&lt;/strong&gt; – not some arbitrary time, but &lt;strong&gt;precisely when I want to sleep&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you the button and the automation!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="trigger-2-alarm-in-the-morning"&gt;Trigger 2: Alarm in the Morning
&lt;/h3&gt;&lt;p&gt;In the morning, when my &lt;strong&gt;alarm goes off&lt;/strong&gt;, an automation lifts the Night status again:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;span class="lnt"&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;time&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;at&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_datetime.wecker_time&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.select_option&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.smart_home_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;option&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Anwesend&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;The entire &lt;strong&gt;smart home wakes up&lt;/strong&gt; along with you!&lt;/p&gt;
&lt;h3 id="trigger-3-absence"&gt;Trigger 3: Absence
&lt;/h3&gt;&lt;p&gt;When &lt;strong&gt;all household members leave home&lt;/strong&gt;, the status switches to &amp;ldquo;Away&amp;rdquo;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;group.all_persons&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;not_home&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;for&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;00:05:00&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.select_option&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.smart_home_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;option&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Abwesend&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Check out all the trigger automations in the video!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="the-automation-cascade-when-night-mode-activates"&gt;The Automation Cascade When Night Mode Activates
&lt;/h2&gt;&lt;p&gt;When the status switches to &lt;strong&gt;&amp;ldquo;Night&amp;rdquo;&lt;/strong&gt;, it doesn&amp;rsquo;t just trigger one thing – it sets off a &lt;strong&gt;whole cascade of automations&lt;/strong&gt;!&lt;/p&gt;
&lt;h3 id="what-happens-automatically"&gt;What Happens Automatically:
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;1. Blinds close&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;All blinds in the bedroom – and possibly the living room – close automatically:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;span class="lnt"&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.smart_home_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Nacht&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;cover.close_cover&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;cover.rollladen_schlafzimmer&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;2. Bedroom light dims&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The bedroom light is dimmed to a &lt;strong&gt;very low brightness&lt;/strong&gt; and then fades out slowly over a &lt;strong&gt;10-minute ramp&lt;/strong&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;light.turn_on&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;light.schlafzimmer&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;brightness&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;10&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;transition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;600&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# 10 Minuten&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;3. Radio plays softly&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;A radio turns on at &lt;strong&gt;low volume&lt;/strong&gt;, giving me some entertainment as I fall asleep:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;media_player.turn_on&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;media_player.schlafzimmer&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;media_player.volume_set&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;media_player.schlafzimmer&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;volume_level&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;0.15&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;All of this happens &lt;strong&gt;with a single button press&lt;/strong&gt;! Simple, elegant, reliable.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you the complete automations in detail!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="the-core-feature-night-light-instead-of-main-light"&gt;The Core Feature: Night Light Instead of Main Light
&lt;/h2&gt;&lt;p&gt;Now here&amp;rsquo;s the &lt;strong&gt;real trick&lt;/strong&gt; of night mode: intelligent light control!&lt;/p&gt;
&lt;h3 id="my-hallway-setup"&gt;My Hallway Setup
&lt;/h3&gt;&lt;p&gt;In my hallway I have &lt;strong&gt;two different lights&lt;/strong&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Main light&lt;/strong&gt; (bright ceiling lamp via Shelly)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LED strip&lt;/strong&gt; on a built-in cabinet (dimmed as a night light)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;The goal:&lt;/strong&gt; During the day the main light should come on; at night, only the dimmed night light!&lt;/p&gt;
&lt;h3 id="the-night-light-automation"&gt;The Night Light Automation
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Flur Nachtlicht bei Bewegung&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;binary_sensor.bewegungsmelder_flur&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;on&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.smart_home_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Nacht&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;light.turn_on&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;light.flur_nachtlicht&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;brightness&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;30&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;The condition is key:&lt;/strong&gt; The night light only activates when the status is &amp;ldquo;Night&amp;rdquo;!&lt;/p&gt;
&lt;h3 id="the-main-light-automation"&gt;The Main Light Automation
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Flur Hauptlicht bei Bewegung&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;binary_sensor.bewegungsmelder_flur&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;to&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;on&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;not&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.smart_home_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Nacht&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;light.turn_on&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;light.flur_hauptlicht&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Here the condition is reversed:&lt;/strong&gt; The main light only turns on when the status is &lt;strong&gt;not&lt;/strong&gt; &amp;ldquo;Night&amp;rdquo;!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;This is how I avoid being blinded when I step into the hallway at night!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video you can see both automations live in action!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="the-bathroom-has-night-mode-too"&gt;The Bathroom Has Night Mode Too
&lt;/h2&gt;&lt;p&gt;I&amp;rsquo;ve applied the same principle &lt;strong&gt;in the bathroom&lt;/strong&gt; as well:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;At night:&lt;/strong&gt; Dimmed night light (around 20% brightness)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;During the day:&lt;/strong&gt; Full brightness&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This gives me a &lt;strong&gt;safe path from bed to bathroom and back&lt;/strong&gt;, gently lit whenever the status is &amp;ldquo;Night&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;It makes those midnight bathroom trips so much more pleasant!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="why-not-just-use-a-time-condition"&gt;Why Not Just Use a Time Condition?
&lt;/h3&gt;&lt;p&gt;Good question! You could simply say: &amp;ldquo;Between 10 PM and 6 AM, use dimmed lighting.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But:&lt;/strong&gt; What if you stay up late on the weekend? Or go to bed early because you&amp;rsquo;re sick? Or get up at 3 AM and can&amp;rsquo;t fall back asleep?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;With the status-based approach&lt;/strong&gt; none of that is a problem:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ Adapts flexibly to your actual sleep schedule&lt;/li&gt;
&lt;li&gt;✅ No rigid time window&lt;/li&gt;
&lt;li&gt;✅ Manual override possible (press the button even if it&amp;rsquo;s only 9 PM)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video I explain why the status approach beats time conditions!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="morning-alarm-cancels-night-status"&gt;Morning: Alarm Cancels Night Status
&lt;/h2&gt;&lt;p&gt;When my &lt;strong&gt;alarm goes off&lt;/strong&gt; in the morning, the &amp;ldquo;Night&amp;rdquo; state is automatically lifted:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Wecker - Status auf Anwesend&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;time&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;at&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_datetime.wecker_time&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.select_option&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.smart_home_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;option&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Anwesend&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;The entire smart home wakes up!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;When I then step into the hallway I get an appropriately &lt;strong&gt;wake-you-up light&lt;/strong&gt; – no longer the dimmed night light, but full brightness.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Perfect for starting the day!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="more-use-cases-for-the-status"&gt;More Use Cases for the Status
&lt;/h2&gt;&lt;p&gt;The Smart Home status isn&amp;rsquo;t &lt;strong&gt;just useful for night mode&lt;/strong&gt;! Here are a few more ideas:&lt;/p&gt;
&lt;h3 id="status-away"&gt;Status &amp;ldquo;Away&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;When nobody is home:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🚫 Turn down the heating&lt;/li&gt;
&lt;li&gt;🚫 No motion-triggered lights&lt;/li&gt;
&lt;li&gt;✅ Activate presence simulation&lt;/li&gt;
&lt;li&gt;✅ Arm the alarm&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="status-vacation"&gt;Status &amp;ldquo;Vacation&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;Extended absence:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🌅 Blinds simulate a normal daily routine&lt;/li&gt;
&lt;li&gt;💡 Lights turn on and off at &amp;ldquo;realistic&amp;rdquo; times&lt;/li&gt;
&lt;li&gt;🌡️ Heating set to frost protection&lt;/li&gt;
&lt;li&gt;📧 Important notifications via email instead of push&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="additional-status-ideas"&gt;Additional Status Ideas
&lt;/h3&gt;&lt;p&gt;You can of course define &lt;strong&gt;your own states&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&amp;ldquo;Party mode&amp;rdquo;&lt;/strong&gt; – Special lighting, music integration&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;ldquo;Sick&amp;rdquo;&lt;/strong&gt; – Higher heating, blinds closed, more quiet&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;ldquo;Work&amp;rdquo;&lt;/strong&gt; – Home office mode with notification silencing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;ldquo;Movie&amp;rdquo;&lt;/strong&gt; – Dim lights, optimize TV settings&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The possibilities are endless!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="how-to-set-up-the-status"&gt;How to Set Up the Status
&lt;/h2&gt;&lt;p&gt;Convinced and ready to set up your own Smart Home status? Here&amp;rsquo;s how:&lt;/p&gt;
&lt;h3 id="step-1-create-the-input-select-helper"&gt;Step 1: Create the Input Select Helper
&lt;/h3&gt;&lt;p&gt;Go to: &lt;strong&gt;Settings → Devices &amp;amp; Services → Helpers&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Click &lt;strong&gt;&amp;ldquo;Add Helper&amp;rdquo;&lt;/strong&gt; and choose &lt;strong&gt;&amp;ldquo;Dropdown&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Settings:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Name:&lt;/strong&gt; Smart Home Status&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Icon:&lt;/strong&gt; mdi:home-assistant&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Options:&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Anwesend&lt;/li&gt;
&lt;li&gt;Nacht&lt;/li&gt;
&lt;li&gt;Abwesend&lt;/li&gt;
&lt;li&gt;Urlaub&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Save!&lt;/strong&gt; You now have &lt;code&gt;input_select.smart_home_status&lt;/code&gt;&lt;/p&gt;
&lt;h3 id="step-2-create-status-automations"&gt;Step 2: Create Status Automations
&lt;/h3&gt;&lt;p&gt;Create automations that set the status:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Activate night mode:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Nachtmodus aktivieren&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;event&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;event_type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;zha_event&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;event_data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;device_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;dein_zigbee_taster_id&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;command&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;single&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.select_option&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.smart_home_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;option&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Nacht&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Wake up:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Aufwachen - Nachtmodus beenden&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;time&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;at&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;06:30:00&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.select_option&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;target&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.smart_home_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;option&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Anwesend&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id="step-3-use-the-status-as-a-condition-in-your-automations"&gt;Step 3: Use the Status as a Condition in Your Automations
&lt;/h3&gt;&lt;p&gt;Now you can use the status as a condition in &lt;strong&gt;all your automations&lt;/strong&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_select.smart_home_status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Nacht&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Done!&lt;/strong&gt; You now have a working Smart Home status.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I walk you through all the steps in detail!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="tips-and-tricks"&gt;Tips and Tricks
&lt;/h2&gt;&lt;p&gt;A few &lt;strong&gt;valuable tips&lt;/strong&gt; from my experience:&lt;/p&gt;
&lt;h3 id="tip-1-place-the-status-prominently-on-your-dashboard"&gt;Tip 1: Place the Status Prominently on Your Dashboard
&lt;/h3&gt;&lt;p&gt;The status should be &lt;strong&gt;clearly visible&lt;/strong&gt; so you always know what state your smart home is in.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Recommendation:&lt;/strong&gt; On the home page at the very top, as a badge or large tile.&lt;/p&gt;
&lt;h3 id="tip-2-allow-manual-overrides"&gt;Tip 2: Allow Manual Overrides
&lt;/h3&gt;&lt;p&gt;Sometimes you want to &lt;strong&gt;change the status manually&lt;/strong&gt;. Make sure the dashboard element is &lt;strong&gt;not read-only&lt;/strong&gt;!&lt;/p&gt;
&lt;h3 id="tip-3-keep-the-history"&gt;Tip 3: Keep the History
&lt;/h3&gt;&lt;p&gt;Enable &lt;strong&gt;long-term statistics&lt;/strong&gt; for the status helper so you can &lt;strong&gt;trace&lt;/strong&gt; how your smart home behaves over time.&lt;/p&gt;
&lt;h3 id="tip-4-logging-for-debugging"&gt;Tip 4: Logging for Debugging
&lt;/h3&gt;&lt;p&gt;During development: log all status changes:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;logbook.log&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Smart Home Status&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;message&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Status gewechselt zu {{ states(&amp;#39;input_select.smart_home_status&amp;#39;) }}&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;This lets you see in the logbook when and why the status changed.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I go into these tips in more detail!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="avoiding-common-pitfalls"&gt;Avoiding Common Pitfalls
&lt;/h2&gt;&lt;p&gt;A few typical &lt;strong&gt;mistakes&lt;/strong&gt; I made early on:&lt;/p&gt;
&lt;h3 id="mistake-1-too-many-states"&gt;Mistake 1: Too Many States
&lt;/h3&gt;&lt;p&gt;I started with &lt;strong&gt;8 different states&lt;/strong&gt;. It quickly became unmanageable. &lt;strong&gt;4–5 states are plenty!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="mistake-2-forgetting-to-reset-the-status"&gt;Mistake 2: Forgetting to Reset the Status
&lt;/h3&gt;&lt;p&gt;If the status is stuck on &amp;ldquo;Night&amp;rdquo; and you forget to reset it in the morning, your automations will run incorrectly all day!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; Multiple triggers for resetting (alarm, time, manual light control)&lt;/p&gt;
&lt;h3 id="mistake-3-no-fallback-logic"&gt;Mistake 3: No Fallback Logic
&lt;/h3&gt;&lt;p&gt;What happens if the button breaks? &lt;strong&gt;Always have a second way&lt;/strong&gt; to set the status (e.g. dashboard, time-based backup trigger)&lt;/p&gt;
&lt;h2 id="conclusion-maintaining-a-status-is-worth-it"&gt;Conclusion: Maintaining a Status is Worth It!
&lt;/h2&gt;&lt;p&gt;There really is &lt;strong&gt;nothing more to it&lt;/strong&gt; than that! A simple helper with 4 states, a few automations to set the status, and then conditions in your relevant automations.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But the impact is enormous:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;Simpler automations&lt;/strong&gt; (fewer complex conditions)&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Better readability&lt;/strong&gt; (clear what happens when)&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Centralized logic&lt;/strong&gt; (change the status instead of dozens of automations)&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Flexibility&lt;/strong&gt; (new automations reuse the same status)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;A status is useful for many things – not just night mode!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Make sure to watch the full video&lt;/strong&gt; – you&amp;rsquo;ll see everything in action and I go into even more depth there!&lt;/p&gt;
&lt;h2 id="your-experiences"&gt;Your Experiences?
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Do you use a Smart Home status?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Leave a comment below:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Which states do you use?&lt;/li&gt;
&lt;li&gt;Which automations do you tie to the status?&lt;/li&gt;
&lt;li&gt;Do you have night automations like mine?&lt;/li&gt;
&lt;li&gt;What creative use cases have you found?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I look forward to your ideas and love learning from your experiences!&lt;/p&gt;
&lt;h2 id="further-reading-and-videos"&gt;Further Reading and Videos
&lt;/h2&gt;&lt;p&gt;If you&amp;rsquo;re interested in automations and status management:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/12/14/home-assistant-a-z-l-is-for-light-from-simple-to-creative/" &gt;Controlling Lights&lt;/a&gt;&lt;/strong&gt; – How I use night lights and LED bulbs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-automation-modi/" &gt;Automation modes explained&lt;/a&gt;&lt;/strong&gt; – Understanding Single, Restart, Parallel &amp;amp; Queue&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-5-automation-fehler/" &gt;5 Automation Mistakes&lt;/a&gt;&lt;/strong&gt; – Mistakes you should avoid&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Find the complete A-Z Series here:&lt;/strong&gt; &lt;a class="link" href="https://smarthome-aber-sicher.de/en/tags/a-z-series/" &gt;Home Assistant A-Z Overview&lt;/a&gt;&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 14 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/13-mqtt/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← M · MQTT&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/15-offline/" class="ha-az-nav-btn ha-az-nav-next"&gt;O · Offline →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;</description></item><item><title>Home Assistant A-Z: M is for MQTT – The Invisible Glue</title><link>https://smarthome-aber-sicher.de/en/blog/2025/12/21/home-assistant-a-z-m-is-for-mqtt-the-invisible-glue-of-your-smart-home/</link><pubDate>Sun, 21 Dec 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/12/21/home-assistant-a-z-m-is-for-mqtt-the-invisible-glue-of-your-smart-home/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/12/21/home-assistant-a-z-m-wie-mqtt-der-unsichtbare-klebstoff-f%C3%BCr-dein-smart-home/cover.png" alt="Featured image of post Home Assistant A-Z: M is for MQTT – The Invisible Glue" /&gt;&lt;h2 id="welcome-to-the-a-z-series-m-is-for-mqtt"&gt;Welcome to the A-Z Series: M is for MQTT
&lt;/h2&gt;&lt;p&gt;In today&amp;rsquo;s episode of our &lt;strong&gt;Home Assistant A-Z Series&lt;/strong&gt;, we&amp;rsquo;re diving into a topic that works quietly in the background and yet is &lt;strong&gt;absolutely essential&lt;/strong&gt;: &lt;strong&gt;MQTT&lt;/strong&gt;! It&amp;rsquo;s the invisible glue that brings almost any device into your smart home. Without MQTT, my smart home would grind to a halt in many places – but why is that?&lt;/p&gt;
&lt;p&gt;Today I&amp;rsquo;ll explain in simple terms (promise: no complicated technical jargon!) what MQTT is, why it matters so much, and how I&amp;rsquo;ve integrated &lt;strong&gt;52 devices&lt;/strong&gt; with it in my Home Assistant setup.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/cr5_LdP7BKM?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_7271898750655618293_hu_b50ccccd98584a7f.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="what-is-mqtt-30-seconds-of-theory-jargon-free"&gt;What Is MQTT? 30 Seconds of Theory, Jargon-Free
&lt;/h2&gt;&lt;p&gt;Let me explain MQTT so simply that &lt;strong&gt;anyone can understand it&lt;/strong&gt; – even if you&amp;rsquo;re not deeply technical.&lt;/p&gt;
&lt;h3 id="the-problem-without-mqtt"&gt;The Problem Without MQTT
&lt;/h3&gt;&lt;p&gt;Normally, Home Assistant has to &lt;strong&gt;talk directly to every device&lt;/strong&gt;. That means:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Home Assistant needs to know &lt;strong&gt;how to control the device&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;What &lt;strong&gt;data&lt;/strong&gt; the device sends&lt;/li&gt;
&lt;li&gt;In what &lt;strong&gt;units&lt;/strong&gt; the data arrives&lt;/li&gt;
&lt;li&gt;What &lt;strong&gt;interface&lt;/strong&gt; the device uses&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For &lt;strong&gt;every single device&lt;/strong&gt;, Home Assistant needs its own dedicated integration. That&amp;rsquo;s a lot of work and limits the number of supported devices.&lt;/p&gt;
&lt;h3 id="the-solution-mqtt-as-a-middleman"&gt;The Solution: MQTT as a Middleman
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;MQTT steps in between&lt;/strong&gt; and simplifies everything dramatically:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Home Assistant&lt;/strong&gt; only needs to know how to read from an &lt;strong&gt;MQTT server&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The device&lt;/strong&gt; only needs to know how to post its data to &lt;strong&gt;MQTT&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;MQTT Broker&lt;/strong&gt; (server) mediates between the two&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="the-brilliant-advantage"&gt;The Brilliant Advantage
&lt;/h3&gt;&lt;p&gt;This has a &lt;strong&gt;huge advantage&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;✅ &lt;strong&gt;The device&lt;/strong&gt; can support MQTT and doesn&amp;rsquo;t care whether you&amp;rsquo;re using Home Assistant, OpenHAB, or any other smart home solution&lt;/p&gt;
&lt;p&gt;✅ &lt;strong&gt;Home Assistant&lt;/strong&gt; doesn&amp;rsquo;t care which device you have – as long as it &lt;strong&gt;speaks MQTT&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;MQTT is therefore a supremely universal solution&lt;/strong&gt; for integrating as many devices as possible into Home Assistant, &lt;strong&gt;without Home Assistant needing to explicitly support each device&lt;/strong&gt;!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video, I explain this even more clearly with a diagram!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="a-live-look-52-devices-via-mqtt-in-my-smart-home"&gt;A Live Look: 52 Devices via MQTT in My Smart Home
&lt;/h2&gt;&lt;p&gt;Enough theory! Let&amp;rsquo;s look at a &lt;strong&gt;real smart home&lt;/strong&gt; and see everything I&amp;rsquo;ve integrated with MQTT.&lt;/p&gt;
&lt;p&gt;In my &lt;strong&gt;MQTT integration&lt;/strong&gt; in Home Assistant, I can see: &lt;strong&gt;52 devices&lt;/strong&gt; connected via MQTT. That&amp;rsquo;s more than half of all my devices! Without MQTT, my smart home would be capable of considerably less.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s look at some &lt;strong&gt;concrete examples&lt;/strong&gt;:&lt;/p&gt;
&lt;h3 id="aqara-motion-sensors-via-zigbee2mqtt"&gt;Aqara Motion Sensors via Zigbee2MQTT
&lt;/h3&gt;&lt;p&gt;I have several &lt;strong&gt;Aqara motion sensors&lt;/strong&gt; distributed throughout my smart home – in the hallway, bathroom, storage room, and other areas.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How are they integrated?&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The sensors speak &lt;strong&gt;Zigbee&lt;/strong&gt; (a wireless protocol)&lt;/li&gt;
&lt;li&gt;I use &lt;strong&gt;Zigbee2MQTT&lt;/strong&gt; – the universal gateway for Zigbee devices&lt;/li&gt;
&lt;li&gt;Zigbee2MQTT translates Zigbee signals into MQTT messages&lt;/li&gt;
&lt;li&gt;Home Assistant reads these MQTT messages&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The brilliant part: &lt;strong&gt;Zigbee2MQTT supports hundreds of different Zigbee devices&lt;/strong&gt; from a wide variety of manufacturers. Set it up once, and everything works through the same pipeline!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video you can see the motion sensors live in the dashboard!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="philips-hue-lights-via-zigbee2mqtt"&gt;Philips Hue Lights via Zigbee2MQTT
&lt;/h3&gt;&lt;p&gt;My &lt;strong&gt;Philips Hue lights&lt;/strong&gt; also run via MQTT – likewise through &lt;strong&gt;Zigbee2MQTT&lt;/strong&gt;!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Why not the official Philips Hue Bridge?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Good question! The Hue Bridge would certainly work too, but:&lt;/p&gt;
&lt;p&gt;✅ &lt;strong&gt;With Zigbee2MQTT I skip the need for an extra bridge&lt;/strong&gt;
✅ &lt;strong&gt;Everything runs through the same infrastructure&lt;/strong&gt; (one Zigbee stick)
✅ &lt;strong&gt;Completely local&lt;/strong&gt; – no Philips cloud required
✅ &lt;strong&gt;Cheaper&lt;/strong&gt; (no expensive Hue Bridge needed)&lt;/p&gt;
&lt;p&gt;Hue lights &lt;strong&gt;also speak Zigbee&lt;/strong&gt;, so they can communicate with Zigbee2MQTT just as easily as the Aqara sensors!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Where I use Hue lights:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Bedroom (for the wake-up light)&lt;/li&gt;
&lt;li&gt;Terrace (for evening lighting)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video I&amp;rsquo;ll show you what the Hue lights look like in the MQTT dashboard!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="sonoff-devices-with-tasmota-firmware"&gt;Sonoff Devices with TASMOTA Firmware
&lt;/h3&gt;&lt;p&gt;Another great example: &lt;strong&gt;Sonoff devices&lt;/strong&gt;. These are smart relays and sensors – similar to Shelly modules.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;My configuration:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve flashed most of my Sonoff devices with &lt;strong&gt;TASMOTA firmware&lt;/strong&gt;. This is an &lt;strong&gt;open-source, alternative firmware&lt;/strong&gt; that:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ Works completely &lt;strong&gt;locally&lt;/strong&gt; (no cloud)&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Natively supports MQTT&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ Is far &lt;strong&gt;more flexible&lt;/strong&gt; than the stock firmware&lt;/li&gt;
&lt;li&gt;✅ Is &lt;strong&gt;more secure&lt;/strong&gt; (open source, no backdoors)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Sonoff devices communicate via &lt;strong&gt;Wi-Fi&lt;/strong&gt; (not Zigbee!) and send their data directly to the MQTT Broker.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Examples in my setup:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Smart plugs&lt;/li&gt;
&lt;li&gt;Relays for light control&lt;/li&gt;
&lt;li&gt;Temperature sensors&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video I go into more detail on TASMOTA and show you what the devices look like!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="xiaomi-light-sensors-for-automations"&gt;Xiaomi Light Sensors for Automations
&lt;/h3&gt;&lt;p&gt;I have two &lt;strong&gt;Xiaomi light sensors&lt;/strong&gt; mounted on the outside of the building. They continuously measure &lt;strong&gt;brightness&lt;/strong&gt; and help me with various automations.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What I use them for:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Automatic lighting&lt;/strong&gt; (e.g., terrace lights at dusk)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Blind control&lt;/strong&gt; (automatically closing when the sun is intense)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Energy management&lt;/strong&gt; (cloud cover = lower PV output)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These sensors also speak &lt;strong&gt;Zigbee&lt;/strong&gt; and run via &lt;strong&gt;Zigbee2MQTT&lt;/strong&gt; through MQTT into Home Assistant.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you the live sensor readings!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="wallbox-via-evcc"&gt;Wallbox via EVCC
&lt;/h3&gt;&lt;p&gt;A particularly &lt;strong&gt;cool example&lt;/strong&gt;: my &lt;strong&gt;wallbox&lt;/strong&gt; for the EV is also integrated via MQTT!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How does that work?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I use &lt;strong&gt;EVCC&lt;/strong&gt; (Electric Vehicle Charge Controller) – intelligent software for managing the wallbox. EVCC can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;PV surplus charging&lt;/strong&gt; (only charge when the solar system produces enough power)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Use dynamic electricity prices&lt;/strong&gt; (charge when power is cheap)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Monitor all values&lt;/strong&gt; (charging power, battery level, costs)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;EVCC publishes all these values to MQTT&lt;/strong&gt;, making them available in Home Assistant.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What I get via MQTT:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Current charging power&lt;/strong&gt; (in kW)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Total energy meter&lt;/strong&gt; (total amount charged)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Current charging price&lt;/strong&gt; (for dynamic tariffs)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Grid price&lt;/strong&gt; and &lt;strong&gt;electricity rates&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;EV state of charge&lt;/strong&gt; (in %)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All this data can be used in &lt;strong&gt;automations&lt;/strong&gt; or displayed on &lt;strong&gt;dashboards&lt;/strong&gt;!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;More on EVCC is available in my dedicated video – link in the video and description above!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you the wallbox entities live in the MQTT dashboard!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="why-mqtt-is-so-important"&gt;Why MQTT Is So Important
&lt;/h2&gt;&lt;p&gt;After all these examples, it&amp;rsquo;s clear: &lt;strong&gt;MQTT is the backbone of my smart home!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="the-advantages-at-a-glance"&gt;The Advantages at a Glance
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Universal:&lt;/strong&gt; Almost any device can speak MQTT&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Vendor-independent:&lt;/strong&gt; Whether Aqara, Philips, Sonoff, or Xiaomi – they all use MQTT&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Protocol-agnostic:&lt;/strong&gt; Zigbee, Wi-Fi, even Ethernet – everything ends up at MQTT&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Future-proof:&lt;/strong&gt; New device? If it speaks MQTT, it works&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Local:&lt;/strong&gt; No cloud required, everything stays on your own network&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;In the video I go even deeper into these advantages!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="installation-how-to-get-mqtt-into-home-assistant"&gt;Installation: How to Get MQTT Into Home Assistant
&lt;/h2&gt;&lt;p&gt;Convinced and ready to use MQTT? No problem – the installation is &lt;strong&gt;surprisingly easy&lt;/strong&gt;!&lt;/p&gt;
&lt;h3 id="option-1-home-assistant-os-recommended-for-beginners"&gt;Option 1: Home Assistant OS (recommended for beginners)
&lt;/h3&gt;&lt;p&gt;If you&amp;rsquo;re running &lt;strong&gt;Home Assistant OS&lt;/strong&gt;, MQTT is just one click away:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; Go to &lt;strong&gt;Settings → Add-ons&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; Search for &lt;strong&gt;&amp;ldquo;Mosquitto broker&amp;rdquo;&lt;/strong&gt; (this is the MQTT server)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; Install the add-on and start it&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; Home Assistant automatically detects the Broker and suggests the integration&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;That&amp;rsquo;s it!&lt;/strong&gt; No complex configuration needed. The Broker is running and ready to use immediately.&lt;/p&gt;
&lt;h3 id="option-2-home-assistant-core--docker"&gt;Option 2: Home Assistant Core / Docker
&lt;/h3&gt;&lt;p&gt;If you run &lt;strong&gt;Home Assistant Core&lt;/strong&gt; and manage everything via Docker, you can start the &lt;strong&gt;Mosquitto Broker as a separate container&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Docker Compose example:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;mosquitto&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;image&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;eclipse-mosquitto:latest&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;ports&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="s2"&gt;&amp;#34;1883:1883&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;volumes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;./mosquitto/config:/mosquitto/config&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;./mosquitto/data:/mosquitto/data&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Then add the &lt;strong&gt;MQTT integration&lt;/strong&gt; in Home Assistant and provide the IP address and port (1883) of the Mosquitto container.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you both installation methods!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="configuration-almost-none-required"&gt;Configuration: Almost None Required!
&lt;/h3&gt;&lt;p&gt;The &lt;strong&gt;beauty of MQTT&lt;/strong&gt;: it requires &lt;strong&gt;almost no configuration&lt;/strong&gt;!&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The default port (1883) works out of the box&lt;/li&gt;
&lt;li&gt;No complex settings&lt;/li&gt;
&lt;li&gt;Ready to use immediately&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Of course, for added security you can also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Set up a &lt;strong&gt;username and password&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Enable &lt;strong&gt;TLS encryption&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Configure &lt;strong&gt;Access Control Lists&lt;/strong&gt; (ACLs)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;But for &lt;strong&gt;getting started&lt;/strong&gt;, the default configuration is perfectly sufficient!&lt;/p&gt;
&lt;h2 id="connecting-devices-to-mqtt"&gt;Connecting Devices to MQTT
&lt;/h2&gt;&lt;p&gt;You now have an &lt;strong&gt;MQTT Broker&lt;/strong&gt; running – but how do devices connect to it?&lt;/p&gt;
&lt;h3 id="zigbee-devices-zigbee2mqtt"&gt;Zigbee Devices: Zigbee2MQTT
&lt;/h3&gt;&lt;p&gt;For &lt;strong&gt;all Zigbee devices&lt;/strong&gt;, I recommend &lt;strong&gt;Zigbee2MQTT&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What you need:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;Zigbee USB stick&lt;/strong&gt; (e.g., ConBee II, Sonoff Zigbee 3.0)&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;Zigbee2MQTT software&lt;/strong&gt; (as an add-on or Docker container)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Setup:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Plug in the Zigbee stick&lt;/li&gt;
&lt;li&gt;Install Zigbee2MQTT&lt;/li&gt;
&lt;li&gt;Enter the MQTT Broker details (usually done automatically)&lt;/li&gt;
&lt;li&gt;Pair devices (put them into pairing mode)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Done!&lt;/strong&gt; All Zigbee devices appear automatically in Home Assistant.&lt;/p&gt;
&lt;h3 id="wi-fi-devices-native-mqtt-support-or-tasmota"&gt;Wi-Fi Devices: Native MQTT Support or TASMOTA
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Some devices&lt;/strong&gt; (e.g., Shelly, ESPHome devices) &lt;strong&gt;natively support MQTT&lt;/strong&gt;. Simply enter the MQTT Broker IP in their settings – done!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Other devices&lt;/strong&gt; (e.g., Sonoff) can be &lt;strong&gt;flashed with TASMOTA&lt;/strong&gt; and then have MQTT enabled.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I walk through concrete examples!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="software-integrations-evcc-and-others"&gt;Software Integrations: EVCC and Others
&lt;/h3&gt;&lt;p&gt;Many &lt;strong&gt;software tools&lt;/strong&gt; like EVCC can publish their data to MQTT. In the respective configuration, you enable MQTT and provide the Broker details – and the data flows straight into Home Assistant!&lt;/p&gt;
&lt;h2 id="creative-use-cases-for-mqtt"&gt;Creative Use Cases for MQTT
&lt;/h2&gt;&lt;p&gt;Beyond plain device data, you can also use MQTT for &lt;strong&gt;creative purposes&lt;/strong&gt;:&lt;/p&gt;
&lt;h3 id="build-your-own-sensors"&gt;Build Your Own Sensors
&lt;/h3&gt;&lt;p&gt;With &lt;strong&gt;ESPHome or TASMOTA&lt;/strong&gt; you can build custom sensors and integrate them via MQTT:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Temperature and humidity sensors&lt;/strong&gt; in the garden&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Water level sensors&lt;/strong&gt; for plants or cisterns&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Door contacts&lt;/strong&gt; in unusual locations&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PIR sensors&lt;/strong&gt; for motion detection&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="exchange-data-between-systems"&gt;Exchange Data Between Systems
&lt;/h3&gt;&lt;p&gt;MQTT is perfect for &lt;strong&gt;sharing data between different systems&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Home Assistant → Node-RED → MQTT&lt;/li&gt;
&lt;li&gt;MQTT → Grafana (for beautiful dashboards)&lt;/li&gt;
&lt;li&gt;MQTT → InfluxDB (for long-term data analysis)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="trigger-external-automations"&gt;Trigger External Automations
&lt;/h3&gt;&lt;p&gt;You can &lt;strong&gt;trigger external tools&lt;/strong&gt; via MQTT messages:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Start the &lt;strong&gt;3D printer&lt;/strong&gt; when the solar system has enough surplus&lt;/li&gt;
&lt;li&gt;Activate the &lt;strong&gt;irrigation system&lt;/strong&gt; when soil moisture is low&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Arm security systems&lt;/strong&gt; based on presence&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The possibilities are endless!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="pitfalls-and-tips"&gt;Pitfalls and Tips
&lt;/h2&gt;&lt;p&gt;To wrap up, here are a few &lt;strong&gt;important tips&lt;/strong&gt; from my own experience:&lt;/p&gt;
&lt;h3 id="tip-1-plan-your-topic-structure-early"&gt;Tip 1: Plan Your Topic Structure Early
&lt;/h3&gt;&lt;p&gt;MQTT uses &lt;strong&gt;Topics&lt;/strong&gt; for organization. Think through a &lt;strong&gt;sensible hierarchy&lt;/strong&gt; from the start:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;home/living-room/temperature
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;home/living-room/humidity
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;home/bedroom/temperature
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Not:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;temp_living-room
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;humidity_living-room
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;temperature_bedroom
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;A clear structure&lt;/strong&gt; will save you a lot of headaches later!&lt;/p&gt;
&lt;h3 id="tip-2-use-retained-messages"&gt;Tip 2: Use Retained Messages
&lt;/h3&gt;&lt;p&gt;For &lt;strong&gt;status values&lt;/strong&gt;, you should enable &lt;strong&gt;Retained Messages&lt;/strong&gt;. This way the Broker stores the last known value – even if a client restarts.&lt;/p&gt;
&lt;h3 id="tip-3-understand-quality-of-service-qos"&gt;Tip 3: Understand Quality of Service (QoS)
&lt;/h3&gt;&lt;p&gt;MQTT defines three &lt;strong&gt;QoS levels&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;QoS 0:&lt;/strong&gt; Fire and forget (fast, but unreliable)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;QoS 1:&lt;/strong&gt; Delivered at least once&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;QoS 2:&lt;/strong&gt; Delivered exactly once&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For smart home purposes, &lt;strong&gt;QoS 1&lt;/strong&gt; is usually sufficient.&lt;/p&gt;
&lt;h3 id="tip-4-use-discovery"&gt;Tip 4: Use Discovery
&lt;/h3&gt;&lt;p&gt;Many tools (e.g., Zigbee2MQTT, TASMOTA) support &lt;strong&gt;MQTT Discovery&lt;/strong&gt;. This means devices &lt;strong&gt;register themselves automatically&lt;/strong&gt; with Home Assistant – no manual configuration needed!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I go into these tips in more detail!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="conclusion-mqtt-is-indispensable"&gt;Conclusion: MQTT Is Indispensable
&lt;/h2&gt;&lt;p&gt;After all of this, it&amp;rsquo;s clear: &lt;strong&gt;MQTT is absolutely indispensable for my smart home!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What I wouldn&amp;rsquo;t have without MQTT:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;52 fewer devices&lt;/li&gt;
&lt;li&gt;No Zigbee devices&lt;/li&gt;
&lt;li&gt;No flexible wallbox integration&lt;/li&gt;
&lt;li&gt;Far fewer options for custom projects&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;MQTT makes a smart home flexible, open, and future-proof.&lt;/strong&gt; It&amp;rsquo;s one of the reasons I value Home Assistant so highly!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Make sure to watch the video&lt;/strong&gt; – there you&amp;rsquo;ll see everything in action live!&lt;/p&gt;
&lt;h2 id="your-experiences"&gt;Your Experiences?
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;What do you integrate with MQTT?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Let me know in the comments:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Which devices do you use over MQTT?&lt;/li&gt;
&lt;li&gt;Do you have creative use cases?&lt;/li&gt;
&lt;li&gt;Are you using Zigbee2MQTT or other gateways?&lt;/li&gt;
&lt;li&gt;What questions do you have about MQTT?&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="further-reading-and-videos"&gt;Further Reading and Videos
&lt;/h2&gt;&lt;p&gt;If you&amp;rsquo;re interested in MQTT and related topics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/evcc-ueberblick/" &gt;EVCC: Smart EV Charging&lt;/a&gt;&lt;/strong&gt; – How I connect the wallbox via MQTT&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-az/05-entit%c3%a4ten/" &gt;Understanding Entities&lt;/a&gt;&lt;/strong&gt; – How MQTT devices appear as entities&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/geschirrspueler/" &gt;Making Your Dishwasher Smart&lt;/a&gt;&lt;/strong&gt; – With MQTT-capable smart plugs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Find the complete A-Z Series here:&lt;/strong&gt; &lt;a class="link" href="https://smarthome-aber-sicher.de/en/tags/a-z-series/" &gt;Home Assistant A-Z Overview&lt;/a&gt;&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 13 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/12-licht/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← L · Licht&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/14-nachtmodus/" class="ha-az-nav-btn ha-az-nav-next"&gt;N · Nachtmodus →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;</description></item><item><title>Home Assistant A-Z: L is for Light – Simple to Creative</title><link>https://smarthome-aber-sicher.de/en/blog/2025/12/14/home-assistant-a-z-l-is-for-light-from-simple-to-creative/</link><pubDate>Sun, 14 Dec 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/12/14/home-assistant-a-z-l-is-for-light-from-simple-to-creative/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/12/14/home-assistant-a-z-l-wie-licht-von-einfach-bis-kreativ/cover.png" alt="Featured image of post Home Assistant A-Z: L is for Light – Simple to Creative" /&gt;&lt;h2 id="welcome-to-the-a-z-series-l-is-for-light"&gt;Welcome to the A-Z Series: L is for Light
&lt;/h2&gt;&lt;p&gt;In today&amp;rsquo;s episode of the &lt;strong&gt;Home Assistant A-Z Series&lt;/strong&gt; we&amp;rsquo;re tackling the absolute classic for beginners: &lt;strong&gt;light&lt;/strong&gt;! For many people, their first lighting automation is the magical moment when an idea becomes a real smart home. But there&amp;rsquo;s so much more to it than just on and off!&lt;/p&gt;
&lt;p&gt;Today I&amp;rsquo;ll show you how I use light in my smart home – from simple motion-sensor automations to gentle wake-up lights and creative visual reminders. Let yourself be inspired!&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/4DrUQCYSrxs?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_3873451944379518810_hu_d69031a2f9fb51c4.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="how-i-control-my-lights-the-hardware"&gt;How I Control My Lights: The Hardware
&lt;/h2&gt;&lt;p&gt;Before we get to the exciting automations, let me show you &lt;strong&gt;which hardware I use for my lighting control&lt;/strong&gt;. Spoiler: it&amp;rsquo;s a colourful mix – and that&amp;rsquo;s exactly what makes Home Assistant so flexible!&lt;/p&gt;
&lt;h3 id="shelly-modules-the-in-wall-solution"&gt;Shelly Modules: The In-Wall Solution
&lt;/h3&gt;&lt;p&gt;The bulk of my lighting runs through &lt;strong&gt;Shelly modules&lt;/strong&gt; (e.g. the &lt;a class="link" href="https://amzn.to/3Sgj2CW" target="_blank" rel="noopener"
&gt;Shelly Plus 1 PM&lt;/a&gt;* – also at &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F7119266%2Fshelly-smart-relais-unterputz-1pm-gen4-rot" target="_blank" rel="noopener"
&gt;OBI&lt;/a&gt;* or directly at &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;* (code SMARTHOMEABERSICHER-10OFF for 10% off)) that I&amp;rsquo;ve fitted behind existing wall switches. There are several advantages:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;The existing wall switch still works&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Additional control via Home Assistant&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Completely local, no cloud required&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Affordable retrofit for existing lamps&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In my home these cover, among others:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Guest bathroom&lt;/li&gt;
&lt;li&gt;Hallway&lt;/li&gt;
&lt;li&gt;Bathroom&lt;/li&gt;
&lt;li&gt;Dressing room&lt;/li&gt;
&lt;li&gt;Storage room&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Shellys are integrated directly into Home Assistant via the &lt;strong&gt;Shelly integration&lt;/strong&gt; and respond instantly – whether I use the physical switch or trigger an automation.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you exactly what that looks like in the dashboard!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="philips-hue-colour-and-flexibility"&gt;Philips Hue: Colour and Flexibility
&lt;/h3&gt;&lt;p&gt;I also have some &lt;strong&gt;Philips Hue lights&lt;/strong&gt; in use, which I control via &lt;strong&gt;Zigbee2MQTT&lt;/strong&gt;. The advantage: no Philips Hue Bridge needed – everything runs through my Zigbee stick!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Where I use Philips Hue:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Bedroom&lt;/strong&gt; – for the gentle wake-up light (more on that in a moment!)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Terrace&lt;/strong&gt; – for atmospheric evening lighting&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Depending on the model, Hue lights can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Change white tones&lt;/strong&gt; (from cool white to warm white)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Display full RGB colours&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dim softly&lt;/strong&gt; over long periods&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video you&amp;rsquo;ll see the difference between the various Hue models live in the dashboard!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="esphome-led-strip-the-diy-project"&gt;ESPHome LED Strip: The DIY Project
&lt;/h3&gt;&lt;p&gt;My personal highlight is a &lt;strong&gt;custom-built LED lamp in the hallway&lt;/strong&gt;, made from an LED strip with &lt;strong&gt;individually addressable LEDs&lt;/strong&gt;. Control is handled by an &lt;strong&gt;ESP32 microcontroller running ESPHome&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;What makes it special: the lamp consists of &lt;strong&gt;several rings&lt;/strong&gt; that I can address individually with different colours. I use this for creative automations – more on that shortly!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Make sure to watch the lamp in action in the video – the effects are impressive!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="what-can-i-do-with-the-different-lights"&gt;What Can I Do With the Different Lights?
&lt;/h2&gt;&lt;p&gt;Now it gets interesting: what are the &lt;strong&gt;possibilities&lt;/strong&gt; of the different light types?&lt;/p&gt;
&lt;h3 id="shelly-simple-but-reliable"&gt;Shelly: Simple but Reliable
&lt;/h3&gt;&lt;p&gt;The Shelly-controlled lights are the &lt;strong&gt;simplest in my setup&lt;/strong&gt;. They can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;Switch on and off&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Sounds underwhelming? It is – but that&amp;rsquo;s exactly what makes them so &lt;strong&gt;reliable and fast&lt;/strong&gt;. For rooms like the bathroom, hallway, or storage room, I don&amp;rsquo;t need anything more. The main thing is that the light comes on when I need it!&lt;/p&gt;
&lt;h3 id="philips-hue-the-colour-artists"&gt;Philips Hue: The Colour Artists
&lt;/h3&gt;&lt;p&gt;With the Hue lights things get considerably more interesting. Depending on the model they can:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Warm white / cool white lights:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Change colour temperature (from cosy warm white to energising cool white)&lt;/li&gt;
&lt;li&gt;Dim brightness continuously&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Smooth transitions&lt;/strong&gt; over minutes or even hours&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;RGB lights:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Display &lt;strong&gt;any colour&lt;/strong&gt; in the RGB spectrum&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Colour-change animations&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Combinations of colour and brightness&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you both variants live in the dashboard – the difference is striking!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="esphome-led-strip-the-all-rounder"&gt;ESPHome LED Strip: The All-Rounder
&lt;/h3&gt;&lt;p&gt;My custom-built LED lamp can do everything Hue can – and more:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Full RGB display&lt;/strong&gt; for every individual LED&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Individual control of separate rings&lt;/strong&gt; with different colours&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Special effects&lt;/strong&gt; such as running lights, rainbow, or pulsing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dynamic displays&lt;/strong&gt; for smart home status&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I use this flexibility for the &lt;strong&gt;most creative automations&lt;/strong&gt; – more on that shortly!&lt;/p&gt;
&lt;h2 id="the-interesting-automations"&gt;The Interesting Automations
&lt;/h2&gt;&lt;p&gt;Now for the exciting part: &lt;strong&gt;what do I actually do with all these lights?&lt;/strong&gt; Here are my favourite automations!&lt;/p&gt;
&lt;h3 id="motion-sensor--shelly-the-classic"&gt;Motion Sensor + Shelly: The Classic
&lt;/h3&gt;&lt;p&gt;The simplest and simultaneously most useful automation: &lt;strong&gt;light comes on automatically when I enter a room&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How does it work?&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Motion sensors&lt;/strong&gt; distributed throughout the rooms&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Trigger:&lt;/strong&gt; Motion detected&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Action:&lt;/strong&gt; Switch on Shelly light&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Timeout:&lt;/strong&gt; Automatically switch off after X minutes without motion&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Where I use this:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Hallway&lt;/li&gt;
&lt;li&gt;Storage room&lt;/li&gt;
&lt;li&gt;Dressing room&lt;/li&gt;
&lt;li&gt;Guest bathroom&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Sounds trivial, but it&amp;rsquo;s &lt;strong&gt;incredibly practical&lt;/strong&gt;! You come in from the car with your hands full and don&amp;rsquo;t have to feel for a light switch. The light is simply already on.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you the automation and how it responds live!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="wake-up-light-a-gentle-start-to-the-day"&gt;Wake-Up Light: A Gentle Start to the Day
&lt;/h3&gt;&lt;p&gt;This is where it gets more interesting: my &lt;strong&gt;Philips Hue lights in the bedroom&lt;/strong&gt; serve as a &lt;strong&gt;gentle wake-up light&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The problem:&lt;/strong&gt; A normal alarm clock tears you brutally out of sleep. With light, it&amp;rsquo;s so much gentler!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How I implement it:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Trigger:&lt;/strong&gt; Wake-up time (weekdays only)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Action:&lt;/strong&gt; Gradually dim lights up over &lt;strong&gt;20 minutes&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Starting point:&lt;/strong&gt; Very warm, dimmed light (simulates morning sun)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;End point:&lt;/strong&gt; Bright, cooler light (gently wakes you up)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;The trick:&lt;/strong&gt; Home Assistant can slowly brighten lights using a &lt;strong&gt;transition parameter&lt;/strong&gt;. This means the light continuously changes brightness and colour temperature over 20 minutes!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Additional feature:&lt;/strong&gt; At the same time I also switch on the radio and slowly increase the &lt;strong&gt;volume&lt;/strong&gt;. The perfect start to the day!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Make sure to look at the automation code in the video – I&amp;rsquo;ll show you the transition parameter!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="night-light-mode-navigation-without-glare"&gt;Night Light Mode: Navigation Without Glare
&lt;/h3&gt;&lt;p&gt;I use the custom-built &lt;strong&gt;LED lamp in the hallway&lt;/strong&gt; as an intelligent night light:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The idea:&lt;/strong&gt; When someone needs to use the bathroom at night, the hallway should be subtly lit – but not so bright that you&amp;rsquo;re fully awake.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How it works:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Motion sensor&lt;/strong&gt; detects movement in the hallway&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Condition:&lt;/strong&gt; It is between 22:00 and 06:00&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Action:&lt;/strong&gt; LED lamp switches on with &lt;strong&gt;very low brightness&lt;/strong&gt; and &lt;strong&gt;warm light&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Timeout:&lt;/strong&gt; Automatically switches off after 2 minutes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The brilliant part: the lamp is bright enough to navigate by, but not so harsh that it wakes you up completely. &lt;strong&gt;The perfect compromise!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="bin-day-reminder-never-forget-visually-again"&gt;Bin-Day Reminder: Never Forget Visually Again
&lt;/h3&gt;&lt;p&gt;Now it gets really creative: I use the &lt;strong&gt;individually addressable rings&lt;/strong&gt; of my LED lamp as a &lt;strong&gt;visual reminder for bin collection&lt;/strong&gt;!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The problem:&lt;/strong&gt; I regularly forget to put the bin out in time.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The solution:&lt;/strong&gt; The lamp shows me in colour which bin is being collected tomorrow!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;How it works:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Trigger:&lt;/strong&gt; Afternoon at 16:00&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Condition:&lt;/strong&gt; Check whether a bin is being collected tomorrow&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Action:&lt;/strong&gt; Show a coloured ring on the LED lamp
&lt;ul&gt;
&lt;li&gt;🟢 &lt;strong&gt;Green&lt;/strong&gt; = Food/garden waste bin&lt;/li&gt;
&lt;li&gt;🟡 &lt;strong&gt;Yellow&lt;/strong&gt; = Recycling/yellow bag&lt;/li&gt;
&lt;li&gt;🔵 &lt;strong&gt;Blue&lt;/strong&gt; = Paper bin&lt;/li&gt;
&lt;li&gt;⚫ &lt;strong&gt;Black&lt;/strong&gt; = General waste&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Every time I walk through the hallway I see the coloured ring and am reminded. &lt;strong&gt;Better than any push notification!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you the complete automation and what the lamp looks like when multiple bins need to go out at the same time!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;By the way: how I integrate &lt;strong&gt;bin collection schedules&lt;/strong&gt; into Home Assistant is covered in a &lt;a class="link" href="https://smarthome-aber-sicher.de/post/muelltonnen/" &gt;dedicated article about the bin collection integration&lt;/a&gt;. Definitely check it out if you&amp;rsquo;re interested in that topic!&lt;/p&gt;
&lt;h2 id="more-creative-ideas-for-light-in-home-assistant"&gt;More Creative Ideas for Light in Home Assistant
&lt;/h2&gt;&lt;p&gt;You can see: &lt;strong&gt;light is so much more than just on and off!&lt;/strong&gt; Here are a few more ideas I haven&amp;rsquo;t implemented myself, but which might be &lt;strong&gt;interesting for you&lt;/strong&gt;:&lt;/p&gt;
&lt;h3 id="presence-simulation-while-on-holiday"&gt;Presence Simulation While on Holiday
&lt;/h3&gt;&lt;p&gt;Use your smart lights to &lt;strong&gt;simulate presence&lt;/strong&gt; when you&amp;rsquo;re away:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Lights come on and go off at random times&lt;/li&gt;
&lt;li&gt;Different rooms are lit in sequence&lt;/li&gt;
&lt;li&gt;Timings oriented around realistic patterns (living room in the evening, bedroom at night)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="alarm-visualisation"&gt;Alarm Visualisation
&lt;/h3&gt;&lt;p&gt;If &lt;strong&gt;movement is detected in the garden&lt;/strong&gt; or a &lt;strong&gt;window opens&lt;/strong&gt; while you&amp;rsquo;re away, lights can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Flash red as a warning&lt;/li&gt;
&lt;li&gt;Alert you acoustically and visually&lt;/li&gt;
&lt;li&gt;Act as a deterrent to intruders&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="mood-modes"&gt;Mood Modes
&lt;/h3&gt;&lt;p&gt;Create different &lt;strong&gt;scenes&lt;/strong&gt; for different situations:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🎬 &lt;strong&gt;Movie mode:&lt;/strong&gt; Dimmed, warm light&lt;/li&gt;
&lt;li&gt;🍽️ &lt;strong&gt;Dinner mode:&lt;/strong&gt; Bright, cosy light over the dining table&lt;/li&gt;
&lt;li&gt;🎉 &lt;strong&gt;Party mode:&lt;/strong&gt; Colourful colour changes&lt;/li&gt;
&lt;li&gt;📚 &lt;strong&gt;Reading mode:&lt;/strong&gt; Bright, neutral white light&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="daylight-adaptation"&gt;Daylight Adaptation
&lt;/h3&gt;&lt;p&gt;Automatically adjust the &lt;strong&gt;colour temperature&lt;/strong&gt; of your lights to the time of day:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Morning: Cool, energising light&lt;/li&gt;
&lt;li&gt;Midday: Neutral white&lt;/li&gt;
&lt;li&gt;Evening: Warm, relaxing light (supports your natural sleep rhythm)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="why-light-is-the-perfect-entry-point-into-home-assistant"&gt;Why Light Is the Perfect Entry Point into Home Assistant
&lt;/h2&gt;&lt;p&gt;If you&amp;rsquo;re new to Home Assistant: &lt;strong&gt;light is the ideal starting point!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="reasons"&gt;Reasons:
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Immediate feedback&lt;/strong&gt; – you see straight away whether your automation is working&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Not critical infrastructure&lt;/strong&gt; – if something goes wrong, it&amp;rsquo;s not a disaster&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Many hardware options&lt;/strong&gt; – from affordable (Shelly) to comfortable (Hue)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Simple automations&lt;/strong&gt; – perfect for learning the basics&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Plenty of room for creativity&lt;/strong&gt; – once the basics are in place, you can experiment&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;In the video I give you even more tips for beginners!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="hardware-recommendations"&gt;Hardware Recommendations
&lt;/h2&gt;&lt;p&gt;Want to get started smart? Here are my &lt;strong&gt;hardware recommendations&lt;/strong&gt; based on my own experience:&lt;/p&gt;
&lt;h3 id="for-wall-switches-shelly"&gt;For Wall Switches: Shelly
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Shelly 1&lt;/strong&gt; or &lt;strong&gt;Shelly 1PM&lt;/strong&gt; for simple on/off lights&lt;/li&gt;
&lt;li&gt;Works with existing switches&lt;/li&gt;
&lt;li&gt;Completely locally controllable&lt;/li&gt;
&lt;li&gt;Affordable to purchase&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="for-colour-and-comfort-philips-hue"&gt;For Colour and Comfort: Philips Hue
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zigbee2MQTT&lt;/strong&gt; instead of a Hue Bridge (saves money and increases flexibility)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;White Ambiance&lt;/strong&gt; for colour temperature control&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;White and Colour&lt;/strong&gt; for full RGB control&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="for-makers-esphome"&gt;For Makers: ESPHome
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;WLED-compatible LED strips&lt;/strong&gt; with WS2812B LEDs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ESP32&lt;/strong&gt; or &lt;strong&gt;ESP8266&lt;/strong&gt; as controller&lt;/li&gt;
&lt;li&gt;ESPHome for easy integration into Home Assistant&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Affiliate links&lt;/strong&gt; to recommended hardware can be found in the video description!&lt;/p&gt;
&lt;h2 id="avoiding-common-pitfalls"&gt;Avoiding Common Pitfalls
&lt;/h2&gt;&lt;p&gt;From my experience there are a few typical &lt;strong&gt;mistakes when getting started with lighting control&lt;/strong&gt;:&lt;/p&gt;
&lt;h3 id="mistake-1-too-many-automations-for-one-light"&gt;Mistake 1: Too Many Automations for One Light
&lt;/h3&gt;&lt;p&gt;When multiple automations control the same light, they can &lt;strong&gt;conflict with each other&lt;/strong&gt;. Example: a motion sensor switches the light on, but at the same time another automation wants to switch it off.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; Use &lt;strong&gt;conditions&lt;/strong&gt; in your automations or central logic helpers.&lt;/p&gt;
&lt;h3 id="mistake-2-no-manual-override"&gt;Mistake 2: No Manual Override
&lt;/h3&gt;&lt;p&gt;It&amp;rsquo;s annoying when an automation switches the light off while you&amp;rsquo;re still in the room!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; Build in &lt;strong&gt;manual override options&lt;/strong&gt;, for example via an Input Boolean.&lt;/p&gt;
&lt;h3 id="mistake-3-motion-sensor-in-the-wrong-spot"&gt;Mistake 3: Motion Sensor in the Wrong Spot
&lt;/h3&gt;&lt;p&gt;A poorly positioned motion sensor detects you too late – the light stays off.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; Test different positions and pay attention to the &lt;strong&gt;detection range&lt;/strong&gt; of your sensor.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I go into these pitfalls in more detail!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="watch-the-video"&gt;Watch the Video!
&lt;/h2&gt;&lt;p&gt;I&amp;rsquo;ve told you a lot, but &lt;strong&gt;you&amp;rsquo;ll understand it best when you see it&lt;/strong&gt;! In the video I show you:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;All lights live in the dashboard&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;The automations in detail&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;The custom-built LED lamp in action&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;What the bin-day reminders look like&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;The code for the wake-up light&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Click the video above and watch it now!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="further-articles-and-videos"&gt;Further Articles and Videos
&lt;/h2&gt;&lt;p&gt;If you&amp;rsquo;re interested in the topic of lights and automations:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/muelltonnen/" &gt;Never forget the bins again&lt;/a&gt;&lt;/strong&gt; – How I use the bin collection integration&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-jalousie/" &gt;Installing Shelly roller blinds&lt;/a&gt;&lt;/strong&gt; – If you want to learn more about Shelly modules&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-az/02-blueprints/" &gt;Blueprints&lt;/a&gt;&lt;/strong&gt; – How to easily import automations&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The complete A-Z Series can be found here:&lt;/strong&gt; &lt;a class="link" href="https://smarthome-aber-sicher.de/en/tags/a-z-series/" &gt;Home Assistant A-Z Overview&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 12 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/11-ki/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← K · KI&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/13-mqtt/" class="ha-az-nav-btn ha-az-nav-next"&gt;M · MQTT →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;</description></item><item><title>Home Assistant A-Z: K is for AI – Does AI Belong?</title><link>https://smarthome-aber-sicher.de/en/blog/2025/12/07/home-assistant-a-z-k-is-for-ai-why-artificial-intelligence-does-not-belong-in-smart-home/</link><pubDate>Sun, 07 Dec 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/12/07/home-assistant-a-z-k-is-for-ai-why-artificial-intelligence-does-not-belong-in-smart-home/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/12/07/home-assistant-a-z-k-wie-ki-warum-k%C3%BCnstliche-intelligenz-nicht-zu-smart-home-passt/cover.png" alt="Featured image of post Home Assistant A-Z: K is for AI – Does AI Belong?" /&gt;&lt;h2 id="welcome-to-the-a-z-series-k-is-for-ai"&gt;Welcome to the A-Z Series: K is for AI
&lt;/h2&gt;&lt;p&gt;In today&amp;rsquo;s episode of our &lt;strong&gt;Home Assistant A-Z Series&lt;/strong&gt;, we tackle a controversial topic: &lt;strong&gt;Artificial Intelligence in your Smart Home&lt;/strong&gt;! AI is everywhere right now – but does it really align with the core principles of Home Assistant? Today I give you 10 reasons why AI actually doesn&amp;rsquo;t belong in Home Assistant – and at the end I&amp;rsquo;ll still tell you where AI can make sense.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/HebK-9l974A?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_4478378632720312295_hu_b16c224760512655.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="the-uncomfortable-truth-about-ai-in-smart-home"&gt;The Uncomfortable Truth About AI in Smart Home
&lt;/h2&gt;&lt;p&gt;Artificial intelligence is the buzzword of the moment. Every manufacturer advertises it, every app wants to be &amp;ldquo;intelligent.&amp;rdquo; But let&amp;rsquo;s be honest: &lt;strong&gt;Does your Smart Home really need AI?&lt;/strong&gt; Or is it just marketing?&lt;/p&gt;
&lt;p&gt;Home Assistant was built with clear values: &lt;strong&gt;Local control, privacy, independence, and reliability&lt;/strong&gt;. And this is exactly where the problem with AI models begins. In the video I show you why these two worlds actually don&amp;rsquo;t fit together – and why that&amp;rsquo;s actually a good thing!&lt;/p&gt;
&lt;h2 id="reason-1-cloud-dependency-vs-local-control"&gt;Reason 1: Cloud Dependency vs. Local Control
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;The foundation of Home Assistant is local control.&lt;/strong&gt; Your data stays with you, your system works even without internet. This is one of the main reasons many of us switched to Home Assistant in the first place!&lt;/p&gt;
&lt;p&gt;AI models, on the other hand? They run &lt;strong&gt;almost always on external cloud servers&lt;/strong&gt;. Why? Because they need enormous computing power. That&amp;rsquo;s the complete opposite of what makes Home Assistant special.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I explain&lt;/strong&gt; why this cloud dependency is not just a philosophical problem, but has real practical disadvantages.&lt;/p&gt;
&lt;h2 id="reason-2-unpredictability--smart-homes-need-determinism"&gt;Reason 2: Unpredictability – Smart Homes Need Determinism
&lt;/h2&gt;&lt;p&gt;Imagine: You come home and &lt;strong&gt;sometimes&lt;/strong&gt; the lights turn on, &lt;strong&gt;sometimes&lt;/strong&gt; not. Or the heating decides today that it&amp;rsquo;s not that cold after all. Sounds absurd? That&amp;rsquo;s exactly what happens when you let AI run unchecked in your Smart Home!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;AI always works with probabilities.&lt;/strong&gt; &amp;ldquo;With 87% probability the mail carrier is at the door&amp;rdquo; – fine for a notification. But for critical automations? &lt;strong&gt;Absolutely not!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="when-its-cold-the-heating-must-come-on"&gt;When It&amp;rsquo;s Cold, the Heating Must Come On
&lt;/h3&gt;&lt;p&gt;A classic example from the video: When the temperature drops below 19 degrees, the heating should kick in. &lt;strong&gt;Period. No discussion.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;You don&amp;rsquo;t want an AI model &amp;ldquo;thinking&amp;rdquo; about whether it currently makes sense to turn on the heating. You&amp;rsquo;re cold &lt;strong&gt;right now&lt;/strong&gt; – there&amp;rsquo;s no time for probability calculations!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Watch the video&lt;/strong&gt; to see where this difference between deterministic rules and AI probabilities really becomes critical!&lt;/p&gt;
&lt;h2 id="reason-3-explainability-is-completely-missing"&gt;Reason 3: Explainability Is Completely Missing
&lt;/h2&gt;&lt;p&gt;With a classic automation you can &lt;strong&gt;precisely trace&lt;/strong&gt; what happened:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You look at the traces&lt;/li&gt;
&lt;li&gt;You see which conditions were met&lt;/li&gt;
&lt;li&gt;You find the error and fix it&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;With AI you only get:&lt;/strong&gt; &amp;ldquo;The model decided it was A.&amp;rdquo; Why? No idea. What can you change? Unclear.&lt;/p&gt;
&lt;p&gt;Classic &lt;strong&gt;debugging as in software development is simply impossible&lt;/strong&gt;. In the video I show you why this is a massive problem for the maintainability of your Smart Home.&lt;/p&gt;
&lt;h2 id="reason-4-hallucinations-are-fatal-in-smart-homes"&gt;Reason 4: Hallucinations Are Fatal in Smart Homes
&lt;/h2&gt;&lt;p&gt;You&amp;rsquo;ve surely heard of &lt;strong&gt;&amp;ldquo;hallucinations&amp;rdquo; in AI models&lt;/strong&gt; – when the AI makes up things that don&amp;rsquo;t exist. This is an &lt;strong&gt;inherent property of AI&lt;/strong&gt; and cannot be completely eliminated.&lt;/p&gt;
&lt;h3 id="ai-cannot-say-i-dont-know"&gt;AI Cannot Say &amp;ldquo;I Don&amp;rsquo;t Know&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;AI models have an extremely hard time admitting they don&amp;rsquo;t know something. Present them with a choice between A or B, and a decision will be made – &lt;strong&gt;even if the underlying data isn&amp;rsquo;t there at all&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;In your Smart Home, this can have &lt;strong&gt;fatal consequences&lt;/strong&gt;. In the video I give you concrete examples of where such hallucinations can become truly dangerous.&lt;/p&gt;
&lt;h2 id="reason-5-ai-is-in-constant-flux"&gt;Reason 5: AI Is in Constant Flux
&lt;/h2&gt;&lt;p&gt;What works today with a particular AI model may be &lt;strong&gt;completely different tomorrow with the next version&lt;/strong&gt;. AI models are in an &lt;strong&gt;extremely fast development cycle&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;You&amp;rsquo;ve set up your automations perfectly, everything&amp;rsquo;s running? Then the next AI model update comes along and turns everything upside down. &lt;strong&gt;That&amp;rsquo;s the opposite of what a Smart Home should be&lt;/strong&gt; – stable, reliable, low-maintenance.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I explain&lt;/strong&gt; why this constant change turns your Smart Home into a perpetual work-in-progress!&lt;/p&gt;
&lt;h2 id="reason-6-computing-power--local-or-cloud"&gt;Reason 6: Computing Power – Local or Cloud?
&lt;/h2&gt;&lt;p&gt;If you want to run AI &lt;strong&gt;locally&lt;/strong&gt; (which would actually be the only Home Assistant-compatible option), you need &lt;strong&gt;massive computing power&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Most of us run Home Assistant on a &lt;strong&gt;Raspberry Pi or similarly lightweight hardware&lt;/strong&gt;. That&amp;rsquo;s enough for hundreds of automations – but not for compute-intensive AI models.&lt;/p&gt;
&lt;p&gt;So back to the cloud? Then we&amp;rsquo;re back at &lt;strong&gt;Reason 1: cloud dependency&lt;/strong&gt;. A vicious cycle!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Watch the video&lt;/strong&gt; to see what hardware you&amp;rsquo;d really need for local AI – the numbers are sobering!&lt;/p&gt;
&lt;h2 id="reason-8-privacy--your-private-life"&gt;Reason 8: Privacy – Your Private Life
&lt;/h2&gt;&lt;p&gt;Yes, Reason 7 is missing from the transcript – probably a small mistake during recording! But &lt;strong&gt;Reason 8 is all the more important: Privacy!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Smart Home data is &lt;strong&gt;extremely private&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Camera images&lt;/strong&gt; show your home and your family&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Presence data&lt;/strong&gt; reveals when you&amp;rsquo;re home and when you&amp;rsquo;re not&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sensor data&lt;/strong&gt; shows your habits in the finest detail&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Should this intimate information really end up in a cloud AI? &lt;strong&gt;Absolutely not!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In the video I explain why Smart Home data in particular is so sensitive and why you should be very careful about who you trust with this data.&lt;/p&gt;
&lt;h2 id="reason-9-home-assistant-already-has-everything"&gt;Reason 9: Home Assistant Already Has Everything
&lt;/h2&gt;&lt;p&gt;Let&amp;rsquo;s be honest: &lt;strong&gt;Look at the list of integrations!&lt;/strong&gt; Over 3,000 integrations, countless sensors, helpers, template functions – Home Assistant can already do just about everything.&lt;/p&gt;
&lt;h3 id="what-you-really-need"&gt;What You Really Need
&lt;/h3&gt;&lt;p&gt;You can derive &lt;strong&gt;precise decisions&lt;/strong&gt; from your sensors:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Motion sensors tell you if someone is home&lt;/li&gt;
&lt;li&gt;Bluetooth beacons track your devices&lt;/li&gt;
&lt;li&gt;Temperature sensors control the heating&lt;/li&gt;
&lt;li&gt;Brightness sensors regulate the lighting&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All of this &lt;strong&gt;deterministic, reliable, and with the precision you define in your automations&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you&lt;/strong&gt; that the real use cases for AI in Home Assistant can be counted on one hand!&lt;/p&gt;
&lt;h2 id="reason-10-ai-solves-problems-you-can-solve-differently"&gt;Reason 10: AI Solves Problems You Can Solve Differently
&lt;/h2&gt;&lt;p&gt;The last reason is perhaps the most important: &lt;strong&gt;Do you really need AI for these problems?&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="example-1-presence-detection"&gt;Example 1: Presence Detection
&lt;/h3&gt;&lt;p&gt;Do you need AI to detect if someone is home? &lt;strong&gt;No!&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Motion sensors in every room&lt;/li&gt;
&lt;li&gt;Bluetooth beacons from smartphone or watch&lt;/li&gt;
&lt;li&gt;Door sensors&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All of this gives you &lt;strong&gt;deterministic, reliable presence detection&lt;/strong&gt; – completely without AI!&lt;/p&gt;
&lt;h3 id="example-2-heating-control"&gt;Example 2: Heating Control
&lt;/h3&gt;&lt;p&gt;Do you need &lt;strong&gt;AI-powered heating control&lt;/strong&gt; to squeeze out the last percent of optimization? Or would a &lt;strong&gt;simple day and night temperature&lt;/strong&gt; be completely sufficient?&lt;/p&gt;
&lt;p&gt;The answer is almost always: &lt;strong&gt;The simple solution is enough!&lt;/strong&gt; In the video I give you more examples where AI seems complicated but the solution is actually simple.&lt;/p&gt;
&lt;h2 id="but-ai-can-still-help"&gt;But: AI Can Still Help!
&lt;/h2&gt;&lt;p&gt;After all the critical points, I promised: &lt;strong&gt;There are actually sensible use cases for AI in Home Assistant!&lt;/strong&gt; Just not where most people expect them.&lt;/p&gt;
&lt;h3 id="use-case-1-analyzing-log-files"&gt;Use Case 1: Analyzing Log Files
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Who doesn&amp;rsquo;t know this?&lt;/strong&gt; Home Assistant floods you with log files, and you desperately ask yourself: &amp;ldquo;What&amp;rsquo;s actually going wrong here?&amp;rdquo;&lt;/p&gt;
&lt;p&gt;AI models or &lt;strong&gt;language models are perfect for processing large amounts of text&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Simply copy the log files into ChatGPT or another language model&lt;/strong&gt; and ask: &amp;ldquo;What&amp;rsquo;s the problem here?&amp;rdquo; Even if a direct solution doesn&amp;rsquo;t always come out, you at least get &lt;strong&gt;ideas for further research&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you&lt;/strong&gt; how this works in practice and which prompts work well!&lt;/p&gt;
&lt;h3 id="use-case-2-debugging-jinja-templates"&gt;Use Case 2: Debugging Jinja Templates
&lt;/h3&gt;&lt;p&gt;You&amp;rsquo;ve gotten tangled up in &lt;strong&gt;Jinja templates&lt;/strong&gt; again and are completely at a loss as to why it&amp;rsquo;s not working?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Copy the template snippet into an AI&lt;/strong&gt; and let it analyze it. The chances are good that you&amp;rsquo;ll get &lt;strong&gt;valuable tips&lt;/strong&gt; on where the error lies.&lt;/p&gt;
&lt;p&gt;This is, by the way, one of my &lt;strong&gt;personal main use cases&lt;/strong&gt; for AI: understanding and debugging complex template syntax!&lt;/p&gt;
&lt;h3 id="use-case-3-object-detection"&gt;Use Case 3: Object Detection
&lt;/h3&gt;&lt;p&gt;The third sensible use case: &lt;strong&gt;Object detection in camera images&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&amp;ldquo;Is that the mail carrier at the door or the neighbor?&amp;rdquo; – this is actually a legitimate &lt;strong&gt;use case for AI&lt;/strong&gt; (or more precisely: for &lt;strong&gt;machine learning&lt;/strong&gt;).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Important distinction:&lt;/strong&gt; Here we&amp;rsquo;re talking less about language models, but rather classical machine learning for image recognition. In the video I explain the difference and why it actually makes sense here.&lt;/p&gt;
&lt;h2 id="conclusion-ai-doesnt-replace-logic"&gt;Conclusion: AI Doesn&amp;rsquo;t Replace Logic
&lt;/h2&gt;&lt;p&gt;After all these arguments, the &lt;strong&gt;conclusion&lt;/strong&gt; can be stated very clearly:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;AI doesn&amp;rsquo;t replace logic in Home Assistant. At best, it can help build it better.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Home Assistant thrives on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Deterministic rules&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Local control&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Privacy&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reliability&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;And these are exactly the values you should &lt;strong&gt;not sacrifice for the AI buzzword&lt;/strong&gt;. Use AI where it truly adds value – in debugging, in development, in specific recognition tasks. But build your Smart Home on &lt;strong&gt;solid, transparent automations&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Make sure to watch the complete video&lt;/strong&gt; – I go even deeper into each argument and show you practical examples!&lt;/p&gt;
&lt;h2 id="share-your-opinion"&gt;Share Your Opinion!
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;What&amp;rsquo;s your take on AI in your Smart Home?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Write in the comments:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Are you already using AI features in Home Assistant?&lt;/li&gt;
&lt;li&gt;Did I convince you, or do you see other sensible use cases?&lt;/li&gt;
&lt;li&gt;Where would you like AI support?&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Charge Your EV Without Cloud: EVCC Controls the Wallbox</title><link>https://smarthome-aber-sicher.de/en/blog/2025/11/30/charging-your-ev-without-cloud-evcc-the-intelligent-ev-charger-controller/</link><pubDate>Sun, 30 Nov 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/11/30/charging-your-ev-without-cloud-evcc-the-intelligent-ev-charger-controller/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/11/30/e-auto-laden-ohne-cloud-evcc-die-intelligente-wallbox-steuerung/cover.png" alt="Featured image of post Charge Your EV Without Cloud: EVCC Controls the Wallbox" /&gt;&lt;h2 id="the-problem-wallbox-apps-that-drive-you-crazy"&gt;The Problem: Wallbox Apps That Drive You Crazy
&lt;/h2&gt;&lt;p&gt;You have an &lt;strong&gt;EV and a wallbox&lt;/strong&gt;, but you&amp;rsquo;re frustrated with &lt;strong&gt;clunky manufacturer apps&lt;/strong&gt; and &lt;strong&gt;terrible smart home integration&lt;/strong&gt;? The app is slow, confusing, and sends all your data to the cloud?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;There&amp;rsquo;s a better way!&lt;/strong&gt; With &lt;strong&gt;EVCC&lt;/strong&gt;, you get a fully local solution for intelligent control of your EV charging – &lt;strong&gt;no cloud, no dependency, maximum control&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the new video, I&amp;rsquo;ll show you my complete setup and how I saved over €2,500 with it!&lt;/strong&gt;&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/X2vzei6kftA?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_394514016423443791_hu_72034984e65185e8.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-is-evcc"&gt;What Is EVCC?
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;EVCC&lt;/strong&gt; stands for &amp;ldquo;Electric Vehicle Charge Controller&amp;rdquo; and is an &lt;strong&gt;open-source software&lt;/strong&gt; for intelligent wallbox control. What makes it special:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;Completely local&lt;/strong&gt; – no cloud connection required&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Open source&lt;/strong&gt; – transparent code, active community&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Manufacturer-independent&lt;/strong&gt; – works with almost any wallbox&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Professional UI&lt;/strong&gt; – more polished than any manufacturer app&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Smart Home integration&lt;/strong&gt; – works perfectly with Home Assistant &amp;amp; more&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="with-or-without-a-pv-system"&gt;With or Without a PV System
&lt;/h3&gt;&lt;p&gt;The brilliant part: &lt;strong&gt;EVCC works with AND without a PV system!&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;With PV:&lt;/strong&gt; Intelligent surplus charging – make the most of your solar energy&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Without PV:&lt;/strong&gt; Charge on a schedule or with dynamic electricity prices&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video, I&amp;rsquo;ll show you both scenarios!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="my-setup-in-detail"&gt;My Setup in Detail
&lt;/h2&gt;&lt;p&gt;In my setup, I use:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;PV system&lt;/strong&gt; on the roof (optional!)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Home battery storage&lt;/strong&gt; in the basement (optional!)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wallbox&lt;/strong&gt; in the garage (required)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;EV&lt;/strong&gt; (hopefully you have one 😊)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Raspberry Pi 4&lt;/strong&gt; running EVCC as a Docker container&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;My &lt;strong&gt;wallbox&lt;/strong&gt; is connected to the Raspberry Pi via a &lt;strong&gt;Modbus cable&lt;/strong&gt; (20 meters through the basement!). But don&amp;rsquo;t worry: depending on the wallbox model, this can also work over &lt;strong&gt;Wi-Fi&lt;/strong&gt; or &lt;strong&gt;Ethernet&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The best part:&lt;/strong&gt; You don&amp;rsquo;t need my complete setup! A single wallbox is enough to get started.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video, I&amp;rsquo;ll show you my complete installation including the wiring!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="the-evcc-dashboard-a-dream"&gt;The EVCC Dashboard: A Dream!
&lt;/h2&gt;&lt;p&gt;Does this &lt;strong&gt;brilliant user interface&lt;/strong&gt; look like a &amp;ldquo;hacky&amp;rdquo; open-source tool to you? I was &lt;strong&gt;completely blown away&lt;/strong&gt; when I first launched it!&lt;/p&gt;
&lt;h3 id="what-you-see-at-a-glance"&gt;What You See at a Glance:
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Top: Energy flows&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Where is the power coming from? (PV, battery, grid)&lt;/li&gt;
&lt;li&gt;Where is it going? (house, car, battery, grid)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Live updates&lt;/strong&gt; every 10 seconds&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Middle: Charging modes&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;PV:&lt;/strong&gt; Surplus charging – solar power only&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Min+PV:&lt;/strong&gt; Minimum load + solar&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fast:&lt;/strong&gt; Full power – regardless of source&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Bottom: Details&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Current charging power&lt;/li&gt;
&lt;li&gt;Battery state of charge&lt;/li&gt;
&lt;li&gt;Estimated charging time&lt;/li&gt;
&lt;li&gt;Cost overview&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Make sure to watch the video to see the display change in real time!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="live-demo-how-surplus-charging-works"&gt;Live Demo: How Surplus Charging Works
&lt;/h2&gt;&lt;p&gt;In the video, I&amp;rsquo;ll walk you through &lt;strong&gt;three live scenarios&lt;/strong&gt;:&lt;/p&gt;
&lt;h3 id="scenario-1-no-sun-no-car"&gt;Scenario 1: No Sun, No Car
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;PV system produces little (November fog)&lt;/li&gt;
&lt;li&gt;Home battery covers household consumption&lt;/li&gt;
&lt;li&gt;No charging possible&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="scenario-2-lots-of-sun-no-car"&gt;Scenario 2: Lots of Sun, No Car
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;PV system produces a decent amount&lt;/li&gt;
&lt;li&gt;Home battery is full&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Surplus is exported to the grid&lt;/strong&gt; (wasted)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="scenario-3-sun--car-plugged-in-"&gt;Scenario 3: Sun + Car Plugged In 🎉
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;PV system is producing&lt;/li&gt;
&lt;li&gt;Household consumption is covered&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Surplus flows into the car!&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;EVCC adjusts automatically&lt;/strong&gt; every 10 seconds&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The dynamic adjustment is impressive – check it out in the video!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="dynamic-electricity-prices-saving-money-on-autopilot"&gt;Dynamic Electricity Prices: Saving Money on Autopilot
&lt;/h2&gt;&lt;p&gt;For me, this is the &lt;strong&gt;killer feature&lt;/strong&gt;: &lt;strong&gt;EVCC supports dynamic electricity prices!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="how-it-works"&gt;How It Works:
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create a charging plan&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When do you need the car? (departure time)&lt;/li&gt;
&lt;li&gt;How full should it be? (target state of charge)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;EVCC automatically calculates&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When is electricity cheapest?&lt;/li&gt;
&lt;li&gt;How long does charging take?&lt;/li&gt;
&lt;li&gt;What will it likely cost?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Car charges automatically at the best time&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No manual intervention needed&lt;/li&gt;
&lt;li&gt;Maximum savings&lt;/li&gt;
&lt;li&gt;Ready on time for departure&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;In the video, I&amp;rsquo;ll show you the charging plan in action!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="my-experience-with-tibber"&gt;My Experience With Tibber
&lt;/h2&gt;&lt;p&gt;I used &lt;strong&gt;Tibber for two years&lt;/strong&gt; – essentially the &lt;strong&gt;pioneer of dynamic electricity tariffs&lt;/strong&gt; in Germany. I&amp;rsquo;m no longer a Tibber customer these days, but the principle works with any provider that offers dynamic tariffs.&lt;/p&gt;
&lt;h3 id="what-made-tibber-special"&gt;What Made Tibber Special
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;Price changes every 15 minutes&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;No smart meter required&lt;/strong&gt; – works with a standard meter&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Perfect EVCC integration&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Transparent pricing&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="making-use-of-price-dynamics"&gt;Making Use of Price Dynamics
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;In the video, I&amp;rsquo;ll show you the Tibber app:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;You can see the price curve for the next 24 hours. The dynamics are impressive:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;🟢 &lt;strong&gt;Cheap times:&lt;/strong&gt; Often at night, when there&amp;rsquo;s a lot of wind/solar on the grid&lt;/li&gt;
&lt;li&gt;🔴 &lt;strong&gt;Expensive times:&lt;/strong&gt; Usually in the evening during peak grid load&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;EVCC automatically charges during the green phases!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="the-result-2500-saved"&gt;The Result: €2,500 Saved!
&lt;/h3&gt;&lt;p&gt;EVCC logs all charging sessions and calculates your savings. In my case, it&amp;rsquo;s now &lt;strong&gt;over €2,500 euros!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="installation-easier-than-you-think"&gt;Installation: Easier Than You Think
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;EVCC runs as a Docker container&lt;/strong&gt; on a Raspberry Pi 4 at my place. The installation is surprisingly straightforward:&lt;/p&gt;
&lt;h3 id="option-1-docker-my-choice"&gt;Option 1: Docker (My Choice)
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Download and start the container&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker run -d &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; --name evcc &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; -p 7070:7070 &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; -v &lt;span class="k"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;pwd&lt;/span&gt;&lt;span class="k"&gt;)&lt;/span&gt;/evcc.yaml:/etc/evcc.yaml &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; evcc/evcc:latest
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ Quick to set up&lt;/li&gt;
&lt;li&gt;✅ Other services can run in parallel&lt;/li&gt;
&lt;li&gt;✅ Easy updates&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="option-2-home-assistant-add-on"&gt;Option 2: Home Assistant Add-on
&lt;/h3&gt;&lt;p&gt;If you&amp;rsquo;re using &lt;strong&gt;Home Assistant OS&lt;/strong&gt;, there&amp;rsquo;s an official add-on!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Installation:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Open the Add-on Store&lt;/li&gt;
&lt;li&gt;Search for &amp;ldquo;EVCC&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Install &amp;amp; start&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Even easier than Docker!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video, I&amp;rsquo;ll show you both options!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="configuration-yaml-or-web-ui"&gt;Configuration: YAML or Web UI
&lt;/h2&gt;&lt;p&gt;For initial configuration, you have two paths:&lt;/p&gt;
&lt;h3 id="classic-yaml-file"&gt;Classic: YAML File
&lt;/h3&gt;&lt;p&gt;This is how I did it. You edit a text file:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;span class="lnt"&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;site&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;title&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;My EVCC&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;meters&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;grid&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;...&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;pv&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;...&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;chargers&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Garage Wallbox&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;...&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;For:&lt;/strong&gt; Tinkerers who enjoy writing code
&lt;strong&gt;Against:&lt;/strong&gt; Slightly steeper learning curve&lt;/p&gt;
&lt;h3 id="modern-web-ui"&gt;Modern: Web UI
&lt;/h3&gt;&lt;p&gt;Since a few versions back, there&amp;rsquo;s a &lt;strong&gt;graphical configuration interface&lt;/strong&gt;!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For:&lt;/strong&gt; Beginners who prefer simplicity
&lt;strong&gt;Against:&lt;/strong&gt; (None, really 😊)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video, I&amp;rsquo;ll show you the Web UI – super intuitive!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="wallbox-compatibility-a-huge-selection"&gt;Wallbox Compatibility: A Huge Selection
&lt;/h2&gt;&lt;p&gt;My wallbox is connected via &lt;strong&gt;Modbus cable&lt;/strong&gt;. But EVCC supports an &lt;strong&gt;incredibly wide range of wallboxes&lt;/strong&gt;:&lt;/p&gt;
&lt;h3 id="supported-connection-types"&gt;Supported Connection Types:
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Modbus&lt;/strong&gt; (my setup)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wi-Fi&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ethernet&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloud&lt;/strong&gt; (if necessary)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="supported-manufacturers"&gt;Supported Manufacturers:
&lt;/h3&gt;&lt;p&gt;The list is &lt;strong&gt;impressively long&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ABL&lt;/li&gt;
&lt;li&gt;EVSE WiFi&lt;/li&gt;
&lt;li&gt;go-eCharger&lt;/li&gt;
&lt;li&gt;KEBA&lt;/li&gt;
&lt;li&gt;Mennekes&lt;/li&gt;
&lt;li&gt;Phoenix Contact&lt;/li&gt;
&lt;li&gt;Wallbe&lt;/li&gt;
&lt;li&gt;&amp;hellip; and &lt;strong&gt;many, many more!&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Check the EVCC documentation&lt;/strong&gt; – I haven&amp;rsquo;t found a wallbox yet that isn&amp;rsquo;t supported!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Link to the full list in the video and description!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="manufacturer-independence-the-big-advantage"&gt;Manufacturer Independence: The Big Advantage
&lt;/h2&gt;&lt;p&gt;What makes &lt;strong&gt;EVCC truly special&lt;/strong&gt;: you can mix and match manufacturers freely!&lt;/p&gt;
&lt;p&gt;In my setup:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Wallbox:&lt;/strong&gt; Manufacturer A&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;PV inverter:&lt;/strong&gt; Manufacturer B&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Home battery storage:&lt;/strong&gt; Manufacturer C (added just recently!)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;All from different manufacturers&lt;/strong&gt; who normally don&amp;rsquo;t work together. With EVCC? &lt;strong&gt;No problem!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video, I&amp;rsquo;ll tell you how seamlessly my new home battery storage was integrated!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="5-reasons-why-evcc-impresses-me"&gt;5 Reasons Why EVCC Impresses Me
&lt;/h2&gt;&lt;h3 id="1-completely-local"&gt;1. Completely Local
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;No cloud&lt;/strong&gt;, no dependencies. Your data stays with you. Even during an internet outage, local control keeps working!&lt;/p&gt;
&lt;h3 id="2-open-source-with-a-professional-ui"&gt;2. Open Source With a Professional UI
&lt;/h3&gt;&lt;p&gt;The code is &lt;strong&gt;public&lt;/strong&gt;, the community is &lt;strong&gt;active&lt;/strong&gt;. But the user interface looks like it came from a professional team!&lt;/p&gt;
&lt;h3 id="3-massive-hardware-support"&gt;3. Massive Hardware Support
&lt;/h3&gt;&lt;p&gt;Almost &lt;strong&gt;every wallbox&lt;/strong&gt;, almost &lt;strong&gt;every inverter&lt;/strong&gt;, almost &lt;strong&gt;every EV&lt;/strong&gt; is supported. The community keeps growing.&lt;/p&gt;
&lt;h3 id="4-intelligent-charging-control"&gt;4. Intelligent Charging Control
&lt;/h3&gt;&lt;p&gt;With a &lt;strong&gt;PV system and/or dynamic electricity prices&lt;/strong&gt;, you save real money. In my case: &lt;strong&gt;over €2,500!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="5-manufacturer-independence"&gt;5. Manufacturer Independence
&lt;/h3&gt;&lt;p&gt;You&amp;rsquo;re &lt;strong&gt;not locked in&lt;/strong&gt;. Switching wallbox? No problem. New battery storage? Works!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Even my in-laws are now using EVCC – and without any issues!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="who-is-evcc-for"&gt;Who Is EVCC For?
&lt;/h2&gt;&lt;h3 id="-perfect-if-you"&gt;✅ Perfect if you:
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Have an &lt;strong&gt;EV and a wallbox&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Want &lt;strong&gt;control over your data&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Like &lt;strong&gt;saving money&lt;/strong&gt; (PV or dynamic tariffs)&lt;/li&gt;
&lt;li&gt;Are familiar with &lt;strong&gt;Raspberry Pi&lt;/strong&gt; or &lt;strong&gt;Home Assistant&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Value &lt;strong&gt;manufacturer independence&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="-less-suitable-if-you"&gt;⚠️ Less suitable if you:
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Have no technical interest&lt;/li&gt;
&lt;li&gt;Need everything &amp;ldquo;out of the box&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Have no time for setup&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;But honestly:&lt;/strong&gt; The setup is &lt;strong&gt;easier than you&amp;rsquo;d think!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="frequently-asked-questions"&gt;Frequently Asked Questions
&lt;/h2&gt;&lt;h3 id="do-i-need-a-pv-system"&gt;&amp;ldquo;Do I need a PV system?&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;No!&lt;/strong&gt; EVCC works without one too. You can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Charge on a schedule&lt;/li&gt;
&lt;li&gt;Use dynamic electricity prices&lt;/li&gt;
&lt;li&gt;Simply enjoy the better UI&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="does-my-wallbox-work-with-it"&gt;&amp;ldquo;Does my wallbox work with it?&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Very likely!&lt;/strong&gt; Check: &lt;a class="link" href="https://docs.evcc.io/docs/devices/chargers" target="_blank" rel="noopener"
&gt;https://docs.evcc.io/docs/devices/chargers&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The list is impressive. &lt;strong&gt;In the video, I&amp;rsquo;ll show you where to look!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="is-the-installation-complicated"&gt;&amp;ldquo;Is the installation complicated?&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;No!&lt;/strong&gt; If you&amp;rsquo;ve used Docker or Home Assistant before, it&amp;rsquo;s &lt;strong&gt;a breeze&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="how-much-does-evcc-cost"&gt;&amp;ldquo;How much does EVCC cost?&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;EVCC is free!&lt;/strong&gt; Open source, no license fees. You only pay for the hardware (Raspberry Pi, wallbox).&lt;/p&gt;
&lt;h2 id="your-path-to-evcc"&gt;Your Path to EVCC
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; Check your hardware&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Do you have a supported wallbox?&lt;/li&gt;
&lt;li&gt;Do you have a Raspberry Pi or NAS?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; Installation&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Docker or Home Assistant add-on&lt;/li&gt;
&lt;li&gt;Download and start EVCC&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; Configuration&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Connect the wallbox&lt;/li&gt;
&lt;li&gt;Optional: PV system, battery storage, electricity meter&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; Enjoy!&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Open the dashboard&lt;/li&gt;
&lt;li&gt;Try out the charging modes&lt;/li&gt;
&lt;li&gt;Save money 😊&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;I&amp;rsquo;ll walk you through all the steps in detail in the video!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="your-experiences"&gt;Your Experiences?
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Write me in the comments:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How do you charge your EV at home?&lt;/li&gt;
&lt;li&gt;Are you already using EVCC?&lt;/li&gt;
&lt;li&gt;Did I spark your curiosity?&lt;/li&gt;
&lt;li&gt;Which wallbox do you have?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Be sure to watch the video&lt;/strong&gt; – there you&amp;rsquo;ll see the dashboard live, the charging modes in action, and my complete installation!&lt;/p&gt;
&lt;h2 id="further-reading"&gt;Further Reading
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;EVCC Documentation:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Official site: &lt;a class="link" href="https://evcc.io" target="_blank" rel="noopener"
&gt;https://evcc.io&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Documentation: &lt;a class="link" href="https://docs.evcc.io" target="_blank" rel="noopener"
&gt;https://docs.evcc.io&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;GitHub: &lt;a class="link" href="https://github.com/evcc-io/evcc" target="_blank" rel="noopener"
&gt;https://github.com/evcc-io/evcc&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Home Assistant A-Z: J is for Blinds</title><link>https://smarthome-aber-sicher.de/en/blog/2025/11/23/home-assistant-a-z-j-is-for-blinds-more-than-just-up-and-down/</link><pubDate>Sun, 23 Nov 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/11/23/home-assistant-a-z-j-is-for-blinds-more-than-just-up-and-down/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/11/23/home-assistant-a-z-j-wie-jalousien-mehr-als-nur-rauf-und-runter/cover.png" alt="Featured image of post Home Assistant A-Z: J is for Blinds" /&gt;&lt;h2 id="welcome-to-the-a-z-series-j-is-for-blinds"&gt;Welcome to the A-Z Series: J is for Blinds
&lt;/h2&gt;&lt;p&gt;In today&amp;rsquo;s episode of the &lt;strong&gt;Home Assistant A-Z Series&lt;/strong&gt; we tackle a topic with far more potential than most people realize: &lt;strong&gt;blinds and roller shutters&lt;/strong&gt;! From elegant dashboard control and time-based automations to fully automatic, sun-dependent shading – I&amp;rsquo;ll show you how to make your home more energy-efficient and comfortable.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/IRhopr5y9MQ?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_16978207183434881370_hu_58bef4c524bb244e.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="more-than-just-up-and-down"&gt;More Than Just Up and Down
&lt;/h2&gt;&lt;p&gt;Most people use their smart roller shutters only for the basics. But there&amp;rsquo;s so much more potential hiding in them! In this article and the accompanying video I&amp;rsquo;ll walk you through:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Dashboard control with live feedback&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Time-based and event-driven automations&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Groups and template sensors for a quick overview&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fully automatic, sun-dependent shading&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Seasonal adjustments to your setup&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="dashboard-control-the-foundation"&gt;Dashboard Control: The Foundation
&lt;/h2&gt;&lt;p&gt;The first step toward smart roller shutters is &lt;strong&gt;intuitive control through your dashboard&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="position-control-with-live-feedback"&gt;Position Control with Live Feedback
&lt;/h3&gt;&lt;p&gt;If your roller shutters can report their position back, you can see in Home Assistant not just the current status, but also:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Move to precise intermediate positions&lt;/strong&gt; using a slider&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Watch live&lt;/strong&gt; as the shutter reaches the desired position&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Use classic Open/Close/Stop controls&lt;/strong&gt; on a secondary level&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video you&amp;rsquo;ll see&lt;/strong&gt; how elegant this looks in practice!&lt;/p&gt;
&lt;h3 id="visualization-on-floor-plans"&gt;Visualization on Floor Plans
&lt;/h3&gt;&lt;p&gt;Things get especially clear when you project your roller shutters onto a &lt;strong&gt;floor plan of your home&lt;/strong&gt;. At a glance you can see:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Which shutters are open&lt;/li&gt;
&lt;li&gt;Which are currently closing&lt;/li&gt;
&lt;li&gt;The status of all windows at the same time&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Under the hood:&lt;/strong&gt; A simple picture-elements card with positioned shutter controls. &lt;strong&gt;I show you exactly how this works in the video!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="time-based-automations-the-smart-home-classic"&gt;Time-Based Automations: The Smart Home Classic
&lt;/h2&gt;&lt;p&gt;Constantly tapping buttons isn&amp;rsquo;t smart – so let&amp;rsquo;s automate!&lt;/p&gt;
&lt;h3 id="automation-1-close-automatically-at-night"&gt;Automation 1: Close Automatically at Night
&lt;/h3&gt;&lt;p&gt;The first useful automation makes sure roller shutters are closed at night. You can use various triggers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;State-based&lt;/strong&gt;: When you go to bed (Smart Home state &amp;ldquo;Night&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Time-based&lt;/strong&gt;: At a specific time (different for weekdays and weekends)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Condition-driven&lt;/strong&gt;: Only when it&amp;rsquo;s cool outside (to make use of the insulating effect)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you concrete examples&lt;/strong&gt; from my own setup!&lt;/p&gt;
&lt;h3 id="automation-2-open-automatically-in-the-morning"&gt;Automation 2: Open Automatically in the Morning
&lt;/h3&gt;&lt;p&gt;Symmetrically, when you get up in the morning the shutters open again automatically. Alternatively, you can use the &lt;strong&gt;sun&amp;rsquo;s position&lt;/strong&gt; as a trigger.&lt;/p&gt;
&lt;h3 id="intelligent-schedules-with-helpers"&gt;Intelligent Schedules with Helpers
&lt;/h3&gt;&lt;p&gt;For different schedules (weekday vs. weekend) &lt;strong&gt;schedule helpers&lt;/strong&gt; are perfect. You can define them as &amp;ldquo;quiet hours&amp;rdquo; and reference them in your automations.&lt;/p&gt;
&lt;h2 id="groups-and-overview-everything-under-control"&gt;Groups and Overview: Everything Under Control
&lt;/h2&gt;&lt;h3 id="grouping-roller-shutters"&gt;Grouping Roller Shutters
&lt;/h3&gt;&lt;p&gt;You can create any &lt;strong&gt;groups of roller shutters&lt;/strong&gt; you like – for example:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;All shutters in the living room&lt;/li&gt;
&lt;li&gt;All shutters on the south-facing side&lt;/li&gt;
&lt;li&gt;All shutters in the entire house&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;With a single click&lt;/strong&gt; you can then open or close all shutters in that group.&lt;/p&gt;
&lt;h3 id="template-sensor-for-an-overview"&gt;Template Sensor for an Overview
&lt;/h3&gt;&lt;p&gt;A small &lt;strong&gt;template sensor&lt;/strong&gt; shows you on your dashboard how many roller shutters are currently closed:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;span class="lnt"&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;sensor&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;sensors&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;closed_covers_count&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;friendly_name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Closed Roller Shutters&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ states.cover
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; | selectattr(&amp;#39;state&amp;#39;, &amp;#39;eq&amp;#39;, &amp;#39;closed&amp;#39;)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; | list | count }}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;This way you always have a clear overview! &lt;strong&gt;In the video you can see how I use this on my dashboard.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="automatic-shading-the-game-changer"&gt;Automatic Shading: The Game Changer
&lt;/h2&gt;&lt;p&gt;Now things get really interesting: &lt;strong&gt;fully automatic, sun-dependent shading&lt;/strong&gt;!&lt;/p&gt;
&lt;h3 id="the-two-components"&gt;The Two Components
&lt;/h3&gt;&lt;p&gt;My system consists of two automation groups:&lt;/p&gt;
&lt;h4 id="1-sun-position-calculation-per-facade"&gt;1. Sun Position Calculation per Facade
&lt;/h4&gt;&lt;p&gt;The first group calculates for each cardinal direction whether the sun is currently shining on that facade:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Blueprint-based&lt;/strong&gt;: I use a blueprint that I&amp;rsquo;ve instantiated four times&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;One helper per facade&lt;/strong&gt;: North, South, East, West&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dynamic calculation&lt;/strong&gt;: Takes the current sun position into account&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;I cover the technical details and the blueprint thoroughly in the video!&lt;/strong&gt;&lt;/p&gt;
&lt;h4 id="2-individual-control-per-window"&gt;2. Individual Control per Window
&lt;/h4&gt;&lt;p&gt;The second group controls each individual roller shutter:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;One blueprint per shutter&lt;/strong&gt;: Each shutter can be configured individually&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Window contacts taken into account&lt;/strong&gt;: Window open? Shutter stays up!&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;References the sun-position helpers&lt;/strong&gt;: Only closes when the sun shines on that facade&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Example from my setup:&lt;/strong&gt; The roller shutter in the utility room on the north side closes as soon as the sun (even in summer, only at the edges of the day) shines on that facade.&lt;/p&gt;
&lt;h3 id="why-one-automation-per-window"&gt;Why One Automation per Window?
&lt;/h3&gt;&lt;p&gt;This approach enables &lt;strong&gt;maximum flexibility&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Each shutter can be individually enabled or disabled&lt;/li&gt;
&lt;li&gt;Different rooms can be controlled differently&lt;/li&gt;
&lt;li&gt;Seasonal adjustments are easy to make&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="seasonal-configuration-adapting-throughout-the-year"&gt;Seasonal Configuration: Adapting Throughout the Year
&lt;/h2&gt;&lt;p&gt;The great thing about this system: you can &lt;strong&gt;adjust which rooms should be shaded&lt;/strong&gt; as the seasons change.&lt;/p&gt;
&lt;h3 id="my-scenarios"&gt;My Scenarios
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Winter (currently):&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ All shading automations &lt;strong&gt;disabled&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;🌞 I enjoy every ray of sunshine that enters the apartment&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Transition periods (spring/autumn):&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ Only bedroom automations &lt;strong&gt;enabled&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;🏠 Rest of the apartment: sunshine welcome&lt;/li&gt;
&lt;li&gt;😴 Bedroom: should stay cool&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Midsummer:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ All shading automations &lt;strong&gt;enabled&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;❄️ Maximum cooling through consistent shading&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;On my dashboard&lt;/strong&gt; I have an elegant overview where I can see at a glance which automations are active. &lt;strong&gt;I show you this view live in the video!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="hardware-basics"&gt;Hardware Basics
&lt;/h2&gt;&lt;p&gt;Wondering how to make your roller shutters smart in the first place?&lt;/p&gt;
&lt;p&gt;In my &lt;strong&gt;Shelly roller shutter video&lt;/strong&gt; I cover in detail:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Hardware selection (&lt;a class="link" href="https://amzn.to/3WxBUiQ" target="_blank" rel="noopener"
&gt;Shelly Plus 2PM&lt;/a&gt;&lt;em&gt;, &lt;a class="link" href="https://amzn.to/47kpLEh" target="_blank" rel="noopener"
&gt;Shelly 2 Gen3&lt;/a&gt;&lt;/em&gt; Or at OBI: &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F7119290%2Fshelly-relais-rollladenaktor-unterputz-2pm-gen3-schwarz" target="_blank" rel="noopener"
&gt;Shelly 2 Gen3&lt;/a&gt;&lt;em&gt;, &lt;a class="link" href="https://amzn.to/47tocCI" target="_blank" rel="noopener"
&gt;Shelly 2 Gen4&lt;/a&gt;&lt;/em&gt; Or at OBI: &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F2191162731005%2Fshelly-smartes-relais-schalter-fuer-jalousien-2pm-gen-4-schwarz" target="_blank" rel="noopener"
&gt;Shelly 2 Gen4&lt;/a&gt;&lt;em&gt;, or directly at &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;&lt;/em&gt; – code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;li&gt;Wiring in the flush-mount box&lt;/li&gt;
&lt;li&gt;Software setup and security&lt;/li&gt;
&lt;li&gt;Home Assistant integration&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;👉 &lt;strong&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-jalousie/" &gt;To the Shelly Blinds Video&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="the-blueprints-in-detail"&gt;The Blueprints in Detail
&lt;/h2&gt;&lt;p&gt;The blueprints for sun-position calculation and individual control are the core of my system.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Interested in the details?&lt;/strong&gt; Let me know in the comments under the video! If there&amp;rsquo;s enough interest, I&amp;rsquo;ll make a &lt;strong&gt;bonus video&lt;/strong&gt; dedicated to these blueprints, covering:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Complete code&lt;/li&gt;
&lt;li&gt;Step-by-step explanation&lt;/li&gt;
&lt;li&gt;Customization options&lt;/li&gt;
&lt;li&gt;Download links&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="practical-benefits-in-everyday-life"&gt;Practical Benefits in Everyday Life
&lt;/h2&gt;&lt;p&gt;What does this actually get you?&lt;/p&gt;
&lt;h3 id="comfort"&gt;Comfort
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Automatic adjustment&lt;/strong&gt; to sunlight&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Never need to manually intervene&lt;/strong&gt; again&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Smart Home thinks ahead&lt;/strong&gt; – even when you&amp;rsquo;re not home&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="energy-efficiency"&gt;Energy Efficiency
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cooler rooms in summer&lt;/strong&gt; through consistent shading&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Warmer rooms in winter&lt;/strong&gt; through the insulating effect at night&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Less air conditioning/heating&lt;/strong&gt; required&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security"&gt;Security
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Presence simulation&lt;/strong&gt; while on vacation&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automatic closing&lt;/strong&gt; during storms possible&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Integration&lt;/strong&gt; with alarm systems&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="your-path-to-smart-blind-control"&gt;Your Path to Smart Blind Control
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Level 1 – Basics:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Add roller shutters to Home Assistant&lt;/li&gt;
&lt;li&gt;Set up dashboard control&lt;/li&gt;
&lt;li&gt;Create first time-based automations&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Level 2 – Comfort:&lt;/strong&gt;
4. Create groups
5. Add template sensors for overview
6. Visualize on floor plan&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Level 3 – Pro:&lt;/strong&gt;
7. Implement sun-position calculation
8. Set up individual shading automations
9. Configure seasonal adjustments&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;I walk you through every step in detail in the video!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="further-links"&gt;Further Links
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;More helpful articles from the A-Z Series:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-az/01-automationen/" &gt;A is for Automations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-az/02-blueprints/" &gt;B is for Blueprints&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-az/08-helfer/" &gt;H is for Helpers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-az/09-integrationen/" &gt;I is for Integrations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Hardware:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-jalousie/" &gt;Shelly Blind Control&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;The Home Assistant A-Z Series brings you the most important Home Assistant concepts in short videos and in-depth articles. A new letter every Sunday, a little more knowledge each time!&lt;/em&gt;&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 10 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/09-integrationen/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← I · Integrationen&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/11-ki/" class="ha-az-nav-btn ha-az-nav-next"&gt;K · KI →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;</description></item><item><title>Replace Your Tablet Battery Yourself in 20 Minutes</title><link>https://smarthome-aber-sicher.de/en/blog/2025/11/16/replace-your-tablet-battery-yourself-how-to-save-your-old-device-in-20-minutes/</link><pubDate>Sun, 16 Nov 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/11/16/replace-your-tablet-battery-yourself-how-to-save-your-old-device-in-20-minutes/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/11/16/tablet-akku-selbst-wechseln-so-rettest-du-dein-altes-ger%C3%A4t-in-20-minuten/cover.png" alt="Featured image of post Replace Your Tablet Battery Yourself in 20 Minutes" /&gt;&lt;h2 id="when-your-tablet-never-leaves-the-charger"&gt;When Your Tablet Never Leaves the Charger
&lt;/h2&gt;&lt;p&gt;Sound familiar? Your tablet used to be great, but now the battery barely lasts a few hours. Maybe you use it for your &lt;strong&gt;Smart Home Dashboard in Home Assistant&lt;/strong&gt; or for other purposes – but being permanently tethered to a cable is simply annoying.&lt;/p&gt;
&lt;p&gt;Most people think: &amp;ldquo;Time for a new device.&amp;rdquo; But wait! &lt;strong&gt;These devices are far too good to throw away.&lt;/strong&gt; In this article I&amp;rsquo;ll show you how to breathe new life into your tablet with a new battery – and without any special tools!&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/l0WC25CgJuY?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_6597927465704034456_hu_82e16a1ae50caeaa.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="why-repair-it-yourself"&gt;Why Repair It Yourself?
&lt;/h2&gt;&lt;h3 id="sustainability-and-resource-conservation"&gt;Sustainability and Resource Conservation
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Every repaired device is a win for the environment.&lt;/strong&gt; Manufacturing a new tablet consumes enormous resources – raw materials, energy, water. A new battery for €20–30 and 20 minutes of your time can extend the device&amp;rsquo;s life by years.&lt;/p&gt;
&lt;h3 id="save-money"&gt;Save Money
&lt;/h3&gt;&lt;p&gt;A new tablet can easily cost several hundred euros. A replacement battery? About €20–30. The math is simple!&lt;/p&gt;
&lt;h3 id="its-fun"&gt;It&amp;rsquo;s Fun!
&lt;/h3&gt;&lt;p&gt;Honestly: there&amp;rsquo;s a really great feeling when the device works again after the repair. &lt;strong&gt;In the video you can watch every step live alongside me!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="my-example-samsung-galaxy-tab-s3"&gt;My Example: Samsung Galaxy Tab S3
&lt;/h2&gt;&lt;p&gt;For my &lt;strong&gt;Smart Home Dashboard&lt;/strong&gt; I use a Samsung Galaxy Tab S3. It&amp;rsquo;s a bit older, but still perfect for Home Assistant. The battery, however, was completely done – the tablet only lasted a few hours.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Spoiler:&lt;/strong&gt; After the battery replacement it now runs for a whole week again! 🎉&lt;/p&gt;
&lt;h2 id="what-you-need"&gt;What You Need
&lt;/h2&gt;&lt;h3 id="tools-no-special-equipment"&gt;Tools (no special equipment!)
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hair dryer&lt;/strong&gt; (yes, really – your regular hair dryer!)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Suction cup&lt;/strong&gt; or suction cup clamp (available at any hardware store)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Plastic spatula&lt;/strong&gt; or an old credit/loyalty card&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Small screwdriver&lt;/strong&gt; (Phillips head)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Optional:&lt;/strong&gt; Plastic opening tools (available online for a few euros)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="materials"&gt;Materials
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Replacement battery&lt;/strong&gt; matching your tablet model&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Optional:&lt;/strong&gt; Replacement adhesive strips for the housing&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Important note on buying the battery:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;⚠️ &lt;strong&gt;Do NOT buy the cheapest battery you find online!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Make sure to look for:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ Reputable distributors&lt;/li&gt;
&lt;li&gt;✅ Good ratings and reviews&lt;/li&gt;
&lt;li&gt;✅ Brand manufacturers or certified replacements&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Why?&lt;/strong&gt; Low-quality lithium-ion batteries don&amp;rsquo;t just perform poorly – in the worst case they can &lt;strong&gt;catch fire&lt;/strong&gt;. Safety first! &lt;strong&gt;I cover this in detail in the video.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="step-by-step-guide"&gt;Step-by-Step Guide
&lt;/h2&gt;&lt;h3 id="step-1-warm-up-the-housing-with-the-hair-dryer"&gt;Step 1: Warm Up the Housing with the Hair Dryer
&lt;/h3&gt;&lt;p&gt;The first step is &lt;strong&gt;heating the adhesive&lt;/strong&gt; between the housing and the display. Without this step you won&amp;rsquo;t be able to get into the device.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;My recommendation:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Lowest airflow setting&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Maximum heat&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;About 2 minutes&lt;/strong&gt; warming the entire housing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;One corner more intensively&lt;/strong&gt; (that&amp;rsquo;s where you want to open it first)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Temperature check:&lt;/strong&gt; If you can just barely touch the tablet without burning yourself, it&amp;rsquo;s perfect!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the video you can see exactly how long I hold the hair dryer and how!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="step-2-open-the-housing-with-a-suction-cup"&gt;Step 2: Open the Housing with a Suction Cup
&lt;/h3&gt;&lt;p&gt;Now comes the exciting part. Using a &lt;strong&gt;suction cup or suction cup clamp&lt;/strong&gt; you carefully pull the housing apart.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Two options:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Option A: Suction cup clamp&lt;/strong&gt; (the one I use)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Place it on the warmed corner&lt;/li&gt;
&lt;li&gt;Carefully tighten until a gap appears&lt;/li&gt;
&lt;li&gt;No force – just warm it up again if needed!&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Option B: Two simple suction cups&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;One on the front, one on the back&lt;/li&gt;
&lt;li&gt;Carefully pull apart with your hands&lt;/li&gt;
&lt;li&gt;Again: patience matters more than strength&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;You&amp;rsquo;ll see in the video:&lt;/strong&gt; In my case the housing pops open after just a few turns!&lt;/p&gt;
&lt;h3 id="step-3-fully-open-the-housing"&gt;Step 3: Fully Open the Housing
&lt;/h3&gt;&lt;p&gt;Once the first gap appears, grab a &lt;strong&gt;plastic spatula&lt;/strong&gt; or an old credit card.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;⚠️ &lt;strong&gt;Do NOT use metal tools!&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ Plastic only – that way you won&amp;rsquo;t scratch anything&lt;/li&gt;
&lt;li&gt;✅ Don&amp;rsquo;t go too deep into the device&lt;/li&gt;
&lt;li&gt;✅ Work your way completely around the device&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;If it doesn&amp;rsquo;t slide smoothly somewhere?&lt;/strong&gt; Just warm up that spot with the hair dryer again. &lt;strong&gt;In the video I show you the right technique!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="step-4-watch-out-for-cables"&gt;Step 4: Watch Out for Cables!
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;On my Samsung tablet:&lt;/strong&gt; The back panel has no cabling – just lift it off.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;On other tablets:&lt;/strong&gt; Carefully check whether ribbon cables connect the back panel to the circuit board! Otherwise you&amp;rsquo;ll tear something off when opening it.&lt;/p&gt;
&lt;h3 id="step-5-remove-the-battery"&gt;Step 5: Remove the Battery
&lt;/h3&gt;&lt;p&gt;Now it gets technical – but don&amp;rsquo;t worry, it&amp;rsquo;s easier than it looks!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;On my tablet:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Loosen a few &lt;strong&gt;screws&lt;/strong&gt; securing the battery&lt;/li&gt;
&lt;li&gt;Carefully disconnect the &lt;strong&gt;ribbon cable&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Gently &lt;strong&gt;lift&lt;/strong&gt; the contact clips with a small screwdriver&lt;/li&gt;
&lt;li&gt;Pull out the cable&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video you can see every single step in close-up – I show you exactly where each cable sits!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="step-6-remove-the-old-battery"&gt;Step 6: Remove the Old Battery
&lt;/h3&gt;&lt;p&gt;The battery is usually still secured with some adhesive tape. &lt;strong&gt;Carefully lift it&lt;/strong&gt; and remove it from the housing.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; Don&amp;rsquo;t just throw the old battery in the trash! Batteries belong at the recycling center or at the collection point in an electronics store.&lt;/p&gt;
&lt;h3 id="step-7-install-the-new-battery"&gt;Step 7: Install the New Battery
&lt;/h3&gt;&lt;p&gt;The new battery goes in exactly the same spot.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Connection order:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Place the battery in the housing&lt;/li&gt;
&lt;li&gt;Reconnect the ribbon cable&lt;/li&gt;
&lt;li&gt;Press the contacts firmly&lt;/li&gt;
&lt;li&gt;Screw the screws back in&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;In the video I show you what to pay attention to when connecting the cables!&lt;/strong&gt;&lt;/p&gt;
&lt;h3 id="step-8-function-test-before-closing"&gt;Step 8: Function Test BEFORE Closing!
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt; Test that everything works &lt;strong&gt;BEFORE&lt;/strong&gt; you close the housing!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What I test:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ Tablet can be switched on&lt;/li&gt;
&lt;li&gt;✅ Display works&lt;/li&gt;
&lt;li&gt;✅ Buttons respond&lt;/li&gt;
&lt;li&gt;✅ Speakers work&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Battery charges&lt;/strong&gt; (plug in the charging cable!)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video you&amp;rsquo;ll see the exciting moment:&lt;/strong&gt; Does it turn on? 😊&lt;/p&gt;
&lt;h3 id="step-9-calibrate-the-battery"&gt;Step 9: Calibrate the Battery
&lt;/h3&gt;&lt;p&gt;Before closing the housing, it&amp;rsquo;s a good idea to:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Charge the battery fully&lt;/strong&gt; (100%)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Let the tablet drain completely&lt;/strong&gt; without charging in between&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Why?&lt;/strong&gt; This way the operating system learns the actual capacity and can display accurate remaining runtime again.&lt;/p&gt;
&lt;h3 id="step-10-close-the-housing"&gt;Step 10: Close the Housing
&lt;/h3&gt;&lt;p&gt;Now comes the final step!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Option A: Use the remaining adhesion&lt;/strong&gt; (what I do)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The old adhesive often still holds well enough&lt;/li&gt;
&lt;li&gt;Simply press the back panel on and you&amp;rsquo;re done&lt;/li&gt;
&lt;li&gt;⚠️ The device is then no longer waterproof&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Option B: New adhesive strip&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Remove the old adhesive&lt;/li&gt;
&lt;li&gt;Apply a new adhesive strip (order it together with the battery!)&lt;/li&gt;
&lt;li&gt;Good sealing again&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;For my Smart Home Dashboard, Option A is perfectly sufficient!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="the-result-mission-accomplished-"&gt;The Result: Mission Accomplished! 🎉
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;In just 20 minutes:&lt;/strong&gt; My Samsung Tab runs for &lt;strong&gt;a whole week&lt;/strong&gt; again, just from a new battery!&lt;/p&gt;
&lt;p&gt;The tablet is back to being:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ Usable permanently as a dashboard&lt;/li&gt;
&lt;li&gt;✅ Usable without constant recharging&lt;/li&gt;
&lt;li&gt;✅ Ready for years more of service&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="common-problems-and-solutions"&gt;Common Problems and Solutions
&lt;/h2&gt;&lt;h3 id="the-housing-wont-open"&gt;&amp;ldquo;The housing won&amp;rsquo;t open&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; Heat it up again! Better to use the hair dryer for 30 seconds longer than to use force.&lt;/p&gt;
&lt;h3 id="im-afraid-of-breaking-something"&gt;&amp;ldquo;I&amp;rsquo;m afraid of breaking something&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; In the video you can see every move. Take your time and work calmly. Most damage happens from rushing!&lt;/p&gt;
&lt;h3 id="which-battery-is-the-right-one"&gt;&amp;ldquo;Which battery is the right one?&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The exact model number is printed on the old battery&lt;/li&gt;
&lt;li&gt;Search for that number at reputable shops&lt;/li&gt;
&lt;li&gt;Read the reviews!&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="the-cable-wont-connect"&gt;&amp;ldquo;The cable won&amp;rsquo;t connect&amp;rdquo;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; Some connectors are a bit fiddly. In the video I show you how I handled the tricky connector on mine – it took me a while too!&lt;/p&gt;
&lt;h2 id="safety-notes"&gt;Safety Notes
&lt;/h2&gt;&lt;h3 id="during-the-repair"&gt;During the Repair
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;⚠️ &lt;strong&gt;Never work while connected to power!&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;⚠️ &lt;strong&gt;Do not damage the battery&lt;/strong&gt; (risk of short circuit/fire!)&lt;/li&gt;
&lt;li&gt;⚠️ &lt;strong&gt;Choose a well-ventilated room&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;⚠️ &lt;strong&gt;Keep children and pets away&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="after-the-repair"&gt;After the Repair
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;Supervise the first charging cycle&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;The tablet getting warm is normal&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;If you see smoke, disconnect from power immediately!&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="why-this-fits-perfectly-with-using-tech-smartly"&gt;Why This Fits Perfectly with &amp;ldquo;Using Tech Smartly&amp;rdquo;
&lt;/h2&gt;&lt;p&gt;This channel is called &lt;strong&gt;&amp;ldquo;Smart Home? But Secure!&amp;rdquo;&lt;/strong&gt; for a reason – and smart means:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Conserving resources&lt;/strong&gt; instead of throwing things away&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Taking action yourself&lt;/strong&gt; instead of buying everything new&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Understanding and mastering technology&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A repaired tablet for a Smart Home Dashboard is the perfect example: &lt;strong&gt;Old meets Smart!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="your-repair-project"&gt;Your Repair Project?
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Write to me in the comments:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Have you ever replaced a tablet or smartphone battery yourself?&lt;/li&gt;
&lt;li&gt;What was your experience?&lt;/li&gt;
&lt;li&gt;Do you also use your tablet for Smart Home?&lt;/li&gt;
&lt;li&gt;Which device are you considering repairing?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Make sure to watch the video&lt;/strong&gt; – there you can see every step live and get all the important tips!&lt;/p&gt;
&lt;h2 id="more-repair-guides"&gt;More Repair Guides
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/repair-shelly/" &gt;Repair BROKEN Shellys – the 30 CENT repair that actually works!&lt;/a&gt; – Repair Smart Home hardware instead of throwing it away: save a Shelly 2.5 with a new capacitor&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/repair-sonoff-s20/" &gt;Repair Sonoff S20 Smart Plug – the 26 Cent Repair&lt;/a&gt; – Permanently fix the unstable WiFi connection on the Sonoff S20 with a capacitor replacement&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Make Blinds Smart with Shelly: Local, No Cloud</title><link>https://smarthome-aber-sicher.de/en/blog/2025/11/09/make-your-blinds-smart-with-shelly-no-cloud-local-and-affordable/</link><pubDate>Sun, 09 Nov 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/11/09/make-your-blinds-smart-with-shelly-no-cloud-local-and-affordable/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/11/09/jalousien-mit-shelly-sicher-smart-machen-ohne-cloud-lokal-und-g%C3%BCnstig/cover.png" alt="Featured image of post Make Blinds Smart with Shelly: Local, No Cloud" /&gt;&lt;h2 id="the-problem-electric-roller-shutters-but-not-smart"&gt;The Problem: Electric Roller Shutters, But Not Smart
&lt;/h2&gt;&lt;p&gt;You have &lt;strong&gt;electric roller shutters or blinds&lt;/strong&gt;, but still have to &lt;strong&gt;operate them directly at the wall switch&lt;/strong&gt;? That&amp;rsquo;s a real shame, because an electric motor is already &lt;strong&gt;halfway there&lt;/strong&gt; to a smart blind!&lt;/p&gt;
&lt;p&gt;With a &lt;strong&gt;Shelly module&lt;/strong&gt;, you can make your existing roller shutters smart and integrate them into your smart home – &lt;strong&gt;completely local, without any cloud dependency&lt;/strong&gt; and surprisingly affordable.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In the new video I show you the complete implementation!&lt;/strong&gt;&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/kGFCyuJz5wc?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_3515936411232789204_hu_843dd599c9c799ce.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="why-shelly-for-blinds"&gt;Why Shelly for Blinds?
&lt;/h2&gt;&lt;h3 id="-completely-local"&gt;✅ &lt;strong&gt;Completely Local&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;No cloud connection required&lt;/li&gt;
&lt;li&gt;Works even during internet outages&lt;/li&gt;
&lt;li&gt;Your data stays with you&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="-affordable-and-flexible"&gt;✅ &lt;strong&gt;Affordable and Flexible&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Shelly Plus 2PM: ~€20–25&lt;/li&gt;
&lt;li&gt;Older Shelly 2.5: Even cheaper&lt;/li&gt;
&lt;li&gt;Fits in any in-wall junction box&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="-safe-installation"&gt;✅ &lt;strong&gt;Safe Installation&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Built-in safety functions&lt;/li&gt;
&lt;li&gt;Prevents simultaneous activation of both directions&lt;/li&gt;
&lt;li&gt;Calibration for precise positioning&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="choosing-the-right-hardware"&gt;Choosing the Right Hardware
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;In the video I show various Shelly models:&lt;/strong&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/p&gt;
&lt;h3 id="recommendation-shelly-plus-2pm"&gt;&lt;strong&gt;Recommendation: Shelly Plus 2PM&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Current successor model&lt;/li&gt;
&lt;li&gt;Lowest price on the market&lt;/li&gt;
&lt;li&gt;Perfect for blinds and roller shutters&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://amzn.to/3WxBUiQ" target="_blank" rel="noopener"
&gt;Shelly Plus 2PM on Amazon&lt;/a&gt;&lt;/strong&gt; (paid link) ← most affordable option Or directly at Shelly: &lt;strong&gt;&lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;&lt;/strong&gt; (paid link, code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="alternative-shelly-2-gen3"&gt;&lt;strong&gt;Alternative: Shelly 2 Gen3&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;New generation with more features&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://amzn.to/47kpLEh" target="_blank" rel="noopener"
&gt;Shelly 2 Gen3 on Amazon&lt;/a&gt;&lt;/strong&gt; (paid link) Or at OBI: &lt;strong&gt;&lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F7119290%2Fshelly-relais-rollladenaktor-unterputz-2pm-gen3-schwarz" target="_blank" rel="noopener"
&gt;Shelly 2 Gen3&lt;/a&gt;&lt;/strong&gt; (paid link) Or directly at Shelly: &lt;strong&gt;&lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;&lt;/strong&gt; (paid link, code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="latest-generation-shelly-2-gen4"&gt;&lt;strong&gt;Latest Generation: Shelly 2 Gen4&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Newest version available&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://amzn.to/47tocCI" target="_blank" rel="noopener"
&gt;Shelly 2 Gen4 on Amazon&lt;/a&gt;&lt;/strong&gt; (paid link) Or at OBI: &lt;strong&gt;&lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F2191162731005%2Fshelly-smartes-relais-schalter-fuer-jalousien-2pm-gen-4-schwarz" target="_blank" rel="noopener"
&gt;Shelly 2 Gen4&lt;/a&gt;&lt;/strong&gt; (paid link) Or directly at Shelly: &lt;strong&gt;&lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;&lt;/strong&gt; (paid link, code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;You can safely save money&lt;/strong&gt; and stick with the Plus devices!&lt;/p&gt;
&lt;h2 id="wiring-what-you-need-to-watch-out-for"&gt;Wiring: What You Need to Watch Out For
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Correct wiring is crucial!&lt;/strong&gt; In the video I explain step by step:&lt;/p&gt;
&lt;h3 id="power-supply"&gt;&lt;strong&gt;Power Supply:&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Neutral wire (N)&lt;/strong&gt; and &lt;strong&gt;live wire (L)&lt;/strong&gt; from the in-wall junction box&lt;/li&gt;
&lt;li&gt;Connected to the corresponding terminals of the Shelly&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="switch-connection"&gt;&lt;strong&gt;Switch Connection:&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Route the live wire through to the wall switch&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;ldquo;Up&amp;rdquo; switch&lt;/strong&gt; and &lt;strong&gt;&amp;ldquo;Down&amp;rdquo; switch&lt;/strong&gt; to &lt;strong&gt;S1&lt;/strong&gt; and &lt;strong&gt;S2&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Order doesn&amp;rsquo;t matter – can be changed in software later&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="motor-connection"&gt;&lt;strong&gt;Motor Connection:&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Outputs O1 and O2&lt;/strong&gt; to the roller shutter motor&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;O1:&lt;/strong&gt; Move up&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;O2:&lt;/strong&gt; Move down&lt;/li&gt;
&lt;li&gt;Again: order can be changed later in software&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;⚠️ Important:&lt;/strong&gt; Always follow the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/working-safely-with-mains-voltage/" &gt;230V electrical safety rules&lt;/a&gt;!&lt;/p&gt;
&lt;h2 id="software-setup-safety-first"&gt;Software Setup: Safety First
&lt;/h2&gt;&lt;h3 id="1-secure-initial-setup"&gt;&lt;strong&gt;1. Secure Initial Setup&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;In the video I show two approaches:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Recommended: Shelly App&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ Uses Bluetooth (encrypted)&lt;/li&gt;
&lt;li&gt;✅ More secure than hotspot&lt;/li&gt;
&lt;li&gt;✅ Easy to use&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Alternative: Hotspot&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;⚠️ Unencrypted&lt;/li&gt;
&lt;li&gt;⚠️ Wi-Fi password can be intercepted&lt;/li&gt;
&lt;li&gt;✅ Works without the app&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="2-disable-the-cloud"&gt;&lt;strong&gt;2. Disable the Cloud&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Important for local use:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Set Cloud Settings to &amp;ldquo;Disabled&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Set Server to &amp;ldquo;Disconnected&amp;rdquo;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Why?&lt;/strong&gt; Complete local control&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="3-device-profile-the-critical-setting"&gt;&lt;strong&gt;3. Device Profile: The Critical Setting&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;You absolutely must configure this:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Settings → Device Profile → &amp;ldquo;Cover&amp;rdquo;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Why is this so important?&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Prevents simultaneous activation of both outputs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Without this setting:&lt;/strong&gt; Motor damage is possible!&lt;/li&gt;
&lt;li&gt;Shelly then &amp;ldquo;knows&amp;rdquo; it&amp;rsquo;s controlling a roller shutter&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="calibration-and-fine-tuning"&gt;Calibration and Fine-Tuning
&lt;/h2&gt;&lt;h3 id="check-directions"&gt;&lt;strong&gt;Check Directions&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;After the initial setup:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Test the buttons on the web interface&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wrong direction?&lt;/strong&gt; → Enable Reverse Directions&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Check wall switch&lt;/strong&gt; → Enable Swap Inputs if needed&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="calibration-run"&gt;&lt;strong&gt;Calibration Run&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Enables precise positioning:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What happens:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Roller shutter moves completely down&lt;/li&gt;
&lt;li&gt;Then completely up&lt;/li&gt;
&lt;li&gt;Stops at various intermediate positions&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Result:&lt;/strong&gt; Any position can be precisely controlled&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video you can see the entire process live!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="home-assistant-integration"&gt;Home Assistant Integration
&lt;/h2&gt;&lt;h3 id="automatic-discovery"&gt;&lt;strong&gt;Automatic Discovery&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;It&amp;rsquo;s this easy:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Install the &lt;strong&gt;Shelly Integration&lt;/strong&gt; in Home Assistant&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New devices&lt;/strong&gt; are discovered automatically&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;One click&lt;/strong&gt; → Integration complete&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="dashboard-and-automations"&gt;&lt;strong&gt;Dashboard and Automations&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;After integration:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ Display roller shutters on the dashboard&lt;/li&gt;
&lt;li&gt;✅ Create &lt;strong&gt;automations&lt;/strong&gt;:
&lt;ul&gt;
&lt;li&gt;Automatic opening/closing&lt;/li&gt;
&lt;li&gt;Sun protection during intense sunlight&lt;/li&gt;
&lt;li&gt;Time-based schedules&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Tip:&lt;/strong&gt; I&amp;rsquo;ll show more blind automations in Home Assistant in an upcoming video!&lt;/p&gt;
&lt;h2 id="practical-benefits-in-daily-life"&gt;Practical Benefits in Daily Life
&lt;/h2&gt;&lt;h3 id="convenience"&gt;&lt;strong&gt;Convenience&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;App control&lt;/strong&gt; from anywhere in the home&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automation&lt;/strong&gt; based on time of day&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Scenes&lt;/strong&gt; for different situations&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="security"&gt;&lt;strong&gt;Security&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Presence simulation&lt;/strong&gt; while on vacation&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automatic closing&lt;/strong&gt; during storms&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Integration&lt;/strong&gt; into a security system&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="energy-efficiency"&gt;&lt;strong&gt;Energy Efficiency&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Intelligent sun protection&lt;/strong&gt; reduces cooling costs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Heat retention&lt;/strong&gt; in winter by closing at the right time&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Light optimization&lt;/strong&gt; through precise positioning&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="cost-benefit-analysis"&gt;Cost-Benefit Analysis
&lt;/h2&gt;&lt;h3 id="investment"&gt;&lt;strong&gt;Investment:&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Shelly Plus 2PM:&lt;/strong&gt; ~€20–25&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Installation:&lt;/strong&gt; DIY-friendly with basic knowledge&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ongoing costs:&lt;/strong&gt; None (local solution)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="alternative-ready-made-smart-blinds"&gt;&lt;strong&gt;Alternative: Ready-Made Smart Blinds&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cost:&lt;/strong&gt; €200–500+ per roller shutter&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloud dependency:&lt;/strong&gt; Usually required&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Flexibility:&lt;/strong&gt; Tied to the manufacturer&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Conclusion:&lt;/strong&gt; The Shelly solution is &lt;strong&gt;significantly cheaper&lt;/strong&gt; and &lt;strong&gt;more flexible&lt;/strong&gt;!&lt;/p&gt;
&lt;h2 id="avoiding-common-mistakes"&gt;Avoiding Common Mistakes
&lt;/h2&gt;&lt;h3 id="-forgetting-the-device-profile"&gt;&lt;strong&gt;❌ Forgetting the Device Profile&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; Motor can be damaged
&lt;strong&gt;Solution:&lt;/strong&gt; Always set it to &amp;ldquo;Cover&amp;rdquo;&lt;/p&gt;
&lt;h3 id="-wrong-wiring"&gt;&lt;strong&gt;❌ Wrong Wiring&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; Roller shutters move in the wrong direction
&lt;strong&gt;Solution:&lt;/strong&gt; Correction possible in software&lt;/p&gt;
&lt;h3 id="-leaving-the-cloud-enabled"&gt;&lt;strong&gt;❌ Leaving the Cloud Enabled&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; Dependency on manufacturer servers
&lt;strong&gt;Solution:&lt;/strong&gt; Deliberately disable the cloud&lt;/p&gt;
&lt;h3 id="-skipping-calibration"&gt;&lt;strong&gt;❌ Skipping Calibration&lt;/strong&gt;
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; No precise positioning
&lt;strong&gt;Solution:&lt;/strong&gt; Run the calibration sequence&lt;/p&gt;
&lt;h2 id="the-video-shows-everything-live"&gt;The Video Shows Everything Live
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;In the video you&amp;rsquo;ll see:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;Hardware comparison&lt;/strong&gt; of various Shelly models&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Wiring diagram&lt;/strong&gt; explained in detail&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Software setup&lt;/strong&gt; step by step&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Home Assistant integration&lt;/strong&gt; live&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Calibration&lt;/strong&gt; in action&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Practical tips&lt;/strong&gt; from my own installation&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="whats-next-even-more-smart-home"&gt;What&amp;rsquo;s Next: Even More Smart Home
&lt;/h2&gt;&lt;h3 id="more-shelly-use-cases"&gt;&lt;strong&gt;More Shelly Use Cases:&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Heating control&lt;/strong&gt; (dedicated video available)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Light control&lt;/strong&gt; with dimming&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Garage door automation&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="home-assistant-blind-features"&gt;&lt;strong&gt;Home Assistant Blind Features:&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Complex automations&lt;/strong&gt; (upcoming video)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Time-based schedules&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Weather-dependent control&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="share-your-experience"&gt;Share Your Experience
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Let me know in the comments:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How do you currently control your roller shutters?&lt;/li&gt;
&lt;li&gt;Do you already have experience with Shelly?&lt;/li&gt;
&lt;li&gt;What automation ideas do you have?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Make sure to watch the video&lt;/strong&gt; – it shows every step live and gives you all the important details for a safe installation!&lt;/p&gt;
&lt;h2 id="further-reading"&gt;Further Reading
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;More helpful articles:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-heizung/" &gt;Shelly Heating Control&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-garage/" &gt;Making Garage Doors Smart with Shelly&lt;/a&gt; – The basic principle: how a Shelly relay controls a garage door&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/smarte-garage/" &gt;Smart Garage 2.0: Garage Door, Lights &amp;amp; Automations with Shelly Blue&lt;/a&gt; – The extended garage setup with motion sensors and automations&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/en/tags/a-z-series/" &gt;Home Assistant A-Z Series&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/en/categories/cybersecurity/" &gt;Smart Home Security&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>When Your Smart Home Suddenly Goes Dumb – What to Do</title><link>https://smarthome-aber-sicher.de/en/blog/2025/11/02/when-your-smart-home-suddenly-goes-dumb-and-what-you-can-do-about-it/</link><pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/11/02/when-your-smart-home-suddenly-goes-dumb-and-what-you-can-do-about-it/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/11/02/wenn-dein-smart-home-pl%C3%B6tzlich-dumm-wird-und-was-du-dagegen-tun-kannst/cover.png" alt="Featured image of post When Your Smart Home Suddenly Goes Dumb – What to Do" /&gt;&lt;h2 id="every-smart-home-owners-nightmare"&gt;Every Smart Home Owner&amp;rsquo;s Nightmare
&lt;/h2&gt;&lt;p&gt;Imagine coming home, opening your smart home app – and suddenly it shows &amp;ldquo;No Connection.&amp;rdquo; Not because of an internet outage or a technical glitch, but because &lt;strong&gt;the manufacturer simply pulled the plug&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;This is happening on a massive scale right now: &lt;strong&gt;Bose is shutting down the cloud for SoundTouch&lt;/strong&gt;, &lt;strong&gt;Vorwerk is killing off Neato robot vacuums&lt;/strong&gt;, and the list grows longer every day. Devices that cost over €1,000 are being turned into expensive paperweights overnight.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But it doesn&amp;rsquo;t have to be this way!&lt;/strong&gt; In this video I explain why this happens and how you can protect yourself.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/xNlPdCodqAY?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_8822161752076960262_hu_36433f4fc09e9ab4.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="recent-cases-when-smart-homes-go-dumb"&gt;Recent Cases: When Smart Homes Go Dumb
&lt;/h2&gt;&lt;h3 id="bose-soundtouch-the-1000-paperweight"&gt;Bose SoundTouch: The €1,000 Paperweight
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;As of February 18, 2026&lt;/strong&gt;, Bose is discontinuing cloud support for the entire SoundTouch product family. That means:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;❌ &lt;strong&gt;Spotify integration&lt;/strong&gt; is gone&lt;/li&gt;
&lt;li&gt;❌ &lt;strong&gt;TuneIn radio&lt;/strong&gt; no longer works&lt;/li&gt;
&lt;li&gt;❌ &lt;strong&gt;Multiroom features&lt;/strong&gt; are history&lt;/li&gt;
&lt;li&gt;❌ &lt;strong&gt;App control&lt;/strong&gt; is heavily restricted&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Bose&amp;rsquo;s explanation:&lt;/strong&gt; The technology has been &amp;ldquo;extensively further developed&amp;rdquo; and the company is &amp;ldquo;no longer able to maintain the cloud infrastructure.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Translation:&lt;/strong&gt; Running the cloud costs too much money.&lt;/p&gt;
&lt;h3 id="vorwerkneato-a-broken-promise"&gt;Vorwerk/Neato: A Broken Promise
&lt;/h3&gt;&lt;p&gt;Even more egregious is the Vorwerk case: the company had promised &lt;strong&gt;five years of cloud operation&lt;/strong&gt; for Neato robots. Did they keep that promise? &lt;strong&gt;Apparently not.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In 2023, Neato Robotics was shut down, and now all cloud services are being terminated. Even robots that were still sold regularly in 2023 are losing their functionality.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Vorwerk&amp;rsquo;s excuse:&lt;/strong&gt; &amp;ldquo;Cybersecurity standards have evolved.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The truth:&lt;/strong&gt; They failed to invest in time – or simply didn&amp;rsquo;t want to.&lt;/p&gt;
&lt;h2 id="the-mechanics-of-the-cloud-disaster"&gt;The Mechanics of the Cloud Disaster
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Why does this keep happening?&lt;/strong&gt; The video explains the vicious cycle:&lt;/p&gt;
&lt;h3 id="phase-1-the-launch"&gt;Phase 1: The Launch
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Manufacturer develops a new product&lt;/li&gt;
&lt;li&gt;Cloud enables modern features (remote access, updates, etc.)&lt;/li&gt;
&lt;li&gt;Sales revenue funds cloud operation&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="phase-2-technical-progress"&gt;Phase 2: Technical Progress
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;New device generation requires new cloud architecture&lt;/li&gt;
&lt;li&gt;Manufacturer operates &lt;strong&gt;two cloud systems in parallel&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Double the costs, half the benefit&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="phase-3-the-end"&gt;Phase 3: The End
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Old devices no longer sell&lt;/li&gt;
&lt;li&gt;Cloud operation becomes a &lt;strong&gt;pure cost factor&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pulling the plug&lt;/strong&gt; is the &amp;ldquo;economical&amp;rdquo; solution&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="your-checklist-how-to-protect-yourself"&gt;Your Checklist: How to Protect Yourself
&lt;/h2&gt;&lt;h3 id="1-check-manufacturer-reputation"&gt;1. Check Manufacturer Reputation
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Before you buy:&lt;/strong&gt; How has the company behaved in the past?&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Are there already reports of discontinued products?&lt;/li&gt;
&lt;li&gt;How transparently does the company communicate?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Google search:&lt;/strong&gt; &amp;ldquo;[Manufacturer] + cloud shut down&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="2-test-local-features"&gt;2. Test Local Features
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;The most important question:&lt;/strong&gt; Does the device work without internet?&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Can you switch lights on/off during a Wi-Fi outage?&lt;/li&gt;
&lt;li&gt;Does the robot vacuum start offline?&lt;/li&gt;
&lt;li&gt;Does the heating control run independently?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Rule of thumb:&lt;/strong&gt; The more features available locally, the safer you are.&lt;/p&gt;
&lt;h3 id="3-question-update-promises"&gt;3. Question Update Promises
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Does the manufacturer specify support periods?&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How long will updates be provided?&lt;/li&gt;
&lt;li&gt;Are there written guarantees?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Silence is often not a good sign!&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="4-the-free-cloud-paradox"&gt;4. The Free Cloud Paradox
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Warning:&lt;/strong&gt; Free cloud services are often a &lt;strong&gt;red flag!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If a manufacturer only makes money from hardware sales but provides cloud services for free, that model won&amp;rsquo;t be sustainable long-term.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Better:&lt;/strong&gt; Transparent subscription models create sustainable value for both sides.&lt;/p&gt;
&lt;h2 id="positive-examples-how-it-should-be-done"&gt;Positive Examples: How It Should Be Done
&lt;/h2&gt;&lt;h3 id="philips-hue-local-foundation--premium-cloud"&gt;Philips Hue: Local Foundation + Premium Cloud
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Core functions:&lt;/strong&gt; Fully local via the Bridge&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Premium features:&lt;/strong&gt; Optional via Bridge Pro (one-time purchase)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Transparency:&lt;/strong&gt; Clear separation between free and paid&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Link:&lt;/strong&gt; &lt;a class="link" href="https://www.philips-hue.com/de-de/p/hue-hue-bridge-pro/8720169155114" target="_blank" rel="noopener"
&gt;Philips Hue Bridge Pro&lt;/a&gt;&lt;/p&gt;
&lt;h3 id="aqara-hub-based-architecture"&gt;Aqara: Hub-Based Architecture
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Local control:&lt;/strong&gt; All basic functions without cloud&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloud access:&lt;/strong&gt; Optional for remote access and extended features&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fair pricing:&lt;/strong&gt; Transparent cost structure&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Link:&lt;/strong&gt; &lt;a class="link" href="https://www.aqara.com/de/product/hub/" target="_blank" rel="noopener"
&gt;Aqara Smart Hubs&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="what-you-can-do-right-now"&gt;What You Can Do Right Now
&lt;/h2&gt;&lt;h3 id="immediate-actions"&gt;Immediate Actions:
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Inventory:&lt;/strong&gt; Which of your devices depend on the cloud?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Test:&lt;/strong&gt; Do they work offline?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Research:&lt;/strong&gt; What is the manufacturer&amp;rsquo;s track record?&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="before-your-next-purchase"&gt;Before Your Next Purchase:
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;Prioritize &lt;strong&gt;local features&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Prefer &lt;strong&gt;open standards&lt;/strong&gt; (Zigbee, Z-Wave, Matter)&lt;/li&gt;
&lt;li&gt;Support &lt;strong&gt;transparent business models&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="long-term"&gt;Long-Term:
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Set up &lt;strong&gt;Home Assistant&lt;/strong&gt; or a similar local system&lt;/li&gt;
&lt;li&gt;Buy &lt;strong&gt;fewer cloud-dependent&lt;/strong&gt; devices&lt;/li&gt;
&lt;li&gt;Factor in &lt;strong&gt;community support&lt;/strong&gt; when making purchasing decisions&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="the-bottom-line-your-smart-home-belongs-to-you"&gt;The Bottom Line: Your Smart Home Belongs to YOU
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;As the Süddeutsche Zeitung aptly put it:&lt;/strong&gt; &amp;ldquo;Anyone buying technology today is handing themselves over to the manufacturer.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But it doesn&amp;rsquo;t have to be this way!&lt;/strong&gt; With the right preparation and conscious purchasing decisions, you can build a smart home that belongs to you – not to the manufacturer&amp;rsquo;s cloud.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The full video walks you through everything step by step&lt;/strong&gt; – from concrete checklists to positive examples to action recommendations for your existing setup.&lt;/p&gt;
&lt;h2 id="share-your-experience"&gt;Share Your Experience
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;What do you look for when buying smart home products with cloud features?&lt;/strong&gt; Have you ever had a manufacturer pull the plug on functionality you relied on?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Write it in the comments&lt;/strong&gt; – your experience helps others make better purchasing decisions!&lt;/p&gt;
&lt;h2 id="further-reading"&gt;Further Reading
&lt;/h2&gt;
&lt;blockquote&gt;
&lt;p&gt;You&amp;rsquo;ve reached the end of this article. Did I help you out? Did you enjoy the video? I&amp;rsquo;d be really happy if you thought it was worth €5. You can find more on the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/about" &gt;About me&lt;/a&gt; page.&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/img/netcup_logo.png" width="20%"&gt;
&lt;/figure&gt;
&lt;p&gt;Netcup is a German hosting provider I&amp;rsquo;ve been a customer of since &lt;strong&gt;2011&lt;/strong&gt; — now with &lt;strong&gt;nine products&lt;/strong&gt; (domains, web hosting, vServers and root servers). I&amp;rsquo;ve been consistently satisfied over all those years. I particularly want to highlight the &lt;strong&gt;reliable infrastructure&lt;/strong&gt;, &lt;strong&gt;excellent support&lt;/strong&gt;, and &lt;strong&gt;transparent pricing&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;A real standout feature: &lt;strong&gt;special offers at Netcup are often permanent&lt;/strong&gt;. That sets Netcup clearly apart from other providers where the price typically rises after the first year.&lt;/p&gt;
&lt;p&gt;If you want to support me and my content, I&amp;rsquo;d be happy if you book through my referral link:
👉 &lt;a class="link" href="https://www.netcup.com/de/?ref=21226" target="_blank" rel="noopener"
&gt;https://www.netcup.com/de/?ref=21226&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I also have &lt;strong&gt;vouchers for new customers&lt;/strong&gt; for various Netcup products. Just reach out — I&amp;rsquo;m happy to help!&lt;/p&gt;
&lt;p&gt;Thank you for your support! It helps me keep creating content for you.&lt;/p&gt;
&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;More helpful articles:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/en/categories/cybersecurity/" &gt;Smart Home Security: The Biggest Risks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/en/tags/a-z-series/" &gt;Home Assistant: Local Smart Home Hub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/en/categories/datensicherheit/" &gt;Privacy in the Smart Home&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;&lt;em&gt;Want to dive even deeper into cloud security? Check out my video on cloud attack vectors – the link is in the video!&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="related-articles"&gt;Related Articles
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/cloud-vs-lokal/" &gt;Cloud Integrations vs. Local Integrations&lt;/a&gt; – A detailed comparison of the risks and benefits of both approaches&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/backups-2025/" &gt;Home Assistant Backups in 2025 – Your Data Safe and Recoverable at Any Time&lt;/a&gt; – If you want local control, good backups are exactly where to start&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Home Assistant A-Z: G is for Devices – All United</title><link>https://smarthome-aber-sicher.de/en/blog/2025/10/28/home-assistant-a-z-g-is-for-devices-why-home-assistant-brings-everything-together/</link><pubDate>Tue, 28 Oct 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/10/28/home-assistant-a-z-g-is-for-devices-why-home-assistant-brings-everything-together/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/10/28/home-assistant-a-z-g-wie-ger%C3%A4te-warum-home-assistant-alles-zusammenbringt/cover.png" alt="Featured image of post Home Assistant A-Z: G is for Devices – All United" /&gt;&lt;p&gt;You have Philips Hue bulbs, a Shelly relay, an Aqara sensor, and a Fritz!Box – and you want them all to &amp;ldquo;talk&amp;rdquo; to each other? With conventional smart home hubs, that&amp;rsquo;s a nightmare of different apps and incompatible systems. With Home Assistant? A walk in the park.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/wGlfHG86xus?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_6283263131129042582_hu_9c222c782986b15e.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-are-devices-in-home-assistant"&gt;What Are Devices in Home Assistant?
&lt;/h2&gt;&lt;p&gt;Devices are all the physical and virtual components that Home Assistant can recognize and control. These can be lights, switches, sensors, cameras – or even software services like weather information.&lt;/p&gt;
&lt;p&gt;The key difference from other smart home systems: &lt;strong&gt;Home Assistant is manufacturer-independent&lt;/strong&gt;. While Amazon Alexa, Apple HomeKit, or Samsung SmartThings often only support devices from specific brands or with special certifications, Home Assistant brings all your devices under one roof – regardless of manufacturer.&lt;/p&gt;
&lt;h3 id="the-secret-integrations"&gt;The Secret: Integrations
&lt;/h3&gt;&lt;p&gt;This works through so-called &lt;strong&gt;integrations&lt;/strong&gt;. For almost every manufacturer there is an integration that handles the &amp;ldquo;translation&amp;rdquo; between the device and Home Assistant. Over 1,000 different integrations are available – from major brands to niche products.&lt;/p&gt;
&lt;h2 id="why-does-this-matter-for-your-smart-home"&gt;Why Does This Matter for Your Smart Home?
&lt;/h2&gt;&lt;h3 id="the-end-of-app-chaos"&gt;The End of App Chaos
&lt;/h3&gt;&lt;p&gt;Imagine this: you already have Philips Hue bulbs, but then you buy some cheaper IKEA Tradfri bulbs as well. With most commercial hubs, you now have to use two separate apps and can&amp;rsquo;t control the lights together.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Home Assistant solves this elegantly:&lt;/strong&gt; Both lighting systems simply appear as &amp;ldquo;lights&amp;rdquo; in the same interface. You can use them together in automations, switch them in the same scene, or display them on the same dashboard.&lt;/p&gt;
&lt;h3 id="save-money-through-manufacturer-diversity"&gt;Save Money Through Manufacturer Diversity
&lt;/h3&gt;&lt;p&gt;This saves not just frustration, but also money. You can pick the best value from different manufacturers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Affordable Xiaomi sensors for basic coverage&lt;/li&gt;
&lt;li&gt;High-quality Philips Hue bulbs for key areas&lt;/li&gt;
&lt;li&gt;Robust Shelly relays for electrical installations&lt;/li&gt;
&lt;li&gt;Budget-friendly IKEA buttons for control&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="future-proofing"&gt;Future-Proofing
&lt;/h3&gt;&lt;p&gt;If a manufacturer shuts down or changes its policy? No problem – you simply swap out individual devices without having to rebuild your entire system. Your automations and configurations remain intact.&lt;/p&gt;
&lt;h2 id="how-does-it-work-in-practice"&gt;How Does It Work in Practice?
&lt;/h2&gt;&lt;h3 id="adding-devices"&gt;Adding Devices
&lt;/h3&gt;&lt;p&gt;The video shows the practical workflow: you add devices via &lt;strong&gt;integrations&lt;/strong&gt;. The path is Settings → Devices &amp;amp; Services.&lt;/p&gt;
&lt;p&gt;Here you can see all your already-configured integrations and add new ones. Home Assistant even auto-discovers many devices on your network – these appear under &amp;ldquo;Discovered&amp;rdquo;.&lt;/p&gt;
&lt;h3 id="practical-example-shelly-integration"&gt;Practical Example: Shelly Integration
&lt;/h3&gt;&lt;p&gt;The video demonstrates integrating a Shelly 1PM switch:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Click &amp;ldquo;Add Integration&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Search for &amp;ldquo;Shelly&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Select the official Shelly integration&lt;/li&gt;
&lt;li&gt;Enter the device&amp;rsquo;s IP address&lt;/li&gt;
&lt;li&gt;Done!&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The Shelly appears as a device with several &lt;strong&gt;entities&lt;/strong&gt;: the switch itself, a power meter, and an energy counter. Each entity can be used in automations, dashboards, or scenes.&lt;/p&gt;
&lt;h3 id="different-connection-types"&gt;Different Connection Types
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Wi-Fi devices:&lt;/strong&gt; Directly over the network&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zigbee/Z-Wave:&lt;/strong&gt; Via the respective coordinators&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloud services:&lt;/strong&gt; Weather data, energy providers, etc.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Local APIs:&lt;/strong&gt; Direct device communication&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="avoiding-common-pitfalls"&gt;Avoiding Common Pitfalls
&lt;/h2&gt;&lt;h3 id="overwhelmed-by-choice"&gt;Overwhelmed by Choice
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; Over 1,000 available integrations can feel overwhelming.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; Start small! Begin with the devices you already own and expand gradually. Not everything has to be perfect from day one.&lt;/p&gt;
&lt;h3 id="outdated-integrations"&gt;Outdated Integrations
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; Not all integrations are maintained equally well.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; Before installing, check the documentation and whether the integration is still actively developed. Official manufacturer integrations are usually your best bet.&lt;/p&gt;
&lt;h3 id="missing-documentation"&gt;Missing Documentation
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; With many different devices it&amp;rsquo;s easy to lose track.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; Document your setup! Write down which devices you configured and how – this saves a lot of time when troubleshooting later.&lt;/p&gt;
&lt;h2 id="creative-device-combinations"&gt;Creative Device Combinations
&lt;/h2&gt;&lt;p&gt;The beauty of manufacturer independence shines especially in &lt;strong&gt;cross-vendor automations&lt;/strong&gt;:&lt;/p&gt;
&lt;h3 id="practical-examples"&gt;Practical Examples
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Affordable Xiaomi motion sensor&lt;/strong&gt; controls premium Philips Hue bulbs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;IKEA button&lt;/strong&gt; connected to Sonos speakers&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Fritz!Box call notifications&lt;/strong&gt; mute Samsung TVs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Shelly energy readings&lt;/strong&gt; combined with Tibber electricity prices&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="the-best-of-all-worlds"&gt;The Best of All Worlds
&lt;/h3&gt;&lt;p&gt;Every manufacturer has its strengths:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Philips:&lt;/strong&gt; The best lighting and most refined features&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Shelly:&lt;/strong&gt; Robust and versatile relays for electrical work&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Aqara:&lt;/strong&gt; Affordable and reliable sensors&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;IKEA:&lt;/strong&gt; Budget-friendly buttons and starter hardware&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;With Home Assistant you combine these strengths without having to compromise.&lt;/p&gt;
&lt;h2 id="why-home-assistant-beats-other-hubs"&gt;Why Home Assistant Beats Other Hubs
&lt;/h2&gt;&lt;h3 id="local-processing"&gt;Local Processing
&lt;/h3&gt;&lt;p&gt;While commercial hubs often depend on cloud connections, Home Assistant runs entirely locally. That means:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Faster response times&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Greater reliability&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Better privacy&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No dependency on manufacturers&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="open-standards"&gt;Open Standards
&lt;/h3&gt;&lt;p&gt;Home Assistant relies on open protocols and standards rather than proprietary solutions. This makes the system future-proof and manufacturer-independent.&lt;/p&gt;
&lt;h3 id="community-development"&gt;Community Development
&lt;/h3&gt;&lt;p&gt;With an active community of developers, new integrations are constantly being created. Even niche manufacturers are often supported shortly after their products launch.&lt;/p&gt;
&lt;h2 id="what-youll-learn-in-the-video"&gt;What You&amp;rsquo;ll Learn in the Video
&lt;/h2&gt;&lt;p&gt;The video shows you the practical aspects that are hard to convey in writing:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Live integration&lt;/strong&gt; of various devices&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Navigation&lt;/strong&gt; through the device interface&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Entity management&lt;/strong&gt; in practice&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Troubleshooting tips&lt;/strong&gt; for common problems&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dashboard integration&lt;/strong&gt; of newly added devices&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The visual demonstration is especially helpful for understanding the difference between devices and entities – a concept that confuses many beginners.&lt;/p&gt;
&lt;h2 id="conclusion-one-hub-all-devices"&gt;Conclusion: One Hub, All Devices
&lt;/h2&gt;&lt;p&gt;Home Assistant finally delivers on the smart home promise: one system that truly unites all your devices. Whether cheap or expensive, old or new, well-known or exotic – Home Assistant brings them together.&lt;/p&gt;
&lt;p&gt;The video demonstrates this strength impressively and shows why Home Assistant is the better alternative to commercial hubs for many people. From the first integration to complex automations – you see everything step by step.&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 7 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/06-fernzugriff/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← F · Fernzugriff&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/08-helfer/" class="ha-az-nav-btn ha-az-nav-next"&gt;H · Helfer →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Home Assistant A-Z: I is for Integrations</title><link>https://smarthome-aber-sicher.de/en/blog/2025/10/26/home-assistant-a-z-i-is-for-integrations-the-power-of-connections/</link><pubDate>Sun, 26 Oct 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/10/26/home-assistant-a-z-i-is-for-integrations-the-power-of-connections/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/10/26/home-assistant-a-z-i-wie-integrationen-die-kraft-der-verbindungen/cover.png" alt="Featured image of post Home Assistant A-Z: I is for Integrations" /&gt;&lt;h2 id="welcome-to-the-a-z-series-i-is-for-integrations"&gt;Welcome to the A-Z Series: I is for Integrations
&lt;/h2&gt;&lt;p&gt;In today&amp;rsquo;s episode of our &lt;strong&gt;Home Assistant A-Z Series&lt;/strong&gt; we dive into one of the most powerful concepts in the smart home universe: &lt;strong&gt;integrations&lt;/strong&gt;. These small software building blocks are what transform Home Assistant from a mere collection of devices into a genuinely intelligent, interconnected system.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/wJjBDgj9fdU?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_13948073472716655801_hu_40679bf859326a2d.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-are-integrations"&gt;What Are Integrations?
&lt;/h2&gt;&lt;p&gt;Integrations are the &lt;strong&gt;bridges between different systems and services&lt;/strong&gt;. They allow Home Assistant to communicate with a wide variety of devices, services, and APIs. Without integrations, your smart home would be nothing more than a collection of isolated islands.&lt;/p&gt;
&lt;h3 id="the-power-of-connection"&gt;The Power of Connection
&lt;/h3&gt;&lt;p&gt;Integrations solve three fundamental problems:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Compatibility&lt;/strong&gt;: They translate between different protocols&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Functionality&lt;/strong&gt;: They extend Home Assistant with new capabilities&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automation&lt;/strong&gt;: They provide the foundation for intelligent rules&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="three-practical-integrations-in-detail"&gt;Three Practical Integrations in Detail
&lt;/h2&gt;&lt;h3 id="1-workday-binary-sensor---intelligently-detecting-working-days"&gt;1. Workday Binary Sensor - Intelligently Detecting Working Days
&lt;/h3&gt;&lt;p&gt;The &lt;strong&gt;Workday Binary Sensor&lt;/strong&gt; is a perfect example of a simple yet powerful integration. It automatically detects whether today is a working day, taking into account:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Weekends&lt;/li&gt;
&lt;li&gt;Public holidays&lt;/li&gt;
&lt;li&gt;Vacation days&lt;/li&gt;
&lt;li&gt;Different countries and regions&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Example configuration:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c"&gt;# Example configuration&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;binary_sensor&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;workday&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;country&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;DE&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;workdays&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="l"&gt;mon, tue, wed, thu, fri]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;excludes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="l"&gt;sat, sun, holiday]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Automation examples:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Turn up the heating early only on working days&lt;/li&gt;
&lt;li&gt;Activate the alarm clock only on weekdays&lt;/li&gt;
&lt;li&gt;Increase garden irrigation on days off&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="2-thermal-comfort---the-perceived-temperature"&gt;2. Thermal Comfort - The Perceived Temperature
&lt;/h3&gt;&lt;p&gt;The &lt;strong&gt;Thermal Comfort integration&lt;/strong&gt; calculates how temperature actually feels. It takes into account:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Air temperature&lt;/li&gt;
&lt;li&gt;Humidity&lt;/li&gt;
&lt;li&gt;Additional environmental factors&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Why this matters:&lt;/strong&gt;
20°C at 30% humidity feels completely different from 20°C at 70% humidity. This integration helps you understand and automate the &lt;strong&gt;actual comfort climate&lt;/strong&gt; in your home.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Automation potential:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Control heating based on perceived temperature&lt;/li&gt;
&lt;li&gt;Intelligently regulate a humidifier&lt;/li&gt;
&lt;li&gt;Optimize comfort levels in different rooms&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="3-waste-collection-schedule---never-miss-trash-day-again"&gt;3. Waste Collection Schedule - Never Miss Trash Day Again
&lt;/h3&gt;&lt;p&gt;The &lt;strong&gt;Waste Collection Schedule integration&lt;/strong&gt; connects to local waste collection calendars and automatically informs you about:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Upcoming collection dates&lt;/li&gt;
&lt;li&gt;Different waste types (general waste, recyclables, paper, organic)&lt;/li&gt;
&lt;li&gt;Rescheduling due to public holidays&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Smart home magic:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c"&gt;# Example: trash reminder&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;automation&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Put out trash reminder&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;time&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;at&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;20:00:00&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;{{ state_attr(&amp;#39;sensor.waste_collection_bio&amp;#39;, &amp;#39;days&amp;#39;) == 0 }}&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;notify.mobile_app&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;message&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Organic waste will be collected tomorrow!&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="integration-vs-add-on---whats-the-difference"&gt;Integration vs. Add-on - What&amp;rsquo;s the Difference?
&lt;/h2&gt;&lt;p&gt;A common source of confusion: &lt;strong&gt;What is the difference between integrations and add-ons?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Integrations:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Extend Home Assistant with new sensors and services&lt;/li&gt;
&lt;li&gt;Run within the Home Assistant Core&lt;/li&gt;
&lt;li&gt;Primarily used for external services and APIs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Add-ons:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Standalone applications&lt;/li&gt;
&lt;li&gt;Run in separate containers&lt;/li&gt;
&lt;li&gt;Examples: Node-RED, ESPHome, Mosquitto&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="exploring-the-integration-library"&gt;Exploring the Integration Library
&lt;/h2&gt;&lt;p&gt;Home Assistant offers over &lt;strong&gt;3,000 official integrations&lt;/strong&gt;. The main categories:&lt;/p&gt;
&lt;h3 id="hardware-integrations"&gt;Hardware Integrations
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Philips Hue&lt;/li&gt;
&lt;li&gt;IKEA TRÅDFRI&lt;/li&gt;
&lt;li&gt;Shelly&lt;/li&gt;
&lt;li&gt;Sonos&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="service-integrations"&gt;Service Integrations
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Weather APIs&lt;/li&gt;
&lt;li&gt;Calendar services&lt;/li&gt;
&lt;li&gt;Streaming platforms&lt;/li&gt;
&lt;li&gt;Smart meters&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="utility-integrations"&gt;Utility Integrations
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Template sensors&lt;/li&gt;
&lt;li&gt;Input helpers&lt;/li&gt;
&lt;li&gt;Scene controllers&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="best-practices-for-integrations"&gt;Best Practices for Integrations
&lt;/h2&gt;&lt;h3 id="1-less-is-more"&gt;1. Less is more
&lt;/h3&gt;&lt;p&gt;Only install integrations you actually need. Every integration consumes resources.&lt;/p&gt;
&lt;h3 id="2-read-the-documentation"&gt;2. Read the documentation
&lt;/h3&gt;&lt;p&gt;Each integration has specific configuration options. The &lt;a class="link" href="https://www.home-assistant.io/integrations/" target="_blank" rel="noopener"
&gt;official documentation&lt;/a&gt; is your friend.&lt;/p&gt;
&lt;h3 id="3-use-a-test-environment"&gt;3. Use a test environment
&lt;/h3&gt;&lt;p&gt;Test new integrations in a copy of your configuration first.&lt;/p&gt;
&lt;h2 id="troubleshooting-common-issues"&gt;Troubleshooting Common Issues
&lt;/h2&gt;&lt;h3 id="integration-wont-load"&gt;Integration won&amp;rsquo;t load
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Check dependencies&lt;/strong&gt;: Are all required Python packages installed?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Validate configuration&lt;/strong&gt;: Any syntax errors in your YAML?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Check the logs&lt;/strong&gt;: What do the Home Assistant logs say?&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="performance-issues"&gt;Performance issues
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Adjust polling intervals&lt;/strong&gt;: Not every sensor needs to be queried every second&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Disable unnecessary attributes&lt;/strong&gt;: Reduce the amount of data&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Optimize entity names&lt;/strong&gt;: Use descriptive names&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="developing-your-own-integrations"&gt;Developing Your Own Integrations
&lt;/h2&gt;&lt;p&gt;For advanced users: Home Assistant is open source! You can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Customize existing integrations&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Develop new integrations&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Contribute to the community&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Get started with the &lt;a class="link" href="https://developers.home-assistant.io/" target="_blank" rel="noopener"
&gt;Developer Documentation&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="integration-recommendations-for-beginners"&gt;Integration Recommendations for Beginners
&lt;/h2&gt;&lt;h3 id="must-have-integrations"&gt;Must-have integrations:
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Weather&lt;/strong&gt; - Weather data for automations&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sun&lt;/strong&gt; - Sunrise/sunset for lighting&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mobile App&lt;/strong&gt; - Notifications and location&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Time &amp;amp; Date&lt;/strong&gt; - Time-based automations&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="advanced-integrations"&gt;Advanced integrations:
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Node-RED&lt;/strong&gt; - Visual automation editor&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;InfluxDB&lt;/strong&gt; - Long-term data history&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Grafana&lt;/strong&gt; - Advanced dashboards&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AppDaemon&lt;/strong&gt; - Python-based automations&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="the-future-of-integrations"&gt;The Future of Integrations
&lt;/h2&gt;&lt;p&gt;Home Assistant is constantly evolving. Emerging trends:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Matter/Thread support&lt;/strong&gt; - The new smart home standard&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloud-native integrations&lt;/strong&gt; - Better performance&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AI/ML integration&lt;/strong&gt; - Artificial intelligence in the smart home&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Voice assistants&lt;/strong&gt; - Even more natural interaction&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="managing-your-integrations"&gt;Managing Your Integrations
&lt;/h2&gt;&lt;h3 id="via-the-ui"&gt;Via the UI
&lt;/h3&gt;&lt;p&gt;Since Home Assistant 2021.3, most integrations can be managed through &lt;strong&gt;Settings &amp;gt; Devices &amp;amp; Services&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="yaml-configuration"&gt;YAML configuration
&lt;/h3&gt;&lt;p&gt;Some integrations still require manual YAML configuration in &lt;code&gt;configuration.yaml&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id="custom-integrations"&gt;Custom integrations
&lt;/h3&gt;&lt;p&gt;Through HACS (Home Assistant Community Store) you can also install &lt;strong&gt;community integrations&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="summary"&gt;Summary
&lt;/h2&gt;&lt;p&gt;Integrations are the &lt;strong&gt;heart of every successful smart home&lt;/strong&gt;. They:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Connect different systems&lt;/li&gt;
&lt;li&gt;Extend functionality without new hardware&lt;/li&gt;
&lt;li&gt;Enable intelligent automations&lt;/li&gt;
&lt;li&gt;Solve specific everyday problems&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The three integrations covered here - Workday Binary Sensor, Thermal Comfort, and Waste Collection Schedule - show just how versatile and practical these small helpers can be.&lt;/p&gt;
&lt;h2 id="next-steps"&gt;Next Steps
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Explore the integration library&lt;/strong&gt; in your Home Assistant installation&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Experiment&lt;/strong&gt; with the three integrations presented here&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Stay tuned&lt;/strong&gt; for the next part of our A-Z Series&lt;/li&gt;
&lt;/ol&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 9 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/08-helfer/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← H · Helfer&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/10-jalousien/" class="ha-az-nav-btn ha-az-nav-next"&gt;J · Jalousien →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;
&lt;blockquote&gt;
&lt;p&gt;You&amp;rsquo;ve reached the end of this article. Did I help you out? Did you enjoy the video? I&amp;rsquo;d be really happy if you thought it was worth €5. You can find more on the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/about" &gt;About me&lt;/a&gt; page.&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Shelly Makes Your Heating Smart – No More Thermostats</title><link>https://smarthome-aber-sicher.de/en/blog/2025/10/19/done-with-annoying-thermostats-shelly-makes-your-heating-smart/</link><pubDate>Sun, 19 Oct 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/10/19/done-with-annoying-thermostats-shelly-makes-your-heating-smart/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/10/19/schluss-mit-nervigen-thermostaten-shelly-macht-deine-heizung-smart/cover.png" alt="Featured image of post Shelly Makes Your Heating Smart – No More Thermostats" /&gt;&lt;p&gt;Ever dealt with thermostats like these? Whether it&amp;rsquo;s an analog dial with numbers 1–6 or a digital thermostat with tiny buttons — they drove me crazy. That&amp;rsquo;s why, three years ago, I replaced almost all my room thermostats with &lt;strong&gt;Shelly relays paired with temperature sensors&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The result after three years:&lt;/strong&gt; It was the best Smart Home decision I ever made. See for yourself in the video.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/JVxjvxf4kG8?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_17705229795887634105_hu_67fc9da355d7854d.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="why-classic-thermostats-are-frustrating"&gt;Why Classic Thermostats Are Frustrating
&lt;/h2&gt;&lt;h3 id="the-problem-with-analog-thermostats"&gt;The Problem with Analog Thermostats
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Analog rotary thermostats&lt;/strong&gt; with a scale from 1 to 5 are completely abstract and disconnected from reality. What does level 3 actually mean? What temperature does that correspond to? Nobody really knows.&lt;/p&gt;
&lt;p&gt;The worst part: you always have to &lt;strong&gt;adjust them manually&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Turn the heating down in the evening&lt;/li&gt;
&lt;li&gt;Turn it back up in the morning&lt;/li&gt;
&lt;li&gt;Lower it before going on holiday&lt;/li&gt;
&lt;li&gt;Come home from holiday to a cold flat&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="digital-thermostats-not-much-better"&gt;Digital Thermostats: Not Much Better
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Digital thermostats&lt;/strong&gt; can display temperatures and often include scheduling features, but using them is frustrating:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Tiny buttons&lt;/strong&gt; that require a firm press&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Complicated menus&lt;/strong&gt; that are barely understandable without the manual&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Holiday mode&lt;/strong&gt; that works in only 50% of cases&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Expensive&lt;/strong&gt; — often over €100 per device&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;In the video I demonstrate these problems live&lt;/strong&gt; — you&amp;rsquo;ll definitely recognise the situation!&lt;/p&gt;
&lt;h2 id="the-shelly-solution-smart-affordable-reliable"&gt;The Shelly Solution: Smart, Affordable, Reliable
&lt;/h2&gt;&lt;h3 id="why-shelly-instead-of-expensive-smart-thermostats"&gt;Why Shelly Instead of Expensive Smart Thermostats?
&lt;/h3&gt;&lt;p&gt;While branded smart thermostats often cost over €150, &lt;strong&gt;Shelly gives you a fully capable solution for under €50&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://amzn.to/44pzV45" target="_blank" rel="noopener"
&gt;Shelly 1 Gen4&lt;/a&gt;&lt;/strong&gt; (or the Plus series): The core component (approx. €15–20)* – also at &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F7119241%2Fshelly-smart-relais-unterputz-1-gen4-blau" target="_blank" rel="noopener"
&gt;OBI&lt;/a&gt;* or directly at &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;* (code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://amzn.to/3R58bie" target="_blank" rel="noopener"
&gt;Shelly Plus Add-on&lt;/a&gt;:&lt;/strong&gt; For the temperature sensor (approx. €15)* – also at &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F8977365%2Fshelly-sensorschnittstelle-plus-add-on-schwarz" target="_blank" rel="noopener"
&gt;OBI&lt;/a&gt;* or directly at &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;* (code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class="link" href="https://amzn.to/4pcuOh7" target="_blank" rel="noopener"
&gt;DHT22 temperature sensor&lt;/a&gt;:&lt;/strong&gt; For measurement (approx. €5)*&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The brilliant part:&lt;/strong&gt; The system runs &lt;strong&gt;completely standalone&lt;/strong&gt;. Even if your Wi-Fi goes down or your Smart Home system has issues, the Shelly continues to regulate your heating!&lt;/p&gt;
&lt;h3 id="hardware-overview-from-the-video"&gt;Hardware Overview from the Video
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;In the video I walk through all the components in detail:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Shelly first vs. new generation&lt;/strong&gt; — differences and pros/cons&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Shelly Plus Add-on&lt;/strong&gt; — why external sensors beat centralised solutions&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;DHT22/AM2302 temperature sensor&lt;/strong&gt; — affordable, reliable, and widely available&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wiring and pin assignments&lt;/strong&gt; — shown step by step&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;230 V:&lt;/strong&gt; The Shelly sits in the wall box on mains power. Before you connect anything there, read &lt;a class="link" href="https://smarthome-aber-sicher.de/en/working-safely-with-mains-voltage/" &gt;Working safely with mains voltage&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="the-wiring-secret"&gt;The Wiring Secret
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;An important point from the video:&lt;/strong&gt; The Shelly generates heat inside the in-wall box, which affects the temperature reading.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;My solution:&lt;/strong&gt; Foam padding between the Shelly and the sensor, plus correct calibration using the temperature offset setting. The video shows exactly how this works.&lt;/p&gt;
&lt;h2 id="temperature-calibration-the-key-to-success"&gt;Temperature Calibration: The Key to Success
&lt;/h2&gt;&lt;h3 id="why-calibration-matters"&gt;Why Calibration Matters
&lt;/h3&gt;&lt;p&gt;Even with foam insulation, there remains a temperature difference between the in-wall box and the actual room temperature. &lt;strong&gt;The solution:&lt;/strong&gt; Temperature offset in the Shelly settings.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;I demonstrate live in the video:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Comparing Shelly readings against a room thermometer&lt;/li&gt;
&lt;li&gt;Setting the offset on older Shellys (External Sensors)&lt;/li&gt;
&lt;li&gt;Setting the offset on newer Shellys (Temperature Offset)&lt;/li&gt;
&lt;li&gt;Differences of 0.6 to 4 degrees depending on the installation&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="setting-up-standalone-heating-control"&gt;Setting Up Standalone Heating Control
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;This is the core of the solution:&lt;/strong&gt; The Shelly controls the heating completely independently, without relying on your Smart Home system.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For Shelly 1 (first generation):&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Enable Temperature Automation&lt;/li&gt;
&lt;li&gt;Relay Off temperature: e.g. 21°C&lt;/li&gt;
&lt;li&gt;Relay On temperature: e.g. 21.5°C&lt;/li&gt;
&lt;li&gt;Done!&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;For Shelly Plus (new generation):&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Create two actions: &amp;ldquo;Heating on&amp;rdquo; and &amp;ldquo;Heating off&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Trigger: temperature change&lt;/li&gt;
&lt;li&gt;Conditions: above/below target temperature&lt;/li&gt;
&lt;li&gt;Action: output on/off&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The video shows both variants step by step!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="home-assistant-integration-for-power-users"&gt;Home Assistant Integration for Power Users
&lt;/h2&gt;&lt;h3 id="a-dashboard-for-all-radiators"&gt;A Dashboard for All Radiators
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Why the video is especially valuable:&lt;/strong&gt; I show you my complete heating dashboard after three years of real-world use:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Overview of all rooms&lt;/strong&gt; with current temperature&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Individual setpoints&lt;/strong&gt; for day and night&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Schedules&lt;/strong&gt; for automatic setback&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Status display&lt;/strong&gt; showing when each radiator was active&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="rest-api-integration-the-pro-trick"&gt;REST API Integration: The Pro Trick
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Here&amp;rsquo;s where it gets technical:&lt;/strong&gt; The standard Shelly integration in Home Assistant cannot set temperature values.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The solution:&lt;/strong&gt; Call the REST API directly:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;REST sensors&lt;/strong&gt; to read current settings&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;REST commands&lt;/strong&gt; to set new target temperatures&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Different endpoints&lt;/strong&gt; for old vs. new Shellys&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The video shows the complete code&lt;/strong&gt; and how to add it to your &lt;code&gt;configuration.yaml&lt;/code&gt;.&lt;/p&gt;
&lt;h3 id="reading-temperature-rest-sensors"&gt;Reading Temperature: REST Sensors
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;For Shelly 1 (first generation):&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;rest&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;resource&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://shelly1-hostname/settings/ext_temperature/0&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;sensor&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Heating Target Temperature&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ value_json.overtemp_threshold_tC }}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;unit_of_measurement&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;°C&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;json_attributes_path&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;$&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;json_attributes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="s2"&gt;&amp;#34;overtemp_threshold_tC&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="s2"&gt;&amp;#34;undertemp_threshold_tC&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="s2"&gt;&amp;#34;overtemp_act&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="s2"&gt;&amp;#34;undertemp_act&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="s2"&gt;&amp;#34;offset_tC&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;For Shelly Plus (new generation):&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;rest&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;resource&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://shellyplus-hostname/rpc/Webhook.List?id=1&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;sensor&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Heating Target Temperature&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ value_json.hooks[1].condition[7:] }}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;unit_of_measurement&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;°C&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;What&amp;rsquo;s happening here?&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;resource:&lt;/strong&gt; The URL of your Shelly device from which the data is fetched&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;sensor:&lt;/strong&gt; Defines a new sensor in Home Assistant&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;name:&lt;/strong&gt; The name under which the sensor will be displayed&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;value_template:&lt;/strong&gt; Extracts the temperature value from the JSON response&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;json_attributes:&lt;/strong&gt; Stores additional values as sensor attributes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Advantage:&lt;/strong&gt; You get not just the current setpoint, but also other useful information displayed directly in Home Assistant!&lt;/p&gt;
&lt;h3 id="setting-temperature-rest-commands"&gt;Setting Temperature: REST Commands
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;rest_command&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;set_shelly1_heating&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;url&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://{{host}}/settings/ext_temperature/0?overtemp_threshold_tC={{((temp|float)|string)}}&amp;amp;undertemp_threshold_tC={{((temp|float - 0.5)|string)}}&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;set_shelly1plus_heating_high&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;url&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://{{host}}/rpc/Webhook.Update?id=2&amp;amp;condition=&amp;#34;ev.tC%20&amp;gt;%20{{((temp|float)|string)}}&amp;#34;&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;set_shelly1plus_heating_low&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;url&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;http://{{host}}/rpc/Webhook.Update?id=1&amp;amp;condition=&amp;#34;ev.tC%20&amp;lt;%20{{((temp|float - 0.5)|string)}}&amp;#34;&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;What&amp;rsquo;s happening here?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For Shelly 1:&lt;/strong&gt; A single HTTP GET sets both temperature values at once:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;overtemp_threshold_tC&lt;/code&gt;: The upper temperature (heating off)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;undertemp_threshold_tC&lt;/code&gt;: The lower temperature (heating on, 0.5°C lower)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;For Shelly Plus:&lt;/strong&gt; Two separate calls are required:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;set_shelly1plus_heating_high&lt;/code&gt;: Sets the upper temperature threshold&lt;/li&gt;
&lt;li&gt;&lt;code&gt;set_shelly1plus_heating_low&lt;/code&gt;: Sets the lower temperature threshold&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Parameter explanation:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;{{host}}&lt;/code&gt;: Variable for the Shelly IP address&lt;/li&gt;
&lt;li&gt;&lt;code&gt;{{temp}}&lt;/code&gt;: Variable for the desired target temperature&lt;/li&gt;
&lt;li&gt;&lt;code&gt;temp|float - 0.5&lt;/code&gt;: Automatically calculates the hysteresis (0.5°C difference)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="using-rest-commands-in-automations"&gt;Using REST Commands in Automations
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;How to use the REST commands in Home Assistant:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;automation&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;alias&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Set Heating Temperature&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;trigger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entity_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_number.heizung_soll_temperatur&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;action&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;service&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;rest_command.set_shelly1_heating&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;data&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;host&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;192.168.1.100&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;temp&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;{{ states(&amp;#39;input_number.heizung_soll_temperatur&amp;#39;) }}&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id="advanced-automations-are-possible"&gt;Advanced Automations Are Possible
&lt;/h3&gt;&lt;p&gt;The system can be extended with:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Window sensors:&lt;/strong&gt; Turn off heating when a window is open&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Presence detection:&lt;/strong&gt; Setback when nobody&amp;rsquo;s home&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Weather forecast:&lt;/strong&gt; Predictive control&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Why I skip these:&lt;/strong&gt; With underfloor heating the system is too sluggish for short-term adjustments.&lt;/p&gt;
&lt;h2 id="three-years-in-practice-my-honest-verdict"&gt;Three Years in Practice: My Honest Verdict
&lt;/h2&gt;&lt;h3 id="what-works-perfectly"&gt;What Works Perfectly
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;After three years I can say:&lt;/strong&gt; The system runs absolutely reliably:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Not a single notable failure&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No Wi-Fi issues&lt;/strong&gt; like those seen with other Smart Home devices&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Precise temperature control&lt;/strong&gt; after calibration&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Maintenance-free&lt;/strong&gt; — set it once and forget it&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="cost-comparison-with-the-alternative"&gt;Cost Comparison with the Alternative
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;My old Jung thermostats&lt;/strong&gt; cost over €100 per unit and offered fewer features. &lt;strong&gt;The Shelly solution:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Cheaper to buy&lt;/li&gt;
&lt;li&gt;More flexible to program&lt;/li&gt;
&lt;li&gt;More future-proof thanks to open standards&lt;/li&gt;
&lt;li&gt;Easier to repair if something breaks&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="energy-saving-experiment-in-progress"&gt;Energy-Saving Experiment in Progress
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;I&amp;rsquo;m currently testing:&lt;/strong&gt; Does nighttime setback actually save energy with underfloor heating? To find out, I&amp;rsquo;ve set identical day and night temperatures in my dashboard and am comparing energy consumption.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The video also shows these details&lt;/strong&gt; from my day-to-day use.&lt;/p&gt;
&lt;h2 id="what-youll-learn-in-the-video"&gt;What You&amp;rsquo;ll Learn in the Video
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;This video is especially valuable because you&amp;rsquo;ll see:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Live demonstration&lt;/strong&gt; of all hardware components&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Practical wiring&lt;/strong&gt; inside a real in-wall box&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Calibration process&lt;/strong&gt; with actual values&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dashboard configuration&lt;/strong&gt; from three years of experience&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Code examples&lt;/strong&gt; for Home Assistant integration&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Honest assessment&lt;/strong&gt; after long-term use&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="suitable-for-all-experience-levels"&gt;Suitable for All Experience Levels
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Whether you&amp;rsquo;re a beginner or a pro:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Hardware basics&lt;/strong&gt; explained clearly&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Step-by-step instructions&lt;/strong&gt; you can follow along&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Advanced integration&lt;/strong&gt; for Home Assistant users&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Extension ideas&lt;/strong&gt; for your own projects&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="related-articles"&gt;Related Articles
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-garage/" &gt;Making Garage Doors Smart with Shellys&lt;/a&gt; — The Shelly principle applied to garage doors&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-jalousie/" &gt;Smart Blinds with Shelly — Done Safely&lt;/a&gt; — Local roller shutter control with Shelly Plus 2PM&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/repair-shelly/" &gt;Repairing BROKEN Shellys — The 30-Cent Fix That Actually Works!&lt;/a&gt; — When older Shelly devices start causing problems after a few years&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Home Assistant A-Z: H is for Helpers – Secret Heroes</title><link>https://smarthome-aber-sicher.de/en/blog/2025/10/12/home-assistant-a-z-h-is-for-helpers-the-secret-heroes-of-your-automations/</link><pubDate>Sun, 12 Oct 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/10/12/home-assistant-a-z-h-is-for-helpers-the-secret-heroes-of-your-automations/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/10/12/home-assistant-a-z-h-wie-helfer-die-heimlichen-helden-deiner-automationen/cover.png" alt="Featured image of post Home Assistant A-Z: H is for Helpers – Secret Heroes" /&gt;&lt;p&gt;Do you ever forget to take out the trash? Or have your automations grown so complex that even you can no longer keep track? &lt;strong&gt;Home Assistant helpers&lt;/strong&gt; are the solution! These unassuming features can revolutionize your smart home life.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/fy2l92bV4KI?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_11468030188029765449_hu_9672f3e7047e120b.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-exactly-are-helpers"&gt;What exactly are helpers?
&lt;/h2&gt;&lt;p&gt;Helpers are &lt;strong&gt;virtual entities&lt;/strong&gt; in Home Assistant that act as &amp;ldquo;memory&amp;rdquo; or temporary storage for your automations. They can store states, perform calculations, or simply serve as digital sticky notes.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The brilliant part:&lt;/strong&gt; Helpers exist only inside Home Assistant — they are not physical devices. Yet they behave just like real entities and can be used in all automations, dashboards, and scenes.&lt;/p&gt;
&lt;h3 id="the-most-important-helper-types"&gt;The most important helper types:
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Toggle (Input Boolean):&lt;/strong&gt; On/Off states&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Number (Input Number):&lt;/strong&gt; Values between a minimum and maximum&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Text (Input Text):&lt;/strong&gt; Store arbitrary text&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Select (Input Select):&lt;/strong&gt; Predefined options&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Date/Time (Input Datetime):&lt;/strong&gt; Remember specific points in time&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="why-helpers-improve-your-smart-home"&gt;Why helpers improve your smart home
&lt;/h2&gt;&lt;h3 id="problem-1-forgotten-tasks"&gt;Problem 1: Forgotten tasks
&lt;/h3&gt;&lt;p&gt;Sound familiar? Push notifications are swiped away in a second — and then forgotten. &lt;strong&gt;The video shows a clever solution:&lt;/strong&gt; An automation reminds you the evening before to put out the trash bin. But instead of just sending a push notification, it also turns on a helper.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The helper appears as a tile on the dashboard&lt;/strong&gt; — and stays there until you&amp;rsquo;ve completed the task and turn it off again. No more forgetting!&lt;/p&gt;
&lt;h3 id="problem-2-complex-automations"&gt;Problem 2: Complex automations
&lt;/h3&gt;&lt;p&gt;The more complex your automations become, the harder troubleshooting gets. &lt;strong&gt;The video shows a real-world example:&lt;/strong&gt; A shading automation split into two parts:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;One automation calculates&lt;/strong&gt; whether the sun is shining on a particular side of the house&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A second automation&lt;/strong&gt; uses that result to control the blinds&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;The advantage:&lt;/strong&gt; When something goes wrong, you can immediately see in the helper whether the sun calculation is working correctly. Complex logic is broken down into digestible pieces.&lt;/p&gt;
&lt;h3 id="problem-3-state-management"&gt;Problem 3: State management
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;The most powerful example in the video:&lt;/strong&gt; A helper that manages the entire home status. With just four states (Home, Away, Vacation, Night), dozens of automations are controlled:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Light automations distinguish between day and night&lt;/li&gt;
&lt;li&gt;Security features activate when nobody is home&lt;/li&gt;
&lt;li&gt;Energy-saving functions kick in during vacation mode&lt;/li&gt;
&lt;li&gt;Warnings trigger for open windows when leaving the house&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;One central helper replaces complex conditions in every single automation.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="practical-helper-ideas-for-your-smart-home"&gt;Practical helper ideas for your smart home
&lt;/h2&gt;&lt;h3 id="digital-reminders"&gt;Digital reminders
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Watering plants:&lt;/strong&gt; Weekly reminder with dashboard display&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Maintenance tasks:&lt;/strong&gt; Filter changes, battery checks, etc.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Appointments:&lt;/strong&gt; Trash collection, cleaning service, tradespeople&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="storing-intermediate-values"&gt;Storing intermediate values
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Average temperatures:&lt;/strong&gt; Combine multiple sensors into one value&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Energy calculations:&lt;/strong&gt; Break complex formulas into steps&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Presence detection:&lt;/strong&gt; Combine various sensors into one result&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="complex-states"&gt;Complex states
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Weather modes:&lt;/strong&gt; Sunny, rainy, windy — for different automations&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Activity modes:&lt;/strong&gt; Working, relaxing, sleeping, party&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Security levels:&lt;/strong&gt; Normal, heightened, vacation, maintenance&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="using-helpers-correctly--what-the-video-shows"&gt;Using helpers correctly — what the video shows
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;The video walks you through step by step:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Where to find helpers&lt;/strong&gt; — Navigating to the settings&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;How to configure helpers&lt;/strong&gt; — Practical examples&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Integration into automations&lt;/strong&gt; — Concrete usage&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dashboard display&lt;/strong&gt; — User-friendly presentation&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Troubleshooting&lt;/strong&gt; — How to spot problems&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="especially-valuable-the-live-demonstration"&gt;Especially valuable: the live demonstration
&lt;/h3&gt;&lt;p&gt;Explaining helpers in writing is one thing — &lt;strong&gt;seeing them in action is another.&lt;/strong&gt; The video impressively demonstrates:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How the dashboard changes when a helper is activated&lt;/li&gt;
&lt;li&gt;The connection between automations and helpers&lt;/li&gt;
&lt;li&gt;Practical clicks through the user interface&lt;/li&gt;
&lt;li&gt;Real use cases from a working smart home&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="avoiding-common-beginner-mistakes"&gt;Avoiding common beginner mistakes
&lt;/h2&gt;&lt;h3 id="too-many-helpers-at-once"&gt;Too many helpers at once
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Mistake:&lt;/strong&gt; Creating dozens of helpers for every possible scenario right away.
&lt;strong&gt;Better:&lt;/strong&gt; Start with one or two simple helpers and build experience from there.&lt;/p&gt;
&lt;h3 id="confusing-names"&gt;Confusing names
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Mistake:&lt;/strong&gt; Naming helpers something like &amp;ldquo;Boolean1&amp;rdquo; or &amp;ldquo;Input_xyz&amp;rdquo;.
&lt;strong&gt;Better:&lt;/strong&gt; Use descriptive names like &amp;ldquo;Trash_Yellow&amp;rdquo; or &amp;ldquo;House_Status&amp;rdquo;.&lt;/p&gt;
&lt;h3 id="no-documentation"&gt;No documentation
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Mistake:&lt;/strong&gt; Coming back months later with no idea what a helper was for.
&lt;strong&gt;Better:&lt;/strong&gt; Write descriptions into the helper configuration.&lt;/p&gt;
&lt;h2 id="why-you-should-definitely-watch-the-video"&gt;Why you should definitely watch the video
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Helpers are a game changer for Home Assistant&lt;/strong&gt; — but their full potential only reveals itself once you understand and use them correctly. The video shows three completely different use cases that illustrate just how versatile these seemingly simple tools are.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;You&amp;rsquo;ll learn concretely:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How to work with the helpers interface in practice&lt;/li&gt;
&lt;li&gt;How helpers can improve your existing automations&lt;/li&gt;
&lt;li&gt;Pro tips for complex state management&lt;/li&gt;
&lt;li&gt;Why one well-designed helper can replace dozens of complicated conditions&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="three-complexity-levels-in-the-video"&gt;Three complexity levels in the video
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Beginners:&lt;/strong&gt; The trash reminder is a perfect entry point&lt;br&gt;
&lt;strong&gt;Intermediate:&lt;/strong&gt; The shading logic shows helpers as automation building blocks&lt;br&gt;
&lt;strong&gt;Advanced:&lt;/strong&gt; The home status management demonstrates enterprise-level smart home architecture&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;No matter what level you&amp;rsquo;re at — you&amp;rsquo;re guaranteed to find new ideas for your smart home!&lt;/strong&gt;&lt;/p&gt;
&lt;h2 id="the-difference-from-other-smart-home-systems"&gt;The difference from other smart home systems
&lt;/h2&gt;&lt;p&gt;While commercial smart home hubs often impose rigid structures, &lt;strong&gt;Home Assistant helpers give you the freedom to design your system around your own needs.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The video shows this impressively:&lt;/strong&gt; With just a few clicks you can create tailor-made solutions that simply wouldn&amp;rsquo;t be possible in other systems. This flexibility is what makes Home Assistant so powerful — and helpers are a big part of that.&lt;/p&gt;
&lt;h2 id="conclusion-small-helpers-big-impact"&gt;Conclusion: Small helpers, big impact
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Helpers are the secret heroes of your smart home installation.&lt;/strong&gt; They work invisibly in the background, simplify complex automations, and make your system more maintainable and understandable.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The video perfectly demonstrates their versatility&lt;/strong&gt; — from simple reminders to complex state management. After watching, you&amp;rsquo;ll see your smart home with fresh eyes and will surely discover your own use cases for helpers.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What&amp;rsquo;s your favorite helper? Write it in the comments! And if you&amp;rsquo;re enjoying this A-Z series, check out the other episodes — each one brings you one step closer to becoming a smart home pro.&lt;/strong&gt;&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 8 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/07-ger%C3%A4te/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← G · Geräte&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/09-integrationen/" class="ha-az-nav-btn ha-az-nav-next"&gt;I · Integrationen →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>ESPHome After the Security Flaw: Still Acceptable?</title><link>https://smarthome-aber-sicher.de/en/blog/2025/10/05/esphome-after-the-security-vulnerability-irresponsible-or-still-acceptable/</link><pubDate>Sun, 05 Oct 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/10/05/esphome-after-the-security-vulnerability-irresponsible-or-still-acceptable/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/10/05/esphome-nach-der-sicherheitsl%C3%BCcke-unverantwortlich-oder-noch-vertretbar/cover.png" alt="Featured image of post ESPHome After the Security Flaw: Still Acceptable?" /&gt;&lt;p&gt;&amp;ldquo;Is it irresponsible to use ESPHome?&amp;rdquo; That was the question I posed after my last video about the critical ESPHome security vulnerability. The reactions were fascinating — and often sharply divided.&lt;/p&gt;
&lt;p&gt;Comments ranged from harshly critical to completely relaxed: from &amp;ldquo;There&amp;rsquo;s a lot more going wrong here — ESPHome developers have apparently never heard of HTTPS or password hashing&amp;rdquo; to &amp;ldquo;And what would be the reward for this extraordinary hacking effort? Turning on the light in my garage? 🤣&amp;rdquo;&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/gmeI5f-AnR0?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_11573849371473444488_hu_e82fbd57d8d4b591.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;Who&amp;rsquo;s right? A balanced look at the community discussion and practical recommendations for ESPHome users.&lt;/p&gt;
&lt;h2 id="the-criticism-of-esphome-justified-or-overblown"&gt;The Criticism of ESPHome: Justified or Overblown?
&lt;/h2&gt;&lt;h3 id="structural-security-problems"&gt;Structural Security Problems
&lt;/h3&gt;&lt;p&gt;Many comments highlighted fundamental security issues in ESPHome, and this criticism is hard to dismiss:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Multiple authentication bugs over the years&lt;/strong&gt; — not exactly confidence-inspiring&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Lack of HTTPS support&lt;/strong&gt; and weak password hashing, both of which are long-established industry standards&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Firmware upload via the web server&lt;/strong&gt; — possible regardless of password protection&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The frustration of many users is entirely understandable. HTTPS ensures that nobody on the local network can intercept HTTP traffic. Password hashing stores credentials not in plain text but as a cryptographic checksum. Both have been established security standards for years.&lt;/p&gt;
&lt;p&gt;As I explain in the video, ESPHome shows clear weaknesses here.&lt;/p&gt;
&lt;h3 id="open-source-curse-or-blessing"&gt;Open Source: Curse or Blessing?
&lt;/h3&gt;&lt;p&gt;ESPHome illustrates a classic open-source dilemma: &lt;strong&gt;security is often not the top priority&lt;/strong&gt;. Developers typically focus on features and functionality — security considerations come later, if at all.&lt;/p&gt;
&lt;p&gt;At the same time, it&amp;rsquo;s a &lt;strong&gt;sign of a healthy, active community&lt;/strong&gt; when vulnerabilities are found and reported. The sheer number of disclosed issues says little about a project&amp;rsquo;s actual security posture. Other projects may contain just as many vulnerabilities — they just haven&amp;rsquo;t been discovered or made public yet.&lt;/p&gt;
&lt;p&gt;In the video I dig into this dilemma in detail and explain why the assessment isn&amp;rsquo;t straightforward.&lt;/p&gt;
&lt;h3 id="the-web-server-problem"&gt;The Web Server Problem
&lt;/h3&gt;&lt;p&gt;One pattern stands out with ESPHome: &lt;strong&gt;most vulnerabilities affect the built-in web server&lt;/strong&gt;. This leads to a simple recommendation: only enable the web server if you actually need it.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Practical tip:&lt;/strong&gt; If you&amp;rsquo;re using ESPHome nodes with Home Assistant, the web server is generally not necessary. Communication runs directly through the ESPHome API. And these devices should never be exposed to the internet anyway — so absolutely no port forwarding for ESPHome nodes!&lt;/p&gt;
&lt;h2 id="my-home-network-is-secure--a-false-sense-of-safety"&gt;&amp;ldquo;My Home Network Is Secure&amp;rdquo; — A False Sense of Safety
&lt;/h2&gt;&lt;h3 id="the-lan-illusion"&gt;The LAN Illusion
&lt;/h3&gt;&lt;p&gt;A common argument goes: &amp;ldquo;The attacker would first have to get into my LAN — my local home network — so it&amp;rsquo;s fine.&amp;rdquo; Some people even dismiss the threat with quips like &amp;ldquo;Sure, someone might turn on my garage light.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;But that&amp;rsquo;s exactly where false security sets in.&lt;/strong&gt; Modern attack vectors make it surprisingly easy for attackers to get into home networks:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Infected IoT devices&lt;/strong&gt; as an entry point&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;XSS attacks in the browser&lt;/strong&gt; enabling remote access&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Insecure router configurations&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Compromised smartphones or laptops&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In the video I show concrete examples of how quickly this supposed safety net becomes a trap.&lt;/p&gt;
&lt;h3 id="cross-site-scripting-explained"&gt;Cross-Site Scripting Explained
&lt;/h3&gt;&lt;p&gt;XSS, or Cross-Site Scripting, works like this: an attacker builds a manipulated web page that executes foreign code in your browser. You notice nothing, but in the background the attacker can steal data or execute commands — almost as if they were directly inside your home network.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt; You click on what looks like a harmless link. In the background, a hidden JavaScript function sends requests to your ESPHome devices. Just like that — garage door open, heating off, lights on.&lt;/p&gt;
&lt;h2 id="network-architecture-theory-vs-practice"&gt;Network Architecture: Theory vs. Practice
&lt;/h2&gt;&lt;h3 id="the-vlan-discussion"&gt;The VLAN Discussion
&lt;/h3&gt;&lt;p&gt;One of the most interesting aspects of the community debate: &lt;strong&gt;network segmentation&lt;/strong&gt;. The theory is clear: IoT devices belong in separate networks, ideally VLANs — virtual networks that isolate devices from one another.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;This is definitely best practice.&lt;/strong&gt; But many users point out: &amp;ldquo;In reality, hardly anyone does this in private networks because it&amp;rsquo;s too complicated.&amp;rdquo; On top of that, true VLAN separation is often impossible with standard consumer hardware.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;That&amp;rsquo;s exactly the crux: theory versus practice.&lt;/strong&gt; I explore this discussion from the comments thoroughly in the video.&lt;/p&gt;
&lt;h3 id="practical-alternatives"&gt;Practical Alternatives
&lt;/h3&gt;&lt;p&gt;When full network segmentation is too complex, there are practical alternatives:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Guest Wi-Fi for IoT devices&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Firewall rules&lt;/strong&gt; for IoT traffic&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dedicated IoT routers&lt;/strong&gt; as a separate network layer&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Unifi, OPNsense, or pfSense&lt;/strong&gt; for advanced network features&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The effort should match the threat level — not everyone needs enterprise-level segmentation for their smart home.&lt;/p&gt;
&lt;h2 id="an-ota-password-alone-is-not-enough"&gt;An OTA Password Alone Is Not Enough
&lt;/h2&gt;&lt;h3 id="a-false-sense-of-security"&gt;A False Sense of Security
&lt;/h3&gt;&lt;p&gt;A common misconception: &amp;ldquo;I&amp;rsquo;ve set an OTA password, so I&amp;rsquo;m safe.&amp;rdquo; OTA stands for &amp;ldquo;Over-the-Air&amp;rdquo; — firmware updates delivered over the network.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Unfortunately, no&lt;/strong&gt; — for the critical ESPHome vulnerability, the OTA password provided no protection whatsoever. The flaw wasn&amp;rsquo;t in the OTA module but in the web server module, which also offered firmware upload functionality.&lt;/p&gt;
&lt;p&gt;I explain in the video, with a practical demonstration, exactly why the OTA password was ineffective in this case.&lt;/p&gt;
&lt;h3 id="the-swiss-cheese-model"&gt;The Swiss Cheese Model
&lt;/h3&gt;&lt;p&gt;In the end, the takeaway is this: &lt;strong&gt;apply updates promptly and combine multiple layers of protection&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;The Swiss Cheese Model describes this principle well: each individual security layer has holes, but stacked together they form effective protection.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Example layers of protection:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Router firewall&lt;/strong&gt; blocks external access&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Network segmentation&lt;/strong&gt; isolates IoT devices&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Strong passwords&lt;/strong&gt; defend against brute-force attacks&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Timely updates&lt;/strong&gt; close known vulnerabilities&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Disabling the web server&lt;/strong&gt; reduces the attack surface&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="two-security-mindsets-paranoia-vs-pragmatism"&gt;Two Security Mindsets: Paranoia vs. Pragmatism
&lt;/h2&gt;&lt;h3 id="the-two-camps"&gt;The Two Camps
&lt;/h3&gt;&lt;p&gt;The comments reveal two clearly defined camps:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Team Security:&lt;/strong&gt; &amp;ldquo;You have to patch everything, segment everything, harden everything&amp;rdquo;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Team Pragmatism:&lt;/strong&gt; &amp;ldquo;The risk is too small — I don&amp;rsquo;t want to live my life in paranoia&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Both perspectives are understandable, but &lt;strong&gt;in IT security, gut feeling is rarely a reliable guide&lt;/strong&gt;. In the video I address both mindsets and explain why a fact-based assessment matters.&lt;/p&gt;
&lt;h3 id="the-facts-cvss-81"&gt;The Facts: CVSS 8.1
&lt;/h3&gt;&lt;p&gt;The ESPHome vulnerability was rated &lt;strong&gt;8.1 under CVSS, classified as &amp;ldquo;High&amp;rdquo;&lt;/strong&gt;. CVSS is the standard scoring system for security vulnerabilities, ranging from 0 to 10, and 8.1 is firmly in the critical range.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For reference:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;0–3.9:&lt;/strong&gt; Low (minor risk)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;4.0–6.9:&lt;/strong&gt; Medium (moderate risk)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;7.0–8.9:&lt;/strong&gt; High (high risk)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;9.0–10.0:&lt;/strong&gt; Critical (critical risk)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;At 8.1, this is a vulnerability you definitely should not ignore.&lt;/p&gt;
&lt;p&gt;A detailed breakdown of the CVSS score and what it means for ESPHome users is in the video.&lt;/p&gt;
&lt;h2 id="practical-recommendations-for-esphome-users"&gt;Practical Recommendations for ESPHome Users
&lt;/h2&gt;&lt;h3 id="immediate-actions"&gt;Immediate Actions
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Update ESPHome to the latest version&lt;/strong&gt; (&amp;gt;= 2024.6.2)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enable the web server only when necessary&lt;/strong&gt; — not needed for Home Assistant integration&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Never expose ESPHome nodes to the internet&lt;/strong&gt; — no port forwarding!&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Use strong, unique passwords&lt;/strong&gt; for OTA updates&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="advanced-security-measures"&gt;Advanced Security Measures
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Implement network segmentation&lt;/strong&gt; wherever possible&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Use a VPN for remote access&lt;/strong&gt; instead of direct internet exposure&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Keep all IoT devices updated&lt;/strong&gt; regularly&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Monitor network traffic&lt;/strong&gt; for suspicious activity&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="long-term-considerations"&gt;Long-Term Considerations
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Abandon ESPHome entirely?&lt;/strong&gt; That seems excessive to me. The platform offers enormous value for DIY smart home projects. With the right precautions, the risk can be reduced to an acceptable level.&lt;/p&gt;
&lt;p&gt;In the video I explain in detail why I still recommend ESPHome despite its security issues — but only under certain conditions.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Alternatives:&lt;/strong&gt; Tasmota, the Arduino framework directly, or commercial IoT devices. But these all come with their own security problems — perfect security doesn&amp;rsquo;t exist anywhere.&lt;/p&gt;
&lt;h2 id="conclusion-security-is-never-black-and-white"&gt;Conclusion: Security Is Never Black and White
&lt;/h2&gt;&lt;p&gt;The community discussion makes one thing clear: &lt;strong&gt;security is never black and white&lt;/strong&gt;. There are best practices, but in practice you have to decide how much effort to invest for how much risk reduction.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;My personal take:&lt;/strong&gt; If an update is available, why wouldn&amp;rsquo;t you apply it? It&amp;rsquo;s the easiest way to add one more security layer.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The golden rule:&lt;/strong&gt; Stay informed, understand the threats, respond appropriately — but don&amp;rsquo;t tip into paranoia.&lt;/p&gt;
&lt;p&gt;Using ESPHome after the security vulnerability is not irresponsible, as long as you take the right precautions. The project does have security issues, but with a mindful approach it remains a valuable option for DIY smart home enthusiasts.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The complete analysis of the community reactions and all practical tips for using ESPHome securely are in the video above.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;→ The specific vulnerability this article refers to is covered in a separate video with a live demonstration: &lt;a class="link" href="https://smarthome-aber-sicher.de/post/esphome-cve-2025/" &gt;ESPHome Security Vulnerability: Critical CVE Affects All ESP32 Devices&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Repairing Broken Shellys: the 30-Cent Fix That Works</title><link>https://smarthome-aber-sicher.de/en/blog/2025/09/21/repairing-broken-shellys-the-30-cent-fix-that-actually-works/</link><pubDate>Sun, 21 Sep 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/09/21/repairing-broken-shellys-the-30-cent-fix-that-actually-works/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/09/21/defekte-shellys-reparieren-die-30-cent-reparatur-die-wirklich-funktioniert/cover.png" alt="Featured image of post Repairing Broken Shellys: the 30-Cent Fix That Works" /&gt;&lt;p&gt;Is your Shelly 2.5 humming? Making strange noises or constantly dropping the Wi-Fi connection? Then you are probably familiar with the frustrating problem that many Shelly owners face: after a few years, these devices become increasingly unreliable.&lt;/p&gt;
&lt;p&gt;What looks like a Wi-Fi problem at first usually has a completely different cause. The good news: in most cases you can fix it yourself with a 50-cent repair!&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Update September 2026 – my long-term experience:&lt;/strong&gt; Every Shelly 2.5 I repaired this way eventually failed again with the same defect – even though I used a high-quality 105 °C capacitor. The repair reliably brings a dead device back to life, but it&amp;rsquo;s more of a stopgap than a permanent fix. Details and tips &lt;a class="link" href="#update-september-2026-how-long-does-the-repair-last" &gt;further down&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/q7yF7xyoduU?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_8472223588986494274_hu_a4291bc5c1048d5f.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="the-problem-when-shellys-get-old"&gt;The Problem: When Shellys Get Old
&lt;/h2&gt;&lt;h3 id="recognizing-the-typical-symptoms"&gt;Recognizing the Typical Symptoms
&lt;/h3&gt;&lt;p&gt;Shelly 2.5 devices of the first generation in particular show characteristic problems after a few years:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Strange noises:&lt;/strong&gt; Humming or buzzing from the device&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Unstable Wi-Fi connection:&lt;/strong&gt; Sporadic disconnects&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Unreliable operation:&lt;/strong&gt; Commands are not executed&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Complete failure:&lt;/strong&gt; The device stops responding entirely&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In the video I demonstrate the characteristic sound — if your Shelly sounds like that, there is a good chance this repair will help!&lt;/p&gt;
&lt;h3 id="the-root-cause-capacitor-aging"&gt;The Root Cause: Capacitor Aging
&lt;/h3&gt;&lt;p&gt;What many people do not know: the problem is usually not the ESP8266 chip or the antenna, but a tiny electrolytic capacitor in the power supply. After years of use, it loses its electrical properties and destabilizes the entire power circuit.&lt;/p&gt;
&lt;p&gt;The tricky part: the capacitor looks completely normal from the outside — no bulging, no visible damage.&lt;/p&gt;
&lt;h2 id="the-50-cent-repair-step-by-step"&gt;The 50-Cent Repair, Step by Step
&lt;/h2&gt;&lt;h3 id="what-you-need"&gt;What You Need
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;100µF/16V electrolytic capacitor&lt;/strong&gt; (approx. 50 cents)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Soldering iron and solder&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Narrow flat-head screwdriver&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Some patience and care&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Important safety note:&lt;/strong&gt; Never work on the Shelly while it is connected to mains power! What else to watch out for when opening mains devices is covered in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/working-safely-with-mains-voltage/" &gt;Working safely with mains voltage&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id="opening-the-case--the-flat-head-screwdriver-trick"&gt;Opening the Case — the Flat-Head Screwdriver Trick
&lt;/h3&gt;&lt;p&gt;Opening the Shelly 2.5 is a little tricky, but perfectly doable with the right approach. In the video I show you exactly:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Where to insert the flat-head screwdriver&lt;/li&gt;
&lt;li&gt;How to carefully pry off the casing&lt;/li&gt;
&lt;li&gt;What to watch out for with the delicate tabs&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The trick is to work systematically along the sides without applying too much force.&lt;/p&gt;
&lt;h3 id="identifying-the-faulty-capacitor"&gt;Identifying the Faulty Capacitor
&lt;/h3&gt;&lt;p&gt;Once opened, you can see the compact circuit board with all its components. The problematic capacitor is the small black cylinder marked &amp;ldquo;100µF 16V&amp;rdquo;. In the video I explain exactly:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Where the capacitor is located&lt;/li&gt;
&lt;li&gt;How to distinguish it from other components&lt;/li&gt;
&lt;li&gt;What other capacitors are present on the board&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="removing-the-faulty-capacitor"&gt;Removing the Faulty Capacitor
&lt;/h3&gt;&lt;p&gt;Desoldering requires some skill, but is very manageable with the right technique. I show you in the video:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How to carefully tilt the capacitor out&lt;/li&gt;
&lt;li&gt;The correct soldering iron technique&lt;/li&gt;
&lt;li&gt;How to clear the holes after removal&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Particularly important: the capacitor sits on the outer edge of the board and is therefore relatively easy to reach.&lt;/p&gt;
&lt;h3 id="installing-the-new-capacitor-correctly"&gt;Installing the New Capacitor Correctly
&lt;/h3&gt;&lt;p&gt;With electrolytic capacitors, polarity is critical:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Negative pole:&lt;/strong&gt; Marked with a broad stripe on the casing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Positive pole:&lt;/strong&gt; The longer lead&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In the video I show in detail how to correctly identify the polarity and orient the capacitor. Getting this wrong would destroy the entire device!&lt;/p&gt;
&lt;h3 id="reassembling-the-case"&gt;Reassembling the Case
&lt;/h3&gt;&lt;p&gt;When reassembling, make sure to route the Wi-Fi antenna correctly. There is a dedicated notch in the case for it — the video shows you exactly how this works.&lt;/p&gt;
&lt;h2 id="the-success-test--live-in-the-video"&gt;The Success Test — Live in the Video
&lt;/h2&gt;&lt;p&gt;The most exciting moment: switching it on for the first time after the repair! In the video you can watch live:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How the repaired Shelly boots up&lt;/li&gt;
&lt;li&gt;Testing the web interface&lt;/li&gt;
&lt;li&gt;Checking the relay function&lt;/li&gt;
&lt;li&gt;And most importantly: the listening test reveals complete silence!&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After a successful repair, the Shelly runs reliably again – for how long, see my &lt;a class="link" href="#update-september-2026-how-long-does-the-repair-last" &gt;update&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="other-affected-shelly-models"&gt;Other Affected Shelly Models
&lt;/h2&gt;&lt;p&gt;The capacitor problem is not limited to the Shelly 2.5. Other models can be affected as well:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Shelly Dimmer&lt;/strong&gt; (first generation)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Shelly 3EM&lt;/strong&gt; (older versions)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Other first-generation Shellys&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The repair principle remains the same — only the exact capacitor type may vary.&lt;/p&gt;
&lt;h2 id="why-the-repair-is-worth-it"&gt;Why the Repair Is Worth It
&lt;/h2&gt;&lt;h3 id="sustainability-over-the-throwaway-mindset"&gt;Sustainability over the Throwaway Mindset
&lt;/h3&gt;&lt;p&gt;Instead of discarding working hardware and buying new devices, you invest 15 minutes and 50 cents in materials. That is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Environmentally friendly:&lt;/strong&gt; Less electronic waste&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cost-saving:&lt;/strong&gt; A new Shelly 2.5 costs over 20 euros&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Educational:&lt;/strong&gt; You understand your hardware better&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="long-term-reliability"&gt;Long-Term Reliability
&lt;/h3&gt;&lt;p&gt;After the capacitor repair, the Shellys work like new again:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Stable Wi-Fi connection&lt;/li&gt;
&lt;li&gt;No more strange noises&lt;/li&gt;
&lt;li&gt;Reliable response to commands&lt;/li&gt;
&lt;li&gt;More service life – though not permanently in my case (see update)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="practical-tips-for-the-future"&gt;Practical Tips for the Future
&lt;/h2&gt;&lt;h3 id="preventive-measures"&gt;Preventive Measures
&lt;/h3&gt;&lt;p&gt;Electrolytic capacitors age faster due to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Heat:&lt;/strong&gt; Avoid excessively warm installation locations&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Moisture:&lt;/strong&gt; Ensure a dry environment&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Overvoltage:&lt;/strong&gt; Use surge protection&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="when-is-a-repair-worth-attempting"&gt;When Is a Repair Worth Attempting?
&lt;/h3&gt;&lt;p&gt;The repair is most promising for:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Devices older than 2–3 years&lt;/li&gt;
&lt;li&gt;Typical noise problems&lt;/li&gt;
&lt;li&gt;Sporadic Wi-Fi dropouts&lt;/li&gt;
&lt;li&gt;Devices that are still partially functional&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="update-september-2026-how-long-does-the-repair-last"&gt;Update September 2026: How long does the repair last?
&lt;/h2&gt;&lt;p&gt;A year after this article, I have to be honest: &lt;strong&gt;every Shelly 2.5 I repaired eventually failed again with the same defect.&lt;/strong&gt; That&amp;rsquo;s why I&amp;rsquo;ve done this repair more than ten times in total.&lt;/p&gt;
&lt;p&gt;And I didn&amp;rsquo;t use a cheap capacitor, but a &lt;strong&gt;Panasonic FR, 100 µF/16 V, 105 °C, low ESR&lt;/strong&gt; (&lt;a class="link" href="https://www.reichelt.com/electrolytic-capacitor-radial-100-f-16-v-105-c-low-esr-fr-a-100u-16b-p376259.html" target="_blank" rel="noopener"
&gt;Reichelt: FR-A 100U 16B&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;What I know now:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;The Shelly 2.5 contains three electrolytic capacitors:&lt;/strong&gt; the 100 µF/16 V one replaced here and two 4.7 µF/400 V – according to &lt;a class="link" href="https://hackaday.com/2026/01/17/the-shelly-2-5-smart-relay-design-flaw-killing-capacitors/" target="_blank" rel="noopener"
&gt;Hackaday&lt;/a&gt;, all from a budget brand. I only replaced the 100 µF capacitor. The community now recommends replacing &lt;strong&gt;all three&lt;/strong&gt; with 105 °C brand-name parts no larger than the originals. Whether that makes the devices last for good, I can&amp;rsquo;t say.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The root cause remains:&lt;/strong&gt; the device is very compact, the power supply parts sit close together, and it gets warm inside a closed wall box. A new capacitor doesn&amp;rsquo;t change that – even Hackaday expects another recap after a few years.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The Shelly 2.5 is technically outdated:&lt;/strong&gt; no Bluetooth, no scripting, no Matter, no Zigbee, an ESP8266 with 2 MB flash. Its successors offer all of that.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;My advice today:&lt;/strong&gt; The repair is a good stopgap – for a few cents a dead device runs again until a replacement arrives. But if your Shelly 2.5 fails, you should seriously consider moving to a current generation. I&amp;rsquo;ve since replaced my last nine Shelly 2.5 with the Shelly 2PM Gen4.&lt;/p&gt;
&lt;!-- TODO after release 2026-10-08: add link to /shelly-gen4-umstieg + video --&gt;
&lt;h2 id="more-hardware-repairs"&gt;More Hardware Repairs
&lt;/h2&gt;&lt;p&gt;This repair impressively demonstrates that smart home can be sustainable! The video shows not just the practical implementation, but also my thought process during troubleshooting.&lt;/p&gt;
&lt;h2 id="more-repair-guides"&gt;More Repair Guides
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/repair-sonoff-s20/" &gt;Repairing a Sonoff S20 Smart Plug – the 26-Cent Fix&lt;/a&gt; – The same capacitor problem, different device: fixing Wi-Fi disconnects on the Sonoff S20&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/repair-tablet/" &gt;Replacing a Tablet Battery Yourself – Save Your Old Device in 20 Minutes!&lt;/a&gt; – When the tablet used as a smart home dashboard only works while plugged in&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>ESPHome Security Flaw: Critical CVE Hits All ESP32 Devices</title><link>https://smarthome-aber-sicher.de/en/blog/2025/09/14/esphome-security-vulnerability-critical-cve-affects-all-esp32-devices-live-hack-demonstrates-the-problem/</link><pubDate>Sun, 14 Sep 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/09/14/esphome-security-vulnerability-critical-cve-affects-all-esp32-devices-live-hack-demonstrates-the-problem/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/09/14/esphome-sicherheitsl%C3%BCcke-kritische-cve-betrifft-alle-esp32-ger%C3%A4te-live-hack-zeigt-das-problem/cover.png" alt="Featured image of post ESPHome Security Flaw: Critical CVE Hits All ESP32 Devices" /&gt;&lt;p&gt;A recently discovered security vulnerability in ESPHome 2025.8.0 affects ESP32 devices using the IDF Framework. The flaw allows attackers to bypass the built-in Basic Auth authentication and perform over-the-air updates without valid credentials.&lt;/p&gt;
&lt;p&gt;This means: even if you have properly protected your ESPHome devices with a username and password, attackers can under certain circumstances still push firmware updates and gain control of the device.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/VN9EI7uMSdE?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_1643995062457487672_hu_e7b14f4d0d6d2657.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="practical-demonstration-of-the-security-vulnerability"&gt;Practical Demonstration of the Security Vulnerability
&lt;/h2&gt;&lt;h3 id="esphome-as-a-popular-diy-solution"&gt;ESPHome as a Popular DIY Solution
&lt;/h3&gt;&lt;p&gt;ESPHome has established itself as one of the most popular solutions for DIY smart home projects. Its simple integration of ESP32 and ESP8266 controllers into the smart home makes it a widely used tool in the community.&lt;/p&gt;
&lt;p&gt;However, the recently discovered security vulnerability shows that even established software can have unexpected weaknesses. In the video, I demonstrate the practical exploitation of this flaw on a test device.&lt;/p&gt;
&lt;h3 id="live-demonstration-of-the-vulnerability"&gt;Live Demonstration of the Vulnerability
&lt;/h3&gt;&lt;p&gt;In the video, I perform a controlled test in which I bypass the authentication of an ESP32 device. I use command-line tools to send an HTTP request with an empty Authorization header.&lt;/p&gt;
&lt;p&gt;The result: the ESP32 device accepts the firmware update even though no valid credentials were transmitted. The web server responds with &amp;ldquo;Update successful,&amp;rdquo; confirming that Basic Auth authentication is not working correctly in this version.&lt;/p&gt;
&lt;h2 id="who-is-affected-the-technical-details"&gt;Who Is Affected? The Technical Details
&lt;/h2&gt;&lt;h3 id="esphome-version-202580-in-focus"&gt;ESPHome Version 2025.8.0 in Focus
&lt;/h3&gt;&lt;p&gt;The security vulnerability primarily affects ESPHome version 2025.8.0, though the official vulnerability description also mentions &amp;ldquo;possibly older versions.&amp;rdquo; Particularly critical: the flaw exclusively affects ESP32 devices using the IDF Framework.&lt;/p&gt;
&lt;p&gt;In the video, I explain exactly why this combination is problematic and how to find out whether your devices are affected.&lt;/p&gt;
&lt;h3 id="esp32-vs-esp8266-an-important-distinction"&gt;ESP32 vs ESP8266: An Important Distinction
&lt;/h3&gt;&lt;p&gt;There is some good news: ESP8266 controllers are NOT affected by this vulnerability. If you exclusively use ESP8266-based devices, you can breathe a little easier for now.&lt;/p&gt;
&lt;p&gt;That said, caution is warranted: most modern ESPHome projects use ESP32 controllers, since they are significantly more powerful and offer more features. These popular controllers are the ones affected by the flaw.&lt;/p&gt;
&lt;h2 id="the-attack-in-detail-how-the-hack-works"&gt;The Attack in Detail: How the Hack Works
&lt;/h2&gt;&lt;h3 id="the-authorization-header-as-the-entry-point"&gt;The Authorization Header as the Entry Point
&lt;/h3&gt;&lt;p&gt;What you see in the video is the practical exploitation of a vulnerability in HTTP Basic Authentication. Normally, attackers need to transmit valid credentials in the Authorization header. The security vulnerability, however, allows this protection to be bypassed with an empty header.&lt;/p&gt;
&lt;p&gt;The hack works via the &lt;code&gt;/update&lt;/code&gt; endpoint, which is normally used for over-the-air updates. An attacker can submit manipulated firmware to this endpoint and have it installed without authentication.&lt;/p&gt;
&lt;h3 id="potential-impact-of-the-vulnerability"&gt;Potential Impact of the Vulnerability
&lt;/h3&gt;&lt;p&gt;Since the security vulnerability allows arbitrary firmware to be flashed, various attack scenarios are conceivable. An attacker could theoretically:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Capture and exfiltrate sensor data&lt;/li&gt;
&lt;li&gt;Use the device for further network scanning&lt;/li&gt;
&lt;li&gt;Preserve the original functionality to remain undetected&lt;/li&gt;
&lt;li&gt;Make modifications to the firmware&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The practical impact depends heavily on the individual network configuration and the security measures already in place.&lt;/p&gt;
&lt;h2 id="immediate-protective-measures-what-you-need-to-do-now"&gt;Immediate Protective Measures: What You Need to Do NOW
&lt;/h2&gt;&lt;h3 id="step-1-update-esphome"&gt;Step 1: Update ESPHome
&lt;/h3&gt;&lt;p&gt;The most important step: update your ESPHome installation to version 2025.8.1 or newer immediately. These versions contain the fix for the critical security vulnerability.&lt;/p&gt;
&lt;p&gt;In the video, I show you exactly where to find the current version and how to perform the update.&lt;/p&gt;
&lt;h3 id="step-2-reflash-all-esp32-devices"&gt;Step 2: Reflash All ESP32 Devices
&lt;/h3&gt;&lt;p&gt;Even more important: you must reflash all your ESP32 devices with the updated ESPHome version. Updating the ESPHome software alone is not enough – the firmware on the devices themselves must be updated.&lt;/p&gt;
&lt;p&gt;The easiest way to do this is via the &amp;ldquo;Update&amp;rdquo; button in the ESPHome management interface. In the video, you can see the complete process and learn what to watch out for.&lt;/p&gt;
&lt;h3 id="step-3-when-in-doubt-update"&gt;Step 3: When in Doubt, Update
&lt;/h3&gt;&lt;p&gt;If you are unsure whether your devices are affected: an update never hurts. It is better to update one time too many than to have a compromised device on your network.&lt;/p&gt;
&lt;h2 id="assessing-the-security-vulnerability"&gt;Assessing the Security Vulnerability
&lt;/h2&gt;&lt;h3 id="trust-in-authentication-mechanisms"&gt;Trust in Authentication Mechanisms
&lt;/h3&gt;&lt;p&gt;ESPHome users typically rely on the built-in Basic Auth authentication to protect their devices. This security vulnerability shows that even well-established authentication mechanisms can contain bugs.&lt;/p&gt;
&lt;p&gt;Many users run their ESP32 devices for extended periods without regular updates, since they are considered stable and reliable. However, this approach can become problematic when newly discovered security vulnerabilities emerge.&lt;/p&gt;
&lt;h3 id="security-on-the-home-network"&gt;Security on the Home Network
&lt;/h3&gt;&lt;p&gt;A common assumption is that devices on the internal network are automatically protected. This vulnerability makes clear, however, that attackers with network access – for example via compromised devices or a guest Wi-Fi network – can exploit security flaws too.&lt;/p&gt;
&lt;p&gt;In the video, I discuss the importance of regular updates even for internally operated devices.&lt;/p&gt;
&lt;h2 id="lessons-from-the-security-vulnerability"&gt;Lessons from the Security Vulnerability
&lt;/h2&gt;&lt;h3 id="updates-are-not-optional"&gt;Updates Are Not Optional
&lt;/h3&gt;&lt;p&gt;This vulnerability underscores once again: regular updates are not a tiresome chore, but critical to the security of your smart home. Even well-established software like ESPHome can suddenly develop critical flaws.&lt;/p&gt;
&lt;h3 id="defense-in-depth"&gt;Defense in Depth
&lt;/h3&gt;&lt;p&gt;A single layer of protection – no matter how well implemented – is not enough. The ESPHome vulnerability shows that even authentication can fail. Additional layers of protection such as network segmentation or VPN access can make the difference when it matters.&lt;/p&gt;
&lt;h2 id="what-you-will-learn-in-the-video"&gt;What You Will Learn in the Video
&lt;/h2&gt;&lt;p&gt;The video offers far more than just theoretical knowledge. You will see:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Live hack demonstration&lt;/strong&gt; – understand the threat through a practical walkthrough&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Step-by-step update guide&lt;/strong&gt; – learn how to update your devices correctly&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Technical background&lt;/strong&gt; – understand why this vulnerability is so dangerous&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Preventive security measures&lt;/strong&gt; – protect yourself against future threats&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Community discussion&lt;/strong&gt; – find out how others are dealing with the problem&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The practical demonstration in the video illustrates how the vulnerability works and shows concretely how the authentication can be bypassed. This helps in understanding the technical details and assessing the risk for your own installation.&lt;/p&gt;
&lt;h2 id="your-role-in-smart-home-security"&gt;Your Role in Smart Home Security
&lt;/h2&gt;&lt;h3 id="community-responsibility"&gt;Community Responsibility
&lt;/h3&gt;&lt;p&gt;Security vulnerabilities like this affect not only you personally, but the entire smart home community. Share your knowledge, inform other users, and make sure this important information reaches the people affected.&lt;/p&gt;
&lt;h3 id="a-proactive-security-stance"&gt;A Proactive Security Stance
&lt;/h3&gt;&lt;p&gt;Use this security vulnerability as an opportunity to rethink your overall smart home security. Which other devices have not received updates in a long time? Which systems rely too heavily on a single layer of protection?&lt;/p&gt;
&lt;h2 id="conclusion-security-requires-continuous-attention"&gt;Conclusion: Security Requires Continuous Attention
&lt;/h2&gt;&lt;p&gt;The ESPHome security vulnerability underscores the importance of regular updates even for established software. It shows that even proven solutions can have unexpected weaknesses.&lt;/p&gt;
&lt;p&gt;The video demonstrates the practical exploitation of the vulnerability and explains the necessary protective measures – from immediate updates to preventive security strategies.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/VN9EI7uMSdE?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_1643995062457487672_hu_e7b14f4d0d6d2657.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;→ In a follow-up article, I analyzed the community&amp;rsquo;s reaction to this vulnerability and address the question of whether ESPHome is still justifiable: &lt;a class="link" href="https://smarthome-aber-sicher.de/post/esphome-unsicher/" &gt;ESPHome After the Security Vulnerability: Irresponsible or Still Worth It?&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Repairing the Sonoff S20 Smart Plug: The 26-Cent Fix</title><link>https://smarthome-aber-sicher.de/en/blog/2025/09/07/repairing-the-sonoff-s20-smart-plug-the-26-cent-fix/</link><pubDate>Sun, 07 Sep 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/09/07/repairing-the-sonoff-s20-smart-plug-the-26-cent-fix/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/09/07/sonoff-s20-smarte-steckdose-reparieren-die-26cent-reparatur/cover.png" alt="Featured image of post Repairing the Sonoff S20 Smart Plug: The 26-Cent Fix" /&gt;&lt;p&gt;Sound familiar? Your Sonoff S20 smart plugs worked reliably for years, but suddenly they keep dropping their WiFi connection. A restart fixes things — for a few hours. Then the same thing happens all over again. You simply can&amp;rsquo;t build a reliable smart home on devices like that.&lt;/p&gt;
&lt;p&gt;The good news: in most cases you can fix the problem yourself for under a dollar in parts. The secret lies in a tiny component that loses its electrical properties after a few years.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/2goT-x9xBiU?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_4693352035126515633_hu_b436237265c5e777.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="the-common-problem-unstable-wifi-connection"&gt;The Common Problem: Unstable WiFi Connection
&lt;/h2&gt;&lt;h3 id="recognizing-the-symptoms"&gt;Recognizing the Symptoms
&lt;/h3&gt;&lt;p&gt;The problem tends to show up in a very characteristic way:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The Sonoff S20 sporadically drops its WiFi connection&lt;/li&gt;
&lt;li&gt;After a restart everything works again for minutes to hours&lt;/li&gt;
&lt;li&gt;The device stops responding to commands from the app&lt;/li&gt;
&lt;li&gt;The LED blinks irregularly or shows error states&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="the-root-cause-capacitor-aging"&gt;The Root Cause: Capacitor Aging
&lt;/h3&gt;&lt;p&gt;What looks like a WiFi problem at first glance actually originates in the plug&amp;rsquo;s power supply. After some research it became clear: the electrolytic capacitors used in these devices lose their rated parameters after a few years.&lt;/p&gt;
&lt;p&gt;This causes instability throughout the entire power supply circuit — instability that the ESP8266 microcontroller cannot handle. In the worst case the device eventually dies completely.&lt;/p&gt;
&lt;h2 id="the-1-repair-step-by-step"&gt;The $1 Repair: Step by Step
&lt;/h2&gt;&lt;h3 id="what-you-need"&gt;What You Need
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;One 330µF/16V electrolytic capacitor&lt;/li&gt;
&lt;li&gt;A soldering iron and some solder&lt;/li&gt;
&lt;li&gt;A Phillips screwdriver&lt;/li&gt;
&lt;li&gt;Desoldering braid (helpful but optional)&lt;/li&gt;
&lt;li&gt;Common sense when it comes to safety&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Important safety notice:&lt;/strong&gt; Never work on the plug while it is connected to mains power! What else to watch out for when opening mains devices is covered in &lt;a class="link" href="https://smarthome-aber-sicher.de/en/working-safely-with-mains-voltage/" &gt;Working safely with mains voltage&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id="opening-the-case"&gt;Opening the Case
&lt;/h3&gt;&lt;p&gt;The Sonoff S20 is surprisingly easy to open. Remove four Phillips screws and you have access to the circuit board. The video shows you step by step exactly where the screws are located and how to open the case safely without damaging anything.&lt;/p&gt;
&lt;h3 id="identifying-the-culprit"&gt;Identifying the Culprit
&lt;/h3&gt;&lt;p&gt;The problematic capacitors are easy to spot. They are the electrolytic capacitors in the power supply area of the board. The main suspect is the 330µF/16V capacitor located between two IC chips.&lt;/p&gt;
&lt;p&gt;The tricky part: these capacitors look completely normal from the outside. No bulging, no visible damage — yet they are faulty. The video shows you exactly where to find the suspect capacitors and how to tell them apart from other components.&lt;/p&gt;
&lt;h3 id="removing-the-faulty-capacitor"&gt;Removing the Faulty Capacitor
&lt;/h3&gt;&lt;p&gt;To replace the capacitor you need to partially loosen the board so you can reach the solder joints from the back. The relevant contacts sit between the two chips and need to be carefully desoldered.&lt;/p&gt;
&lt;p&gt;The video shows the soldering iron work live, including tips for avoiding damage to the board. Clearing the holes after removing the old capacitor is covered in detail — that is the trickiest part of the whole repair.&lt;/p&gt;
&lt;h3 id="installing-the-new-capacitor"&gt;Installing the New Capacitor
&lt;/h3&gt;&lt;p&gt;When inserting the new 330µF/16V electrolytic capacitor, polarity is critical:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Negative lead:&lt;/strong&gt; Marked with a thick stripe&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Positive lead:&lt;/strong&gt; The other side (longer leg)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The board markings show you exactly which way the capacitor goes. Positive on top, negative on the bottom — following the markings on the board. The video demonstrates slowly and clearly how to identify the correct polarity and align the capacitor properly. Getting this wrong would destroy the entire power supply!&lt;/p&gt;
&lt;h3 id="reassembly"&gt;Reassembly
&lt;/h3&gt;&lt;p&gt;When reassembling, pay close attention to the correct positioning of the button. The small transparent plastic piece must sit precisely on its pins, otherwise the manual button will no longer work.&lt;/p&gt;
&lt;p&gt;Also make sure the cables are routed so they do not conflict with the socket contacts. The video shows the small but important trick with the button — miss it and you will regret it later!&lt;/p&gt;
&lt;h2 id="the-moment-of-truth"&gt;The Moment of Truth
&lt;/h2&gt;&lt;p&gt;After screwing everything back together comes the exciting part: the first power-up. If everything was done correctly, the LED starts blinking happily and the plug connects to the WiFi without any trouble.&lt;/p&gt;
&lt;p&gt;The video shows the successful result live: the repaired Sonoff S20 is fully reachable at its IP address and switches flawlessly — something that was not possible before. That moment is genuinely satisfying and proves the effort was worth it.&lt;/p&gt;
&lt;h2 id="why-the-repair-is-worth-it"&gt;Why the Repair Is Worth It
&lt;/h2&gt;&lt;h3 id="sustainability-over-throwaway-culture"&gt;Sustainability Over Throwaway Culture
&lt;/h3&gt;&lt;p&gt;Instead of throwing away the &amp;ldquo;broken&amp;rdquo; plug and buying a new one, you invest about 30 minutes of time and under a dollar in parts. That is not only sustainable — it is also educational.&lt;/p&gt;
&lt;h3 id="other-affected-components"&gt;Other Affected Components
&lt;/h3&gt;&lt;p&gt;If replacing the first capacitor does not solve the problem, the other electrolytic capacitors in the circuit may also be affected. The repair principle stays the same.&lt;/p&gt;
&lt;h3 id="long-term-stability"&gt;Long-Term Stability
&lt;/h3&gt;&lt;p&gt;After the repair the plugs work perfectly again. The WiFi connection is stable, response times are fast, and reliability is back to its original level.&lt;/p&gt;
&lt;h2 id="practical-tips-for-the-future"&gt;Practical Tips for the Future
&lt;/h2&gt;&lt;h3 id="prevention"&gt;Prevention
&lt;/h3&gt;&lt;p&gt;Electrolytic capacitors age due to heat and operating time. Avoid placing your Sonoff devices in excessively warm environments and ensure adequate ventilation.&lt;/p&gt;
&lt;h3 id="when-is-a-repair-worth-it"&gt;When Is a Repair Worth It?
&lt;/h3&gt;&lt;p&gt;For devices older than 2–3 years that show the WiFi problems described above, a faulty capacitor is very likely the cause. The repair is usually successful and only takes a few minutes.&lt;/p&gt;
&lt;h2 id="more-hardware-repair-projects-ahead"&gt;More Hardware Repair Projects Ahead
&lt;/h2&gt;&lt;p&gt;This repair shows impressively how sustainable smart home can be. Instead of discarding working hardware, we fix it with minimal effort. The best part: the video shows not just the repair itself but also the reasoning behind it — what to look for when diagnosing the fault and which pitfalls to avoid.&lt;/p&gt;
&lt;h2 id="more-repair-guides"&gt;More Repair Guides
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/repair-shelly/" &gt;Fixing BROKEN Shellys – The 30-Cent Repair That Actually Works!&lt;/a&gt; – The same capacitor principle applied to the Shelly 2.5: solving WiFi problems with a new capacitor&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/repair-tablet/" &gt;Replace a Tablet Battery Yourself – Save Your Old Device in 20 Minutes!&lt;/a&gt; – When your old tablet needs to last hours instead of minutes as a smart home dashboard again&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Home Assistant Remote Access: Securely Connect Anywhere</title><link>https://smarthome-aber-sicher.de/en/blog/2025/08/31/home-assistant-remote-access-securely-access-your-smart-home-from-anywhere/</link><pubDate>Sun, 31 Aug 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/08/31/home-assistant-remote-access-securely-access-your-smart-home-from-anywhere/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/08/31/home-assistant-fernzugriff-sicher-von-%C3%BCberall-auf-dein-smart-home-zugreifen/cover.png" alt="Featured image of post Home Assistant Remote Access: Securely Connect Anywhere" /&gt;&lt;p&gt;Picture this: you&amp;rsquo;re relaxing on the beach, the sun is shining, waves are rolling in — and suddenly you wonder: &amp;ldquo;Did I actually turn off the lights?&amp;rdquo; In the past, that thought would have left you uneasy for the rest of the day. Today, you simply pick up your phone, check Home Assistant, and see immediately: everything&amp;rsquo;s fine. The lights are off, the doors are locked, the alarm is armed. Welcome to the world of secure remote access!&lt;/p&gt;
&lt;p&gt;But beware: the path to this convenience is paved with security traps that can turn your smart home into an open door for hackers. This video shows you how to balance comfort and security.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/VOhgohQiTLI?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_12273085441632047036_hu_fb57f0bf357cda32.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-remote-access-really-means"&gt;What Remote Access Really Means
&lt;/h2&gt;&lt;h3 id="the-invisible-bridge-between-you-and-your-home"&gt;The Invisible Bridge Between You and Your Home
&lt;/h3&gt;&lt;p&gt;Remote access to Home Assistant is like an invisible bridge between you and your home. Whether you&amp;rsquo;re at the office, on vacation, or just out shopping — this digital connection gives you access to all your smart home&amp;rsquo;s features at any time.&lt;/p&gt;
&lt;p&gt;The key difference from local use: your data travels across the internet. That makes things both exciting and risky. The video gives you a clear picture of how the different connection methods work and where the dangers lurk.&lt;/p&gt;
&lt;h3 id="why-your-smart-home-needs-remote-access"&gt;Why Your Smart Home Needs Remote Access
&lt;/h3&gt;&lt;p&gt;A smart home without remote access is like a sports car without a road — technically impressive, but practically useless the moment you leave the house. Home Assistant&amp;rsquo;s true power only unfolds when you can reach it from anywhere.&lt;/p&gt;
&lt;p&gt;Imagine getting a notification about unusual power consumption while you&amp;rsquo;re at work. Without remote access, you&amp;rsquo;re in the dark until you get home. With remote access, you can check immediately, identify the problem, and take action — potentially preventing serious damage.&lt;/p&gt;
&lt;h2 id="the-four-ways-into-your-smart-home"&gt;The Four Ways Into Your Smart Home
&lt;/h2&gt;&lt;h3 id="option-1-vpn--the-classic-secure-channel"&gt;Option 1: VPN — The Classic Secure Channel
&lt;/h3&gt;&lt;p&gt;VPN is like an armored tunnel through the wild internet. With solutions like WireGuard, Tailscale, or OpenVPN, you establish an encrypted connection to your home network. For your phone or laptop, it&amp;rsquo;s as if you were sitting right at home.&lt;/p&gt;
&lt;p&gt;The big advantage: maximum security and full control over your data. The downside: setup can get a bit technical. The video walks you through the most important VPN options and helps you find the right one for you.&lt;/p&gt;
&lt;h3 id="option-2-home-assistant-cloud--simplicity-at-a-price"&gt;Option 2: Home Assistant Cloud — Simplicity at a Price
&lt;/h3&gt;&lt;p&gt;The Home Assistant Cloud from Nabu Casa is the premium option of remote access solutions: comfortable, reliable, and incredibly easy to set up. A few clicks, a monthly fee of around €5, and you&amp;rsquo;re ready to go.&lt;/p&gt;
&lt;p&gt;What makes it special: no port forwarding required, no complex network configuration. Nabu Casa handles everything. At the same time, you&amp;rsquo;re supporting Home Assistant&amp;rsquo;s development, since the revenue flows directly back into the project.&lt;/p&gt;
&lt;h3 id="option-3-reverse-proxy--for-the-tech-enthusiasts"&gt;Option 3: Reverse Proxy — For the Tech Enthusiasts
&lt;/h3&gt;&lt;p&gt;A reverse proxy like Cloudflare Tunnel is the solution for those who like to tinker while still wanting professional-grade security. It becomes particularly compelling in combination with Cloudflare Access, an authentication layer that adds an extra line of defense.&lt;/p&gt;
&lt;p&gt;This approach offers maximum flexibility and can be run for free. The setup effort, however, should not be underestimated. The video gives you an overview and points you to a detailed Cloudflare tutorial.&lt;/p&gt;
&lt;h3 id="the-path-to-disaster-direct-port-forwarding"&gt;The Path to Disaster: Direct Port Forwarding
&lt;/h3&gt;&lt;p&gt;There is a fourth option — one I&amp;rsquo;m mentioning only to warn you against it: direct port forwarding without additional protection. That&amp;rsquo;s like leaving your front door wide open with a sign that says: &amp;ldquo;Smart home owner lives here!&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Hackers constantly scan the internet for exactly these kinds of open doors. An unprotected open port is an open invitation for attackers. For more on this topic — and how to do it right — check out my separate video on secure port forwarding.&lt;/p&gt;
&lt;h2 id="the-most-common-pitfalls-and-how-to-avoid-them"&gt;The Most Common Pitfalls and How to Avoid Them
&lt;/h2&gt;&lt;h3 id="pitfall-1-weak-authentication"&gt;Pitfall 1: Weak Authentication
&lt;/h3&gt;&lt;p&gt;&amp;ldquo;123456&amp;rdquo; or &amp;ldquo;password&amp;rdquo; may be easy to remember, but they&amp;rsquo;re just as easy to crack. When accessing your smart home remotely, a strong, unique password isn&amp;rsquo;t optional — it&amp;rsquo;s mandatory.&lt;/p&gt;
&lt;p&gt;Even better: enable two-factor authentication (2FA). Even if an attacker gets hold of your password, they can&amp;rsquo;t get in without the second factor. The video shows you how to enable and properly use 2FA in Home Assistant.&lt;/p&gt;
&lt;h3 id="pitfall-2-missing-access-restrictions"&gt;Pitfall 2: Missing Access Restrictions
&lt;/h3&gt;&lt;p&gt;Not everyone should be able to access your smart home from anywhere. IP allowlists let you limit access to known locations. Role-based permissions ensure that guests can only see what they&amp;rsquo;re supposed to see.&lt;/p&gt;
&lt;p&gt;These techniques are more powerful than they might seem at first. The video walks you through practical examples and explains how to make the most of these security features.&lt;/p&gt;
&lt;h3 id="pitfall-3-unencrypted-connections"&gt;Pitfall 3: Unencrypted Connections
&lt;/h3&gt;&lt;p&gt;HTTP is like sending a postcard — anyone can read it. HTTPS is like a sealed letter. When accessing your smart home remotely, always use encrypted connections, regardless of which method you choose.&lt;/p&gt;
&lt;h2 id="creative-uses-for-your-remote-access"&gt;Creative Uses for Your Remote Access
&lt;/h2&gt;&lt;h3 id="smart-heating-control"&gt;Smart Heating Control
&lt;/h3&gt;&lt;p&gt;Imagine you&amp;rsquo;re returning from vacation earlier than planned. Instead of coming home to a cold apartment, you start the heating from the highway. By the time you arrive, it&amp;rsquo;s comfortably warm — without wasting energy in the meantime.&lt;/p&gt;
&lt;h3 id="smart-doorbell-monitoring"&gt;Smart Doorbell Monitoring
&lt;/h3&gt;&lt;p&gt;Expecting a package but still at work? With remote access, you&amp;rsquo;ll see immediately when someone rings the doorbell. You can talk to the delivery driver, tell them where to leave the package, or even unlock the door if you trust them.&lt;/p&gt;
&lt;h3 id="garage-door-timing"&gt;Garage Door Timing
&lt;/h3&gt;&lt;p&gt;This is one of my favorite use cases: you open the garage door from your car while you&amp;rsquo;re still two streets away. By the time you arrive, the door is already open and you can drive straight in without stopping. A small convenience that meaningfully improves everyday life.&lt;/p&gt;
&lt;p&gt;The video shows these use cases in action and gives you ideas for your own creative solutions.&lt;/p&gt;
&lt;h2 id="why-you-should-watch-the-video"&gt;Why You Should Watch the Video
&lt;/h2&gt;&lt;p&gt;This article gives you a solid overview of remote access options. But the video shows you the practical implementation. You&amp;rsquo;ll see:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Live demonstrations&lt;/strong&gt; of the different remote access methods&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Step-by-step guides&lt;/strong&gt; for setup&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Security checklists&lt;/strong&gt; to work through&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Real-world examples&lt;/strong&gt; of creative use cases&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Troubleshooting tips&lt;/strong&gt; for common issues&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Particularly valuable are the security notes that are hard to convey in article form. In the video, you&amp;rsquo;ll see concretely what to watch out for and how to avoid typical beginner mistakes.&lt;/p&gt;
&lt;h2 id="the-home-assistant-az-series"&gt;The Home Assistant A–Z Series
&lt;/h2&gt;&lt;p&gt;This video is part of the &amp;ldquo;Home Assistant A to Z&amp;rdquo; series — a systematic introduction to all the important aspects of Home Assistant. Each video stands on its own and can be digested in about 5 minutes.&lt;/p&gt;
&lt;p&gt;Whether you&amp;rsquo;re just getting started or already have experience: this series is guaranteed to offer new tips and tricks. Remote access is a particularly important piece of the puzzle, because it transforms your local smart home into a truly flexible system.&lt;/p&gt;
&lt;h2 id="conclusion-security-before-convenience"&gt;Conclusion: Security Before Convenience
&lt;/h2&gt;&lt;p&gt;Remote access to Home Assistant isn&amp;rsquo;t a luxury — it&amp;rsquo;s a necessity for a modern smart home. But as with all powerful tools: with great power comes great responsibility.&lt;/p&gt;
&lt;p&gt;The video shows you how to handle that responsibility correctly. You&amp;rsquo;ll learn not just how remote access works, but how to implement it securely. Because in the end, the best remote access solution is worthless if it turns your home into an open door for attackers.&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 6 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/05-entit%C3%A4ten/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← E · Entitäten&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/07-ger%C3%A4te/" class="ha-az-nav-btn ha-az-nav-next"&gt;G · Geräte →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Home Assistant AI Automations: How Dangerous Are They?</title><link>https://smarthome-aber-sicher.de/en/blog/2025/08/24/home-assistant-ai-automations-why-the-new-suggest-feature-can-be-dangerous/</link><pubDate>Sun, 24 Aug 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/08/24/home-assistant-ai-automations-why-the-new-suggest-feature-can-be-dangerous/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/08/24/home-assistant-ki-automationen-warum-die-neue-vorschlagen-funktion-gef%C3%A4hrlich-sein-kann/cover.png" alt="Featured image of post Home Assistant AI Automations: How Dangerous Are They?" /&gt;&lt;p&gt;It felt like an early Christmas gift: Home Assistant 2025.8 finally promises real AI support for your automations. Imagine being able to press a button and have artificial intelligence suggest perfect names for all your automations. Sounds like a dream, right?&lt;/p&gt;
&lt;p&gt;But sometimes the most beautiful dreams turn into nightmares. What looks like a breakthrough at first glance can turn your carefully built smart home into a chaotic naming mess — and the tricky part is you won&amp;rsquo;t notice until it&amp;rsquo;s too late.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/39wLNXQMPmw?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_12920370794849992471_hu_29178f157eea2518.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="when-progress-becomes-regression"&gt;When Progress Becomes Regression
&lt;/h2&gt;&lt;h3 id="the-tempting-promise-of-the-ai-suggest-feature"&gt;The Tempting Promise of the AI Suggest Feature
&lt;/h3&gt;&lt;p&gt;You probably know the feeling: you&amp;rsquo;ve just built a brilliant new automation and you&amp;rsquo;re staring at the infamous name field. &amp;ldquo;Automation 47&amp;rdquo; would be honest, but not particularly helpful. That&amp;rsquo;s where the new &amp;ldquo;Suggest&amp;rdquo; feature in Home Assistant 2025.8 seems to come to the rescue. One click, and the AI proposes a name. Magic? Almost.&lt;/p&gt;
&lt;p&gt;What happens in the background is genuinely impressive: Home Assistant doesn&amp;rsquo;t just send the YAML code of your current automation to the AI model — it also sends the names of all your existing automations. In theory, the AI has everything it needs to align with your existing naming scheme.&lt;/p&gt;
&lt;p&gt;But this is where the trouble begins. In the video, I show exactly what happens when the AI encounters a typical &amp;ldquo;organically grown&amp;rdquo; smart home — and why the result is often disastrous.&lt;/p&gt;
&lt;h3 id="the-great-naming-dilemma"&gt;The Great Naming Dilemma
&lt;/h3&gt;&lt;p&gt;Imagine spending weeks desperately searching for a specific automation in your list of hundreds. Was it &amp;ldquo;Blinds down&amp;rdquo;, &amp;ldquo;Close shutters&amp;rdquo;, or &amp;ldquo;Rolladen automatisch&amp;rdquo;? Or maybe &amp;ldquo;Jalousie runter&amp;rdquo;?&lt;/p&gt;
&lt;p&gt;The truth is: most of us haven&amp;rsquo;t been consistent when naming our automations. Sometimes German, sometimes English, sometimes verbose, sometimes terse. The AI can only work with what you give it — and if your existing names are a hodgepodge, it will only amplify that chaos.&lt;/p&gt;
&lt;h2 id="why-this-seemingly-harmless-feature-can-ruin-your-smart-home"&gt;Why This Seemingly Harmless Feature Can Ruin Your Smart Home
&lt;/h2&gt;&lt;p&gt;The insidious thing about the new Suggest feature isn&amp;rsquo;t what it does — it&amp;rsquo;s what it can&amp;rsquo;t do. It can&amp;rsquo;t read your mind. While you might have a sophisticated naming scheme in your head (&amp;ldquo;Room_Device_Action&amp;rdquo; or similar), that knowledge is invisible to the AI.&lt;/p&gt;
&lt;p&gt;The result? A gradual decay of your automation structure. Today the AI suggests &amp;ldquo;Living room light on&amp;rdquo;, tomorrow &amp;ldquo;Activate kitchen lighting&amp;rdquo;, and the day after &amp;ldquo;Turn on bedroom lights&amp;rdquo;. Within a few weeks you have a Babylonian language muddle that makes your smart home practically unusable.&lt;/p&gt;
&lt;p&gt;In the video, I demonstrate this using a real installation with over 100 automations — the result is both alarming and instructive.&lt;/p&gt;
&lt;h2 id="the-solution-how-to-use-ai-the-right-way"&gt;The Solution: How to Use AI the Right Way
&lt;/h2&gt;&lt;h3 id="the-game-changer-batch-processing-instead-of-one-at-a-time"&gt;The Game-Changer: Batch Processing Instead of One-at-a-Time
&lt;/h3&gt;&lt;p&gt;But there is hope! The problem isn&amp;rsquo;t AI itself — it&amp;rsquo;s the way it&amp;rsquo;s being used. What if you didn&amp;rsquo;t have to process each automation individually, but could make your entire installation consistent in one go?&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s exactly what I show in the video. The trick is simple yet incredibly effective: instead of letting the AI work on automations one by one, you hand it all your automations at once — together with precise instructions about what the perfect naming scheme should look like.&lt;/p&gt;
&lt;h3 id="the-secret-is-in-the-details"&gt;The Secret Is in the Details
&lt;/h3&gt;&lt;p&gt;What the Home Assistant feature can&amp;rsquo;t do, you do manually: you give the AI a crystal-clear assignment. Not &amp;ldquo;do something sensible&amp;rdquo;, but &amp;ldquo;use exclusively German terms, apply the scheme Room_Device_Action, and follow these examples&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;In the video you can see how I implement exactly that — from extracting &lt;code&gt;automations.yaml&lt;/code&gt; to feeding the perfectly renamed automations back in. The process is simpler than you think, but the impact is dramatic.&lt;/p&gt;
&lt;h3 id="why-reasoning-capable-ai-models-make-the-difference"&gt;Why Reasoning-Capable AI Models Make the Difference
&lt;/h3&gt;&lt;p&gt;Things get particularly interesting with large installations. While basic AI models quickly lose the overview, reasoning-capable models like GPT-5 Thinking can identify relationships and develop consistent patterns.&lt;/p&gt;
&lt;p&gt;The video shows impressively how the AI doesn&amp;rsquo;t just assign names — it develops a well-thought-out system. Similar automations are grouped recognizably, edge cases are handled intelligently, and in the end you have an installation that looks as if a professional had planned it from the start.&lt;/p&gt;
&lt;h2 id="the-step-by-step-path-to-perfection"&gt;The Step-by-Step Path to Perfection
&lt;/h2&gt;&lt;p&gt;The video walks you through the complete process — and I promise it&amp;rsquo;s simpler than you think:&lt;/p&gt;
&lt;h3 id="step-1-take-stock"&gt;Step 1: Take Stock
&lt;/h3&gt;&lt;p&gt;First, download your &lt;code&gt;automations.yaml&lt;/code&gt; from your Home Assistant installation. This file contains all your automations in YAML format — essentially the blueprint of your smart home.&lt;/p&gt;
&lt;h3 id="step-2-choose-the-right-ai"&gt;Step 2: Choose the Right AI
&lt;/h3&gt;&lt;p&gt;Not every AI is suited for this task. In the video I explain why I use GPT-5 Thinking and why reasoning-capable models deliver significantly better results for complex naming tasks.&lt;/p&gt;
&lt;h3 id="step-3-the-perfect-prompt"&gt;Step 3: The Perfect Prompt
&lt;/h3&gt;&lt;p&gt;This is where the real difference is made. I show you my tested prompt that turns chaotic automation names into a perfectly structured list. You can watch the AI work and make decisions in real time. The prompt is available to copy in the video description on YouTube — just click into the video above.&lt;/p&gt;
&lt;h3 id="step-4-patience"&gt;Step 4: Patience
&lt;/h3&gt;&lt;p&gt;While the AI is working, it&amp;rsquo;s a great time to follow the channel — especially if AI in the context of smart home interests you. This may be my first video on the topic, but it certainly won&amp;rsquo;t be the last.&lt;/p&gt;
&lt;h3 id="step-5-the-result"&gt;Step 5: The Result
&lt;/h3&gt;&lt;p&gt;The outcome is impressive. What was a jumble of different naming styles becomes a clean, coherent structure. Every automation has its perfect place, similar functions are instantly recognizable, and navigation becomes effortless.&lt;/p&gt;
&lt;h3 id="step-6-feed-it-back"&gt;Step 6: Feed It Back
&lt;/h3&gt;&lt;p&gt;The final step is importing the result back into Home Assistant. A quick restart via the Developer Tools, and your installation shines in a whole new light.&lt;/p&gt;
&lt;h2 id="the-outcome-from-chaos-to-order"&gt;The Outcome: From Chaos to Order
&lt;/h2&gt;&lt;p&gt;What you see in the video is more than a technical demonstration. It&amp;rsquo;s the transformation of an organically grown, chaotic installation into a professionally structured smart home.&lt;/p&gt;
&lt;p&gt;The before-and-after views speak for themselves: where &amp;ldquo;Automation 17&amp;rdquo;, &amp;ldquo;Kitchen lights on&amp;rdquo;, &amp;ldquo;Licht Wohnzimmer&amp;rdquo;, and &amp;ldquo;Beleuchtung_Schlafzimmer_automatisch&amp;rdquo; once sat side by side, you now find a crystal-clear structure.&lt;/p&gt;
&lt;h3 id="the-long-term-benefits"&gt;The Long-Term Benefits
&lt;/h3&gt;&lt;p&gt;After the transformation you get:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Lightning-fast navigation&lt;/strong&gt; — you find every automation instantly&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Easy maintenance&lt;/strong&gt; — similar automations are logically grouped together&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Professional appearance&lt;/strong&gt; — the system becomes understandable for other family members too&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Future-proofing&lt;/strong&gt; — new automations automatically follow the established scheme&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="the-ultimate-flexibility-bonus"&gt;The Ultimate Flexibility Bonus
&lt;/h2&gt;&lt;p&gt;The best part of this approach is what I show at the end of the video: total flexibility. Not happy with the new scheme after a few weeks? No problem — just adjust the prompt and run the process again.&lt;/p&gt;
&lt;p&gt;No more manually renaming hundreds of automations. No more hours of clicking. Simply change the prompt, let the AI work, done. This flexibility is the real game-changer.&lt;/p&gt;
&lt;h2 id="what-to-expect-in-the-video"&gt;What to Expect in the Video
&lt;/h2&gt;&lt;p&gt;The video is a complete hands-on guide with no boring theory. You&amp;rsquo;ll see:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Live demonstration&lt;/strong&gt; of the problematic Suggest feature&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Step-by-step guide&lt;/strong&gt; for the better approach&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Real before-and-after comparisons&lt;/strong&gt; from a 100+ automation installation&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The exact prompt&lt;/strong&gt; I use&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tips on choosing the right AI model&lt;/strong&gt; for best results&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pitfalls and how to avoid them&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This isn&amp;rsquo;t theoretical — it&amp;rsquo;s pure practice. You can start immediately and apply the method to your own installation.&lt;/p&gt;
&lt;h2 id="why-you-should-watch-the-video"&gt;Why You Should Watch the Video
&lt;/h2&gt;&lt;p&gt;This article gives you a solid overview, but the video shows you the magic in action. Watching a chaotic mess of automation names transform into a perfectly structured list is simply fascinating.&lt;/p&gt;
&lt;p&gt;You&amp;rsquo;ll also get insights in the video that are hard to convey in writing:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;How the AI &amp;ldquo;thinks&amp;rdquo; and makes decisions&lt;/li&gt;
&lt;li&gt;Which naming patterns work particularly well&lt;/li&gt;
&lt;li&gt;How to handle edge cases and exceptions&lt;/li&gt;
&lt;li&gt;Why some AI models deliver better results than others&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="conclusion-the-difference-between-using-ai-and-using-ai-correctly"&gt;Conclusion: The Difference Between Using AI and Using AI Correctly
&lt;/h2&gt;&lt;p&gt;The new Suggest feature in Home Assistant 2025.8 is a bold first step toward AI integration. But as is often the case with new technology: the first attempt is rarely the best.&lt;/p&gt;
&lt;p&gt;The video doesn&amp;rsquo;t just point out the weaknesses of the current implementation — it gives you a concrete, immediately actionable alternative. One that not only works better, but is also more flexible and future-proof.&lt;/p&gt;
&lt;p&gt;The takeaway? AI is a powerful tool — but only if you know how to use it correctly. The Home Assistant Suggest feature is like using a hammer as a scalpel. It sort of works, but the result is rarely satisfying.&lt;/p&gt;
&lt;p&gt;With the approach from the video, you have a precision instrument instead. A tool that makes your smart home not just nicer, but more professional and maintainable.&lt;/p&gt;
&lt;p&gt;Watch the video, try it yourself, and let the results surprise you. Your automations — and your future self — will thank you.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Have you had any experiences with the new AI feature? And what other use cases for AI in Home Assistant do you see? Feel free to leave a comment — I&amp;rsquo;m curious to hear your ideas!&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Home Assistant A-Z: E is for Entities</title><link>https://smarthome-aber-sicher.de/en/blog/2025/08/17/home-assistant-a-z-e-is-for-entities/</link><pubDate>Sun, 17 Aug 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/08/17/home-assistant-a-z-e-is-for-entities/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/08/17/home-assistant-a-z-e-wie-entit%C3%A4ten/cover.png" alt="Featured image of post Home Assistant A-Z: E is for Entities" /&gt;&lt;p&gt;Every Home Assistant user works with them daily – often without knowing exactly what&amp;rsquo;s behind them: &lt;strong&gt;entities&lt;/strong&gt; are the foundation of your smart home. The better you understand and name them, the more efficient, robust, and manageable your system becomes.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/fYQnQ-fKBic?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_1704203879927777383_hu_7a734b34741fc0bc.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-exactly-is-an-entity"&gt;What exactly is an entity?
&lt;/h2&gt;&lt;p&gt;In Home Assistant, an &lt;strong&gt;entity&lt;/strong&gt; is the smallest unit of information you can work with. Every light, sensor, or switch is an entity – often several per device. A room sensor, for example, has one entity for the current air temperature and another for humidity.&lt;/p&gt;
&lt;p&gt;Each entity has a &lt;strong&gt;unique technical ID&lt;/strong&gt; (&lt;em&gt;entity_id&lt;/em&gt;). It consists of a prefix for the entity type – e.g. &lt;code&gt;light&lt;/code&gt;, &lt;code&gt;sensor&lt;/code&gt;, or &lt;code&gt;switch&lt;/code&gt; – followed by a freely chosen identifier that typically describes the room and function. Examples:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;light.living_room&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;sensor.bedroom_temperature&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;An entity holds a &lt;strong&gt;current state&lt;/strong&gt; (e.g. &amp;ldquo;on/off&amp;rdquo; or &amp;ldquo;21.5 °C&amp;rdquo;) and often &lt;strong&gt;attributes&lt;/strong&gt; such as battery level, signal quality, or manufacturer. Beyond classic devices, there are also &lt;strong&gt;helper entities&lt;/strong&gt; like automations, scripts, or &lt;strong&gt;template entities&lt;/strong&gt; that you derive from existing values.&lt;/p&gt;
&lt;h2 id="why-does-this-matter-for-your-smart-home"&gt;Why does this matter for your smart home?
&lt;/h2&gt;&lt;p&gt;Without entities, nothing works in Home Assistant. &lt;strong&gt;Automations&lt;/strong&gt; need entities as triggers and targets, &lt;strong&gt;dashboards&lt;/strong&gt; display entities, &lt;strong&gt;scripts&lt;/strong&gt; read and set states. Clean naming and structure help you:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;find what you&amp;rsquo;re looking for faster,&lt;/li&gt;
&lt;li&gt;avoid mistakes, and&lt;/li&gt;
&lt;li&gt;keep your system maintainable in the long run – even when devices are replaced.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="how-does-it-work-in-practice"&gt;How does it work in practice?
&lt;/h2&gt;&lt;p&gt;You&amp;rsquo;ll find all entities here: &lt;strong&gt;Settings → Devices &amp;amp; Services → Entities&lt;/strong&gt;. There you can &lt;strong&gt;search&lt;/strong&gt;, &lt;strong&gt;filter&lt;/strong&gt;, &lt;strong&gt;rename&lt;/strong&gt;, or &lt;strong&gt;disable&lt;/strong&gt; them. You also see which &lt;strong&gt;integration&lt;/strong&gt; an entity comes from and which &lt;strong&gt;device&lt;/strong&gt; it belongs to.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Not every entity is assigned to a device (older integrations didn&amp;rsquo;t support the device concept yet).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Recommended naming convention:&lt;/strong&gt; Use consistent, short IDs following the pattern &lt;em&gt;area_device_function&lt;/em&gt;, e.g. &lt;code&gt;living_room_lamp_left&lt;/code&gt; or &lt;code&gt;bedroom_temperature&lt;/code&gt;. Stick to &lt;strong&gt;one language&lt;/strong&gt; (German &lt;em&gt;or&lt;/em&gt; English) and avoid cryptic abbreviations. &lt;strong&gt;UI display names&lt;/strong&gt; can be friendly and readable (&amp;ldquo;Left Living Room Lamp&amp;rdquo;), while the &lt;strong&gt;entity_id&lt;/strong&gt; stays technical and concise.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Template entities:&lt;/strong&gt; Derive new information from existing data (e.g. &amp;ldquo;washing machine running&amp;rdquo;) and &lt;strong&gt;assign them to the appropriate device&lt;/strong&gt;. This keeps related entities grouped and your overview clean (&lt;em&gt;Edit entity → Assigned device&lt;/em&gt;).&lt;/p&gt;
&lt;h2 id="the-most-common-pitfalls"&gt;The most common pitfalls
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Invalid entity IDs.&lt;/strong&gt; Only &lt;strong&gt;lowercase letters, numbers, and underscores&lt;/strong&gt; are allowed; no underscores at the start or end. Incorrect IDs (e.g. when editing YAML) cause error messages or &amp;ldquo;nothing happens&amp;rdquo;.&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;Good: &lt;code&gt;sensor.office_co2&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Bad: &lt;code&gt;Sensor.Office-CO2&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start="2"&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Orphaned or duplicate entities.&lt;/strong&gt; After replacing devices, old IDs often remain as &lt;code&gt;…_2&lt;/code&gt; or show as &amp;ldquo;unavailable&amp;rdquo;. &lt;strong&gt;Filter&lt;/strong&gt;, &lt;strong&gt;disable&lt;/strong&gt;, or &lt;strong&gt;delete&lt;/strong&gt; them so nothing triggers twice and search results stay clean.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Binding automations to devices instead of entities.&lt;/strong&gt; Convenient – but things break when a device is replaced. &lt;strong&gt;Better:&lt;/strong&gt; Always use &lt;strong&gt;entity_id&lt;/strong&gt; in automations. Give the new device the same &lt;strong&gt;entity_id&lt;/strong&gt; and all automations keep working.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Ignoring attributes.&lt;/strong&gt; Many useful pieces of information are stored as &lt;strong&gt;attributes&lt;/strong&gt; in entities (e.g. battery level, RSSI). Use them in &lt;strong&gt;templates&lt;/strong&gt;, &lt;strong&gt;alerts&lt;/strong&gt;, or &lt;strong&gt;notifications&lt;/strong&gt; (e.g. &amp;ldquo;Battery below 15%&amp;rdquo;).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Inconsistent naming.&lt;/strong&gt; Mixing languages or naming schemes makes searching and maintaining automations harder. &lt;strong&gt;One scheme, one language – stick to it.&lt;/strong&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="creative-and-useful-things-you-can-do-with-entities"&gt;Creative and useful things you can do with entities
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Derive device status from power consumption:&lt;/strong&gt; Calculate a &lt;strong&gt;washing machine status entity&lt;/strong&gt; from the power draw of a smart plug and send a notification when the laundry is done.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Warning and overview dashboards:&lt;/strong&gt; Use an &lt;strong&gt;Entity Filter card&lt;/strong&gt; to show only problem cases (e.g. open windows/doors, low batteries). Combined with color highlighting, you won&amp;rsquo;t miss anything important. More on this in &lt;a class="link" href="https://smarthome-aber-sicher.de/ha-az/dashboard" &gt;&amp;ldquo;D is for Dashboard&amp;rdquo;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;ldquo;Unavailable&amp;rdquo; watchdog:&lt;/strong&gt; Build a template sensor that monitors the &lt;em&gt;unavailable&lt;/em&gt; state of critical entities and sends a central alert.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="summary"&gt;Summary
&lt;/h2&gt;&lt;p&gt;Entities are the backbone of your smart home. Anyone who understands, cleanly &lt;strong&gt;names&lt;/strong&gt;, &lt;strong&gt;groups&lt;/strong&gt;, and &lt;strong&gt;maintains&lt;/strong&gt; them saves time, avoids mistakes, and makes automations more robust – today and when the next device swap comes around.&lt;/p&gt;
&lt;p&gt;What naming convention do you use for your entities? Share your approach in the comments! Coming up next: &lt;a class="link" href="https://smarthome-aber-sicher.de/ha-az/fernzugriff" &gt;&amp;ldquo;F&amp;rdquo; is for Remote Access&lt;/a&gt;, or check out the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/tags/a-z-series/" &gt;overview of all A–Z posts&lt;/a&gt;.&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 5 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/04-dashboard/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← D · Dashboard&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/06-fernzugriff/" class="ha-az-nav-btn ha-az-nav-next"&gt;F · Fernzugriff →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Home Assistant A-Z: D is for Dashboard</title><link>https://smarthome-aber-sicher.de/en/blog/2025/08/10/home-assistant-a-z-d-is-for-dashboard/</link><pubDate>Sun, 10 Aug 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/08/10/home-assistant-a-z-d-is-for-dashboard/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/08/10/home-assistant-a-z-d-wie-dashboard/cover.png" alt="Featured image of post Home Assistant A-Z: D is for Dashboard" /&gt;&lt;p&gt;You open Home Assistant and see&amp;hellip; a chaotic mess of switches, sensors, and cryptic names? Or worse: you miss important warnings because everything looks grey and unremarkable? It doesn&amp;rsquo;t have to be this way! A well-designed dashboard makes the difference between frustration and joy in your daily smart home experience.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/Zl_AgDRyIvw?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_13341349475516143482_hu_ab0df159170c1486.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-is-it-anyway"&gt;What is it, anyway?
&lt;/h2&gt;&lt;p&gt;The dashboard is your central control panel in the smart home – the first screen you see when you open the app or web interface. This is where you control your devices, monitor sensors, and keep an overview of your smart home.&lt;/p&gt;
&lt;p&gt;A dashboard is made up of cards – small widgets that display different information. You can add light switches, temperature readouts, camera streams, or complex charts. Think of it like the home screen of your smartphone, but for your home.&lt;/p&gt;
&lt;p&gt;The default dashboard automatically shows all your devices, but that gets cluttered fast. That&amp;rsquo;s why you can create your own dashboards – one for the living room, one for security, or one for energy monitoring. Anything is possible.&lt;/p&gt;
&lt;h2 id="why-does-this-matter-for-your-smart-home"&gt;Why does this matter for your smart home?
&lt;/h2&gt;&lt;p&gt;Let&amp;rsquo;s be honest: the best smart home is useless if you can&amp;rsquo;t find your way around it. A well-thought-out dashboard saves you time and frustration every day. Instead of scrolling through endless lists, you see the most important information at a glance.&lt;/p&gt;
&lt;p&gt;A practical example: in the morning, quickly check whether all windows are closed, the heating is set correctly, and whether the coffee maker is already running. With a personalized &amp;ldquo;Good Morning&amp;rdquo; dashboard, that takes 5 seconds instead of 2 minutes.&lt;/p&gt;
&lt;p&gt;But even more importantly: a good dashboard warns you about problems! Imagine your fridge is too warm, your plants need water, or a door has been left open. With color-coded warnings, you&amp;rsquo;ll never miss something like that again. Red cards for critical errors, orange for warnings, blue for notices – you can see at a glance where action is needed.&lt;/p&gt;
&lt;h2 id="how-does-it-work-in-home-assistant"&gt;How does it work in Home Assistant?
&lt;/h2&gt;&lt;p&gt;Let&amp;rsquo;s look at this practically: go to your dashboard and click the pencil icon in the top right. Now you can add, move, or delete cards. It&amp;rsquo;s all very intuitive.&lt;/p&gt;
&lt;p&gt;For starters, I recommend: create a new dashboard via &amp;ldquo;Settings&amp;rdquo; → &amp;ldquo;Dashboards&amp;rdquo; → &amp;ldquo;Add Dashboard&amp;rdquo;. Then add the entities that matter most to you. Over time, you&amp;rsquo;ll notice what you use frequently and what you don&amp;rsquo;t. Take a critical look at your dashboard once a week and refine it step by step. Dashboards are as individual as each user – it just needs to work for you, and you know that best yourself.&lt;/p&gt;
&lt;p&gt;One tip: make use of the ability to only show entities when relevant. You can do this with an Entity Filter card, or via the visibility conditions in the card settings. This keeps your overview clean.&lt;/p&gt;
&lt;p&gt;A concrete example: add an Entities card for an open window, but only show it when the window is actually open.&lt;/p&gt;
&lt;p&gt;Tip: With card-mod from the Home Assistant Community Store, you can make warnings color-coded: red backgrounds for critical errors, orange for warnings. You&amp;rsquo;ll never overlook anything important again. Curious? I&amp;rsquo;ve linked a video above and in the video description.&lt;/p&gt;
&lt;h2 id="the-most-common-pitfalls"&gt;The most common pitfalls
&lt;/h2&gt;&lt;p&gt;The first pitfall: overloading your dashboard with everything that&amp;rsquo;s possible. Just because you have 50 sensors doesn&amp;rsquo;t mean they all need to be on the home screen. The result: nobody can find anything, and important warnings get lost in the noise. My tip: only show what you genuinely need every day.&lt;/p&gt;
&lt;p&gt;Second pitfall: no differentiation. When everything looks the same, you can&amp;rsquo;t tell what&amp;rsquo;s urgent. Use a system: red for critical errors like &amp;ldquo;fridge too warm&amp;rdquo;, orange for warnings like &amp;ldquo;battery low&amp;rdquo;, blue for notices like &amp;ldquo;take out the trash&amp;rdquo;. That way you immediately see what matters.&lt;/p&gt;
&lt;p&gt;Third pitfall: only testing on the desktop. Many people design their dashboard on a computer and then wonder why it looks off on their phone. Always test your dashboard on mobile too – especially warning cards need to be clearly visible on the go. Home Assistant makes this easy: as soon as you change a dashboard, any phone with the app open in parallel will prompt you to reload. So you can test your changes live right away.&lt;/p&gt;
&lt;h2 id="what-creative-or-useful-things-can-you-do-with-it"&gt;What creative or useful things can you do with it?
&lt;/h2&gt;&lt;p&gt;Dashboards can do much more than just display switches. My favorite: a &amp;ldquo;Warnings Dashboard&amp;rdquo; using Entity Filter cards that only appear when there&amp;rsquo;s a problem – red cards for critical errors, orange for warnings, blue for notices. Forgotten plants, open doors, or weak batteries will never slip past you again.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve put together more tips and tricks in this video – I&amp;rsquo;ve also linked it in the video description.&lt;/p&gt;
&lt;p&gt;Next up is &lt;a class="link" href="https://smarthome-aber-sicher.de/ha-az/entities" &gt;&amp;ldquo;E&amp;rdquo; is for Entities&lt;/a&gt;, or check out the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/tags/a-z-series/" &gt;overview of all A-Z posts&lt;/a&gt;.&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 4 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/03-cloud-integrationen/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← C · Cloud-Integrationen&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/05-entit%C3%A4ten/" class="ha-az-nav-btn ha-az-nav-next"&gt;E · Entitäten →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Home Assistant A-Z: C is for Cloud Integrations</title><link>https://smarthome-aber-sicher.de/en/blog/2025/08/03/home-assistant-a-z-c-is-for-cloud-integrations/</link><pubDate>Sun, 03 Aug 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/08/03/home-assistant-a-z-c-is-for-cloud-integrations/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/08/03/home-assistant-a-z-c-wie-cloud-integrationen/cover.png" alt="Featured image of post Home Assistant A-Z: C is for Cloud Integrations" /&gt;&lt;p&gt;Did you know that some Home Assistant integrations can pose real security risks? While you think your smart home is secure, cloud integrations may be sending your most private data to remote servers somewhere on the internet. Today I&amp;rsquo;ll show you what to watch out for.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/Ek9YV0KJkyk?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_8598860011442751852_hu_c343d89990901759.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-exactly-is-this"&gt;What exactly is this?
&lt;/h2&gt;&lt;p&gt;Cloud integrations are Home Assistant integrations that communicate with external servers over the internet. Imagine this: your motion sensor detects movement, but instead of switching your light directly, it first sends that information to a server somewhere in the world — and that server then sends the signal back.&lt;/p&gt;
&lt;p&gt;Typical examples are Google Nest, Amazon Alexa, or Ring cameras. These devices require an active internet connection to function.&lt;/p&gt;
&lt;p&gt;The opposite are local integrations: everything stays within your home network. Zigbee devices or ESPHome sensors communicate directly with your Home Assistant — no detour over the internet.&lt;/p&gt;
&lt;h2 id="why-does-this-matter-for-your-smart-home"&gt;Why does this matter for your smart home?
&lt;/h2&gt;&lt;p&gt;Let&amp;rsquo;s be honest: cloud integrations are convenient. You can access your devices from anywhere and often benefit from advanced features like voice control. But they also carry risks.&lt;/p&gt;
&lt;p&gt;Imagine your Ring camera gets hacked and strangers are watching into your bedroom. Or the manufacturer shuts down their servers and your €500 devices become expensive e-waste — exactly what happened in 2016 with Google&amp;rsquo;s Revolv Smart Home Hub.&lt;/p&gt;
&lt;p&gt;Local integrations, on the other hand, work even without internet, are faster, and your data stays 100% with you. A Zigbee light switch responds within milliseconds — cloud devices often take 100 milliseconds or more. That might sound negligible, but it gets annoying quickly in everyday use.&lt;/p&gt;
&lt;h2 id="how-does-this-work-in-home-assistant"&gt;How does this work in Home Assistant?
&lt;/h2&gt;&lt;p&gt;How do you recognize cloud integrations in Home Assistant? It&amp;rsquo;s actually quite simple: look up the integration on the Home Assistant website. There you&amp;rsquo;ll find what&amp;rsquo;s called the &amp;ldquo;IoT Class&amp;rdquo;. If it says &amp;ldquo;Cloud Push&amp;rdquo; or &amp;ldquo;Cloud Polling&amp;rdquo;, it&amp;rsquo;s a cloud integration.&lt;/p&gt;
&lt;p&gt;When you install an integration, ask yourself: do I need to sign in with an online account? Does the device need internet to work? If yes, it&amp;rsquo;s likely a cloud integration.&lt;/p&gt;
&lt;h2 id="the-most-common-pitfalls"&gt;The most common pitfalls
&lt;/h2&gt;&lt;p&gt;The first pitfall: blindly trusting cloud integrations. A stark example is Ring cameras: hackers gained access and were able to watch live, speak to residents, and even frighten children. The problem: weak passwords and missing two-factor authentication. Always use strong, unique passwords and enable 2FA wherever possible.&lt;/p&gt;
&lt;p&gt;The second pitfall: ignoring vendor lock-in. If Google, Amazon, or other providers change their business strategy, you&amp;rsquo;re left with worthless hardware. My tip: before every purchase, check whether a local alternative exists. Local devices are often cheaper and more reliable.&lt;/p&gt;
&lt;p&gt;The third pitfall: mixing cloud and local devices without network separation. A compromised cloud camera can serve as an entry point into your entire home network. Use a separate guest network for cloud devices, or a firewall to isolate them. There&amp;rsquo;s more on this topic in another video (add video link in YouTube).&lt;/p&gt;
&lt;h2 id="what-can-you-do-creatively-or-practically-with-this"&gt;What can you do creatively or practically with this?
&lt;/h2&gt;&lt;p&gt;My clear recommendation: use cloud integrations only when truly necessary. For voice control with Alexa or Google — fine. But for simple sensors or switches, there&amp;rsquo;s almost always a local alternative.&lt;/p&gt;
&lt;p&gt;If you do use cloud integrations, secure them properly: strong passwords, regular updates, separate network.&lt;/p&gt;
&lt;p&gt;My personal favorites: ESPHome for self-built sensors and Zigbee for off-the-shelf devices. Both work completely locally, are affordable, and absolutely reliable.&lt;/p&gt;
&lt;p&gt;Next up is &lt;a class="link" href="https://smarthome-aber-sicher.de/ha-az/dashboard" &gt;&amp;ldquo;D&amp;rdquo; is for Dashboard&lt;/a&gt;, or take a look at the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/tags/a-z-series/" &gt;overview of all A-Z posts&lt;/a&gt;.&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 3 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/02-blueprints/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← B · Blueprints&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/04-dashboard/" class="ha-az-nav-btn ha-az-nav-next"&gt;D · Dashboard →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Home Assistant A-Z: B is for Blueprints</title><link>https://smarthome-aber-sicher.de/en/blog/2025/07/27/home-assistant-a-z-b-is-for-blueprints/</link><pubDate>Sun, 27 Jul 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/07/27/home-assistant-a-z-b-is-for-blueprints/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/07/27/home-assistant-a-z-b-wie-blueprints/cover.png" alt="Featured image of post Home Assistant A-Z: B is for Blueprints" /&gt;&lt;p&gt;Imagine being able to install complex automations with a single click — pre-configured, tested, and ready to go. Sounds too good to be true? That&amp;rsquo;s exactly the idea behind Home Assistant Blueprints!&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/Pb2t4BAqCQw?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_6544557678537380542_hu_1e1cb424cb7217c0.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-are-blueprints-exactly"&gt;What are Blueprints, exactly?
&lt;/h2&gt;&lt;p&gt;Blueprints are pre-built automation templates for Home Assistant. Imagine someone has already created the perfect automation — for motion sensors, notifications, or complex lighting controls — and you can simply adopt it.&lt;/p&gt;
&lt;p&gt;The concept is brilliantly simple: a Blueprint defines the logic of an automation, but leaves the specific devices and settings up to you. You import the Blueprint, select your own sensors and switches, and the automation is up and running.&lt;/p&gt;
&lt;p&gt;For example: a Blueprint for &amp;ldquo;light on motion&amp;rdquo; works with any motion sensor and any light — you just pick your specific devices. The entire logic is already programmed and tested.&lt;/p&gt;
&lt;h2 id="why-does-this-matter-for-your-smart-home"&gt;Why does this matter for your smart home?
&lt;/h2&gt;&lt;p&gt;Let&amp;rsquo;s be honest: building automations from scratch can get complicated. Especially for advanced scenarios like &amp;ldquo;dim lights based on time of day and presence&amp;rdquo; or &amp;ldquo;send a notification only under certain conditions.&amp;rdquo; With Blueprints, you skip all that development work.&lt;/p&gt;
&lt;p&gt;In practice, this means: instead of tinkering for hours, you install a Blueprint in 2 minutes. The automation runs immediately and has already been tested by other users in real-world setups.&lt;/p&gt;
&lt;h2 id="how-does-it-work-in-home-assistant"&gt;How does it work in Home Assistant?
&lt;/h2&gt;&lt;p&gt;Let&amp;rsquo;s take a concrete look. To use a Blueprint, go to Settings → Automations &amp;amp; Scenes, then Blueprints, and click &amp;ldquo;Import Blueprint.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;You can find Blueprints in several ways: in the official Home Assistant Community (linked directly in the import dialog), on GitHub, or in other forums. Just copy the Blueprint URL and paste it into Home Assistant.&lt;/p&gt;
&lt;p&gt;After importing, the Blueprint appears in your list of available Blueprints and you can use it right away. Important: you can use a single Blueprint multiple times — for example, with different configurations. You might use the same motion-light Blueprint for the hallway and for the bathroom. You create two separate automations, both using the same Blueprint, but with different sensors and lights.&lt;/p&gt;
&lt;h2 id="the-most-common-pitfalls"&gt;The most common pitfalls
&lt;/h2&gt;&lt;p&gt;A frequent mistake is trusting a Blueprint blindly without understanding it. Sure, it&amp;rsquo;s quick — but even if you&amp;rsquo;re saving time by not building the automation from scratch, you should still take a moment to understand what the Blueprint does. Without understanding its structure, you&amp;rsquo;ll be stuck if something stops working. And strictly speaking, a poorly written Blueprint could even execute things in your home that you never intended.&lt;/p&gt;
&lt;p&gt;The second pitfall: using outdated or poorly documented Blueprints. Not every Blueprint on the internet is well-maintained. Some only work with older versions of Home Assistant; others have hidden bugs. Always check the ratings, comments, and the last update date. Blueprints from the official Home Assistant Community are generally the safest choice.&lt;/p&gt;
&lt;p&gt;One last common mistake: installing too many Blueprints at once without properly testing them. Each Blueprint creates new automations in your system. If multiple Blueprints have similar functionality — for example, different lighting controls — they can interfere with each other. Install one Blueprint at a time and test thoroughly before moving on. It will save your nerves and prevent frustration.&lt;/p&gt;
&lt;h2 id="what-can-you-do-with-blueprints-creatively-or-practically"&gt;What can you do with Blueprints creatively or practically?
&lt;/h2&gt;&lt;p&gt;Blueprints open up an enormous world of possibilities without requiring you to program sophisticated logic yourself. But it also works the other way around: you can create your own Blueprints to standardize similar automations. If you have a lighting automation for multiple rooms, there&amp;rsquo;s a good chance they all work largely the same way. Why not turn it into a Blueprint and simply configure the sensors and lights per room? That saves you effort in the long run when maintaining your automations.&lt;/p&gt;
&lt;p&gt;Which Blueprint would you start with? Share your idea in the comments below.&lt;/p&gt;
&lt;p&gt;Next up is &lt;a class="link" href="https://smarthome-aber-sicher.de/ha-az/cloud-integrationen" &gt;&amp;ldquo;C&amp;rdquo; for Cloud Integrations&lt;/a&gt;, or check out the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/tags/a-z-series/" &gt;overview of all A-Z posts&lt;/a&gt;.&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 2 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/01-automationen/" class="ha-az-nav-btn ha-az-nav-prev"&gt;← A · Automationen&lt;/a&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/03-cloud-integrationen/" class="ha-az-nav-btn ha-az-nav-next"&gt;C · Cloud-Integrationen →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Home Assistant A-Z: A is for Automations</title><link>https://smarthome-aber-sicher.de/en/blog/2025/07/20/home-assistant-a-z-a-is-for-automations/</link><pubDate>Sun, 20 Jul 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/07/20/home-assistant-a-z-a-is-for-automations/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/07/20/home-assistant-a-z-a-wie-automationen/cover.png" alt="Featured image of post Home Assistant A-Z: A is for Automations" /&gt;&lt;p&gt;Every day you flip a light switch at least 50 times. What if your home could take care of that for you — and save energy, improve your security, and give you back 15 minutes every single day?&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/RtZMO54UCQc?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_3438492977417130149_hu_40fada575f02c8b6.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-is-this-actually-about"&gt;What is this actually about?
&lt;/h2&gt;&lt;p&gt;Automations are the heart of your smart home. They handle tasks for you — automatically, of course.&lt;/p&gt;
&lt;p&gt;The concept: &lt;strong&gt;If something happens, then do something.&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When it gets dark outside, turn on the outdoor lighting&lt;/li&gt;
&lt;li&gt;When nobody is home, arm the alarm system&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You need a &lt;strong&gt;trigger&lt;/strong&gt; (e.g., sunset), can narrow things down with &lt;strong&gt;conditions&lt;/strong&gt; (e.g., only when nobody is home), and define one or more &lt;strong&gt;actions&lt;/strong&gt; (e.g., turn on the lights).&lt;/p&gt;
&lt;h2 id="why-does-this-matter-for-your-smart-home"&gt;Why does this matter for your smart home?
&lt;/h2&gt;&lt;p&gt;Let&amp;rsquo;s be honest: you can control your lights via an app. But imagine coming home exhausted, arms full of grocery bags — and the lights just turn on automatically. Or you forget the stove again — an automation shuts it off after 30 minutes.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Benefits:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Time savings:&lt;/strong&gt; No opening apps, no searching for switches, no forgotten devices&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Security:&lt;/strong&gt; Automatic shutoffs, notifications, and presence simulations&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Convenience:&lt;/strong&gt; Your home thinks ahead and takes care of routine tasks for you&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;My three most important automations easily save me 15 minutes a day!&lt;/p&gt;
&lt;h2 id="how-does-this-work-in-home-assistant"&gt;How does this work in Home Assistant?
&lt;/h2&gt;&lt;p&gt;Let&amp;rsquo;s look at an example:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Trigger:&lt;/strong&gt; Wind sensor reports gusts above 30 km/h&lt;br&gt;
&lt;strong&gt;Action:&lt;/strong&gt; Automatically retract the awning&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s how:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Go to &lt;strong&gt;Settings&lt;/strong&gt; → &lt;strong&gt;Automations &amp;amp; Scenes&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create Automation&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Start with an empty automation&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Define triggers, conditions, and actions&lt;/li&gt;
&lt;li&gt;Name and save the automation&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="the-most-common-pitfalls"&gt;The most common pitfalls
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;1. Not accounting for all real-life situations&lt;/strong&gt;
The awning retracts when it&amp;rsquo;s windy — but what happens when you manually extend it again afterwards? The automation won&amp;rsquo;t fire because it only triggers when wind speed crosses the threshold.
&lt;strong&gt;Solution:&lt;/strong&gt; Add additional triggers or conditions to handle edge cases.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Problems with multiple triggers&lt;/strong&gt;
If you use multiple triggers (e.g., &amp;ldquo;Wind gusts OR awning is extended&amp;rdquo;), the automation can fire even when you intentionally extend the awning yourself.
&lt;strong&gt;Solution:&lt;/strong&gt; When using multiple triggers, always use conditions to verify that the actual condition is still met.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Wrong automation mode&lt;/strong&gt;
The default mode &amp;ldquo;Single&amp;rdquo; means: if the automation is triggered again while it&amp;rsquo;s still running, nothing happens. This can be problematic for longer-running automations.
&lt;strong&gt;Solution:&lt;/strong&gt; Choose the right mode (Single, Restart, Parallel, Queue) depending on your use case. &lt;a class="link" href="https://smarthome-aber-sicher.de/ha/automation-modi" &gt;Learn more in this article.&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="what-creative-or-useful-things-can-you-do-with-this"&gt;What creative or useful things can you do with this?
&lt;/h2&gt;&lt;p&gt;With automations, the possibilities are almost endless. For real value, start with automations that eliminate repetitive manual tasks.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;My favorite:&lt;/strong&gt; &amp;ldquo;Good Morning&amp;rdquo; automation&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Open the roller shutters&lt;/li&gt;
&lt;li&gt;Set the lights in the bathroom and kitchen&lt;/li&gt;
&lt;li&gt;Start music depending on the day of the week&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So many things I&amp;rsquo;d otherwise have to do by hand every single day!&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Automations make the difference between a connected home and a truly smart home. They save time, improve security, and simply make life more comfortable.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;My tip:&lt;/strong&gt; Start small, test thoroughly, and expand your automations step by step. You&amp;rsquo;ll soon wonder how you ever lived without them!&lt;/p&gt;
&lt;p&gt;Which automation saves you the most time? Share your idea in the comments below. Continue with &lt;a class="link" href="https://smarthome-aber-sicher.de/ha-az/blueprints" &gt;&amp;ldquo;B&amp;rdquo; is for Blueprints&lt;/a&gt; or check out the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/tags/a-z-series/" &gt;overview of all A-Z articles&lt;/a&gt;.&lt;/p&gt;
&lt;nav class="ha-az-nav" aria-label="Home Assistant A-Z Navigation"&gt;
&lt;div class="ha-az-nav-label"&gt;📚 Home Assistant A–Z · Teil 1 von 15&lt;/div&gt;
&lt;div class="ha-az-nav-inner"&gt;&lt;span class="ha-az-nav-btn ha-az-nav-empty"&gt;&lt;/span&gt;&lt;a href="https://smarthome-aber-sicher.de/post/ha-az/02-blueprints/" class="ha-az-nav-btn ha-az-nav-next"&gt;B · Blueprints →&lt;/a&gt;&lt;/div&gt;
&lt;/nav&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>The Perfect Home Assistant Password</title><link>https://smarthome-aber-sicher.de/en/blog/2025/07/13/the-perfect-home-assistant-password/</link><pubDate>Sun, 13 Jul 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/07/13/the-perfect-home-assistant-password/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/07/13/das-perfekte-home-assistant-passwort/cover.png" alt="Featured image of post The Perfect Home Assistant Password" /&gt;&lt;p&gt;Imagine it&amp;rsquo;s the middle of the night and suddenly your smart speaker blasts music at full volume. The lights are flashing like crazy, and your heating turns itself up to maximum. At first you think it&amp;rsquo;s a technical glitch — but then you realize: someone else has taken control of your smart home!&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/5MI_iz7xRkw?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_17728039021376129559_hu_339213d20bd944b8.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;What sounds like a horror scenario isn&amp;rsquo;t actually that far-fetched. Users in the Home Assistant forum have shared their experiences:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://community.home-assistant.io/t/i-have-been-hacked/53723" target="_blank" rel="noopener"
&gt;A user reported in 2018&lt;/a&gt; that their system was controlling lights without authorization — they had Home Assistant running with an open HTTP port and no password&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://community.home-assistant.io/t/i-shut-down-my-ha-after-many-intrusion-attempts-only-to-ha/837817" target="_blank" rel="noopener"
&gt;Another case from January 2025&lt;/a&gt;: Immediate and massive login attacks right after opening the default port 8123&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;The alarming reality:&lt;/strong&gt; According to recent studies, &lt;strong&gt;over 80% of all successful cyberattacks are attributed to weak or reused passwords&lt;/strong&gt; (source: &lt;a class="link" href="https://www.weforum.org/stories/2023/05/cybersecurity-passwords-boomers-genz" target="_blank" rel="noopener"
&gt;World Economic Forum/LastPass, 2023&lt;/a&gt;). Using services like Shodan, attackers find open smart home instances within seconds. The result: someone connects to your Home Assistant installation and — at best — just plays a prank like this.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s why a strong password for Home Assistant is absolutely critical. Unfortunately, many people still use trivial passwords that are easy to remember but just as easy to guess. And here&amp;rsquo;s what makes Home Assistant special: &lt;strong&gt;there is no built-in password policy&lt;/strong&gt;. No requirements for how long or complex your password must be.&lt;/p&gt;
&lt;p&gt;A serious mistake? On the contrary! I&amp;rsquo;ll explain why this is actually a good thing — and why the perfect Home Assistant password isn&amp;rsquo;t the same for everyone.&lt;/p&gt;
&lt;h2 id="what-makes-a-good-password"&gt;What Makes a Good Password?
&lt;/h2&gt;&lt;p&gt;You&amp;rsquo;ve probably rolled your eyes more than once when a site demanded &amp;ldquo;at least 8 characters, one uppercase letter, one number, and a special character.&amp;rdquo; Many people assume a password is automatically secure just because it looks complicated — but that&amp;rsquo;s not quite right. What really matters is &lt;strong&gt;entropy&lt;/strong&gt; — how unpredictable and extensive the character combination is. And the rule here is: &lt;strong&gt;length beats complexity&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;A long password with 20 characters is generally far more secure than a short one with 8, even if the shorter one contains every possible special character. Why? Because each additional character exponentially increases the number of possible combinations — and that&amp;rsquo;s worth more than a wide variety of character types.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;A practical example:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Home123!&lt;/code&gt; dutifully meets all complexity rules and looks &amp;ldquo;secure&amp;rdquo; at first glance&lt;/li&gt;
&lt;li&gt;In reality, many people follow exactly this pattern — a word with a capital letter, the number sequence 123, and an exclamation mark at the end&lt;/li&gt;
&lt;li&gt;Passwords like this can be cracked very quickly or guessed through dictionary attacks&lt;/li&gt;
&lt;li&gt;&lt;code&gt;myhomeassistantisawesome&lt;/code&gt; would take years to crack, even though it uses only lowercase letters&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;➡️ &lt;strong&gt;Test it yourself:&lt;/strong&gt; &lt;a class="link" href="https://howsecureismypassword.net" target="_blank" rel="noopener"
&gt;howsecureismypassword.net&lt;/a&gt;&lt;/p&gt;
&lt;h3 id="sources"&gt;Sources:
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://nvlpubs.nist.gov/nistpubs/specialpublications/nist.sp.800-63b.pdf" target="_blank" rel="noopener"
&gt;NIST SP 800‑63B (PDF)&lt;/a&gt; – See Section 5.1.1.2: No more mandatory regular password changes + focus on length over complexity.&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.ncsc.gov.uk/blog-post/problems-forcing-regular-password-expiry" target="_blank" rel="noopener"
&gt;NCSC: Problems forcing regular password expiry&lt;/a&gt; – Warns against cyclic password changes as they lead to predictable patterns.&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.theguardian.com/commentisfree/2024/oct/09/charade-change-passwords-cyberattacks" target="_blank" rel="noopener"
&gt;The Guardian: Rejoice! The charade of having to change our passwords every few months is coming to an end&lt;/a&gt; – Reports on NIST &amp;amp; NCSC guidelines against frequent password changes and in favor of passphrases.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="the-problem-with-password-policies"&gt;The Problem with Password Policies
&lt;/h3&gt;&lt;p&gt;Those seemingly &amp;ldquo;complicated&amp;rdquo; passwords can actually end up being insecure because they follow predictable patterns. Strict password policies often mislead users and tempt them into reusing passwords. Be honest: when you had to fight your way through an annoying password policy, didn&amp;rsquo;t you just reach for your standard password that ticks all the boxes?&lt;/p&gt;
&lt;p&gt;You&amp;rsquo;re not alone — the numbers are alarmingly clear:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;89% know that password reuse is risky, but only 12% use a unique password for every account&lt;/strong&gt; (source: &lt;a class="link" href="https://spacelift.io/blog/password-statistics" target="_blank" rel="noopener"
&gt;Spacelift, 2025&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;62% of US users report frequently or always reusing passwords&lt;/strong&gt; (source: &lt;a class="link" href="https://nordpass.com/blog/stop-reusing-passwords" target="_blank" rel="noopener"
&gt;NordPass, April 2025&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Especially striking for Gen Z: 72% reuse passwords even though 79% know the risk&lt;/strong&gt; (source: &lt;a class="link" href="https://bitwarden.com/resources/world-password-day" target="_blank" rel="noopener"
&gt;Bitwarden World Password Day, 2025&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Even after data breaches, 59% of Gen Z recycle their passwords&lt;/strong&gt; (source: &lt;a class="link" href="https://www.helpnetsecurity.com/2025/05/02/passwords-update-security-risks" target="_blank" rel="noopener"
&gt;HelpNetSecurity, May 2025&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This is a genuine &lt;strong&gt;internal conflict&lt;/strong&gt;: we know what&amp;rsquo;s right, but act differently out of convenience or habit. Experts call this a cognitive dissonance between knowledge and behavior.&lt;/p&gt;
&lt;h3 id="the-better-alternative-passphrases"&gt;The Better Alternative: Passphrases
&lt;/h3&gt;&lt;p&gt;Current recommendations are clear: &lt;strong&gt;forget complexity requirements — what counts is length and uniqueness&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;In plain terms: use a long passphrase you can actually remember, rather than cryptic eight-character gibberish. You may know the famous &lt;a class="link" href="https://xkcd.com/936/" target="_blank" rel="noopener"
&gt;xkcd comic&lt;/a&gt; on this — four simple words like &amp;ldquo;correct horse battery staple&amp;rdquo; together form a nearly uncrackable password that you can still remember fairly easily.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What matters:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Length&lt;/li&gt;
&lt;li&gt;Randomness&lt;/li&gt;
&lt;li&gt;Uniqueness&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Every additional character makes your password exponentially stronger. And of course it shouldn&amp;rsquo;t be a known word or pattern — &amp;ldquo;Password123!&amp;rdquo; is long and looks complex, but it&amp;rsquo;s still guessed quickly.&lt;/p&gt;
&lt;h2 id="specifics-for-home-assistant"&gt;Specifics for Home Assistant
&lt;/h2&gt;&lt;p&gt;Let&amp;rsquo;s get concrete about Home Assistant: what role do passwords actually play here? Home Assistant is your self-hosted smart home hub. You set up user accounts and assign passwords for logging into the web frontend — and with that, full access to all devices connected to your Home Assistant.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt; Home Assistant does not dictate what your passwords should look like. There&amp;rsquo;s no minimum length, no special character requirement, nothing of the sort. And that&amp;rsquo;s intentional. &lt;a class="link" href="https://community.home-assistant.io/t/your-password-seems-insecure-why-is-this-longish-read/65512?utm_source=chatgpt.com" target="_blank" rel="noopener"
&gt;There used to be a warning&lt;/a&gt; when a password was too short. These warnings no longer exist — the developers realized it wasn&amp;rsquo;t productive. Why?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The requirements for a password depend heavily on the specific use case:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When I record videos for this channel, I&amp;rsquo;m always glad I don&amp;rsquo;t have to set a complex password for Home Assistant test instances&lt;/li&gt;
&lt;li&gt;Someone who never exposes their smart home to the internet and has no guests on their home network can afford lower password requirements&lt;/li&gt;
&lt;li&gt;A Home Assistant installation that is publicly accessible on the internet is subject to completely different standards&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;With Home Assistant, you are the administrator and must take responsibility yourself.&lt;/strong&gt; If you&amp;rsquo;re not comfortable with that, a password manager is probably the best choice for you.&lt;/p&gt;
&lt;p&gt;The moment your system is online, it becomes a potential target for automated attacks. And then things get serious fast. Home Assistant does have a built-in &lt;strong&gt;brute-force defense&lt;/strong&gt; (&lt;a class="link" href="https://en.wikipedia.org/wiki/Brute-force_attack" target="_blank" rel="noopener"
&gt;Wikipedia article&lt;/a&gt;): after a certain number of failed login attempts, the user&amp;rsquo;s IP address is temporarily blocked. That&amp;rsquo;s helpful, but not a cure-all:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Many attackers simply spread their attempts across many different IP addresses&lt;/li&gt;
&lt;li&gt;A weak password is often guessed after just a few tries&lt;/li&gt;
&lt;li&gt;The IP block therefore offers only limited protection&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Additional risks:&lt;/strong&gt; Even Home Assistant with Nabu Casa has had critical security vulnerabilities — in 2023, a flaw (&lt;a class="link" href="https://nvd.nist.gov/vuln/detail/CVE-2023-27482" target="_blank" rel="noopener"
&gt;CVE-2023-27482&lt;/a&gt;) with the highest severity score of 10/10 was disclosed, enabling an authentication bypass.&lt;/p&gt;
&lt;p&gt;➡️ &lt;strong&gt;More on securing Home Assistant:&lt;/strong&gt; &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2024/12/13/securing-home-assistant-5-security-mistakes-to-avoid-in-your-smart-home/" &gt;Home Assistant absichern: 5 Tipps für mehr Sicherheit&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;➡️ &lt;strong&gt;Why port forwarding is problematic:&lt;/strong&gt; &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/04/10/why-port-forwarding-into-your-smart-home-is-so-dangerous/" &gt;Portfreigaben vermeiden: So geht sicherer Fernzugriff&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;There is no single perfect Home Assistant password — it depends on your use case. &lt;strong&gt;But the numbers speak clearly: over 80% of all cyberattacks succeed through weak or reused passwords.&lt;/strong&gt; At the same time, 89% of people know the risk, yet only 12% act consistently.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What matters:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Length over complexity:&lt;/strong&gt; A long password is better than a short complex one&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Uniqueness:&lt;/strong&gt; Every system gets its own password — &lt;strong&gt;no exceptions!&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Proportionality:&lt;/strong&gt; Match your security requirements to your setup&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Additional measures:&lt;/strong&gt; When internet-facing, use 2FA and secure connections&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Use a password manager:&lt;/strong&gt; This breaks the cycle of password reuse&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;The solution is simple:&lt;/strong&gt; A long passphrase or a password manager. That puts you in the 12% who do it right — rather than the 62% who accept security risks out of convenience.&lt;/p&gt;
&lt;p&gt;Home Assistant gets it right by putting the responsibility in your hands. Use that freedom wisely!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;A look ahead:&lt;/strong&gt; The next generation of authentication is &lt;strong&gt;passkeys&lt;/strong&gt; — a passwordless technology based on cryptographic keys that is significantly more secure than traditional passwords. Unfortunately, Home Assistant does not yet support passkeys, but the future of authentication may well head in that direction. Until then, strong, unique passwords and 2FA remain our best defense.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>BSI Tips Explained: How to Properly Secure Your Smart Home</title><link>https://smarthome-aber-sicher.de/en/blog/2025/07/06/bsi-tips-clearly-explained-how-to-properly-secure-your-smart-home/</link><pubDate>Sun, 06 Jul 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/07/06/bsi-tips-clearly-explained-how-to-properly-secure-your-smart-home/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/07/06/bsi-tipps-verst%C3%A4ndlich-erkl%C3%A4rt-so-sch%C3%BCtzt-du-dein-smart-home-richtig/cover.png" alt="Featured image of post BSI Tips Explained: How to Properly Secure Your Smart Home" /&gt;&lt;p&gt;Who voluntarily reads through the lengthy publications of Germany&amp;rsquo;s Federal Office for Information Security (BSI)? I did it for you and distilled the most important tips for your smart home – explained clearly, assessed critically, and backed up with real-world examples, just like in the video!&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/kRYvdjtwc9U?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_10301887753344517521_hu_ed1861ce1208a242.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="introduction-who-actually-reads-the-bsi"&gt;Introduction: Who Actually Reads the BSI?
&lt;/h2&gt;&lt;p&gt;The BSI publishes a lot of solid advice on how to secure your smart home. But honestly – who willingly reads through pages of text on a government website? That&amp;rsquo;s why you&amp;rsquo;ll find the most important recommendations here, explained in plain language and put into perspective.&lt;/p&gt;
&lt;p&gt;➡️ You can find the official BSI recommendations here: &lt;a class="link" href="https://www.bsi.bund.de/DE/Themen/Verbraucherinnen-und-Verbraucher/Informationen-und-Empfehlungen/Internet-der-Dinge-Smart-leben/Smart-Home/smart-home_node.html" target="_blank" rel="noopener"
&gt;BSI Smart Home Tips&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="1-choose-strong-passwords"&gt;1. Choose Strong Passwords
&lt;/h2&gt;&lt;p&gt;It sounds obvious, but weak passwords are one of the most common entry points for attacks. Many users simply leave the default password in place – &amp;ldquo;admin&amp;rdquo;, &amp;ldquo;123456&amp;rdquo;, or even no password at all are unfortunately far from rare. The BSI advises: no real words, no simple number sequences or keyboard patterns. My tip: use a unique, strong password for every device, ideally managed with a password manager like KeePass or Bitwarden. It keeps things both easy and secure.&lt;/p&gt;
&lt;h2 id="2-keep-software-up-to-date"&gt;2. Keep Software Up to Date
&lt;/h2&gt;&lt;p&gt;Updates patch security vulnerabilities. Enable automatic updates wherever possible. Not every device offers this – in that case, there&amp;rsquo;s only one option: check manually on a regular basis, for example once a month. If a device hasn&amp;rsquo;t received updates in years, you should consider replacing it. Pay attention to the manufacturer&amp;rsquo;s update policy before you buy!&lt;/p&gt;
&lt;p&gt;➡️ To see what can happen when devices stop receiving updates, check out the video about a robot vacuum with a security flaw: &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/05/15/robot-vacuums-in-the-smart-home-the-underestimated-data-hog/" &gt;Robot Vacuum Hack: This Is How Easy Access Is!&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="3-secure-your-router--home-network"&gt;3. Secure Your Router &amp;amp; Home Network
&lt;/h2&gt;&lt;p&gt;Your router is the gateway between your home network and the internet. Change the admin password, disable unnecessary services like UPnP, and enable the firewall. That said, the best firewall is of little use if you don&amp;rsquo;t know what you&amp;rsquo;re doing. Even more importantly: avoid port forwarding for smart home services. Use a VPN (e.g. WireGuard) or a Cloudflare Tunnel instead. It&amp;rsquo;s also a good idea to put smart devices on a separate guest network.&lt;/p&gt;
&lt;p&gt;➡️ For detailed tips on securing Home Assistant and your home network, see: &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2024/12/13/securing-home-assistant-5-security-mistakes-to-avoid-in-your-smart-home/" &gt;Securing Home Assistant: 5 Tips for Better Security&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;➡️ How to set up secure remote access without port forwarding: &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/04/10/why-port-forwarding-into-your-smart-home-is-so-dangerous/" &gt;Avoid Port Forwarding: Secure Remote Access Made Easy&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="4-buy-only-from-trusted-sources"&gt;4. Buy Only from Trusted Sources
&lt;/h2&gt;&lt;p&gt;No-name products from overseas are often cheap, but poorly documented and without ongoing updates. The BSI recommends: buy only from reputable retailers, look for CE marking (though be cautious – it&amp;rsquo;s not a guarantee!), and pay attention to the manufacturer&amp;rsquo;s update commitment. Reviews in community forums are often far more revealing than marketing promises.&lt;/p&gt;
&lt;p&gt;➡️ Cloud or local? What to look for when buying smart devices: &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/01/03/cloud-integrations-vs.-local-integrations/" &gt;Cloud or Local? Running Smart Devices Securely&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="5-use-the-cloud-deliberately"&gt;5. Use the Cloud Deliberately
&lt;/h2&gt;&lt;p&gt;The cloud is convenient, but it comes with risks. Manufacturers have to maintain cloud servers – that costs money, and corners are often cut. Only use cloud-dependent features when you truly need them, and isolate cloud-connected devices from the rest of your network (e.g. via a guest network). Many devices also work locally, for example with Home Assistant.&lt;/p&gt;
&lt;p&gt;➡️ More on cloud vs. local control and privacy: &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2025/01/03/cloud-integrations-vs.-local-integrations/" &gt;Cloud or Local? Running Smart Devices Securely&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;The BSI&amp;rsquo;s tips are solid, even if they can sometimes feel a bit abstract. You don&amp;rsquo;t have to implement everything at once – but every step makes your home a little more secure. Watch the video for the full details and practical examples.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Make Your Washing Machine Smart? 5 Things to Know</title><link>https://smarthome-aber-sicher.de/en/blog/2025/06/29/make-your-washing-machine-dishwasher-smart-5-things-you-should-know/</link><pubDate>Sun, 29 Jun 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/06/29/make-your-washing-machine-dishwasher-smart-5-things-you-should-know/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/06/29/waschmaschine-sp%C3%BClmaschine-smart-machen-5-dinge-die-du-beachten-solltest/cover.png" alt="Featured image of post Make Your Washing Machine Smart? 5 Things to Know" /&gt;&lt;p&gt;The &lt;a class="link" href="https://smarthome-aber-sicher.de/sas/geschirrspueler" &gt;first video about the dishwasher&lt;/a&gt; got more reactions than expected. Not because of the technology – but because many people had similar problems that I hadn&amp;rsquo;t even addressed: plugs that melted. Devices that behaved strangely after being switched off. Questions about Aquastop and solar surplus.&lt;/p&gt;
&lt;p&gt;The five points here came directly from that feedback.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/NMFeUpD5D4g?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_5501676781324942413_hu_99d27816b80001cd.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h3 id="1-watch-the-maximum-load"&gt;1. Watch the Maximum Load
&lt;/h3&gt;&lt;p&gt;Perhaps the most important point first: many smart plugs are only rated for 10A/2500W. Some appliances – especially older models – can draw 2800 or even 3000 watts during the heating phase. In the worst case, this can cause the plug to overheat or even melt – as happened to one viewer. Measure your device&amp;rsquo;s power draw beforehand, or check the rating plate. Better to use a plug rated for 16A/3500W, e.g. Shelly Plug (not the S), Sonoff, TP-Link, or AVM.&lt;/p&gt;
&lt;p&gt;Suitable smart energy-monitoring plugs (affiliate links):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Fritz!DECT 200 &lt;a class="link" href="https://amzn.to/44armtk" target="_blank" rel="noopener"
&gt;https://amzn.to/44armtk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Shelly Plug S &lt;a class="link" href="https://amzn.to/4k0PZie" target="_blank" rel="noopener"
&gt;https://amzn.to/4k0PZie&lt;/a&gt; – or at OBI: &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F7119407%2Fshelly-smart-stecker-plug-s-gen3-weiss" target="_blank" rel="noopener"
&gt;https://www.awin1.com/cread.php?awinmid=9326&amp;awinaffid=2527487&amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F7119407%2Fshelly-smart-stecker-plug-s-gen3-weiss&lt;/a&gt; – or directly at Shelly: &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;https://upf.ai/l24blt88&lt;/a&gt; (code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;li&gt;TP-Link Tapo &lt;a class="link" href="https://amzn.to/4lewLq3" target="_blank" rel="noopener"
&gt;https://amzn.to/4lewLq3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;More options: &lt;a class="link" href="https://amzn.to/4lcpZRE" target="_blank" rel="noopener"
&gt;https://amzn.to/4lcpZRE&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h3 id="2-cutting-power--is-that-even-safe"&gt;2. Cutting Power – Is That Even Safe?
&lt;/h3&gt;&lt;p&gt;A valid concern raised by the community: what about Aquastop and leak protection? In most cases, switching off after the wash cycle is actually safer, because the valve is closed when unpowered. However, some manufacturers have systems that require a constant power supply. When in doubt, check the manual or contact the manufacturer. For most appliances, switching off after the cycle is harmless – and saves standby power.&lt;/p&gt;
&lt;h3 id="3-what-does-smart-actually-mean"&gt;3. What Does &amp;ldquo;Smart&amp;rdquo; Actually Mean?
&lt;/h3&gt;&lt;p&gt;It&amp;rsquo;s not just about detecting the &amp;ldquo;done&amp;rdquo; status – with solar surplus or a dynamic electricity tariff you can get even more out of it. A basic setup with power monitoring is the foundation for further automations. If you have solar panels or use a dynamic tariff, you can switch the plug on at the right time – a few lines of automation in Home Assistant are all it takes.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Tip:&lt;/strong&gt; You can read more about this in the article &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2024/12/25/a-smart-electricity-tariff-for-my-smart-home-is-it-worth-it/" &gt;Dynamic Electricity Tariffs and Home Assistant&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id="4-door-sensor-tts-angry-mode-next-level-smart"&gt;4. Door Sensor, TTS, Angry Mode: Next-Level Smart!
&lt;/h3&gt;&lt;p&gt;A community tip: combining a door sensor with text-to-speech announcements takes things to the next level. Automatic resets, funny phrases, and even increasingly &amp;ldquo;annoyed&amp;rdquo; reminders motivate everyone to unload the machine – kids included! One viewer even used ChatGPT to generate a set of messages that get progressively more irritated the longer the wait.&lt;/p&gt;
&lt;h3 id="5-switching-on--how-does-that-work"&gt;5. Switching On – How Does That Work?
&lt;/h3&gt;&lt;p&gt;Whether your dishwasher automatically resumes after a power interruption depends on the model – just try it out. Start the appliance, pull the plug, plug it back in – if it keeps running, you&amp;rsquo;re good to go. If not, you can still use the power monitoring; you just won&amp;rsquo;t be able to start it automatically via an automation. Personally, I switch the plug on with a long press on the light switch, for example.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Conclusion:&lt;/strong&gt;
With these tips your appliances become truly smart – and you get the most out of your household setup. Watch the video for all the details and practical examples!&lt;/p&gt;</description></item><item><title>5 Automation Mistakes Everyone Makes in Home Assistant</title><link>https://smarthome-aber-sicher.de/en/blog/2025/06/22/these-5-automation-mistakes-everyone-has-made-in-home-assistant/</link><pubDate>Sun, 22 Jun 2025 00:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/06/22/these-5-automation-mistakes-everyone-has-made-in-home-assistant/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/06/22/diese-5-automations-fehler-hat-jeder-schon-mal-in-home-assistant-gemacht/cover.png" alt="Featured image of post 5 Automation Mistakes Everyone Makes in Home Assistant" /&gt;&lt;p&gt;Sound familiar? You built an automation, but it doesn&amp;rsquo;t work the way you intended? Or you have lots of automations but keep running into problems? Then you&amp;rsquo;re in the right place! In this article I&amp;rsquo;ll show you the five most common mistakes when designing Home Assistant automations – and how to avoid them easily.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/UC_VKlerIss?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_87422052567893909_hu_d689df127dbf804a.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h3 id="1-automations-that-are-too-complex"&gt;1. Automations That Are Too Complex
&lt;/h3&gt;&lt;p&gt;If you no longer remember what your automation is actually supposed to do after two weeks, it has probably become too complex. Split large automations into several smaller ones – this makes them easier to understand and maintain. For example: control your blinds with multiple automations for different triggers rather than cramming everything into one.&lt;/p&gt;
&lt;h3 id="2-too-many-automations-interfering-with-each-other"&gt;2. Too Many Automations Interfering With Each Other
&lt;/h3&gt;&lt;p&gt;More isn&amp;rsquo;t always better! When multiple automations access the same entity, conflicts can arise. Think carefully about when it makes sense to keep automations separate – and when it&amp;rsquo;s better to combine them to avoid race conditions.&lt;/p&gt;
&lt;h3 id="3-not-tested--or-only-tested-in-daily-use"&gt;3. Not Tested – or Only Tested in Daily Use
&lt;/h3&gt;&lt;p&gt;Test your automations deliberately before letting them run in everyday life. Think through which triggers, conditions, and actions you need in advance – and verify that everything works as intended. It saves frustration for you and your family!&lt;/p&gt;
&lt;h3 id="4-unclear-naming"&gt;4. Unclear Naming
&lt;/h3&gt;&lt;p&gt;Give your automations and entities clear, unambiguous names. It&amp;rsquo;s worth keeping a small glossary so you always know what&amp;rsquo;s meant – and can find automations quickly when you need them.&lt;/p&gt;
&lt;h3 id="5-wrong-automation-mode"&gt;5. Wrong Automation Mode
&lt;/h3&gt;&lt;p&gt;Many problems arise because the wrong mode (Single, Restart, Parallel, Queue) was chosen. Learn how the modes work – and pick the right one for your automation. More on this in the video!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Summary:&lt;/strong&gt;
With a few simple tricks, your automations become more reliable and easier to manage. If you want even more tips, check out the video!&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="related-articles"&gt;Related Articles
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-5-neue-automation-fehler/" &gt;5 More Automation Mistakes in Home Assistant – Are You Affected?&lt;/a&gt; – The follow-up: new pitfalls around trigger IDs, hardcoded time values, and AI-generated automations&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-5-security-fehler/" &gt;Securing Home Assistant – 5 Mistakes to Avoid in Your Smart Home&lt;/a&gt; – Once your automations work, the security mistakes come next: the next level&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Home Assistant Automation Modes Explained for Beginners</title><link>https://smarthome-aber-sicher.de/en/blog/2025/06/15/home-assistant-automation-modes-for-beginners-explained-so-everyone-gets-it/</link><pubDate>Sun, 15 Jun 2025 09:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/06/15/home-assistant-automation-modes-for-beginners-explained-so-everyone-gets-it/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/06/15/home-assistant-automationsmodi-f%C3%BCr-einsteiger-erkl%C3%A4rt-so-versteht-es-jeder/cover.png" alt="Featured image of post Home Assistant Automation Modes Explained for Beginners" /&gt;&lt;h2 id="home-assistant-automation-modes-for-beginners"&gt;Home Assistant Automation Modes for Beginners
&lt;/h2&gt;&lt;p&gt;You built an automation but it sometimes behaves strangely? Or you&amp;rsquo;re wondering what the different modes like Single, Restart, Parallel, and Queue actually mean? In this article I&amp;rsquo;ll explain the differences, show you practical examples, and help you find the right mode for your automations.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/K5uA0gPukpQ?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_16444473006788831666_hu_f26e678fa3521296.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h3 id="what-are-automation-modes"&gt;What Are Automation Modes?
&lt;/h3&gt;&lt;p&gt;In Home Assistant, you can configure for each automation how it behaves when it is triggered multiple times. This is important so your automations work reliably and as intended.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Single:&lt;/strong&gt; The automation runs only once. If it is triggered again while still running, nothing happens.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Restart:&lt;/strong&gt; If the automation is triggered again, the current run is cancelled and it starts over from the beginning.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Parallel:&lt;/strong&gt; The automation can run multiple times simultaneously.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Queue:&lt;/strong&gt; New triggers are placed in a queue and processed one after another.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="practical-examples"&gt;Practical Examples
&lt;/h3&gt;&lt;p&gt;Take a look at the video for examples like motion-triggered lights, doorbells, or voice announcements. There is a right mode for every use case. You should use Parallel with caution though — find out why in the video.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Conclusion:&lt;/strong&gt;
With the right mode your automations become more reliable and you save yourself a lot of frustration. Watch the video to see all the details and examples!&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>SSH with YubiKey: Properly Secure Your Smart Home Server</title><link>https://smarthome-aber-sicher.de/en/blog/2025/06/08/ssh-access-with-yubikey-how-to-properly-secure-your-smart-home-server/</link><pubDate>Sun, 08 Jun 2025 09:00:00 +0200</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/06/08/ssh-access-with-yubikey-how-to-properly-secure-your-smart-home-server/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/06/08/ssh-zugriff-mit-yubikey-so-sicherst-du-deinen-smart-home-server-richtig-ab/cover.png" alt="Featured image of post SSH with YubiKey: Properly Secure Your Smart Home Server" /&gt;&lt;h2 id="why-securing-ssh-in-your-smart-home-matters"&gt;Why Securing SSH in Your Smart Home Matters
&lt;/h2&gt;&lt;p&gt;Sound familiar? You&amp;rsquo;re about to leave for vacation and quickly want to change something in your system – only to find that remote access suddenly stops working. Many people then simply open their SSH port to the internet or use the Home Assistant Web Terminal add-on in the browser. That sounds convenient, but it&amp;rsquo;s extremely dangerous: often a single password is all it takes for someone to gain full access to your entire system.&lt;/p&gt;
&lt;p&gt;In this video, I&amp;rsquo;ll show you how to properly secure your SSH access with a YubiKey. It&amp;rsquo;s easier than you think – and I&amp;rsquo;ll walk you through it step by step.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/vqE-uHGZUsI?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_15155603137988050147_hu_4d794d406ef94581.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-is-a-yubikey-and-why-is-it-so-secure"&gt;What Is a YubiKey and Why Is It So Secure?
&lt;/h2&gt;&lt;p&gt;The YubiKey is a small USB stick that works like a digital key for you. It stores your access credentials in a way that they never reside on your computer and can&amp;rsquo;t be stolen. For SSH, the YubiKey uses the modern security standard FIDO2. Even if someone knows your password, they can&amp;rsquo;t access your server without the YubiKey. You plug in the stick, tap it – and you&amp;rsquo;re securely logged in. This is far more secure and convenient than traditional passwords or certificate files stored on your machine.&lt;/p&gt;
&lt;h2 id="where-to-buy-a-yubikey"&gt;Where to Buy a YubiKey
&lt;/h2&gt;&lt;p&gt;You can get a YubiKey through my recommended links:&lt;/p&gt;
&lt;p&gt;The following models are suitable for this project:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;👉 &lt;a class="link" href="https://amzn.to/3TdTTZT" target="_blank" rel="noopener"
&gt;YubiKey 5 NFC USB-A&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;👉 &lt;a class="link" href="https://amzn.to/4jJfofT" target="_blank" rel="noopener"
&gt;YubiKey 5C USB-C&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;👉 &lt;a class="link" href="https://amzn.to/3TdU9YR" target="_blank" rel="noopener"
&gt;YubiKey C NFC USB-C&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;👉 &lt;a class="link" href="https://amzn.to/3TdTTZT" target="_blank" rel="noopener"
&gt;More keys&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Tip:&lt;/strong&gt; Always order from the official retailer or a trusted shop to ensure you receive a genuine, sealed device.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Note: These are affiliate links. If you order through them, you support my blog – at no extra cost to you. Thank you!&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="the-three-ways-to-ssh-login--and-why-yubikey-is-the-best-choice"&gt;The Three Ways to SSH Login – and Why YubiKey Is the Best Choice
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Password:&lt;/strong&gt; Simple, but insecure – passwords can be guessed, intercepted, or shared.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Certificate (key pair):&lt;/strong&gt; Much more secure, but if someone gains access to your computer, they can copy the private key.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;YubiKey:&lt;/strong&gt; The private key doesn&amp;rsquo;t live on your computer – it&amp;rsquo;s securely stored on the YubiKey. Access is only possible with the physical stick and your confirmation.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="step-by-step-setting-up-a-yubikey-for-ssh-using-termius-as-an-example"&gt;Step by Step: Setting Up a YubiKey for SSH (Using Termius as an Example)
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Choose your YubiKey:&lt;/strong&gt; There are various models (USB-A, USB-C, NFC, Lightning). Think about which devices you&amp;rsquo;ll be using the stick with.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Install Termius:&lt;/strong&gt; This app makes the setup particularly straightforward. (OpenSSH, PuTTY, etc. also work.)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Add the YubiKey:&lt;/strong&gt; In Termius, go to &amp;ldquo;Keychain&amp;rdquo; → &amp;ldquo;FIDO2&amp;rdquo;, select the stick, enter your PIN, name and generate the key. Enable &amp;ldquo;Require user presence&amp;rdquo;, disable &amp;ldquo;Require PIN code&amp;rdquo;, and leave the passphrase empty.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Copy the public key to the server:&lt;/strong&gt; Termius offers an export function that automatically adds the key to &lt;code&gt;~/.ssh/authorized_keys&lt;/code&gt;. You can also do this manually.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Test the connection:&lt;/strong&gt; Start a new SSH session, tap the YubiKey – done!&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Disable password login:&lt;/strong&gt; Set &lt;code&gt;PasswordAuthentication no&lt;/code&gt; in &lt;code&gt;/etc/ssh/sshd_config&lt;/code&gt; and restart the SSH service.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="important-notes--tips"&gt;Important Notes &amp;amp; Tips
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;When setting up your YubiKey for the first time, you&amp;rsquo;ll need to set a PIN. This protects against misuse if someone finds the stick.&lt;/li&gt;
&lt;li&gt;The private key is split into two parts: one stays on the computer, one on the YubiKey. For a new machine, you&amp;rsquo;ll need to generate a new key pair and register the public key on the server.&lt;/li&gt;
&lt;li&gt;&amp;ldquo;Resident keys&amp;rdquo; (keys stored directly on the YubiKey) are a special case and aren&amp;rsquo;t yet widely supported by many tools.&lt;/li&gt;
&lt;li&gt;It&amp;rsquo;s best to set up a second YubiKey as a backup right away, so you don&amp;rsquo;t lock yourself out.&lt;/li&gt;
&lt;li&gt;If everything does go wrong: you can always access your machine directly with a monitor and keyboard.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="yubikey-in-everyday-use-much-more-than-just-ssh"&gt;YubiKey in Everyday Use: Much More Than Just SSH
&lt;/h2&gt;&lt;p&gt;The YubiKey can do much more: two-factor authentication for Google, Microsoft, Facebook, Dropbox, Amazon, password managers like Bitwarden or 1Password, online banking, email accounts, and much more. Once set up, it becomes a real everyday companion for everything that matters to you.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;With a YubiKey, you make your SSH access – and many other logins – not only more secure, but also more convenient. You protect yourself against password theft, phishing, and many other attacks, all with a small stick that fits in any pocket.&lt;/p&gt;</description></item><item><title>GMKtec NucBox G3 Plus as a Smart Home Hub: Review</title><link>https://smarthome-aber-sicher.de/en/blog/2025/06/01/gmktec-nucbox-g3-plus-as-a-smart-home-hub-review-comparison/</link><pubDate>Sun, 01 Jun 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/06/01/gmktec-nucbox-g3-plus-as-a-smart-home-hub-review-comparison/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/06/01/gmktec-nucbox-g3-plus-als-smart-home-zentrale-test-vergleich/cover.png" alt="Featured image of post GMKtec NucBox G3 Plus as a Smart Home Hub: Review" /&gt;&lt;p&gt;My father needed a new computer – compact, quiet, affordable. My parents have been running Ubuntu for years, so no big setup drama. The GMKtec NucBox G3 Plus ticked all the boxes, and when the device arrived, I glanced at the specs and thought: Hold on. This would actually make a pretty solid smart home server.&lt;/p&gt;
&lt;p&gt;So I just gave it a try. Ubuntu, Home Assistant, a few benchmarks against my Raspberry Pi – and in the end I learned more than I expected.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/QNS2xIwt_zo?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_7877600929946523439_hu_c088a5b37208e6f0.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="why-a-mini-pc-as-a-smart-home-hub"&gt;Why a Mini PC as a Smart Home Hub?
&lt;/h2&gt;&lt;p&gt;Many people rely on Home Assistant, OpenHAB, or ioBroker – usually on their own hardware running 24/7. The Raspberry Pi is popular, but has its weaknesses: SD card failures, finicky power supply, and limited performance. Intel NUCs are powerful, but often expensive. The NucBox G3 Plus offers an interesting alternative: compact, quiet, expandable, and attractively priced.&lt;/p&gt;
&lt;h2 id="the-gmktec-nucbox-g3-plus-at-a-glance"&gt;The GMKtec NucBox G3 Plus at a Glance
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Compact mini PC, barely larger than the palm of your hand&lt;/li&gt;
&lt;li&gt;Up to 16 GB RAM, fast NVMe SSD (up to 1 TB)&lt;/li&gt;
&lt;li&gt;Intel N150 Quad-Core processor&lt;/li&gt;
&lt;li&gt;Quiet fan, barely audible in everyday use&lt;/li&gt;
&lt;li&gt;HDMI, 4x USB 3.0, 2.5 Gbit LAN (ideal for NAS/backups)&lt;/li&gt;
&lt;li&gt;Easy to open and upgrade (RAM/SSD)&lt;/li&gt;
&lt;li&gt;Variants with 8/16 GB RAM and 256/512/1024 GB SSD&lt;/li&gt;
&lt;li&gt;Powered via 12V power supply (36W); HDMI cable and mounting rail included&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Order directly here:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/43fcDOF" target="_blank" rel="noopener"
&gt;GMKtec G3 Plus N150 Mini PC Intel Twin Lake N150, 16 GB RAM 3200 MHz, 512 GB PCIE3.0 SSD&lt;/a&gt; (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/43BRDRa" target="_blank" rel="noopener"
&gt;GMKtec G3 Plus N150 Mini PC Intel Twin Lake N150, 16 GB RAM 3200 MHz, 1024 GB PCIE3.0 SSD&lt;/a&gt; (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4dCSZzC" target="_blank" rel="noopener"
&gt;GMKtec G3 Plus N150 Mini PC Intel Twin Lake N150, 8 GB RAM 3200 MHz, 256 GB PCIE3.0 SSD&lt;/a&gt; (affiliate link)&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="advantages-over-raspberry-pi--intel-nuc"&gt;Advantages Over Raspberry Pi &amp;amp; Intel NUC
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;More performance and RAM than a Pi, cheaper than most NUCs&lt;/li&gt;
&lt;li&gt;Future-proof thanks to expandability&lt;/li&gt;
&lt;li&gt;2.5 Gbit Ethernet for a fast home network&lt;/li&gt;
&lt;li&gt;No SD card issues, fast NVMe SSD&lt;/li&gt;
&lt;li&gt;Flexible for Home Assistant, Proxmox, Docker, VMs&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="comparison-nucbox-vs-raspberry-pi-vs-intel-nuc"&gt;Comparison: NucBox vs. Raspberry Pi vs. Intel NUC
&lt;/h2&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Device&lt;/th&gt;
&lt;th&gt;RAM&lt;/th&gt;
&lt;th&gt;Storage&lt;/th&gt;
&lt;th&gt;Network&lt;/th&gt;
&lt;th&gt;Power draw&lt;/th&gt;
&lt;th&gt;Noise&lt;/th&gt;
&lt;th&gt;Price&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Raspberry Pi 4&lt;/td&gt;
&lt;td&gt;up to 8 GB&lt;/td&gt;
&lt;td&gt;SD/USB/SSD&lt;/td&gt;
&lt;td&gt;1 Gbit&lt;/td&gt;
&lt;td&gt;~5 W&lt;/td&gt;
&lt;td&gt;passively cooled&lt;/td&gt;
&lt;td&gt;varies&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Intel NUC (classic)&lt;/td&gt;
&lt;td&gt;up to 32 GB&lt;/td&gt;
&lt;td&gt;SATA/NVMe&lt;/td&gt;
&lt;td&gt;1 Gbit&lt;/td&gt;
&lt;td&gt;10–20 W&lt;/td&gt;
&lt;td&gt;often audible&lt;/td&gt;
&lt;td&gt;expensive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;NucBox G3 Plus&lt;/td&gt;
&lt;td&gt;up to 16 GB&lt;/td&gt;
&lt;td&gt;NVMe&lt;/td&gt;
&lt;td&gt;2.5 Gbit&lt;/td&gt;
&lt;td&gt;~7 W&lt;/td&gt;
&lt;td&gt;very quiet&lt;/td&gt;
&lt;td&gt;fair&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="hands-on-setup--operation"&gt;Hands-On: Setup &amp;amp; Operation
&lt;/h2&gt;&lt;p&gt;I tested Ubuntu and Home Assistant – both run without issues. For beginners I recommend Ubuntu Server or Home Assistant OS directly on the NucBox. More advanced users can run Proxmox and operate multiple VMs and Docker containers. Before installing, it&amp;rsquo;s worth checking the BIOS: the &amp;ldquo;CPU Performance&amp;rdquo; setting can be switched to &amp;ldquo;Performance&amp;rdquo; to get the most out of the CPU – without any noticeable increase in fan noise.&lt;/p&gt;
&lt;h2 id="noise--power-consumption"&gt;Noise &amp;amp; Power Consumption
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Idle draw around 7 watts, briefly up to 15 watts during boot&lt;/li&gt;
&lt;li&gt;Annual consumption approximately 61 kWh (~€21.50 at €0.35/kWh)&lt;/li&gt;
&lt;li&gt;Fan barely audible in everyday use (approx. 35 dB right next to the device)&lt;/li&gt;
&lt;li&gt;Less suitable for bedroom use, no problem in a living room&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="conclusion--recommendation"&gt;Conclusion &amp;amp; Recommendation
&lt;/h2&gt;&lt;p&gt;The GMKtec NucBox G3 Plus is a powerful, quiet, and flexible smart home hub. It delivers more performance and convenience than a Raspberry Pi, costs less than most classic NUCs, and scores points with 2.5 Gbit LAN, a fast SSD, and expandability. Ideal for ambitious smart home setups, Docker, VMs, and fast networks.&lt;/p&gt;
&lt;p&gt;Are you running a mini PC as your smart home hub? Or are you still sticking with the Raspberry Pi? Let me know in the comments.&lt;/p&gt;</description></item><item><title>Make Any Dishwasher Smart – No Cloud, No Rewiring</title><link>https://smarthome-aber-sicher.de/en/blog/2025/05/25/make-any-dishwasher-smart-no-cloud-no-rewiring/</link><pubDate>Sun, 25 May 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/05/25/make-any-dishwasher-smart-no-cloud-no-rewiring/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/05/25/jeden-geschirrsp%C3%BCler-smart-machen-ohne-cloud-umbau/cover.png" alt="Featured image of post Make Any Dishwasher Smart – No Cloud, No Rewiring" /&gt;&lt;p&gt;Your dishwasher isn&amp;rsquo;t smart yet? Not for long! In this article I&amp;rsquo;ll show you how to bring any old appliance up to speed with one simple trick – no rewiring, no cloud, just a small smart plug. The same principle works equally well with washing machines, dryers, or any other household appliance that runs a cycle and then gets forgotten.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/IpPHkQ1q7iE?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_11406532299515969144_hu_e2b9c9bcbf09597a.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-you-get-out-of-it"&gt;What you get out of it
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Automatic notification when the cycle is done&lt;/li&gt;
&lt;li&gt;Saved standby power&lt;/li&gt;
&lt;li&gt;Increased safety at home&lt;/li&gt;
&lt;li&gt;Ability to switch the appliance off remotely&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="the-idea-energy-monitoring-instead-of-cloud"&gt;The idea: energy monitoring instead of cloud
&lt;/h2&gt;&lt;p&gt;Many new appliances are &amp;ldquo;smart&amp;rdquo; – but usually only through manufacturer-dependent clouds. Why buy something new when the existing machine still works perfectly? With a smart plug like the Shelly Plug S (or any other relay with energy monitoring) you can retrofit any appliance and integrate it into Home Assistant – completely local, no cloud required.&lt;/p&gt;
&lt;p&gt;The following devices are suitable for this project:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/3Sm9O8b" target="_blank" rel="noopener"
&gt;Shelly Plug S&lt;/a&gt; (affiliate link) Or at OBI: &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F7119407%2Fshelly-smart-stecker-plug-s-gen3-weiss" target="_blank" rel="noopener"
&gt;Shelly Plug S&lt;/a&gt; (affiliate link) Or directly at Shelly: &lt;strong&gt;&lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;&lt;/strong&gt; (affiliate link, code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/3Sgj2CW" target="_blank" rel="noopener"
&gt;Shelly Plus 1 PM&lt;/a&gt; (affiliate link) Or at OBI: &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F8975468%2Fshelly-relaismodul-unterputz-plus-1pm-mini-g3-rot" target="_blank" rel="noopener"
&gt;Shelly Plus 1 PM&lt;/a&gt; (affiliate link) Or directly at Shelly: &lt;strong&gt;&lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;Shelly&lt;/a&gt;&lt;/strong&gt; (affiliate link, code SMARTHOMEABERSICHER-10OFF for 10% off)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4kD6Nwo" target="_blank" rel="noopener"
&gt;Sonoff POW R2&lt;/a&gt; (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/3Zx2GcU" target="_blank" rel="noopener"
&gt;Sonoff POW Elite&lt;/a&gt; (affiliate link)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://amzn.to/4kl1jXh" target="_blank" rel="noopener"
&gt;Smart Plug&lt;/a&gt; (affiliate link)&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="how-the-detection-works"&gt;How the detection works
&lt;/h2&gt;&lt;p&gt;The idea is simple: the power consumption of the appliance is measured. If it exceeds a certain threshold for a certain period of time, the wash cycle is running. If it drops below that threshold – again for a defined period – the appliance has most likely finished. To prevent the automation from reacting to every small spike, a hysteresis is built in, meaning a delay or waiting period.&lt;/p&gt;
&lt;h3 id="determining-typical-values"&gt;Determining typical values
&lt;/h3&gt;&lt;p&gt;Measure a complete cycle of your appliance and observe the power draw. In my case, that&amp;rsquo;s more than 5 watts for at least 5 minutes (appliance running) and less than 5 watts for at least 5 minutes (appliance done). The exact values can vary depending on the model – experiment and adjust the thresholds accordingly.&lt;/p&gt;
&lt;h2 id="implementation-in-home-assistant"&gt;Implementation in Home Assistant
&lt;/h2&gt;&lt;p&gt;&lt;em&gt;I also walk through this step by step in the video – feel free to check it out for the screencast!&lt;/em&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Add the device:&lt;/strong&gt; Integrate the Shelly Plug S or another smart relay with energy monitoring into Home Assistant.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Create sensors:&lt;/strong&gt; Set up threshold sensors (e.g. using a template or a threshold sensor) that detect the appliance&amp;rsquo;s status.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automation:&lt;/strong&gt; Create an automation that notifies you when the appliance is done – or that cuts power to the device completely after the cycle finishes.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="robust-template-sensor-handling-connection-drops"&gt;Robust template sensor: handling connection drops
&lt;/h3&gt;&lt;p&gt;A simple template sensor has one weak spot: if the smart plug briefly loses its connection (Wi-Fi dropout, Home Assistant restart), the power sensor returns &lt;code&gt;unavailable&lt;/code&gt; – and the binary sensor snaps to &lt;code&gt;false&lt;/code&gt;. That incorrectly triggers a &amp;ldquo;cycle done&amp;rdquo; notification even though the machine is still running.&lt;/p&gt;
&lt;p&gt;The fix: freeze the last known state for as long as the plug is unreachable. In the video I only showed the basic version – viewer Andreas Schneider sent me a more robust configuration that I&amp;rsquo;m happy to share here:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;span class="lnt"&gt;18
&lt;/span&gt;&lt;span class="lnt"&gt;19
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;binary_sensor&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Dishwasher active&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;unique_id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;dishwasher_active&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;delay_off&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;minutes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;7&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;delay_on&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;minutes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;-&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% set switch = states(&amp;#39;switch.dishwasher_plug&amp;#39;) %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% set power = states(&amp;#39;sensor.dishwasher_plug_power&amp;#39;) %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% if switch == &amp;#39;off&amp;#39; %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ false }}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% elif power in [&amp;#39;unavailable&amp;#39;, &amp;#39;unknown&amp;#39;] %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ this.state == &amp;#39;on&amp;#39; }}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% else %}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {{ power|float &amp;gt; 5 }}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% endif %}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;icon&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;{{ &amp;#39;mdi:dishwasher&amp;#39; if this.state == &amp;#39;on&amp;#39; else &amp;#39;mdi:dishwasher-off&amp;#39; }}&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;availability&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;true&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Adjust the entity IDs (&lt;code&gt;switch.dishwasher_plug&lt;/code&gt;, &lt;code&gt;sensor.dishwasher_plug_power&lt;/code&gt;) to match your own setup. The threshold (&lt;code&gt;&amp;gt; 5&lt;/code&gt;) can be tuned as described above.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Why this configuration is better:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;delay_on: 2 min&lt;/code&gt; – prevents short startup spikes from activating the sensor too early&lt;/li&gt;
&lt;li&gt;&lt;code&gt;delay_off: 7 min&lt;/code&gt; – buffers brief pauses mid-cycle (e.g. during heating phases)&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;elif&lt;/code&gt; block freezes the state on connection loss instead of falling to &lt;code&gt;false&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;availability: &amp;quot;true&amp;quot;&lt;/code&gt; keeps the sensor itself always available, regardless of the plug&amp;rsquo;s state&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="practical-example-saving-standby-power"&gt;Practical example: saving standby power
&lt;/h2&gt;&lt;p&gt;&lt;em&gt;You can also see this workflow in the video as a screencast – check it out if you want to watch the implementation live!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;After the wash cycle, I switch the dishwasher off completely. My appliance draws 4 watts in standby – that&amp;rsquo;s 35 kWh per year, or roughly €12 at €0.35 per kWh. You still need to subtract the smart relay&amp;rsquo;s own consumption of about 1 watt, which leaves around €9 in savings per year. That means the Shelly Plug S pays for itself in just over a year. Take a measurement on your own appliance – you might be surprised what a power drain it actually is.&lt;/p&gt;
&lt;h2 id="benefits--safety"&gt;Benefits &amp;amp; safety
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;No more standby, no voltage at the appliance&lt;/li&gt;
&lt;li&gt;Greater safety (e.g. when away from home for longer periods)&lt;/li&gt;
&lt;li&gt;Control and monitoring from anywhere&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;With a simple smart plug and Home Assistant you can make any old appliance smart – no cloud, no rewiring, and no vendor lock-in. You save electricity, improve safety, and always know whether your dishwasher (or any other appliance) has finished its cycle.&lt;/p&gt;
&lt;p&gt;→ This video generated a lot of feedback. I&amp;rsquo;ve compiled the most useful practical tips from the community in a follow-up article: &lt;a class="link" href="https://smarthome-aber-sicher.de/post/geschirrspueler-feedback/" &gt;Making your washing machine &amp;amp; dishwasher smart? 5 things you should know!&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Robot Vacuums: The Underestimated Smart Home Data Hog</title><link>https://smarthome-aber-sicher.de/en/blog/2025/05/15/robot-vacuums-in-the-smart-home-the-underestimated-data-hog/</link><pubDate>Thu, 15 May 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/05/15/robot-vacuums-in-the-smart-home-the-underestimated-data-hog/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/05/15/saugroboter-im-smart-home-die-untersch%C3%A4tzte-datenkrake/cover.png" alt="Featured image of post Robot Vacuums: The Underestimated Smart Home Data Hog" /&gt;&lt;h2 id="introduction"&gt;Introduction
&lt;/h2&gt;&lt;p&gt;Imagine your robot vacuum knows more about you than your closest friends — even though it&amp;rsquo;s only supposed to clean the floor. It drives through your home, scans your rooms, listens to your conversations, and you think it&amp;rsquo;s really just vacuuming? Sounds like a horror movie, but that&amp;rsquo;s exactly reality.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/urSW9Rah0fc?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_17314063247798362758_hu_cd592a2e9e577c4c.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="the-ecovacs-incident-of-2024"&gt;The Ecovacs Incident of 2024
&lt;/h2&gt;&lt;p&gt;In October 2024, hacked Ecovacs robot vacuums in the US turned into full-blown &lt;a class="link" href="https://tarnkappe.info/artikel/cyberangriffe/gehackte-ecovacs-saugroboter-beleidigen-besitzer-302752.html" target="_blank" rel="noopener"
&gt;stalkers&lt;/a&gt; &lt;sup id="fnref:1"&gt;&lt;a href="#fn:1" class="footnote-ref" role="doc-noteref"&gt;1&lt;/a&gt;&lt;/sup&gt;. They &lt;a class="link" href="https://www.tomsguide.com/home/smart-home/hacked-ecovacs-vacuums-went-haywire-across-the-us" target="_blank" rel="noopener"
&gt;chased pets and hurled racist insults at their owners&lt;/a&gt;, terrorizing entire households &lt;sup id="fnref:2"&gt;&lt;a href="#fn:2" class="footnote-ref" role="doc-noteref"&gt;2&lt;/a&gt;&lt;/sup&gt;. But how did it get to this point? The attackers exploited a &lt;a class="link" href="https://www.theverge.com/2024/10/12/24268508/hacked-ecovacs-deebot-x2-racial-slurs-chase-pets" target="_blank" rel="noopener"
&gt;glaring security vulnerability&lt;/a&gt; in the robots&amp;rsquo; software. The security PIN that was supposed to prevent unauthorized access was only verified in the app, not on the device itself — a fatal flaw that hackers knew how to exploit &lt;sup id="fnref:3"&gt;&lt;a href="#fn:3" class="footnote-ref" role="doc-noteref"&gt;3&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;
&lt;p&gt;What makes this case particularly alarming: common security measures like strong passwords or two-factor authentication would not have helped here. The manufacturer had made such a fundamental programming error that even best-practice security measures were rendered useless.&lt;/p&gt;
&lt;h2 id="the-underestimated-problem-of-profiling"&gt;The Underestimated Problem of Profiling
&lt;/h2&gt;&lt;p&gt;But even if your robot vacuum isn&amp;rsquo;t hacked, there is another massive problem: profiling. Many people might think, what could a robot vacuum really know about me? The answer is: frighteningly much.&lt;/p&gt;
&lt;p&gt;To understand how powerful data analysis can be, here is a &lt;a class="link" href="https://www.forbes.com/sites/kashmirhill/2012/02/16/how-target-figured-out-a-teen-girl-was-pregnant-before-her-father-did/" target="_blank" rel="noopener"
&gt;real-world example from the US&lt;/a&gt;: In 2012, a teenager suddenly started receiving ads for baby products from the retail chain Target. Her outraged father complained to Target about the alleged harassment of his daughter — only to find out a few days later that his daughter was actually pregnant. The algorithm had detected subtle changes in purchasing behavior and drawn the right conclusions before the family even knew &lt;sup id="fnref:4"&gt;&lt;a href="#fn:4" class="footnote-ref" role="doc-noteref"&gt;4&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;
&lt;h3 id="what-does-this-mean-for-robot-vacuums"&gt;What Does This Mean for Robot Vacuums?
&lt;/h3&gt;&lt;p&gt;Your robot vacuum links movement patterns, camera images, and sounds. It knows:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When you sleep&lt;/li&gt;
&lt;li&gt;When you come home&lt;/li&gt;
&lt;li&gt;Whether your routines change&lt;/li&gt;
&lt;li&gt;Which rooms are used and how often&lt;/li&gt;
&lt;li&gt;What conversations take place in your home&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="why-this-matters"&gt;Why This Matters
&lt;/h2&gt;&lt;p&gt;&amp;ldquo;Why would anyone spy on me? I&amp;rsquo;m not important at all.&amp;rdquo; This thought is understandable, but it misses the core of the problem. It&amp;rsquo;s not about targeted surveillance of individuals — it&amp;rsquo;s about mass data collection:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Companies don&amp;rsquo;t specifically target your data&lt;/li&gt;
&lt;li&gt;They simply collect everything, because storage is cheap&lt;/li&gt;
&lt;li&gt;What seems harmless today can become highly sensitive tomorrow through AI analysis&lt;/li&gt;
&lt;li&gt;The value lies not in any single household, but in the sheer volume of data&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This data can feed algorithms that make decisions about:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Health insurance eligibility&lt;/li&gt;
&lt;li&gt;Credit scoring&lt;/li&gt;
&lt;li&gt;Personalized advertising&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="concrete-recommendations"&gt;Concrete Recommendations
&lt;/h2&gt;&lt;p&gt;What can you actually do to protect yourself?&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Basic security measures:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Use strong passwords&lt;/li&gt;
&lt;li&gt;Install updates regularly&lt;/li&gt;
&lt;li&gt;Put devices on a guest network&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Consider before buying:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Think twice before getting devices with cameras or microphones&lt;/li&gt;
&lt;li&gt;Be especially critical of cloud-based data processing&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Alternative solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The Valetudo project offers open-source firmware for some robot vacuum models&lt;/li&gt;
&lt;li&gt;This lets you keep control over your own data&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Even large, seemingly trustworthy brands are not immune to data breaches — as the &lt;a class="link" href="https://www.auto-motor-und-sport.de/verkehr/massives-datenleck-volkwagen-meb-nutzerdaten-chaos-computer-club/" target="_blank" rel="noopener"
&gt;Volkswagen incident of 2024&lt;/a&gt; illustrates, where data from over 400,000 electric vehicles ended up unprotected on the internet &lt;sup id="fnref:5"&gt;&lt;a href="#fn:5" class="footnote-ref" role="doc-noteref"&gt;5&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;
&lt;p&gt;Making a genuinely reliable purchase recommendation for a &amp;ldquo;secure&amp;rdquo; robot vacuum is nearly impossible. The most pragmatic approach seems to be avoiding models with cameras and microphones and accepting the reduced feature set. An alternative for tech-savvy users is the &lt;a class="link" href="https://valetudo.cloud/" target="_blank" rel="noopener"
&gt;Valetudo project&lt;/a&gt; &lt;sup id="fnref:6"&gt;&lt;a href="#fn:6" class="footnote-ref" role="doc-noteref"&gt;6&lt;/a&gt;&lt;/sup&gt;, which provides an open-source alternative to the manufacturer&amp;rsquo;s firmware. Because in the end, protecting your privacy matters more than the supposed convenience of extra features.&lt;/p&gt;
&lt;div class="footnotes" role="doc-endnotes"&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id="fn:1"&gt;
&lt;p&gt;&lt;a class="link" href="https://tarnkappe.info/artikel/cyberangriffe/gehackte-ecovacs-saugroboter-beleidigen-besitzer-302752.html" target="_blank" rel="noopener"
&gt;Tarnkappe.info: Hacked Ecovacs robot vacuums insult their owners&lt;/a&gt;&amp;#160;&lt;a href="#fnref:1" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id="fn:2"&gt;
&lt;p&gt;&lt;a class="link" href="https://www.tomsguide.com/home/smart-home/hacked-ecovacs-vacuums-went-haywire-across-the-us" target="_blank" rel="noopener"
&gt;Tom&amp;rsquo;s Guide: Hacked Ecovacs vacuums went haywire across the US&lt;/a&gt;&amp;#160;&lt;a href="#fnref:2" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id="fn:3"&gt;
&lt;p&gt;&lt;a class="link" href="https://www.theverge.com/2024/10/12/24268508/hacked-ecovacs-deebot-x2-racial-slurs-chase-pets" target="_blank" rel="noopener"
&gt;The Verge: Hacked Ecovacs robot vacuums spewed racial slurs and chased pets&lt;/a&gt;&amp;#160;&lt;a href="#fnref:3" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id="fn:4"&gt;
&lt;p&gt;&lt;a class="link" href="https://www.forbes.com/sites/kashmirhill/2012/02/16/how-target-figured-out-a-teen-girl-was-pregnant-before-her-father-did/" target="_blank" rel="noopener"
&gt;Forbes: How Target Figured Out A Teen Girl Was Pregnant Before Her Father Did&lt;/a&gt;&amp;#160;&lt;a href="#fnref:4" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id="fn:5"&gt;
&lt;p&gt;&lt;a class="link" href="https://www.auto-motor-und-sport.de/verkehr/massives-datenleck-volkwagen-meb-nutzerdaten-chaos-computer-club/" target="_blank" rel="noopener"
&gt;Auto Motor und Sport: Massive data leak at Volkswagen&lt;/a&gt;&amp;#160;&lt;a href="#fnref:5" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li id="fn:6"&gt;
&lt;p&gt;&lt;a class="link" href="https://valetudo.cloud/" target="_blank" rel="noopener"
&gt;Valetudo - Cloud-free control of robot vacuums&lt;/a&gt;&amp;#160;&lt;a href="#fnref:6" class="footnote-backref" role="doc-backlink"&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;</description></item><item><title>Pollen Alert on Your Dashboard: Never Forget Allergy Meds</title><link>https://smarthome-aber-sicher.de/en/blog/2025/04/28/pollen-alert-on-your-dashboard-never-forget-your-allergy-meds-again-with-home-assistant/</link><pubDate>Mon, 28 Apr 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/04/28/pollen-alert-on-your-dashboard-never-forget-your-allergy-meds-again-with-home-assistant/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/28/pollenflug-alarm-auf-deinem-dashboard-mit-home-assistant-nie-mehr-medikamente-vergessen/cover.png" alt="Featured image of post Pollen Alert on Your Dashboard: Never Forget Allergy Meds" /&gt;&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/WYZs5eIjpDQ?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_12483751704564667726_hu_e36ef919d384d143.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h1 id="pollen-in-home-assistant-stay-informed-at-a-glance"&gt;Pollen in Home Assistant: Stay Informed at a Glance!
&lt;/h1&gt;&lt;p&gt;Spring is finally here! For many people, though, that also means pollen season — and with it, the daily challenges for allergy sufferers. I&amp;rsquo;m one of them: every morning I check the pollen forecast, figure out which medications to take, and plan my day accordingly. But what if we could skip the app entirely and have all that information right on our Home Assistant dashboard?&lt;/p&gt;
&lt;p&gt;Good news: the German Weather Service (DWD) provides a pollen forecast that can be integrated into Home Assistant. The raw presentation, however, isn&amp;rsquo;t very user-friendly. In this article I&amp;rsquo;ll show you how to process the data into something useful and display it clearly on your dashboard.&lt;/p&gt;
&lt;h2 id="why-put-pollen-levels-on-the-dashboard"&gt;Why Put Pollen Levels on the Dashboard?
&lt;/h2&gt;&lt;p&gt;Especially in the morning, it saves time and gives you peace of mind to see your pollen exposure at a glance — without having to open an app. Even better: with targeted notifications, you&amp;rsquo;ll be alerted automatically whenever levels exceed a threshold that matters to you.&lt;/p&gt;
&lt;h2 id="setting-up-the-dwd-pollen-integration"&gt;Setting Up the DWD Pollen Integration
&lt;/h2&gt;&lt;p&gt;Home Assistant lets you use DWD pollen forecast data via HACS (Home Assistant Community Store). Here&amp;rsquo;s how to get it running:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Make sure HACS is installed in your Home Assistant. If not, you can find installation instructions &lt;a class="link" href="https://hacs.xyz/docs/use/download/download/" target="_blank" rel="noopener"
&gt;here&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;In Home Assistant, go to &lt;strong&gt;HACS → Integrations&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Search for &amp;ldquo;DWD Pollenflug&amp;rdquo; and install the integration.&lt;/li&gt;
&lt;li&gt;Restart Home Assistant to activate the integration.&lt;/li&gt;
&lt;li&gt;Go to &lt;strong&gt;Settings → Integrations&lt;/strong&gt; and add the DWD Pollenflug integration. Select your desired location.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Once set up, you&amp;rsquo;ll have sensors available for various pollen types.&lt;/p&gt;
&lt;p&gt;You can find more about the integration at &lt;a class="link" href="https://github.com/mampfes/hacs_dwd_pollenflug" target="_blank" rel="noopener"
&gt;https://github.com/mampfes/hacs_dwd_pollenflug&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="processing-the-data-to-make-it-useful"&gt;Processing the Data to Make It Useful
&lt;/h2&gt;&lt;p&gt;The raw data delivered by the integration can be hard to interpret since it only contains numerical values. I recommend creating template sensors that translate the exposure into easy-to-understand categories like &amp;ldquo;low&amp;rdquo;, &amp;ldquo;moderate&amp;rdquo;, or &amp;ldquo;high&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s an example of what such a template sensor might look like:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;sensor&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;sensors&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;birke_pollen_level&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;friendly_name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Pollen Level Birch&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;value_template&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;&amp;gt;-&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% if states(&amp;#39;sensor.dwd_pollen_birke&amp;#39;) | int == 0 %} No exposure
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% elif states(&amp;#39;sensor.dwd_pollen_birke&amp;#39;) | int == 1 %} Low exposure
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% elif states(&amp;#39;sensor.dwd_pollen_birke&amp;#39;) | int == 2 %} Moderate exposure
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% else %} High exposure
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; {% endif %}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;This lets you see at a glance how heavy the pollen load is for specific plants.&lt;/p&gt;
&lt;h2 id="even-better-a-personalised-pollen-profile"&gt;Even Better: A Personalised Pollen Profile
&lt;/h2&gt;&lt;p&gt;It&amp;rsquo;s worth aggregating pollen levels into a single personalised tile. Depending on the severity and the pollen types you react to, you can create a generic problem entity. With appropriate visibility conditions added to your dashboard configuration using &amp;ldquo;or&amp;rdquo; logic, you can build a personalised pollen warning that gives you a tailored overview matched exactly to your needs. I walk through this in detail in the video.&lt;/p&gt;
&lt;h2 id="whats-next-automations"&gt;What&amp;rsquo;s Next: Automations
&lt;/h2&gt;&lt;p&gt;If you&amp;rsquo;re looking for more ideas on how to make your smart home allergy-season ready, I recommend checking out the article &lt;a class="link" href="https://www.heise.de/ratgeber/Home-Assistant-gegen-Pollen-Drei-Automatisierungen-fuer-Allergiker-einrichten-10342617.html" target="_blank" rel="noopener"
&gt;„Home Assistant gegen Pollen: Drei Automatisierungen für Allergiker&amp;quot;&lt;/a&gt; on heise online. You&amp;rsquo;ll find practical examples of how to set up push reminders, light-based warnings, and smart air purifier control with Home Assistant — great for keeping pollen levels manageable day to day.&lt;/p&gt;
&lt;h2 id="conclusion-a-relaxed-pollen-season"&gt;Conclusion: A Relaxed Pollen Season
&lt;/h2&gt;&lt;p&gt;With the DWD pollen forecast integration and a bit of personalisation, you can turn your Home Assistant dashboard into a genuine allergy companion. No more morning surprises — just a clear picture of what&amp;rsquo;s ahead.&lt;/p&gt;</description></item><item><title>4 Dashboard Tricks So You Never Miss Anything</title><link>https://smarthome-aber-sicher.de/en/blog/2025/04/24/4-smart-tricks-for-your-dashboard-never-miss-anything-important-again/</link><pubDate>Thu, 24 Apr 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/04/24/4-smart-tricks-for-your-dashboard-never-miss-anything-important-again/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/24/4-smarte-tricks-f%C3%BCrs-dashboard-damit-du-nie-mehr-etwas-%C3%BCbersiehst/cover.png" alt="Featured image of post 4 Dashboard Tricks So You Never Miss Anything" /&gt;&lt;p&gt;Whether warning symbols, color highlights, or dynamic display: these four ideas take your dashboard to the next level – functional, elegant, and practical for everyday use.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/-xH-iW22Lwo?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_3574887487853080867_hu_bde2b38f113c4ae9.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;In everyday life it can easily happen that important information gets lost in the smart home dashboard – be it humidity that&amp;rsquo;s too low, a door left open, or a device that has gone offline. In this post I&amp;rsquo;ll show you four concrete methods to make sure such information is &lt;strong&gt;visually highlighted&lt;/strong&gt; and &lt;strong&gt;no longer overlooked&lt;/strong&gt; in Home Assistant.&lt;/p&gt;
&lt;h2 id="why-visual-highlighting-matters"&gt;Why Visual Highlighting Matters
&lt;/h2&gt;&lt;p&gt;Home Assistant offers many automation options, but a lot of potential is wasted when it comes to dashboard presentation. A uniformly grey dashboard lets important alerts fade into the background – with targeted use of colors and symbols you can change that.&lt;/p&gt;
&lt;h2 id="method-1-colored-backgrounds-with-cardmod-static"&gt;Method 1: Colored Backgrounds with CardMod (Static)
&lt;/h2&gt;&lt;p&gt;With &lt;a class="link" href="https://github.com/thomasloven/lovelace-card-mod" target="_blank" rel="noopener"
&gt;card-mod&lt;/a&gt; you can customize the background color of individual cards. This works even without conditions – for example to highlight specific sensors.&lt;/p&gt;
&lt;h3 id="example"&gt;Example:
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;card_mod&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;style&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; ha-card.active {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; background-color: #ffcccc;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --state-icon-color: red;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; }&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;hr&gt;
&lt;h2 id="method-2-dynamic-colors-via-template-and-cardmod"&gt;Method 2: Dynamic Colors via Template and CardMod
&lt;/h2&gt;&lt;p&gt;A bit more advanced, but very effective: you use a template to automatically choose a color based on the sensor value – for example for humidity or temperature.&lt;/p&gt;
&lt;h3 id="example-1"&gt;Example:
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;span class="lnt"&gt;8
&lt;/span&gt;&lt;span class="lnt"&gt;9
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;card_mod&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;style&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; ha-card.active {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; background-color: {{
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; &amp;#39;#ffcccc&amp;#39; if (states(&amp;#39;sensor.graserpollen&amp;#39;) | int &amp;gt; 2)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; else &amp;#39;#ffffcc&amp;#39; if (states(&amp;#39;sensor.graserpollen&amp;#39;) | int &amp;gt; 1)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; else &amp;#39;#ffffff&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; }};;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; }&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;hr&gt;
&lt;h2 id="method-3-warning-symbols-via-unavailable-status-helper-sensor"&gt;Method 3: Warning Symbols via &amp;ldquo;unavailable&amp;rdquo; Status (Helper Sensor)
&lt;/h2&gt;&lt;p&gt;A clever trick: Home Assistant displays a yellow warning symbol (⚠️) when a sensor&amp;rsquo;s status is &lt;code&gt;unavailable&lt;/code&gt;. You can use this deliberately – for example with an additional template sensor that only takes on this status under certain conditions.&lt;/p&gt;
&lt;h3 id="example-2"&gt;Example:
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c"&gt;# Template sensor with unavailable status for visual highlighting&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;{{&lt;span class="s2"&gt;&amp;#34;unavailable&amp;#34;&lt;/span&gt;}}&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;hr&gt;
&lt;h2 id="method-4-display-via-binary_sensor-with-device_class-problem"&gt;Method 4: Display via binary_sensor with device_class &amp;ldquo;problem&amp;rdquo;
&lt;/h2&gt;&lt;p&gt;If you want a striking &lt;strong&gt;red warning symbol&lt;/strong&gt;, you can use a &lt;code&gt;binary_sensor&lt;/code&gt; with &lt;code&gt;device_class: problem&lt;/code&gt;. As soon as the state switches to &lt;code&gt;on&lt;/code&gt;, Home Assistant automatically shows the symbol.&lt;/p&gt;
&lt;h3 id="example-3"&gt;Example:
&lt;/h3&gt;&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c"&gt;# Template for binary_sensor with problem indicator&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;{{&lt;span class="kc"&gt;true&lt;/span&gt;}}&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;hr&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;These four methods help you make your dashboard not only nicer, but also &lt;strong&gt;more functional and more reliable&lt;/strong&gt;. In everyday life it&amp;rsquo;s crucial to see at a glance when something is wrong – and that&amp;rsquo;s exactly what visual cues like colors, symbols, and status indicators help you with.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tip:&lt;/strong&gt; Combine multiple methods – for example a tile with a colored background &lt;em&gt;and&lt;/em&gt; a symbol – so you&amp;rsquo;re guaranteed never to miss anything.&lt;/p&gt;
&lt;p&gt;→ I covered the basics of conditional display with card-mod in the first part of this series: &lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-warnungen/" &gt;Fehler und Warnungen im Home Assistant Dashboard richtig anzeigen&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;You&amp;rsquo;ve reached the end of this article. Did I help you out? Did you enjoy the video? I&amp;rsquo;d be really happy if you thought it was worth €5. You can find more on the &lt;a class="link" href="https://smarthome-aber-sicher.de/en/about" &gt;About me&lt;/a&gt; page.&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Remote Access with Cloudflare – Done Right!</title><link>https://smarthome-aber-sicher.de/en/blog/2025/04/18/remote-access-with-cloudflare-done-right/</link><pubDate>Fri, 18 Apr 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/04/18/remote-access-with-cloudflare-done-right/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/18/fernzugriff-mit-cloudflare-richtig-sicher/cover.jpg" alt="Featured image of post Remote Access with Cloudflare – Done Right!" /&gt;&lt;p&gt;Many people set up a Cloudflare Tunnel, see that Home Assistant is reachable from anywhere — and stop right there. The problem: the tunnel is encrypted, but anyone can access it. No login, no access control, nothing. It&amp;rsquo;s like locking your apartment door while the building&amp;rsquo;s front door is wide open.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ll show you how to do this properly: set up the tunnel, secure access — and at the end, make an honest assessment of what you&amp;rsquo;re trusting Cloudflare with.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/-5ekUIhSIaM?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_10370422919208371248_hu_cefac8276a0a92ff.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="the-false-sense-of-security-through-https"&gt;The False Sense of Security Through HTTPS
&lt;/h2&gt;&lt;p&gt;Many people think: &amp;ldquo;If I use HTTPS, I&amp;rsquo;m safe.&amp;rdquo; But that&amp;rsquo;s a misconception. SSL encrypts the connection — it does not prevent your Home Assistant from being visible and vulnerable on the internet. That&amp;rsquo;s exactly what happens when you only set up a tunnel and do nothing else.&lt;/p&gt;
&lt;p&gt;Today we go one crucial step further: Cloudflare Tunnel plus access control. If you&amp;rsquo;ve already set up the tunnel, you can skip ahead to the next section.&lt;/p&gt;
&lt;p&gt;Info: The hands-on step-by-step walkthrough is in the video above. You&amp;rsquo;ll need your own domain to follow along. If you don&amp;rsquo;t have one yet, I recommend Netcup based in Karlsruhe:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/img/netcup_logo.png" width="20%"&gt;
&lt;/figure&gt;
&lt;p&gt;Netcup is a German hosting provider I&amp;rsquo;ve been a customer of since &lt;strong&gt;2011&lt;/strong&gt; — now with &lt;strong&gt;nine products&lt;/strong&gt; (domains, web hosting, vServers and root servers). I&amp;rsquo;ve been consistently satisfied over all those years. I particularly want to highlight the &lt;strong&gt;reliable infrastructure&lt;/strong&gt;, &lt;strong&gt;excellent support&lt;/strong&gt;, and &lt;strong&gt;transparent pricing&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;A real standout feature: &lt;strong&gt;special offers at Netcup are often permanent&lt;/strong&gt;. That sets Netcup clearly apart from other providers where the price typically rises after the first year.&lt;/p&gt;
&lt;p&gt;If you want to support me and my content, I&amp;rsquo;d be happy if you book through my referral link:
👉 &lt;a class="link" href="https://www.netcup.com/de/?ref=21226" target="_blank" rel="noopener"
&gt;https://www.netcup.com/de/?ref=21226&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I also have &lt;strong&gt;vouchers for new customers&lt;/strong&gt; for various Netcup products. Just reach out — I&amp;rsquo;m happy to help!&lt;/p&gt;
&lt;p&gt;Thank you for your support! It helps me keep creating content for you.&lt;/p&gt;
&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="the-weak-spot-in-many-cloudflare-setups"&gt;The Weak Spot in Many Cloudflare Setups
&lt;/h2&gt;&lt;p&gt;Your smart home is now reachable from the internet — and many people stop there, satisfied. But there is one critical problem with this setup: while the tunnel connection is encrypted, &lt;em&gt;anyone&lt;/em&gt; can access it.&lt;/p&gt;
&lt;p&gt;It&amp;rsquo;s like locking your apartment door while the front door of the building stands wide open. Today we do better and add an additional layer of protection.&lt;/p&gt;
&lt;p&gt;Info: The hands-on step-by-step walkthrough is in the video above.&lt;/p&gt;
&lt;h2 id="how-trustworthy-is-cloudflare"&gt;How Trustworthy Is Cloudflare?
&lt;/h2&gt;&lt;p&gt;So now, to stay with the analogy, the front door is also securely locked and only someone with keys to both doors can get through. Right? Unfortunately, no. Because there&amp;rsquo;s one player you may not have on your radar — and that&amp;rsquo;s Cloudflare itself.&lt;/p&gt;
&lt;p&gt;We&amp;rsquo;ve set up two layers of protection: the authentication in Home Assistant and Cloudflare Access. For a hacker to access your smart home now, they&amp;rsquo;d need to successfully bypass both security mechanisms — Cloudflare&amp;rsquo;s and Home Assistant&amp;rsquo;s. The odds of that are orders of magnitude lower than if the system were just sitting open on the internet. Sounds like a perfect setup? Almost — because there&amp;rsquo;s one small but important catch.&lt;/p&gt;
&lt;p&gt;Cloudflare itself has unencrypted access to everything passing through the connection in this setup. And Cloudflare is a US company, which means it is not subject to the strict data protection regulations that apply here in Europe. You therefore have to place a certain degree of trust in the company behind Cloudflare. If that makes you uncomfortable — what are the alternatives? You could set up your own VPN access with WireGuard or Tailscale — technically a bit more demanding, but privacy-friendly. Or you use Home Assistant Cloud — it&amp;rsquo;s a paid service, but offers a straightforward and secure solution with considerably more concrete privacy rules than Cloudflare. However, you still have to extend some trust here too, because Nabu Casa — the company behind Home Assistant Cloud — is also a US company and is not bound by EU rules. That said, they do advertise that they don&amp;rsquo;t log user activity or analyze it for advertising purposes. That may matter to some of you.&lt;/p&gt;
&lt;h2 id="my-take"&gt;My Take
&lt;/h2&gt;&lt;p&gt;If you use Cloudflare correctly — with Tunnel &lt;em&gt;and&lt;/em&gt; Access — you have a free, highly secure solution for remote access to Home Assistant, without opening a single port.&lt;/p&gt;
&lt;p&gt;Cloudflare is, however, a US company with unencrypted access to your connection. If that&amp;rsquo;s not acceptable to you, consider WireGuard, Tailscale, or Home Assistant Cloud instead. More on those coming soon here on &amp;ldquo;Smart Home? But Secure!&amp;rdquo;&lt;/p&gt;</description></item><item><title>Why Port Forwarding into Your Smart Home Is So Dangerous</title><link>https://smarthome-aber-sicher.de/en/blog/2025/04/10/why-port-forwarding-into-your-smart-home-is-so-dangerous/</link><pubDate>Thu, 10 Apr 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/04/10/why-port-forwarding-into-your-smart-home-is-so-dangerous/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/10/so-gef%C3%A4hrlich-sind-portfreigaben-ins-smart-home/cover.png" alt="Featured image of post Why Port Forwarding into Your Smart Home Is So Dangerous" /&gt;&lt;p&gt;I&amp;rsquo;ve been diving deep into the topic of remote access to smart home systems lately – and one thing quickly becomes clear: there are now quite a few interesting options available, depending on your security needs, budget, and technical expertise.&lt;/p&gt;
&lt;p&gt;Which makes it all the more alarming that many users still simply rely on port forwarding to make their home network services accessible from the internet. Why is that dangerous? Let&amp;rsquo;s take a closer look.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/ExyqoW_Sslo?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_16795796074972396606_hu_217e000396077f49.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;Hi and welcome! My name is Joachim and this is Smart Home? But Secure! I originally just wanted to put together a video showing you how I&amp;rsquo;ve been handling secure remote access to Home Assistant for years.
But in my research, I realized: there are now quite a few ways to solve the remote access problem elegantly and securely. Yet there are still a large number of users who rely on simple port forwarding (more technically known as port forwarding) to access their smart home systems while on the go. And honestly, that surprised me a bit.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re thinking: &amp;ldquo;Sure, old news – you don&amp;rsquo;t need to explain that to me!&amp;rdquo; – then I&amp;rsquo;d invite you to subscribe to the channel. I have a feeling this topic has potential for more than one video, and there will definitely be a few more technical deep-dives to come.
But if you&amp;rsquo;re thinking: &amp;ldquo;Huh? What&amp;rsquo;s actually the problem with port forwarding?&amp;rdquo; – then let&amp;rsquo;s take a closer look right now.&lt;/p&gt;
&lt;h2 id="why-port-forwarding-is-so-popular"&gt;Why Port Forwarding Is So Popular
&lt;/h2&gt;&lt;p&gt;First of all: it&amp;rsquo;s understandable why so many users go this route. It&amp;rsquo;s simple, quick to set up, and generally involves no additional costs.
And even the problem of a dynamic IP address can be solved quickly using a dynamic DNS service. But:
You have to be aware of what you&amp;rsquo;re doing: you&amp;rsquo;re putting your service – for example Home Assistant or OpenHAB – directly onto the internet, exposed exactly the same way it is on your local network.&lt;/p&gt;
&lt;h2 id="first-risk-the-protection-layer-of-your-home-network-disappears"&gt;First Risk: The Protection Layer of Your Home Network Disappears
&lt;/h2&gt;&lt;p&gt;Even if you&amp;rsquo;ve set a strong password for your service: your home network itself is an additional layer of protection. In general, far fewer malicious actors are lurking there than on the open internet.
With port forwarding, you remove exactly that protective layer. Your service is now directly reachable from the internet – for millions of users, hackers, and other bad actors.
And even if you use a secure password and 2FA – nobody can guarantee that a new security vulnerability doesn&amp;rsquo;t already exist that bypasses authentication entirely. Sure, you can install updates diligently, but those only protect against known and already-patched vulnerabilities.
That&amp;rsquo;s why you should replace that second protective layer – your home network – with something else whenever you want to expose your services on the internet.&lt;/p&gt;
&lt;h2 id="second-risk-unencrypted-connections"&gt;Second Risk: Unencrypted Connections
&lt;/h2&gt;&lt;p&gt;There&amp;rsquo;s another factor to consider. As soon as your data travels over the internet, it must be encrypted – otherwise anyone can read or manipulate it.
Take Home Assistant as an example: the default connection is not encrypted. If you simply open a port to the internet, access is unsecured – just like at home, where that&amp;rsquo;s usually less of a concern.
Of course, you can secure it – for example with a free Let&amp;rsquo;s Encrypt certificate. But that means additional software and configuration. The &amp;ldquo;simple&amp;rdquo; port forwarding quickly turns into a complex software project – and that makes it not only more error-prone but often more insecure as well. A vicious cycle.&lt;/p&gt;
&lt;h2 id="my-recommendation"&gt;My Recommendation
&lt;/h2&gt;&lt;p&gt;My clear recommendation: don&amp;rsquo;t use port forwarding to make your smart home accessible from the internet.
Even if you don&amp;rsquo;t have particularly high security requirements, there are better alternatives:&lt;/p&gt;
&lt;h3 id="vpn"&gt;VPN
&lt;/h3&gt;&lt;p&gt;VPN: If you have a FRITZ!Box or another router that supports it, a VPN can be a great choice. It&amp;rsquo;s free, significantly more secure, and usually easy to set up. The VPN authentication provides the second protective layer that I believe is so important for internet access.&lt;/p&gt;
&lt;h3 id="home-assistant-cloud"&gt;Home Assistant Cloud
&lt;/h3&gt;&lt;p&gt;Home Assistant Cloud: The service from the HA team at Nabu Casa is easy to set up and takes care of encryption for you. You don&amp;rsquo;t have to deal with dynamic DNS either. But: it costs a monthly subscription fee – though at least that money goes to the company developing Home Assistant. The downside is that the second protective layer is still missing – the login screen is directly reachable from the internet, which you&amp;rsquo;ll quickly notice from &amp;ldquo;login failed&amp;rdquo; messages in your Home Assistant log.&lt;/p&gt;
&lt;h3 id="cloudflare"&gt;Cloudflare
&lt;/h3&gt;&lt;p&gt;Reverse proxies such as Cloudflare: here you build an encrypted tunnel from your home network to the proxy. There are already many great videos about this from the big smart home channels on YouTube, but I strongly recommend enabling an additional authentication layer on the proxy (called &amp;ldquo;Access&amp;rdquo; in Cloudflare) – that gives you your second protective layer here as well. Cloudflare is a US-based provider, which may be a dealbreaker for those with privacy concerns. In my research I haven&amp;rsquo;t found a comparable European alternative – if you know of one, let me know in the comments!&lt;/p&gt;
&lt;h3 id="twingate"&gt;Twingate
&lt;/h3&gt;&lt;p&gt;Twingate is a provider that enables zero-trust networking and promises a modern VPN alternative. Setup is surprisingly straightforward, clients are available for all platforms, and access to individual services can be controlled in a very granular way. Even though the service is primarily aimed at businesses, it can be interesting in a smart home context – especially if you want to secure multiple devices or users.&lt;/p&gt;
&lt;h3 id="tailscale"&gt;Tailscale
&lt;/h3&gt;&lt;p&gt;Tailscale takes a different approach: using WireGuard, it builds a private mesh network in which all your devices can reach each other directly – wherever they are. Particularly interesting is the newer Tailscale Funnel feature: it lets you expose a home network service publicly over the internet, including HTTPS and access control. Funnel isn&amp;rsquo;t available everywhere yet, but it&amp;rsquo;s a promising approach – especially for technically minded users.&lt;/p&gt;
&lt;p&gt;I haven&amp;rsquo;t taken a closer look at either of these two options (Twingate and Tailscale) myself yet.&lt;/p&gt;
&lt;p&gt;What role does remote access play in your smart home setup? Which solution are you using – or which one are you considering? Leave a comment below.&lt;/p&gt;
&lt;h2 id="what-i-use-personally"&gt;What I Use Personally
&lt;/h2&gt;&lt;p&gt;I&amp;rsquo;ve set up my own reverse proxy with the German hosting provider &lt;strong&gt;netcup&lt;/strong&gt;. From my home network I establish an SSH tunnel that exposes only selected services toward the reverse proxy. The proxy itself is responsible for authentication and controls who can access what. I&amp;rsquo;ve configured it so that a client certificate is required for authentication. That&amp;rsquo;s how I&amp;rsquo;ve implemented my second protective layer – without opening any ports. At the same time it&amp;rsquo;s incredibly convenient, because authentication happens in the background and I don&amp;rsquo;t need to connect to a VPN or enter additional passwords. It&amp;rsquo;s certainly not the right solution for everyone – but for technically experienced users, it&amp;rsquo;s in my opinion a very elegant approach for the level of protection it provides.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/img/netcup_logo.png" width="20%"&gt;
&lt;/figure&gt;
&lt;p&gt;Netcup is a German hosting provider I&amp;rsquo;ve been a customer of since &lt;strong&gt;2011&lt;/strong&gt; — now with &lt;strong&gt;nine products&lt;/strong&gt; (domains, web hosting, vServers and root servers). I&amp;rsquo;ve been consistently satisfied over all those years. I particularly want to highlight the &lt;strong&gt;reliable infrastructure&lt;/strong&gt;, &lt;strong&gt;excellent support&lt;/strong&gt;, and &lt;strong&gt;transparent pricing&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;A real standout feature: &lt;strong&gt;special offers at Netcup are often permanent&lt;/strong&gt;. That sets Netcup clearly apart from other providers where the price typically rises after the first year.&lt;/p&gt;
&lt;p&gt;If you want to support me and my content, I&amp;rsquo;d be happy if you book through my referral link:
👉 &lt;a class="link" href="https://www.netcup.com/de/?ref=21226" target="_blank" rel="noopener"
&gt;https://www.netcup.com/de/?ref=21226&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I also have &lt;strong&gt;vouchers for new customers&lt;/strong&gt; for various Netcup products. Just reach out — I&amp;rsquo;m happy to help!&lt;/p&gt;
&lt;p&gt;Thank you for your support! It helps me keep creating content for you.&lt;/p&gt;
&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="whats-next"&gt;What&amp;rsquo;s Next
&lt;/h2&gt;&lt;p&gt;In the upcoming videos we&amp;rsquo;ll take a detailed look at each of these alternatives – so you can find the right solution for your situation.&lt;/p&gt;</description></item><item><title>Backing Up Home Assistant to Google Drive</title><link>https://smarthome-aber-sicher.de/en/blog/2025/04/03/backing-up-home-assistant-to-google-drive/</link><pubDate>Thu, 03 Apr 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/04/03/backing-up-home-assistant-to-google-drive/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/03/home-assistant-backups-auf-google-drive-sichern/cover.png" alt="Featured image of post Backing Up Home Assistant to Google Drive" /&gt;&lt;p&gt;My first backup video used Microsoft OneDrive as the example. After that, many comments came in with the same question: &lt;em&gt;And how does that work with Google Drive?&lt;/em&gt; Fair enough – not everyone wants to use Microsoft. So here&amp;rsquo;s the answer.&lt;/p&gt;
&lt;p&gt;The good news upfront: Home Assistant encrypts its backups by default before they reach the cloud. That means neither Google nor Microsoft can read the contents. This makes storing backups on a third-party service perfectly acceptable from a privacy standpoint – and takes the wind out of one of the most common objections.&lt;/p&gt;
&lt;p&gt;The setup with Google Drive is more complex than with OneDrive, however, because you need to complete a few steps in the Google Cloud Console. I&amp;rsquo;ll walk you through all of them.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/fHNHGOn31n8?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_17365556083904335422_hu_ea66d923b5f54e4c.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="home-assistant-backups-with-google-drive"&gt;Home Assistant Backups with Google Drive
&lt;/h2&gt;&lt;p&gt;In my &lt;a class="link" href="https://smarthome-aber-sicher.de/sas/ha-backups" &gt;previous video on backups&lt;/a&gt;, I introduced the new backup mechanism in Home Assistant starting with version 2025.1 and demonstrated – using Microsoft OneDrive as an example – how easy it is to store encrypted backups at a secure second location using the built-in options. The Microsoft OneDrive integration in Home Assistant is very straightforward, but not everyone wants to use OneDrive.&lt;/p&gt;
&lt;p&gt;So in this video, I want to show another popular alternative: integrating Google Drive into Home Assistant, step by step. The initial setup is more complex than with OneDrive, so I&amp;rsquo;ll walk through the entire process.&lt;/p&gt;
&lt;p&gt;By the way: since Home Assistant encrypts its backups by default, storing such sensitive backups on cloud storage from Microsoft or Google is not a privacy concern at all, and can in my assessment be done without hesitation.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;d like to familiarize yourself with the basics of the new backup mechanism first, I recommend watching &lt;a class="link" href="https://smarthome-aber-sicher.de/sas/ha-backups" &gt;&lt;strong&gt;this video&lt;/strong&gt;&lt;/a&gt; before continuing. In the following, I&amp;rsquo;ll focus exclusively on integrating Google Drive into the backup mechanism and won&amp;rsquo;t repeat the general overview of Home Assistant&amp;rsquo;s backup system here.&lt;/p&gt;
&lt;h2 id="prerequisites"&gt;Prerequisites
&lt;/h2&gt;&lt;p&gt;You&amp;rsquo;ll need a &lt;strong&gt;Google account&lt;/strong&gt; to get started. Your Home Assistant installation also needs to be running a version that supports the &lt;strong&gt;new backup mechanism&lt;/strong&gt;, i.e., version 2025 or later.&lt;/p&gt;
&lt;h3 id="what-you-need-to-set-up-in-google-and-why"&gt;What you need to set up in Google and why:
&lt;/h3&gt;&lt;p&gt;For Home Assistant to communicate with Google Drive, you need to create the following elements in the &lt;strong&gt;Google Cloud Console&lt;/strong&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Google Cloud Project&lt;/strong&gt;&lt;br&gt;
The project is the container where all configuration for your Home Assistant connection is collected. You can manage specific settings and all access centrally here.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;OAuth Consent Screen&lt;/strong&gt;&lt;br&gt;
This step is required to identify Home Assistant as an application authorized to communicate with your Google Drive. Here you define basic information about the application, such as name, email address, and access permissions.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;OAuth Client (Web Application)&lt;/strong&gt;&lt;br&gt;
The OAuth client is the access key that Home Assistant uses to authenticate with your Google account. It consists of two parts: the &lt;strong&gt;Client ID&lt;/strong&gt; and the &lt;strong&gt;Client Secret&lt;/strong&gt;. These are entered into Home Assistant later.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Google Drive API&lt;/strong&gt;&lt;br&gt;
This API allows Home Assistant to access your Google Drive and store or retrieve files there. It must be explicitly enabled for the connection to work.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Test Users&lt;/strong&gt;&lt;br&gt;
Since your application is not verified by Google, you need to add your own email address as a test user to gain access.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="integrating-google-drive-into-home-assistant"&gt;Integrating Google Drive into Home Assistant
&lt;/h2&gt;&lt;p&gt;In your Home Assistant installation, go to &lt;strong&gt;Settings&lt;/strong&gt; and then &lt;strong&gt;Integrations&lt;/strong&gt;. Click &lt;strong&gt;Add Integration&lt;/strong&gt; and search for the entry &lt;strong&gt;Google → Google Drive&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;The setup wizard that follows will ask you for a name (which you can choose freely), as well as an &lt;strong&gt;OAuth Client ID&lt;/strong&gt; and an &lt;strong&gt;OAuth Client Secret&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;In the upper section of the setup wizard, the necessary links are provided for creating this ID and secret. Let&amp;rsquo;s take a closer look at those now.&lt;/p&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/03/home-assistant-backups-auf-google-drive-sichern/anmeldedaten.png"&gt;
&lt;/figure&gt;
&lt;h3 id="google-cloud-platform-login"&gt;Google Cloud Platform Login
&lt;/h3&gt;&lt;p&gt;Click the &lt;strong&gt;OAuth Consent Screen&lt;/strong&gt; link and sign in with your Google account if you haven&amp;rsquo;t already. You&amp;rsquo;re now in the configuration area of the Google Cloud, in the &lt;strong&gt;Google Authentication Platform&lt;/strong&gt; dialog.&lt;/p&gt;
&lt;h3 id="creating-a-google-project"&gt;Creating a Google Project
&lt;/h3&gt;&lt;p&gt;If you&amp;rsquo;ve never been here before, you need to create a project first.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;Create Project&lt;/strong&gt; and give your project a name, for example &lt;code&gt;Home Assistant Backup&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create&lt;/strong&gt; and wait a few seconds for the project to be created.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="registering-an-oauth-application-with-google"&gt;Registering an OAuth Application with Google
&lt;/h3&gt;&lt;h4 id="creating-the-oauth-configuration"&gt;Creating the OAuth Configuration
&lt;/h4&gt;&lt;p&gt;You&amp;rsquo;ll now see the &lt;strong&gt;OAuth Overview&lt;/strong&gt; screen with a notice that the Authentication Platform has not yet been configured.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;Get started&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Enter a name for the app, for example &lt;code&gt;Home Assistant&lt;/code&gt; or &lt;code&gt;Home Assistant Backup&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Under &lt;strong&gt;User support email&lt;/strong&gt;, select your email address from the dropdown menu and click &lt;strong&gt;Next&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Under &lt;strong&gt;Audience&lt;/strong&gt;, select the option &lt;strong&gt;External&lt;/strong&gt; and click &lt;strong&gt;Next&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Under &lt;strong&gt;Contact Information&lt;/strong&gt;, enter your Google email address and click &lt;strong&gt;Next&lt;/strong&gt; again.&lt;/li&gt;
&lt;li&gt;Confirm the &lt;strong&gt;User Data Policy&lt;/strong&gt; with a click and select &lt;strong&gt;Continue&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Google will now confirm with the message &lt;strong&gt;OAuth Configuration Created&lt;/strong&gt; that everything was set up successfully.&lt;/p&gt;
&lt;h4 id="creating-an-oauth-client"&gt;Creating an OAuth Client
&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;On the screen shown, click &lt;strong&gt;Create OAuth Client&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Under &lt;strong&gt;Application Type&lt;/strong&gt;, select &lt;strong&gt;Web Application&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Leave the name as &lt;code&gt;Web Client 1&lt;/code&gt; or enter a custom name like &lt;code&gt;Home Assistant Backup&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Scroll down and under &lt;strong&gt;Authorized Redirect URIs&lt;/strong&gt;, click the &lt;strong&gt;Add URI&lt;/strong&gt; button.&lt;/li&gt;
&lt;li&gt;Paste the address that Home Assistant shows you in the setup dialog under &lt;strong&gt;Step 5&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/03/home-assistant-backups-auf-google-drive-sichern/oauth_created.png"&gt;
&lt;/figure&gt;
&lt;p&gt;Google will now display the generated &lt;strong&gt;Client ID&lt;/strong&gt; and &lt;strong&gt;Client Secret&lt;/strong&gt;. Copy this information and paste it into the Home Assistant setup dialog.&lt;/p&gt;
&lt;h4 id="configuring-audience-and-test-users"&gt;Configuring Audience and Test Users
&lt;/h4&gt;&lt;p&gt;To actively use the authentication, you still need to add your email address as a test user on the Google side.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;In the Google Cloud Console&lt;/strong&gt;, navigate from &lt;strong&gt;Clients&lt;/strong&gt; to &lt;strong&gt;Audience&lt;/strong&gt; in the left sidebar.&lt;/li&gt;
&lt;li&gt;Scroll down to &lt;strong&gt;Test Users&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Add Users&lt;/strong&gt; and enter your Google email address.&lt;/li&gt;
&lt;li&gt;Confirm your entry.&lt;/li&gt;
&lt;/ol&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/03/home-assistant-backups-auf-google-drive-sichern/test_user.png"&gt;
&lt;/figure&gt;
&lt;h3 id="enabling-the-google-drive-api"&gt;Enabling the Google Drive API
&lt;/h3&gt;&lt;p&gt;Before everything works, you need to enable the &lt;strong&gt;Google Drive API&lt;/strong&gt; in the Google Cloud Console so that Home Assistant can use it after authentication.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;In the Google Cloud Console&lt;/strong&gt;, switch from &lt;strong&gt;Google Authentication Platform&lt;/strong&gt; to &lt;strong&gt;APIs &amp;amp; Services&lt;/strong&gt; in the left navigation bar.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Enable APIs and Services&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Type &lt;strong&gt;Drive&lt;/strong&gt; into the search field.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Google Drive API&lt;/strong&gt; from the search results.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Enable&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This may take a few seconds. Afterwards, you&amp;rsquo;ll be redirected to a screen showing details about the Google Drive API usage.&lt;/p&gt;
&lt;h3 id="completing-the-connection-with-home-assistant"&gt;Completing the Connection with Home Assistant
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;Return to Home Assistant and click &lt;strong&gt;Open Website&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select your Google account again if prompted.&lt;/li&gt;
&lt;li&gt;Confirm Google&amp;rsquo;s warning that this application has not been verified by clicking &lt;strong&gt;Continue&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;On the next screen, confirm that you want to link your Google account with Home Assistant and click &lt;strong&gt;Continue&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/03/home-assistant-backups-auf-google-drive-sichern/oauth_dialog.png"&gt;
&lt;/figure&gt;
&lt;p&gt;At this point, a wizard to open &lt;strong&gt;My Home Assistant Links&lt;/strong&gt; may appear.&lt;/p&gt;
&lt;ol start="5"&gt;
&lt;li&gt;Enter your &lt;strong&gt;Home Assistant URL&lt;/strong&gt; once and confirm with &lt;strong&gt;Save&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Finally, the prompt &lt;strong&gt;Link Account Home Assistant&lt;/strong&gt; will appear, which you can confirm by clicking &lt;strong&gt;Link Account&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="completing-the-setup-in-home-assistant"&gt;Completing the Setup in Home Assistant
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;Return to Home Assistant, where you&amp;rsquo;ve already entered the &lt;strong&gt;API Key&lt;/strong&gt;, &lt;strong&gt;OAuth Key&lt;/strong&gt;, and &lt;strong&gt;Client Secret&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Open Website&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select your Google account and confirm that the app has not been verified by clicking &lt;strong&gt;Continue&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Confirm once more that you want to proceed with the configuration.&lt;/li&gt;
&lt;li&gt;Finally, click &lt;strong&gt;Link Account&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If everything has been set up correctly, you&amp;rsquo;ll receive a &lt;strong&gt;Success&lt;/strong&gt; message in Home Assistant confirming that the Google Drive configuration has been created.&lt;/p&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/03/home-assistant-backups-auf-google-drive-sichern/erfolg.png"&gt;
&lt;/figure&gt;
&lt;h3 id="configuring-backup-settings-in-home-assistant"&gt;Configuring Backup Settings in Home Assistant
&lt;/h3&gt;&lt;p&gt;You can now – as you may already know from the previous video – go to &lt;strong&gt;Settings &amp;gt; System &amp;gt; Backups&lt;/strong&gt;, then &lt;strong&gt;Backup Settings &amp;gt; Backup Locations&lt;/strong&gt; and &lt;strong&gt;enable Google Drive&lt;/strong&gt; there.&lt;/p&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/03/home-assistant-backups-auf-google-drive-sichern/backup_einstellungen.png"&gt;
&lt;/figure&gt;
&lt;p&gt;From now on, your backups will be saved not only locally, but also to &lt;strong&gt;Google Drive&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;→ If you want to understand why it&amp;rsquo;s important not to rely solely on manufacturer clouds, this article is worth a read: &lt;a class="link" href="https://smarthome-aber-sicher.de/post/cloud-ausgeschaltet/" &gt;Wenn dein Smart Home plötzlich dumm wird – und was du dagegen tun kannst&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Never Forget to Put the Bins Out Again with Home Assistant</title><link>https://smarthome-aber-sicher.de/en/blog/2025/04/01/never-forget-to-put-the-bins-out-again-with-home-assistant/</link><pubDate>Tue, 01 Apr 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/04/01/never-forget-to-put-the-bins-out-again-with-home-assistant/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/04/01/mit-home-assistant-nie-mehr-vergessen-die-m%C3%BClltonne-rauszustellen/cover.png" alt="Featured image of post Never Forget to Put the Bins Out Again with Home Assistant" /&gt;&lt;p&gt;Do you keep forgetting to put your bins out in time? With two Home Assistant integrations — &lt;strong&gt;Waste Collection Schedule&lt;/strong&gt; and &lt;strong&gt;Card-Mod&lt;/strong&gt; — you&amp;rsquo;ll get a prominent alert sent straight to your smartphone and displayed on your dashboard. Once the job is done, you can confirm the alert so it disappears from the dashboard. I&amp;rsquo;ll show you how to get this working in three simple steps.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/3qZaTjZ5iNw?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_16967025022293718217_hu_aa9770c7d6952516.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;The whole setup comes down to &lt;strong&gt;three simple steps&lt;/strong&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Install HACS and the integrations:&lt;/strong&gt; We install HACS and set up the required integrations.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Configure Waste Collection Schedule:&lt;/strong&gt; I&amp;rsquo;ll show you how to automatically capture your bin collection dates.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Set up the dashboard alert:&lt;/strong&gt; You&amp;rsquo;ll learn how to add a prominent warning to your dashboard and make it disappear once the bins are out.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;At the end, I&amp;rsquo;ll share a bonus tip — a small hidden feature of the integration. Let&amp;rsquo;s get started!&lt;/p&gt;
&lt;h2 id="installing-everything"&gt;Installing Everything
&lt;/h2&gt;&lt;h3 id="hacs"&gt;HACS
&lt;/h3&gt;&lt;p&gt;I&amp;rsquo;ll quickly walk through &lt;strong&gt;installing HACS&lt;/strong&gt; in case you haven&amp;rsquo;t done it yet. If you&amp;rsquo;re already familiar with it, feel free to skip to the next section — it only takes a moment, because &lt;strong&gt;HACS is really quick to set up&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;If you haven&amp;rsquo;t installed HACS yet, you&amp;rsquo;ll find all the details at &lt;a class="link" href="https://hacs.xyz" target="_blank" rel="noopener"
&gt;hacs.xyz&lt;/a&gt;. If you want to get it done fast, just run this command on your system:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;wget -O - https://get.hacs.xyz &lt;span class="p"&gt;|&lt;/span&gt; bash -
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Afterwards, &lt;strong&gt;restart Home Assistant&lt;/strong&gt; and you can set up HACS via &lt;strong&gt;&amp;ldquo;Add Integration&amp;rdquo;&lt;/strong&gt;. This requires authentication via GitHub. You&amp;rsquo;ll be guided through the process almost automatically. Once everything is done, you&amp;rsquo;ll see a new &lt;strong&gt;HACS&lt;/strong&gt; entry in the Home Assistant sidebar on the right.&lt;/p&gt;
&lt;h3 id="waste-collection-schedule--card-mod"&gt;Waste Collection Schedule &amp;amp; Card-Mod
&lt;/h3&gt;&lt;p&gt;Now we need &lt;strong&gt;two integrations&lt;/strong&gt;, both available through HACS:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Waste Collection Schedule&lt;/strong&gt; (for parsing bin collection dates)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Card-Mod&lt;/strong&gt; (for a visually prominent display on your dashboard)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Steps:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;In &lt;strong&gt;Home Assistant&lt;/strong&gt;, go to &lt;strong&gt;HACS&lt;/strong&gt; in the sidebar.&lt;/li&gt;
&lt;li&gt;Search for &lt;strong&gt;&amp;ldquo;card-mod&amp;rdquo;&lt;/strong&gt; and &lt;strong&gt;&amp;ldquo;waste collection&amp;rdquo;&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Download both integrations by clicking the menu on the right and confirming &lt;strong&gt;&amp;ldquo;Download&amp;rdquo;&lt;/strong&gt; twice.&lt;/li&gt;
&lt;li&gt;A restart of Home Assistant may be required after installation.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="setting-up-waste-collection-schedule-wcs"&gt;Setting Up Waste Collection Schedule (WCS)
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Waste Collection Schedule (WCS)&lt;/strong&gt; supports a wide range of providers. If your provider isn&amp;rsquo;t listed but offers calendar files in ICAL format, you can easily add them via &lt;strong&gt;&amp;ldquo;Generic&amp;rdquo;&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;In a spot check of various districts in Germany, I didn&amp;rsquo;t find a single one that wasn&amp;rsquo;t already in the list.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Setting up your provider in WCS:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Go to: &lt;strong&gt;Settings &amp;gt; Integrations &amp;gt; Add Integration&lt;/strong&gt; and select &lt;strong&gt;&amp;ldquo;Waste Collection Schedule&amp;rdquo;&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Select your country&lt;/strong&gt;, e.g. &lt;strong&gt;Germany&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Search for your source:&lt;/strong&gt; Look up your city or district.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Adding the URL:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Copy the URL from your waste management provider&amp;rsquo;s website.&lt;/li&gt;
&lt;li&gt;Paste it into the setup dialog under &lt;strong&gt;&amp;ldquo;URL&amp;rdquo;&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="creating-sensors"&gt;Creating Sensors
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Give each sensor a descriptive name, for example &lt;strong&gt;&amp;ldquo;Green Bin&amp;rdquo;&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;In the &lt;strong&gt;&amp;ldquo;Value Template Preset&amp;rdquo;&lt;/strong&gt; field, select &lt;strong&gt;&amp;ldquo;Numeric Days To&amp;rdquo;&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;At the bottom under &lt;strong&gt;&amp;ldquo;Types&amp;rdquo;&lt;/strong&gt;: Choose the correct label, e.g. &lt;strong&gt;&amp;ldquo;Organic Waste&amp;rdquo;&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="automations--dashboard"&gt;Automations &amp;amp; Dashboard
&lt;/h2&gt;&lt;p&gt;There are several ways to use this information through automations or dashboard visualizations. I&amp;rsquo;ll show you two options:&lt;/p&gt;
&lt;h3 id="option-1-notification-via-automation"&gt;Option 1: Notification via Automation
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;Go to: Settings &amp;gt; Automations and create a new automation.&lt;/li&gt;
&lt;li&gt;Give it a name, for example &amp;ldquo;Bin Reminders&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;Set the trigger: Click &amp;ldquo;Add Trigger&amp;rdquo; &amp;gt; &amp;ldquo;Time &amp;amp; Location&amp;rdquo; &amp;gt; &amp;ldquo;Time&amp;rdquo; &amp;gt; &amp;ldquo;Fixed Time&amp;rdquo;.
&lt;ul&gt;
&lt;li&gt;Choose a time when you&amp;rsquo;d like to be notified, e.g. late afternoon the day before collection.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Define conditions: Add a &amp;ldquo;Choose&amp;rdquo; block to distinguish between different bin types.
&lt;ul&gt;
&lt;li&gt;For example: if the state of the green bin sensor is &amp;ldquo;1&amp;rdquo; (meaning collection is scheduled for the next day), you want to be notified the afternoon before.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Set actions:
&lt;ul&gt;
&lt;li&gt;Choose &amp;ldquo;Send Notification&amp;rdquo; and enter a message, e.g. &amp;ldquo;Put the green bin out&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Add a separate option for each additional bin type and define the corresponding conditions and actions.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This automation ensures you reliably receive reminders whenever it&amp;rsquo;s time to put your bins out.&lt;/p&gt;
&lt;h3 id="option-2-display-on-the-home-assistant-dashboard"&gt;Option 2: Display on the Home Assistant Dashboard
&lt;/h3&gt;&lt;p&gt;I know the problem all too well: you get a notification, you register it, and then forget about it anyway. In the worst case, you accidentally swipe it away.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s why I&amp;rsquo;ve found it far more effective to display the reminder on the Home Assistant dashboard — in a way that only disappears once you actively confirm it.&lt;/p&gt;
&lt;p&gt;You can easily extend the automation you just created to handle this.&lt;/p&gt;
&lt;h4 id="preparation-create-a-helper"&gt;Preparation: Create a Helper
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;Go to: Settings &amp;gt; Devices &amp;amp; Services &amp;gt; &amp;ldquo;Helpers&amp;rdquo; tab.&lt;/li&gt;
&lt;li&gt;Create a new helper: Select &amp;ldquo;Toggle&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;Name the toggle something like &amp;ldquo;Put green bin out&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;This toggle will be used to display and manage the bin collection status on your dashboard.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="extending-the-automation"&gt;Extending the Automation
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;Go back to the automation you created and open the configuration for &amp;ldquo;Option 1&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;Add an additional action:
&lt;ul&gt;
&lt;li&gt;Alongside the notification, add another action:&lt;/li&gt;
&lt;li&gt;&amp;ldquo;Input Helper&amp;rdquo; &amp;gt; &amp;ldquo;Turn on&amp;rdquo; &amp;gt; select your helper &amp;ldquo;Put green bin out&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="setting-up-the-dashboard-display"&gt;Setting Up the Dashboard Display
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;Add a tile to your dashboard that displays the &amp;ldquo;Put green bin out&amp;rdquo; helper.&lt;/li&gt;
&lt;li&gt;Configure visibility:
&lt;ul&gt;
&lt;li&gt;Set a condition so that this tile is only shown when the helper is turned on.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Your automation will now activate the helper the day before collection and display it on your dashboard. Once you&amp;rsquo;ve put the bin out, you tap the tile, which sets the toggle back to &amp;ldquo;Off&amp;rdquo; — and the tile disappears.&lt;/p&gt;
&lt;p&gt;The whole cycle repeats in one or two weeks, and you&amp;rsquo;re guaranteed never to forget to put your bins out on time again. Unless you&amp;rsquo;re on holiday and can&amp;rsquo;t see the dashboard from there.&lt;/p&gt;
&lt;h2 id="fun-fact"&gt;Fun Fact
&lt;/h2&gt;&lt;p&gt;Thanks to the &lt;strong&gt;Waste Collection Schedule&lt;/strong&gt; integration, you can also &lt;strong&gt;display your collection dates in Home Assistant&amp;rsquo;s calendar view&lt;/strong&gt;. So if you ever want to see your entire bin collection schedule at a glance, that&amp;rsquo;s easily possible.&lt;/p&gt;
&lt;p&gt;And that&amp;rsquo;s it! Your Home Assistant will now reliably remind you to put the bins out on time.&lt;/p&gt;</description></item><item><title>Home Assistant Backups 2025.1: Restore Your Data Safely</title><link>https://smarthome-aber-sicher.de/en/blog/2025/03/02/home-assistant-backups-in-2025.1-your-data-safe-and-recoverable-at-any-time/</link><pubDate>Sun, 02 Mar 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/03/02/home-assistant-backups-in-2025.1-your-data-safe-and-recoverable-at-any-time/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/03/02/home-assistant-backups-in-2025.1-deine-daten-sicher-und-jederzeit-wiederherstellbar/cover.webp" alt="Featured image of post Home Assistant Backups 2025.1: Restore Your Data Safely" /&gt;&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/qScjDnK1pG8?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_16372363206981677025_hu_467953a3dc953383.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="why-are-backups-important"&gt;Why Are Backups Important?
&lt;/h2&gt;&lt;p&gt;Imagine your Home Assistant system stops responding. Your automations, devices, and integrations are gone — everything you set up over months or even years, lost. That thought alone is unsettling, isn&amp;rsquo;t it? But that&amp;rsquo;s exactly what can happen if you don&amp;rsquo;t make regular backups.&lt;/p&gt;
&lt;p&gt;Fortunately, Home Assistant version 2025.1 introduces an improved backup system that is simpler, more secure, and more powerful than ever before. In this article, I&amp;rsquo;ll explain why backups are essential, how to set them up in Home Assistant, and which strategies you can use to best protect your data.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="whats-new-in-home-assistant-20251"&gt;What&amp;rsquo;s New in Home Assistant 2025.1?
&lt;/h2&gt;&lt;p&gt;The new backup feature makes it even easier to secure your installation. Here are the key improvements:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Automated backups&lt;/strong&gt; can be scheduled directly within the system.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloud storage without extra add-ons&lt;/strong&gt; — now directly to Google Drive, Microsoft OneDrive, or a Synology NAS.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Encryption by default&lt;/strong&gt; protects your backups from unauthorized access.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Easy restoration&lt;/strong&gt; — regardless of which installation method you use for Home Assistant.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This eliminates the need for external scripts or community add-ons to create regular backups.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="comparison-old-vs-new-backup-method"&gt;Comparison: Old vs. New Backup Method
&lt;/h2&gt;&lt;h3 id="previous-method"&gt;Previous Method
&lt;/h3&gt;&lt;p&gt;In the past, the backup functionality in Home Assistant was fairly rudimentary. You had to trigger backups manually through the interface or rely on add-ons like &lt;em&gt;Google Drive Backup&lt;/em&gt; to store backups automatically in the cloud. A simple, integrated solution for regular, secured backups simply didn&amp;rsquo;t exist.&lt;/p&gt;
&lt;h3 id="new-method-in-20251"&gt;New Method in 2025.1
&lt;/h3&gt;&lt;p&gt;With the new backup feature, you can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Run backups automatically on a schedule&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Store backups directly in the cloud&lt;/strong&gt;, without third-party add-ons&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Selectively back up or exclude specific components&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Perform an easy restoration with just a few clicks&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In short: it has never been this easy to secure your Home Assistant system!&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="step-by-step-how-to-create-a-backup"&gt;Step by Step: How to Create a Backup
&lt;/h2&gt;&lt;p&gt;Watch the video above for a detailed walkthrough of the process.&lt;/p&gt;
&lt;p&gt;Tip: &lt;strong&gt;Occasionally test the restoration&lt;/strong&gt; on a separate system to make sure your backups actually work.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="backup-storage-locations--whats-the-best-option"&gt;Backup Storage Locations – What&amp;rsquo;s the Best Option?
&lt;/h2&gt;&lt;p&gt;Home Assistant 2025.1 offers various options for storing your backups:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Local (SD card or SSD)&lt;/strong&gt; → Quickly accessible, but vulnerable to hardware failures.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloud (Google Drive, OneDrive, Synology NAS)&lt;/strong&gt; → Safe from hardware issues, but dependent on internet access.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hybrid solution (local + cloud)&lt;/strong&gt; → The best strategy for maximum security!&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Recommendation: &lt;strong&gt;Keep at least 7–10 backups&lt;/strong&gt; to have multiple restore points available.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="best-practices-for-your-backup-strategy"&gt;Best Practices for Your Backup Strategy
&lt;/h2&gt;&lt;p&gt;To make sure you&amp;rsquo;re always on the safe side, keep these tips in mind:&lt;/p&gt;
&lt;p&gt;✔ &lt;strong&gt;Schedule regular backups:&lt;/strong&gt; Daily or weekly, depending on your usage.
✔ &lt;strong&gt;Use encryption:&lt;/strong&gt; Especially when storing backups in the cloud.
✔ &lt;strong&gt;Diversify backup storage locations:&lt;/strong&gt; Local + cloud for maximum security.
✔ &lt;strong&gt;Store important passwords securely:&lt;/strong&gt; Especially for encrypted backups.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="conclusion-backups-are-a-must-for-your-smart-home"&gt;Conclusion: Backups Are a Must for Your Smart Home!
&lt;/h2&gt;&lt;p&gt;With Home Assistant 2025.1, there are no more excuses to skip backups. The new features make securing your system enormously easy and turn restoration into a breeze when things go wrong.&lt;/p&gt;
&lt;p&gt;Try out the new backup feature and make sure your smart home stays protected at all times!&lt;/p&gt;
&lt;h2 id="related-articles"&gt;Related Articles
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/backups-2025-gdrive/" &gt;Backing Up Home Assistant to Google Drive&lt;/a&gt; – Step-by-step guide to the Google Drive integration, including OAuth setup&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/cloud-vs-lokal/" &gt;Cloud vs. Local – What You Need to Know About Storing Your Data&lt;/a&gt; – Why local backups alone aren&amp;rsquo;t enough and when cloud storage makes sense&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Cloud Integrations vs. Local Integrations</title><link>https://smarthome-aber-sicher.de/en/blog/2025/01/03/cloud-integrations-vs.-local-integrations/</link><pubDate>Fri, 03 Jan 2025 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2025/01/03/cloud-integrations-vs.-local-integrations/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2025/01/03/cloud-integrationen-vs.-lokale-integrationen/cover.png" alt="Featured image of post Cloud Integrations vs. Local Integrations" /&gt;&lt;p&gt;Bose simply pulled the plug. Overnight, SoundTouch speakers that cost well over €1,000 turned into expensive paperweights – because the manufacturer shut down its cloud service. Vorwerk did the same thing with Neato robot vacuums. The list keeps growing.&lt;/p&gt;
&lt;p&gt;This is the fundamental problem with cloud integrations in a smart home: you buy a device, but you don&amp;rsquo;t really own the functionality behind it. That belongs to the manufacturer – and they can take it back at any time. Here I&amp;rsquo;ll look at what that means in practice, and when cloud integrations still make sense.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/35az2bnC174?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_15994369557289996007_hu_229da1170bf7c9a.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-are-cloud-and-local-integrations"&gt;What are cloud and local integrations?
&lt;/h2&gt;&lt;p&gt;Cloud integrations connect your devices to external servers over the internet. This lets you access them from anywhere in the world. Examples include Google Nest, Amazon Alexa, and Ring cameras. The cloud offers convenience, but it also comes with risks.&lt;/p&gt;
&lt;p&gt;Local integrations, by contrast, run directly in your home network – with no internet connection required. Typical examples are Zigbee devices or ESPHome sensors controlled via a local hub. Local integrations give you more control and independence.&lt;/p&gt;
&lt;h2 id="risks-of-cloud-integrations"&gt;Risks of cloud integrations
&lt;/h2&gt;&lt;h3 id="privacy-and-data-security"&gt;Privacy and data security
&lt;/h3&gt;&lt;p&gt;Many cloud devices send sensitive data to manufacturer servers. A prominent example is the VW data leak in 2024, where a vulnerability exposed the data of 800,000 customers. Security gaps like this can give unauthorized third parties access to your private data.&lt;/p&gt;
&lt;h3 id="vendor-dependency"&gt;Vendor dependency
&lt;/h3&gt;&lt;p&gt;Another risk is dependence on the manufacturer&amp;rsquo;s services. A well-known example is the Revolv Smart Home Hub, whose servers were shut down by Google in 2016. Users were suddenly left with useless hardware.&lt;/p&gt;
&lt;h3 id="attack-surface-for-hackers"&gt;Attack surface for hackers
&lt;/h3&gt;&lt;p&gt;Insecure cloud connections can serve as an entry point into your home network. Once an attacker gains access to a cloud-connected device, they could potentially compromise other devices on your network.&lt;/p&gt;
&lt;h3 id="dependence-on-internet-connectivity"&gt;Dependence on internet connectivity
&lt;/h3&gt;&lt;p&gt;Cloud devices rely on a stable internet connection. If a server goes down or your internet is disrupted, they often stop working entirely. This can cause serious problems with security-critical applications like smart door locks.&lt;/p&gt;
&lt;h2 id="advantages-of-local-integrations"&gt;Advantages of local integrations
&lt;/h2&gt;&lt;h3 id="full-data-control"&gt;Full data control
&lt;/h3&gt;&lt;p&gt;With local integrations, all data stays within your home network. You&amp;rsquo;re not relying on a third party&amp;rsquo;s data security practices and you minimize the risk of data leaks.&lt;/p&gt;
&lt;h3 id="independence-from-external-services"&gt;Independence from external services
&lt;/h3&gt;&lt;p&gt;Local integrations work even without an internet connection. A Zigbee light switch, for example, keeps working even if your internet goes down.&lt;/p&gt;
&lt;h3 id="smaller-attack-surface"&gt;Smaller attack surface
&lt;/h3&gt;&lt;p&gt;Because there&amp;rsquo;s no connection to the internet, there are fewer ways for attackers to compromise your network.&lt;/p&gt;
&lt;h3 id="fast-response-times"&gt;Fast response times
&lt;/h3&gt;&lt;p&gt;Local systems react instantly, since no data has to travel over the internet. This is a decisive advantage for automations and scenarios that depend on precise timing.&lt;/p&gt;
&lt;h2 id="how-to-make-cloud-integrations-more-secure"&gt;How to make cloud integrations more secure
&lt;/h2&gt;&lt;p&gt;If you want or need to use cloud integrations, there are steps you can take to minimize the risk:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Two-factor authentication (2FA):&lt;/strong&gt; Enable 2FA to make unauthorized access to your accounts harder.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Strong passwords:&lt;/strong&gt; Use complex, unique passwords for every service.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Regular updates:&lt;/strong&gt; Keep all devices and apps up to date to close security vulnerabilities.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Use a separate network:&lt;/strong&gt; Place cloud devices on a guest network to protect your main network.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="when-should-you-choose-cloud-or-local"&gt;When should you choose cloud or local?
&lt;/h2&gt;&lt;p&gt;Cloud integrations are a good fit if you want to access your devices from anywhere or need complex additional features that depend on external services.&lt;/p&gt;
&lt;p&gt;Local integrations are the better choice if you prioritize privacy, security, and reliability.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;The choice between cloud and local integrations depends heavily on your individual needs. Both approaches have their pros and cons, but with the right security measures you can minimize the risks. My recommendation: use local integrations wherever possible, and secure your cloud devices carefully. That makes your smart home not just smarter – but also more secure.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="related-articles"&gt;Related articles
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/cloud-ausgeschaltet/" &gt;When your smart home suddenly turns dumb – and what you can do about it&lt;/a&gt; – Concrete examples of manufacturers shutting down their cloud: Bose SoundTouch, Neato, and more.&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/backups-2025/" &gt;Home Assistant Backups in 2025 – Your data safe and recoverable at any time&lt;/a&gt; – If you rely on local control, you should also back up your data locally.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Smart Electricity Tariff for Your Smart Home: Worth It?</title><link>https://smarthome-aber-sicher.de/en/blog/2024/12/25/a-smart-electricity-tariff-for-my-smart-home-is-it-worth-it/</link><pubDate>Wed, 25 Dec 2024 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2024/12/25/a-smart-electricity-tariff-for-my-smart-home-is-it-worth-it/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2024/12/25/smarter-stromtarif-f%C3%BCr-mein-smarthome-lohnt-sich-das/cover.png" alt="Featured image of post Smart Electricity Tariff for Your Smart Home: Worth It?" /&gt;&lt;p&gt;€180 less per year for charging the EV – that&amp;rsquo;s not a promise from a provider, but a concrete real-world calculation: anyone who charges their car at home and has the right tariff simply pays less, because electricity is significantly cheaper at night or when there&amp;rsquo;s plenty of wind and solar energy on the grid.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s exactly what dynamic electricity tariffs make possible. Whether it makes sense for you depends on one key factor.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/pjQroGkBFAc?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_8860139190400304448_hu_dfeac86e3f2ffc24.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;h2 id="what-is-a-dynamic-electricity-tariff"&gt;What Is a Dynamic Electricity Tariff?
&lt;/h2&gt;&lt;p&gt;Dynamic electricity tariffs are based on fluctuating prices that follow supply and demand on the electricity market. Unlike traditional fixed-price tariffs or time-of-use tariffs with fixed peak and off-peak windows, prices under a dynamic tariff can change every hour or even every quarter-hour.&lt;/p&gt;
&lt;p&gt;For such a tariff to work, you need either a &lt;strong&gt;smart meter&lt;/strong&gt; or an additional device that records your electricity consumption in real time. Only then can your provider match your actual usage data to the dynamic prices.&lt;/p&gt;
&lt;h2 id="pros-and-cons-of-different-electricity-tariffs"&gt;Pros and Cons of Different Electricity Tariffs
&lt;/h2&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tariff type&lt;/th&gt;
&lt;th&gt;Price changes&lt;/th&gt;
&lt;th&gt;Price guarantee&lt;/th&gt;
&lt;th&gt;Savings potential&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Fixed tariff&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;td&gt;Fixed&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Time-of-use tariff&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Fixed time windows&lt;/td&gt;
&lt;td&gt;Partial&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Dynamic tariff&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Hourly / every 15 minutes&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;td&gt;High&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;A dynamic tariff is most worthwhile if you own &lt;strong&gt;high-consumption devices&lt;/strong&gt; such as washing machines, tumble dryers, dishwashers, or electric vehicles that you can run flexibly.&lt;/p&gt;
&lt;h2 id="calculation-examples-how-much-can-you-save"&gt;Calculation Examples: How Much Can You Save?
&lt;/h2&gt;&lt;h3 id="1-washing-machine-and-tumble-dryer"&gt;&lt;strong&gt;1. Washing Machine and Tumble Dryer&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Assumptions&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;2 laundry days per week.&lt;/li&gt;
&lt;li&gt;Energy use: 1 kWh (washing machine) + 2 kWh (dryer).&lt;/li&gt;
&lt;li&gt;Fixed tariff: 30 cents/kWh.&lt;/li&gt;
&lt;li&gt;Dynamic tariff: Average 25 cents/kWh.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Calculation&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Saving per laundry day: 3 kWh × 5 cents = 15 cents.&lt;/li&gt;
&lt;li&gt;Saving per year: 15 cents × 104 laundry days = €15.60.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="2-electric-vehicle"&gt;&lt;strong&gt;2. Electric Vehicle&lt;/strong&gt;
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Assumptions&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Annual mileage: 20,000 km.&lt;/li&gt;
&lt;li&gt;Energy use: 20 kWh/100 km.&lt;/li&gt;
&lt;li&gt;90 % of charging done at home (3,600 kWh).&lt;/li&gt;
&lt;li&gt;Saving: 5 cents/kWh.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Calculation&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;3,600 kWh × 5 cents = &lt;strong&gt;€180 savings per year&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="smart-home-automation"&gt;Smart Home Automation
&lt;/h2&gt;&lt;p&gt;With a smart home you can optimise your consumption without constantly having to check for cheap electricity windows. For example, you can set your EV to automatically charge during the cheapest hours while still being ready to drive in the morning.&lt;/p&gt;
&lt;h2 id="my-experience-with-tibber"&gt;My Experience With Tibber
&lt;/h2&gt;&lt;p&gt;One provider offering dynamic electricity tariffs is &lt;strong&gt;Tibber&lt;/strong&gt;. With a monthly base fee of only €3.99 and transparent pricing, Tibber was an excellent choice for me for a while. Particularly handy: the &lt;strong&gt;Tibber app&lt;/strong&gt; shows you hourly electricity prices in advance and makes it easy to reach customer support.&lt;/p&gt;
&lt;p&gt;Note: I&amp;rsquo;m no longer a Tibber customer these days, but the principle works with any provider that offers dynamic tariffs.&lt;/p&gt;
&lt;h2 id="just-want-to-keep-an-eye-on-your-consumption"&gt;Just Want to Keep an Eye on Your Consumption?
&lt;/h2&gt;&lt;p&gt;Don&amp;rsquo;t want a dynamic tariff (yet), just want to see where your electricity goes? That&amp;rsquo;s much simpler and cheaper: the &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F9685751%2Fobi-energy-tracker-smarter-stromzaehler-ausleser-mit-heyobi-app" target="_blank" rel="noopener"
&gt;OBI Energy Tracker&lt;/a&gt;* attaches to your electricity meter and shows your consumption in the heyOBI app – no tariff switch and no expensive smart-meter retrofit.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;A dynamic electricity tariff can help you save on energy costs, especially if you own high-consumption devices like an EV. With the right automation, using it becomes simple and efficient.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Securing Home Assistant: 5 Mistakes You Must Avoid</title><link>https://smarthome-aber-sicher.de/en/blog/2024/12/13/securing-home-assistant-5-security-mistakes-to-avoid-in-your-smart-home/</link><pubDate>Fri, 13 Dec 2024 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2024/12/13/securing-home-assistant-5-security-mistakes-to-avoid-in-your-smart-home/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2024/12/13/home-assistant-absichern-5-fehler-die-du-in-deinem-smarthome-vermeiden-solltest/cover.jpeg" alt="Featured image of post Securing Home Assistant: 5 Mistakes You Must Avoid" /&gt;&lt;p&gt;In the Home Assistant forum, someone opened their port 8123 in January 2025 – and described how login attacks started within minutes. Massive, automated, relentless. This is not an isolated case. Using services like Shodan, attackers can find open Home Assistant instances in seconds.&lt;/p&gt;
&lt;p&gt;Most of these attacks are preventable. Not through complicated measures, but through five things that many people simply never set up.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/yjVJnARQbbU?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_16893148591523117925_hu_e8e4da43326a03cd.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;Home Assistant was built with privacy and IT security in mind, letting you run your smart home completely locally and independently of manufacturers. The local approach minimizes the risk of data leaks. With options like &lt;a class="link" href="https://www.home-assistant.io/docs/configuration/securing/" target="_blank" rel="noopener"
&gt;SSL&lt;/a&gt;, &lt;a class="link" href="https://www.home-assistant.io/docs/authentication/" target="_blank" rel="noopener"
&gt;user management&lt;/a&gt;, and &lt;a class="link" href="https://www.home-assistant.io/faq/release/" target="_blank" rel="noopener"
&gt;regular updates&lt;/a&gt;, you can make Home Assistant one of the most secure vendor-independent solutions available – if you use the security features correctly.&lt;/p&gt;
&lt;p&gt;Many users overlook important security features or don&amp;rsquo;t take full advantage of what Home Assistant offers. The problem: this creates unnecessary attack surfaces, so-called &lt;a class="link" href="https://en.wikipedia.org/wiki/Attack_vector" target="_blank" rel="noopener"
&gt;attack vectors&lt;/a&gt;, through which hackers could break into your smart home. Whether it&amp;rsquo;s weak passwords, unsecured connections, or outdated software – it&amp;rsquo;s often small oversights that can have major consequences.&lt;/p&gt;
&lt;p&gt;In this article, I&amp;rsquo;ll show you 5 typical security mistakes and how to avoid them. I&amp;rsquo;ll give you tips to make Home Assistant even more secure. Whether you&amp;rsquo;re just setting up your smart home or have been using it for a while – these tips will help you identify potential vulnerabilities and better protect your home.&lt;/p&gt;
&lt;h2 id="mistake-1-using-weak-passwords-or-default-passwords"&gt;Mistake 1: Using Weak Passwords or Default Passwords
&lt;/h2&gt;&lt;p&gt;A classic that is still underestimated: weak or even pre-set default passwords. Many smart home devices connected to Home Assistant come with simple default passwords like &amp;lsquo;admin&amp;rsquo; or &amp;lsquo;1234&amp;rsquo;. And the problem is: these passwords are not only easy to remember, they&amp;rsquo;re also easy to hack. Attackers use automated programs that try exactly these default passwords in seconds.&lt;/p&gt;
&lt;p&gt;Why is this dangerous? A weak password can allow attackers not only to gain access to your smart home, but through Home Assistant to all your devices and automations. Imagine someone being able to control your lights, access cameras, or even disable alarm systems – that would be an absolute nightmare.&lt;/p&gt;
&lt;p&gt;The solution is fortunately simple: change default passwords immediately after setting up your device. Use a strong password with at least 12 characters – length is more important than complexity here. Lowercase letters and digits are often perfectly sufficient, as long as the length is right.&lt;/p&gt;
&lt;p&gt;Even better is using a password manager like &lt;a class="link" href="https://keepass.info/download.html" target="_blank" rel="noopener"
&gt;KeePass&lt;/a&gt;. It not only generates secure passwords but also stores them securely, so you only need to remember one master password.&lt;/p&gt;
&lt;p&gt;My tip: Give every user and every service in your smart home its own password. This minimizes the risk of a single compromised password putting your entire smart home at risk.&lt;/p&gt;
&lt;h2 id="mistake-2-ignoring-firmware-and-add-on-updates"&gt;Mistake 2: Ignoring Firmware and Add-on Updates
&lt;/h2&gt;&lt;p&gt;Another major mistake that&amp;rsquo;s made frequently: not performing updates regularly. Home Assistant itself, as well as the devices you control with it, run on software that needs to be updated regularly – not just to get new features, but above all to close security vulnerabilities.&lt;/p&gt;
&lt;p&gt;Why is this so important? Outdated software is a goldmine for hackers. When vulnerabilities become known – and this happens more often than you might think based on media coverage – attackers can specifically search for devices with those security gaps. One &lt;a class="link" href="http://www.insecam.org" target="_blank" rel="noopener"
&gt;website&lt;/a&gt;, for example, automatically lists surveillance cameras found to be unprotected from access.&lt;/p&gt;
&lt;p&gt;The good news: Home Assistant makes it easy to stay up to date. You can immediately see when updates are available on the dashboard. And with one click, you can install them. The same applies to &lt;em&gt;custom components&lt;/em&gt; you&amp;rsquo;ve installed through the Home Assistant Community Store (HACS).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2024/12/13/home-assistant-absichern-5-fehler-die-du-in-deinem-smarthome-vermeiden-solltest/ha_updates.png"
width="2430"
height="1272"
srcset="https://smarthome-aber-sicher.de/blog/2024/12/13/home-assistant-absichern-5-fehler-die-du-in-deinem-smarthome-vermeiden-solltest/ha_updates_hu_7419bac8bc22aa6f.webp 480w, https://smarthome-aber-sicher.de/blog/2024/12/13/home-assistant-absichern-5-fehler-die-du-in-deinem-smarthome-vermeiden-solltest/ha_updates_hu_5280162e57170270.webp 1024w"
loading="lazy"
alt="Home Assistant displays available updates clearly"
class="gallery-image"
data-flex-grow="191"
data-flex-basis="458px"
&gt;&lt;/p&gt;
&lt;p&gt;My tip: Schedule regular maintenance windows for your smart home – at least once a month. Set aside 15 minutes to apply all available updates for Home Assistant, your add-ons, and devices. This not only makes your system more secure but also ensures everything runs smoothly.&lt;/p&gt;
&lt;h2 id="mistake-3-not-setting-up-a-separate-network-for-smart-home-devices"&gt;Mistake 3: Not Setting Up a Separate Network for Smart Home Devices
&lt;/h2&gt;&lt;p&gt;A common mistake many smart home users make: connecting all their devices – from lights to thermostats to cameras – to the same network used by their laptops, smartphones, and tablets. This sounds convenient at first, but it&amp;rsquo;s exactly what can become a problem.&lt;/p&gt;
&lt;p&gt;What risks does this create? Smart home devices often have fewer security mechanisms than your laptop or smartphone. Many devices are only minimally secured or are based on older technologies that are vulnerable to attacks. If a hacker compromises a single device on your network – for example, a cheap smart plug or an unsecured camera – they gain the same access to your home network as a visitor in your home to whom you&amp;rsquo;ve given access to your private Wi-Fi.&lt;/p&gt;
&lt;p&gt;The solution? Set up a separate network for your smart home devices. This sounds complicated, but it&amp;rsquo;s easier than you might think.&lt;/p&gt;
&lt;p&gt;Most modern routers offer the option to create a so-called &lt;a class="link" href="https://avm.de/service/wissensdatenbank/dok/FRITZ-Box-7590/294_WLAN-Gastzugang-in-FRITZ-Box-einrichten/" target="_blank" rel="noopener"
&gt;guest network&lt;/a&gt;. You can use this not only for visitors but also for smart home devices that communicate via the manufacturer&amp;rsquo;s cloud – because those are exactly the ones critical to the security of your home network.&lt;/p&gt;
&lt;p&gt;Your Home Assistant installation, on the other hand, should be placed in your regular home network along with the smart home devices that don&amp;rsquo;t require internet communication. If you want to be extra safe, you can block those devices from accessing the internet through your router settings.&lt;/p&gt;
&lt;p&gt;Some routers like FritzBoxes ([buy here – affiliate link])(&lt;a class="link" href="https://amzn.to/3W6bgOr" target="_blank" rel="noopener"
&gt;https://amzn.to/3W6bgOr&lt;/a&gt;) or UniFi Access Points ([buy here – affiliate link])(&lt;a class="link" href="https://amzn.to/4foMsb8" target="_blank" rel="noopener"
&gt;https://amzn.to/4foMsb8&lt;/a&gt;) make it especially easy to set up guest networks and block access to the main network.&lt;/p&gt;
&lt;p&gt;You can tell whether a smart home device communicates via the cloud in Home Assistant by checking the relevant integration. If it says &amp;ldquo;Dependent on the internet,&amp;rdquo; that integration and its associated device is such a candidate. Devices that don&amp;rsquo;t communicate with the internet but directly with your Home Assistant installation cannot be reached by a hacker from the internet and are therefore less critical.&lt;/p&gt;
&lt;h2 id="mistake-4-not-using-two-factor-authentication"&gt;Mistake 4: Not Using Two-Factor Authentication
&lt;/h2&gt;&lt;p&gt;A frequent mistake that often happens out of convenience or lack of awareness: not enabling two-factor authentication – or 2FA for short. Yet 2FA is one of the simplest and most effective measures to prevent unauthorized access to important systems like your Home Assistant installation and thus your smart home.&lt;/p&gt;
&lt;p&gt;Why should you care? Imagine someone gets hold of your password – through phishing, a data leak, or because you reuse the password across services. Without 2FA, attackers can immediately access your Home Assistant and control your entire smart home: capture camera feeds, manipulate automations, or view sensitive data. With 2FA, however, they also need a second confirmation code generated only on your device – which makes it nearly impossible for hackers to hijack your account.&lt;/p&gt;
&lt;p&gt;The good news: Home Assistant supports 2FA and makes setup straightforward. Simply go to &lt;em&gt;Settings&lt;/em&gt; under &lt;em&gt;Users&lt;/em&gt; and enable two-factor authentication. Use an authenticator app such as Google Authenticator, Authy, or Microsoft Authenticator. These apps generate new one-time codes every 30 seconds that you need to log in. Important: store the backup codes that Home Assistant generates in a safe place – for example, as a printout in a folder. This lets you recover your account if you lose access to the authenticator app.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2024/12/13/home-assistant-absichern-5-fehler-die-du-in-deinem-smarthome-vermeiden-solltest/ha_2fa.png"
width="2314"
height="1220"
srcset="https://smarthome-aber-sicher.de/blog/2024/12/13/home-assistant-absichern-5-fehler-die-du-in-deinem-smarthome-vermeiden-solltest/ha_2fa_hu_5f1d347c84f932ac.webp 480w, https://smarthome-aber-sicher.de/blog/2024/12/13/home-assistant-absichern-5-fehler-die-du-in-deinem-smarthome-vermeiden-solltest/ha_2fa_hu_226f1fed99134b7e.webp 1024w"
loading="lazy"
alt="Two-factor authentication can be enabled under user settings"
class="gallery-image"
data-flex-grow="189"
data-flex-basis="455px"
&gt;&lt;/p&gt;
&lt;p&gt;My tip: Enable 2FA not just for your admin account, but for all users who have access to Home Assistant – especially for accounts other than your own. This gives you the assurance that nobody can unauthorized manipulate your system, regardless of the permissions of the associated user or how carelessly other users handle their passwords.&lt;/p&gt;
&lt;h2 id="mistake-5-integrating-insecure-or-unknown-devices-into-home-assistant"&gt;Mistake 5: Integrating Insecure or Unknown Devices into Home Assistant
&lt;/h2&gt;&lt;p&gt;One of the biggest advantages of Home Assistant is that you can integrate devices from a wide variety of manufacturers. This makes your smart home extremely flexible, but it also comes with risks. Many users buy cheap smart home devices from unknown or questionable manufacturers without checking how secure they actually are.&lt;/p&gt;
&lt;p&gt;Why is this a problem? Insecure devices can act like a Trojan horse: if they are poorly programmed or intentionally built with backdoors, hackers can use these devices as an entry point into your network. Some cheap devices even send data unencrypted to servers you can&amp;rsquo;t control. This allows attackers not only to spy on your private data but also to gain access to other devices on your network.&lt;/p&gt;
&lt;p&gt;The solution? Buy devices from reputable manufacturers: make sure they provide regular firmware updates and support established standards like Zigbee, Z-Wave, or Matter.&lt;/p&gt;
&lt;p&gt;Check data transmission: use local integrations that communicate directly with Home Assistant, rather than devices dependent on a cloud. Platforms like Zigbee2MQTT or ESPHome are ideal because they give you full control over your data.
Block unnecessary traffic: with tools like a modern router or firewall, you can prevent devices from communicating with the internet without authorization.&lt;/p&gt;
&lt;p&gt;My tip: Be cautious with extremely cheap devices or products that offer little documentation or support. Infrequent updates can also be a warning sign. If you&amp;rsquo;re unsure, check reviews or community discussions about a device before buying – you&amp;rsquo;ll find out whether there are known vulnerabilities, whether the device should be considered potentially problematic, and how often updates are released.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Avoiding these five security mistakes takes you a big step toward a more secure smart home. Which security measures are you already using? If you have additional tips, feel free to share them in the comments.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="related-articles"&gt;Related Articles
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-5-automation-fehler/" &gt;These 5 Automation Mistakes Every Home Assistant User Has Made&lt;/a&gt; – Before security is solid, automations need to be reliable&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-5-neue-automation-fehler/" &gt;5 More Home Assistant Automation Mistakes – Are You Affected?&lt;/a&gt; – Newer pitfalls around trigger IDs, script modes, and AI-generated automations&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Show Errors &amp; Warnings on Your Home Assistant Dashboard</title><link>https://smarthome-aber-sicher.de/en/blog/2024/12/09/how-to-display-errors-and-warnings-on-your-home-assistant-dashboard/</link><pubDate>Mon, 09 Dec 2024 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2024/12/09/how-to-display-errors-and-warnings-on-your-home-assistant-dashboard/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2024/12/09/fehler-und-warnungen-im-home-assistant-dashboard-richtig-anzeigen/cover.png" alt="Featured image of post Show Errors &amp; Warnings on Your Home Assistant Dashboard" /&gt;&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/rdyO_2tc744?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_226522862364714901_hu_44fbdf9981289fca.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;p&gt;Forgot to water the plants again? The trash can is overflowing, the EV is empty? And the fridge door keeps getting left open? All while you have that data somewhere in your smart home? I&amp;rsquo;ll show you in three steps how to easily integrate a display like this into your Home Assistant dashboard so you never miss a warning again:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2024/12/09/fehler-und-warnungen-im-home-assistant-dashboard-richtig-anzeigen/cover.png"
width="2104"
height="1238"
srcset="https://smarthome-aber-sicher.de/blog/2024/12/09/fehler-und-warnungen-im-home-assistant-dashboard-richtig-anzeigen/cover_hu_98637bd8a9793c64.webp 480w, https://smarthome-aber-sicher.de/blog/2024/12/09/fehler-und-warnungen-im-home-assistant-dashboard-richtig-anzeigen/cover_hu_21eeb4723e413ac2.webp 1024w"
loading="lazy"
class="gallery-image"
data-flex-grow="169"
data-flex-basis="407px"
&gt;&lt;/p&gt;
&lt;h2 id="prerequisites"&gt;Prerequisites
&lt;/h2&gt;&lt;p&gt;For this tip you need to install the &lt;a class="link" href="https://github.com/thomasloven/lovelace-card-mod" target="_blank" rel="noopener"
&gt;&lt;code&gt;card-mod&lt;/code&gt; extension&lt;/a&gt; from the &lt;a class="link" href="https://www.hacs.xyz" target="_blank" rel="noopener"
&gt;Home Assistant Community Store (HACS)&lt;/a&gt;. Just open &lt;em&gt;HACS&lt;/em&gt; in the sidebar, search for &lt;em&gt;card-mod&lt;/em&gt; in the list of extensions, and click &lt;em&gt;Download&lt;/em&gt; twice. Then reload the Home Assistant interface by clicking &lt;em&gt;Reload&lt;/em&gt; — and the extension is ready to use.&lt;/p&gt;
&lt;h2 id="customizing-the-css-style"&gt;Customizing the CSS Style
&lt;/h2&gt;&lt;p&gt;With this extension you can change the appearance of your dashboard elements. For example, to display a red warning card with white text instead of a neutral card, add the following YAML snippet to your card:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;card_mod&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;style&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; ha-card {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; background-color: rgba(255,10,10,1);
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --primary-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --paper-item-icon-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --primary-text-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --switch-checked-track-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --switch-checked-button-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; }&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;The CSS variables used here (recognizable by the &lt;code&gt;--&lt;/code&gt; prefix) allow you to customize Home Assistant-specific elements such as icons or switch colors without needing in-depth CSS knowledge.&lt;/p&gt;
&lt;h2 id="enabling-conditional-display"&gt;Enabling Conditional Display
&lt;/h2&gt;&lt;p&gt;Of course the cards should only appear when an actual error or warning is present. Use an &lt;code&gt;entity-filter&lt;/code&gt; and define a condition. In this example, the fridge temperature should only be shown when it exceeds 8°C.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entity-filter&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;entities&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;sensor.kuhlschrank&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;numeric_state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;above&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;8&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;The complete definition looks like this, combining entities with conditions and our &lt;em&gt;card-mod style&lt;/em&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;span class="lnt"&gt;18
&lt;/span&gt;&lt;span class="lnt"&gt;19
&lt;/span&gt;&lt;span class="lnt"&gt;20
&lt;/span&gt;&lt;span class="lnt"&gt;21
&lt;/span&gt;&lt;span class="lnt"&gt;22
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entity-filter&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;show_empty&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;entities&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;sensor.kuhlschrank&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;numeric_state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;above&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;8&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;card&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entities&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;card_mod&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;style&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; ha-card {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; background-color: rgba(255,10,10,1);
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --primary-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --paper-item-icon-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --primary-text-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --switch-checked-track-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --switch-checked-button-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; }&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="more-complex-example"&gt;More Complex Example
&lt;/h2&gt;&lt;p&gt;You can of course group multiple entities together when they should be displayed in the same color, while still defining independent display conditions for each — like in this example:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;span class="lnt"&gt;18
&lt;/span&gt;&lt;span class="lnt"&gt;19
&lt;/span&gt;&lt;span class="lnt"&gt;20
&lt;/span&gt;&lt;span class="lnt"&gt;21
&lt;/span&gt;&lt;span class="lnt"&gt;22
&lt;/span&gt;&lt;span class="lnt"&gt;23
&lt;/span&gt;&lt;span class="lnt"&gt;24
&lt;/span&gt;&lt;span class="lnt"&gt;25
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entity-filter&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;entities&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;sensor.basilikum&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;numeric_state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;below&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;50&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_boolean.mull_rausstellen&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;on&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;card&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entities&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;card_mod&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;style&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; ha-card {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; background-color: rgba(3,169,244,1);
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --primary-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --paper-item-icon-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --primary-text-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --switch-checked-track-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --switch-checked-button-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; } &lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="color-hierarchy-and-combined-conditions"&gt;Color Hierarchy and Combined Conditions
&lt;/h2&gt;&lt;p&gt;A clear dashboard lives by a strong &lt;strong&gt;hierarchy&lt;/strong&gt; that highlights important information while maintaining readability. I recommend structuring warnings and errors in your Home Assistant dashboard by color:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Red&lt;/strong&gt; for critical errors (e.g. fridge temperature too high).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Orange&lt;/strong&gt; for warnings (e.g. low battery level).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Blue&lt;/strong&gt; for informational notices (e.g. take out the trash).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;With this hierarchy you can assess the urgency of a situation at a glance.&lt;/p&gt;
&lt;h3 id="example-three-groups-with-different-warning-levels"&gt;Example: Three Groups with Different Warning Levels
&lt;/h3&gt;&lt;p&gt;Here is an example of a dashboard combining errors, warnings, and notices:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;span class="lnt"&gt;18
&lt;/span&gt;&lt;span class="lnt"&gt;19
&lt;/span&gt;&lt;span class="lnt"&gt;20
&lt;/span&gt;&lt;span class="lnt"&gt;21
&lt;/span&gt;&lt;span class="lnt"&gt;22
&lt;/span&gt;&lt;span class="lnt"&gt;23
&lt;/span&gt;&lt;span class="lnt"&gt;24
&lt;/span&gt;&lt;span class="lnt"&gt;25
&lt;/span&gt;&lt;span class="lnt"&gt;26
&lt;/span&gt;&lt;span class="lnt"&gt;27
&lt;/span&gt;&lt;span class="lnt"&gt;28
&lt;/span&gt;&lt;span class="lnt"&gt;29
&lt;/span&gt;&lt;span class="lnt"&gt;30
&lt;/span&gt;&lt;span class="lnt"&gt;31
&lt;/span&gt;&lt;span class="lnt"&gt;32
&lt;/span&gt;&lt;span class="lnt"&gt;33
&lt;/span&gt;&lt;span class="lnt"&gt;34
&lt;/span&gt;&lt;span class="lnt"&gt;35
&lt;/span&gt;&lt;span class="lnt"&gt;36
&lt;/span&gt;&lt;span class="lnt"&gt;37
&lt;/span&gt;&lt;span class="lnt"&gt;38
&lt;/span&gt;&lt;span class="lnt"&gt;39
&lt;/span&gt;&lt;span class="lnt"&gt;40
&lt;/span&gt;&lt;span class="lnt"&gt;41
&lt;/span&gt;&lt;span class="lnt"&gt;42
&lt;/span&gt;&lt;span class="lnt"&gt;43
&lt;/span&gt;&lt;span class="lnt"&gt;44
&lt;/span&gt;&lt;span class="lnt"&gt;45
&lt;/span&gt;&lt;span class="lnt"&gt;46
&lt;/span&gt;&lt;span class="lnt"&gt;47
&lt;/span&gt;&lt;span class="lnt"&gt;48
&lt;/span&gt;&lt;span class="lnt"&gt;49
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;vertical-stack&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;cards&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entity-filter&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;show_empty&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entities&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;sensor.kuehlschrank&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;numeric_state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;above&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;8&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;card&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entities&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;card_mod&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;style&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; ha-card {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; background-color: rgba(255,10,10,1); /* Red */
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --primary-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; }&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entity-filter&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;show_empty&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entities&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;sensor.batterie_sensor&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;numeric_state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;below&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;20&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;card&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entities&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;card_mod&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;style&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; ha-card {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; background-color: rgba(255,165,0,1); /* Orange */
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --primary-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; }&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entity-filter&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;show_empty&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;entities&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;entity&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;input_boolean.muell_rausstellen&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;conditions&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;condition&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;state&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;on&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;card&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;entities&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;card_mod&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;style&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; ha-card {
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; background-color: rgba(3,169,244,1); /* Blue */
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; --primary-color: white;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; }&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Hopefully you&amp;rsquo;ll never miss anything again!&lt;/p&gt;
&lt;h2 id="whats-next"&gt;What&amp;rsquo;s Next
&lt;/h2&gt;&lt;p&gt;Are you already capturing all the sensor data and information relevant to you in your smart home? What about wind speed? In my article &lt;a class="link" href="https://smarthome-aber-sicher.de/en/blog/2024/11/25/windmessgerate-mit-esphome-in-home-assistant-integrieren/" &gt;Integrating Wind Meters with ESPHome into Home Assistant&lt;/a&gt; I show you how easy it is.&lt;/p&gt;
&lt;p&gt;→ In a follow-up video I show four advanced methods for integrating warnings into your dashboard even more elegantly — completely without card-mod: &lt;a class="link" href="https://smarthome-aber-sicher.de/post/ha-warnungen-tiles/" &gt;4 Smart Dashboard Tricks – So You Never Miss Anything Again&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Making Garage Doors Smart with Shelly</title><link>https://smarthome-aber-sicher.de/en/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/</link><pubDate>Wed, 27 Nov 2024 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/cover.webp" alt="Featured image of post Making Garage Doors Smart with Shelly" /&gt;&lt;p&gt;I had an old Shelly 1 lying around and a garage door I still had to open with a remote control – like it was 20 years ago. One afternoon later, that was sorted. The door has been opening via app, via automation, and when needed even from vacation ever since.&lt;/p&gt;
&lt;p&gt;This was roughly my third video on the channel. I had no big expectations – and it turned out to be the most-watched video I&amp;rsquo;ve ever published. Apparently this is a topic a lot of people care about. If you want to see what I did with it a year later, check out &lt;a class="link" href="https://smarthome-aber-sicher.de/post/smarte-garage/" &gt;Smart Garage 2.0&lt;/a&gt; afterwards.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/NbVMbzGsHvw?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_11965376245398802203_hu_14faa76f9fc33431.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="prerequisites"&gt;Prerequisites
&lt;/h2&gt;&lt;p&gt;All you need is a smart relay – a small switch that can be controlled electronically. In my case that&amp;rsquo;s an old first-generation Shelly 1 I had lying around. New Shellys are available for around €10 (&lt;a class="link" href="https://amzn.to/3VcP04Q" target="_blank" rel="noopener"
&gt;buy here – affiliate link&lt;/a&gt;, or directly at Shelly: &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;buy here – affiliate link&lt;/a&gt;, code SMARTHOMEABERSICHER-10OFF for 10% off). If you want to not just open but also close your garage door – because it doesn&amp;rsquo;t do that automatically – then two Shellys with one output each, such as two Shelly 1 Mini Gen3 (&lt;a class="link" href="https://amzn.to/3VcP04Q" target="_blank" rel="noopener"
&gt;buy here – affiliate link&lt;/a&gt;, or at OBI: &lt;a class="link" href="https://www.awin1.com/cread.php?awinmid=9326&amp;amp;awinaffid=2527487&amp;amp;ued=https%3A%2F%2Fwww.obi.de%2Fp%2F8975237%2Fshelly-relaismodul-unterputz-plus-1-mini-g3-blau" target="_blank" rel="noopener"
&gt;buy here – affiliate link&lt;/a&gt;, or directly at Shelly: &lt;a class="link" href="https://upf.ai/l24blt88" target="_blank" rel="noopener"
&gt;buy here – affiliate link&lt;/a&gt;, code SMARTHOMEABERSICHER-10OFF for 10% off), are the better choice. These can also run on 12V/24V DC and can therefore be powered directly from the door controller&amp;rsquo;s power supply.&lt;/p&gt;
&lt;p&gt;You&amp;rsquo;ll also need to spend a bit of time researching the correct way to wire the relay to your specific garage door. I&amp;rsquo;ll explain how to do that without deep electronics knowledge – and how I did it for my garage door – in the sections below.&lt;/p&gt;
&lt;p&gt;Finally, make sure you have Wi-Fi coverage at your garage door, or if your smart relay uses Zigbee or Bluetooth, that you have adequate signal there.&lt;/p&gt;
&lt;h2 id="how-it-works"&gt;How It Works
&lt;/h2&gt;&lt;p&gt;Garage doors can often be opened via a key switch on the outside of the door or push buttons and pull cords on the inside. There are also usually proprietary wireless remotes. The buttons and switches are typically connected to what&amp;rsquo;s called a potential-free contact on the door controller. This means these contacts carry no current until they are activated by closing the switch – they work essentially like a simple light switch that doesn&amp;rsquo;t pass current until someone presses it. Wireless remotes work on the same principle: the remote&amp;rsquo;s receiver ultimately closes one of these contacts to trigger the door to open. We can use this to our advantage by simply connecting our Shelly in parallel to the door controller, so the Shelly becomes an additional way to control the door.&lt;/p&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/uebersicht_schema.png"&gt;
&lt;/figure&gt;
&lt;p&gt;Let&amp;rsquo;s take a closer look at the exact wiring. Here we can see the key switch connected to the switching contacts, which are bridged when the key is turned. We can connect the Shelly in exactly the same way – in parallel to the existing wiring.
Of course, the Shelly also needs power. Here we take advantage of the fact that the garage door controller&amp;rsquo;s power supply typically provides 12V or 24V for accessories via dedicated contacts in the housing. It&amp;rsquo;s convenient that the Shelly can run on 12V or 24V DC, making this connection safe even for non-technical users.&lt;/p&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/verdrahtung.png"&gt;
&lt;/figure&gt;
&lt;h2 id="installing-the-shelly"&gt;Installing the Shelly
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;230 V:&lt;/strong&gt; The garage door control unit also carries mains voltage. Disconnect it before opening the housing, and read &lt;a class="link" href="https://smarthome-aber-sicher.de/en/working-safely-with-mains-voltage/" &gt;Working safely with mains voltage&lt;/a&gt; first.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;So we need to find two suitable contacts through which the Shelly can control the garage door, plus two connections for the Shelly&amp;rsquo;s power supply.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ll walk you through this using my own door controller as an example: a &lt;a class="link" href="https://gfa-elektromaten.com/de-DE/products_TS.html#Door_controls-TS-TS_971" target="_blank" rel="noopener"
&gt;TS 971 by GfA Elektromaten&lt;/a&gt;. But the approach is always the same.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s look at the &lt;a class="link" href="https://gfa-elektromaten.com/de-DE/products_TS.html?file=files/GfA/bilder/Products/05_Montageanleitungen_de/MAL_20097100_00000_00000_deutsch_SW_2.4.pdf&amp;amp;cid=61212" target="_blank" rel="noopener"
&gt;technical manual for the garage door&lt;/a&gt;, which I found on the manufacturer&amp;rsquo;s website without much searching – all the relevant information is printed right there. On page 14, under the heading &amp;ldquo;Push button/Radio receiver&amp;rdquo;, you&amp;rsquo;ll find what we need:&lt;/p&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/handbuch.png"&gt;
&lt;/figure&gt;
&lt;p&gt;Here you can see that the key switch is connected to contacts 7.1 and 7.2. You can also see that 24V DC is available via the 24V and GND contacts.&lt;/p&gt;
&lt;p&gt;Once you&amp;rsquo;ve found suitable contacts for power and for triggering the opening and/or closing, you can simply connect the Shelly. Concretely: connect the &amp;ldquo;I&amp;rdquo; and &amp;ldquo;O&amp;rdquo; terminals of the Shelly to contacts 7.1 and 7.2 on the door controller, and connect &amp;ldquo;N&amp;rdquo; to 24V and &amp;ldquo;L&amp;rdquo; to GND. Ideally there&amp;rsquo;s even space inside the existing housing, as was the case for me:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/garagensteuerung_2.jpg"
width="3024"
height="4032"
srcset="https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/garagensteuerung_2_hu_582112f6059b21ad.webp 480w, https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/garagensteuerung_2_hu_ab3ab5507a25f3dc.webp 1024w"
loading="lazy"
alt="Shelly being installed in the door controller"
class="gallery-image"
data-flex-grow="75"
data-flex-basis="180px"
&gt;
&lt;img src="https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/garagensteuerung_1.jpg"
width="3024"
height="4032"
srcset="https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/garagensteuerung_1_hu_ad1eae060cb249cd.webp 480w, https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/garagensteuerung_1_hu_3c889105709c02aa.webp 1024w"
loading="lazy"
alt="Shelly neatly tucked away"
class="gallery-image"
data-flex-grow="75"
data-flex-basis="180px"
&gt;&lt;/p&gt;
&lt;p&gt;Note: For the Shelly 1, move the power supply jumper for 12V DC operation – those little jumper bridges under the cover. If your door runs on 24V, it can be left unchanged.&lt;/p&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2024/11/27/garagentore-mit-shellys-fit-furs-smarthome-machen/shelly-jumper.png" width="50%"&gt;&lt;figcaption&gt;
&lt;h4&gt;Source: https://kb.shelly.cloud/knowledge-base/shelly-1&lt;/h4&gt;
&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;If you&amp;rsquo;re using a newer Shelly 1 Plus, it has separate terminals depending on the voltage, so no jumpers need to be changed.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;And that&amp;rsquo;s it – you&amp;rsquo;ve successfully integrated your garage door into your smart home. The Shelly can now be controlled flexibly, either via the Shelly app or through your preferred smart home hub. Ideally also remotely over the internet.&lt;/p&gt;
&lt;p&gt;This means your garage door can finally be opened when you&amp;rsquo;re still a street or two away, with far greater range than a traditional remote. But make sure the Shelly setup is just as secure as your front door! Access must be well protected so that nobody can gain entry to your garage – and potentially your home.&lt;/p&gt;
&lt;p&gt;That means:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;a strong password&lt;/li&gt;
&lt;li&gt;up-to-date firmware&lt;/li&gt;
&lt;li&gt;no open ports to the internet&lt;/li&gt;
&lt;li&gt;and ideally a VPN connection or SSH tunnel into your home network&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Of course, other smart relays can be used instead of Shellys. Get creative and find the best solution for your situation! And if you can&amp;rsquo;t find a way to wire up a relay at all, a Switchbot (&lt;a class="link" href="https://amzn.to/417yo2g" target="_blank" rel="noopener"
&gt;buy here – affiliate link&lt;/a&gt;) might also be an option for you.&lt;/p&gt;
&lt;p&gt;Questions about wiring or security configuration? Drop them in the comments – the garage door topic has an active community, and most problems have already come up there before.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;h2 id="related-articles"&gt;Related Articles
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/smarte-garage/" &gt;Smart Garage 2.0: Garage Door, Lights &amp;amp; Automations with Shelly Blue&lt;/a&gt; – One year later: my complete garage upgrade with motion sensors, wallbox automation, and CarPlay control&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-jalousie/" &gt;Making Roller Shutters Smart with Shelly&lt;/a&gt; – The same principle for blinds: Shelly local, no cloud&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://smarthome-aber-sicher.de/post/shelly-heizung/" &gt;No More Annoying Thermostats! Shelly Makes Your Heating Smart&lt;/a&gt; – More Shelly in action: this time for heating control&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Integrating Wind Sensors with ESPHome into Home Assistant</title><link>https://smarthome-aber-sicher.de/en/blog/2024/11/25/windmessgerate-mit-esphome-in-home-assistant-integrieren/</link><pubDate>Mon, 25 Nov 2024 00:00:00 +0000</pubDate><guid>https://smarthome-aber-sicher.de/en/blog/2024/11/25/windmessgerate-mit-esphome-in-home-assistant-integrieren/</guid><description>&lt;img src="https://smarthome-aber-sicher.de/blog/2024/11/25/windmessgerate-mit-esphome-in-home-assistant-integrieren/cover.webp" alt="Featured image of post Integrating Wind Sensors with ESPHome into Home Assistant" /&gt;&lt;p&gt;My awning gave me quite a fright once. A storm rolled in faster than expected — and I wasn&amp;rsquo;t home. When I got back, it was still up, but just barely. Clearly, the awning needed a wind sensor. The manufacturer conveniently had a solution ready — for €200. For a single sensor.&lt;/p&gt;
&lt;p&gt;That was out of the question. An ESP8266 microcontroller, a wind sensor (anemometer) for around €20, and ESPHome solved the problem for a tenth of the price. Since then, the awning retracts automatically when the wind gets too strong — and I no longer have to worry about it.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
&lt;div class="video-placeholder" data-embed="https://www.youtube-nocookie.com/embed/z5YQKPyAlKc?autoplay=1" onclick="loadYtIframe(this)"&gt;
&lt;img src="https://smarthome-aber-sicher.de/maxresdefault_17863403572279292455_hu_20d5969cd70e4cfc.jpg" alt="YouTube Video" loading="lazy"&gt;
&lt;div class="play-button"&gt;&lt;/div&gt;
&lt;div class="privacy-notice"&gt;
To load the video, please click the image. Please note that by doing so, data will be transmitted to YouTube.
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;script&gt;
function loadYtIframe(element) {
var iframe = document.createElement('iframe');
iframe.setAttribute('loading', 'lazy');
iframe.setAttribute('src', element.dataset.embed);
iframe.setAttribute('allow', 'autoplay; fullscreen');
iframe.setAttribute('allowfullscreen', '');
iframe.setAttribute('title', 'YouTube Video');
element.parentNode.replaceChild(iframe, element);
}
&lt;/script&gt;
&lt;style&gt;
.video-placeholder {
position: absolute;
inset: 0;
cursor: pointer;
}
.video-placeholder img {
width: 100%;
height: 100%;
object-fit: cover;
}
.play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button.svg') no-repeat center center;
background-size: contain;
}
.video-placeholder:hover .play-button {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background: url('/img/youtube_button_hover.svg') no-repeat center center;
background-size: contain;
}
.privacy-notice {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
box-sizing: border-box;
background-color: rgba(0, 0, 0, 0.75);
color: #fff;
padding: 6px 12px;
font-size: 12px;
line-height: 1.35;
text-align: center;
}
&lt;/style&gt;
&lt;h2 id="what-youll-need"&gt;What You&amp;rsquo;ll Need
&lt;/h2&gt;&lt;p&gt;To get started, you only need a few components:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;An ESP8266 microcontroller (&lt;a class="link" href="https://amzn.to/4g3yw6U" target="_blank" rel="noopener"
&gt;buy here*&lt;/a&gt; - affiliate link)&lt;/li&gt;
&lt;li&gt;A wind sensor/anemometer (&lt;a class="link" href="https://amzn.to/4ilsQaC" target="_blank" rel="noopener"
&gt;buy here*&lt;/a&gt; - affiliate link)&lt;/li&gt;
&lt;li&gt;A 5V power supply (e.g., an old phone charger)&lt;/li&gt;
&lt;li&gt;ESPHome (already installed)&lt;/li&gt;
&lt;li&gt;Your smart home hub — in this example, Home Assistant&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you&amp;rsquo;re not yet familiar with ESPHome, I recommend checking out &lt;a class="link" href="https://www.youtube.com/watch?v=9YkICApObvo&amp;amp;t=1s" target="_blank" rel="noopener"
&gt;this introduction&lt;/a&gt; first.&lt;/p&gt;
&lt;h2 id="measuring-wind"&gt;Measuring Wind
&lt;/h2&gt;&lt;p&gt;The anemometer measures wind movement via rotations. Each rotation generates electrical pulses that the microcontroller captures. Using a formula defined by the sensor model, the current wind speed is calculated and transmitted via Wi-Fi to your smart home hub.&lt;/p&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2024/11/25/windmessgerate-mit-esphome-in-home-assistant-integrieren/wind-messen.png"&gt;
&lt;/figure&gt;
&lt;h2 id="wiring"&gt;Wiring
&lt;/h2&gt;&lt;p&gt;Connect the cables of the wind sensor to the GPIO pins of the microcontroller.
Use a standard 5V power supply to power the microcontroller — an old phone charger works perfectly.
Important: Note which GPIO pin the wind sensor is connected to, as you&amp;rsquo;ll need this information later for the configuration.&lt;/p&gt;
&lt;figure&gt;&lt;img src="https://smarthome-aber-sicher.de/blog/2024/11/25/windmessgerate-mit-esphome-in-home-assistant-integrieren/sensor-verdrahten.png"&gt;
&lt;/figure&gt;
&lt;h2 id="software-setup--programming-with-esphome"&gt;Software Setup — Programming with ESPHome
&lt;/h2&gt;&lt;h3 id="creating-the-basic-configuration"&gt;Creating the Basic Configuration
&lt;/h3&gt;&lt;p&gt;Start with a simple configuration file in ESPHome. It contains the basic information your microcontroller needs, such as:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The device name (e.g., &amp;ldquo;windsensor&amp;rdquo;),&lt;/li&gt;
&lt;li&gt;The platform (ESP8266 or ESP32, depending on your microcontroller),&lt;/li&gt;
&lt;li&gt;Wi-Fi settings (SSID and password of your network).&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All of this happens in lines 1–26 below.&lt;/p&gt;
&lt;h3 id="defining-the-sensor-for-the-anemometer"&gt;Defining the Sensor for the Anemometer
&lt;/h3&gt;&lt;p&gt;The wind sensor is configured as a &lt;code&gt;pulse_counter&lt;/code&gt;. This module counts the pulses and calculates the wind speed using a filter (starting at line 37). We use the formula provided by the manufacturer in their documentation and apply it here as a lambda function in the sensor definition (line 62).&lt;/p&gt;
&lt;h3 id="calculating-averages-and-wind-gusts"&gt;Calculating Averages and Wind Gusts
&lt;/h3&gt;&lt;p&gt;In addition to the current wind speed, average values and maximum wind speeds (gusts) are particularly useful. For this, you use template sensors with appropriate filters.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Average value (&lt;code&gt;sliding_window_moving_average&lt;/code&gt;): Calculates the mean wind speed over the last 30 minutes (line 81)&lt;/li&gt;
&lt;li&gt;Maximum value (&lt;code&gt;max&lt;/code&gt;): Stores the highest speed over the last 5 minutes (wind gusts) (line 96)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here is the complete configuration:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt; 1
&lt;/span&gt;&lt;span class="lnt"&gt; 2
&lt;/span&gt;&lt;span class="lnt"&gt; 3
&lt;/span&gt;&lt;span class="lnt"&gt; 4
&lt;/span&gt;&lt;span class="lnt"&gt; 5
&lt;/span&gt;&lt;span class="lnt"&gt; 6
&lt;/span&gt;&lt;span class="lnt"&gt; 7
&lt;/span&gt;&lt;span class="lnt"&gt; 8
&lt;/span&gt;&lt;span class="lnt"&gt; 9
&lt;/span&gt;&lt;span class="lnt"&gt;10
&lt;/span&gt;&lt;span class="lnt"&gt;11
&lt;/span&gt;&lt;span class="lnt"&gt;12
&lt;/span&gt;&lt;span class="lnt"&gt;13
&lt;/span&gt;&lt;span class="lnt"&gt;14
&lt;/span&gt;&lt;span class="lnt"&gt;15
&lt;/span&gt;&lt;span class="lnt"&gt;16
&lt;/span&gt;&lt;span class="lnt"&gt;17
&lt;/span&gt;&lt;span class="lnt"&gt;18
&lt;/span&gt;&lt;span class="lnt"&gt;19
&lt;/span&gt;&lt;span class="lnt"&gt;20
&lt;/span&gt;&lt;span class="lnt"&gt;21
&lt;/span&gt;&lt;span class="lnt"&gt;22
&lt;/span&gt;&lt;span class="lnt"&gt;23
&lt;/span&gt;&lt;span class="lnt"&gt;24
&lt;/span&gt;&lt;span class="lnt"&gt;25
&lt;/span&gt;&lt;span class="lnt"&gt;26
&lt;/span&gt;&lt;span class="lnt"&gt;27
&lt;/span&gt;&lt;span class="lnt"&gt;28
&lt;/span&gt;&lt;span class="lnt"&gt;29
&lt;/span&gt;&lt;span class="lnt"&gt;30
&lt;/span&gt;&lt;span class="lnt"&gt;31
&lt;/span&gt;&lt;span class="lnt"&gt;32
&lt;/span&gt;&lt;span class="lnt"&gt;33
&lt;/span&gt;&lt;span class="lnt"&gt;34
&lt;/span&gt;&lt;span class="lnt"&gt;35
&lt;/span&gt;&lt;span class="lnt"&gt;36
&lt;/span&gt;&lt;span class="lnt"&gt;37
&lt;/span&gt;&lt;span class="lnt"&gt;38
&lt;/span&gt;&lt;span class="lnt"&gt;39
&lt;/span&gt;&lt;span class="lnt"&gt;40
&lt;/span&gt;&lt;span class="lnt"&gt;41
&lt;/span&gt;&lt;span class="lnt"&gt;42
&lt;/span&gt;&lt;span class="lnt"&gt;43
&lt;/span&gt;&lt;span class="lnt"&gt;44
&lt;/span&gt;&lt;span class="lnt"&gt;45
&lt;/span&gt;&lt;span class="lnt"&gt;46
&lt;/span&gt;&lt;span class="lnt"&gt;47
&lt;/span&gt;&lt;span class="lnt"&gt;48
&lt;/span&gt;&lt;span class="lnt"&gt;49
&lt;/span&gt;&lt;span class="lnt"&gt;50
&lt;/span&gt;&lt;span class="lnt"&gt;51
&lt;/span&gt;&lt;span class="lnt"&gt;52
&lt;/span&gt;&lt;span class="lnt"&gt;53
&lt;/span&gt;&lt;span class="lnt"&gt;54
&lt;/span&gt;&lt;span class="lnt"&gt;55
&lt;/span&gt;&lt;span class="lnt"&gt;56
&lt;/span&gt;&lt;span class="lnt"&gt;57
&lt;/span&gt;&lt;span class="lnt"&gt;58
&lt;/span&gt;&lt;span class="lnt"&gt;59
&lt;/span&gt;&lt;span class="lnt"&gt;60
&lt;/span&gt;&lt;span class="lnt"&gt;61
&lt;/span&gt;&lt;span class="lnt"&gt;62
&lt;/span&gt;&lt;span class="lnt"&gt;63
&lt;/span&gt;&lt;span class="lnt"&gt;64
&lt;/span&gt;&lt;span class="lnt"&gt;65
&lt;/span&gt;&lt;span class="lnt"&gt;66
&lt;/span&gt;&lt;span class="lnt"&gt;67
&lt;/span&gt;&lt;span class="lnt"&gt;68
&lt;/span&gt;&lt;span class="lnt"&gt;69
&lt;/span&gt;&lt;span class="lnt"&gt;70
&lt;/span&gt;&lt;span class="lnt"&gt;71
&lt;/span&gt;&lt;span class="lnt"&gt;72
&lt;/span&gt;&lt;span class="lnt"&gt;73
&lt;/span&gt;&lt;span class="lnt"&gt;74
&lt;/span&gt;&lt;span class="lnt"&gt;75
&lt;/span&gt;&lt;span class="lnt"&gt;76
&lt;/span&gt;&lt;span class="lnt"&gt;77
&lt;/span&gt;&lt;span class="lnt"&gt;78
&lt;/span&gt;&lt;span class="lnt"&gt;79
&lt;/span&gt;&lt;span class="lnt"&gt;80
&lt;/span&gt;&lt;span class="lnt"&gt;81
&lt;/span&gt;&lt;span class="lnt"&gt;82
&lt;/span&gt;&lt;span class="lnt"&gt;83
&lt;/span&gt;&lt;span class="lnt"&gt;84
&lt;/span&gt;&lt;span class="lnt"&gt;85
&lt;/span&gt;&lt;span class="lnt"&gt;86
&lt;/span&gt;&lt;span class="lnt"&gt;87
&lt;/span&gt;&lt;span class="lnt"&gt;88
&lt;/span&gt;&lt;span class="lnt"&gt;89
&lt;/span&gt;&lt;span class="lnt"&gt;90
&lt;/span&gt;&lt;span class="lnt"&gt;91
&lt;/span&gt;&lt;span class="lnt"&gt;92
&lt;/span&gt;&lt;span class="lnt"&gt;93
&lt;/span&gt;&lt;span class="lnt"&gt;94
&lt;/span&gt;&lt;span class="lnt"&gt;95
&lt;/span&gt;&lt;span class="lnt"&gt;96
&lt;/span&gt;&lt;span class="lnt"&gt;97
&lt;/span&gt;&lt;span class="lnt"&gt;98
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-windspeed.yaml" data-lang="windspeed.yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;esphome&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;windspeed&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;friendly_name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Windmesser&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;esp8266&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;board&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;nodemcuv2&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c"&gt;# Enable Logging&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;logger&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c"&gt;# Home Assistant API, required so Home Assistant can access the microcontroller&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;api&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;encryption&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;key&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;xxx&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;ota&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;esphome&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;password&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;xxx&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;web_server&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;port&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;80&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;wifi&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;ssid&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;secret wifi_ssid&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;password&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;secret wifi_password&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c"&gt;# Definition of the sensors that are provided as entities in Home Assistant&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;sensor&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Sensor showing the WiFi signal strength of the microcontroller&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;wifi_signal&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;WiFi Signal&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;update_interval&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;60s&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Sensor showing the uptime of the microcontroller&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;uptime&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;Uptime &lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Measurement of the current wind speed using &amp;#34;pulse_counter&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;pulse_counter&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Wind Speed Realtime&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;icon&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;mdi:windsock&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;id&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;wind_speed&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;unit_of_measurement&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;km/h&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;device_class&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;wind_speed&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state_class&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;measurement&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Frequency at which the wind sensor signal is checked&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;internal_filter&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;1us &lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Frequency at which the wind speed is updated in Home Assistant&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;update_interval&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;1s&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;accuracy_decimals&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Wiring of the wind sensor&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;pin&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;number&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;D5&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;inverted&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;mode&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;input&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;pullup&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Provides an additional entity with the total pulse count (useful for debugging only)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;total&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Total Pulses&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Calculates wind speed using the manufacturer&amp;#39;s formula: Wind speed (km/h) = 0.8*Hz + 3&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# The filter definition computes the wind speed using this formula&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# The input variable x corresponds to the number of &amp;#34;pulses per minute&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;filters&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;lambda&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;!&lt;span class="l"&gt;lambda |-&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;if (x == 0) return 0;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;return (x/60)*0.8+3;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;min&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;window_size&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;send_every&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Sensor providing the &amp;#34;average wind speed&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Wind Speed Average&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;icon&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;mdi:windsock&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;unit_of_measurement&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;km/h&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;device_class&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;wind_speed&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state_class&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;measurement&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;lambda&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|-&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; return id(wind_speed).state;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;update_interval&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;1s&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Definition: wind speed = average wind over the last 30 min&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;filters&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;sliding_window_moving_average&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;window_size&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1800&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;send_every&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Sensor providing the maximum gust speed&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;platform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;template&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;Wind Speed Gusts&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;icon&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;mdi:windsock&amp;#34;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;unit_of_measurement&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;km/h&amp;#39;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;device_class&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;wind_speed&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;state_class&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;measurement&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;lambda&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;|-&lt;/span&gt;&lt;span class="sd"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="sd"&gt; return id(wind_speed).state;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;update_interval&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;1s&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# Gust = instantaneous maximum speed within the last 5 min&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;filters&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;max&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;window_size&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;300&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;send_every&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="flashing-the-configuration"&gt;Flashing the Configuration
&lt;/h2&gt;&lt;p&gt;Open ESPHome and connect your microcontroller via USB.
Click &amp;ldquo;Install&amp;rdquo; and upload the configuration.
Once the microcontroller has been programmed once, future updates can be flashed wirelessly (&amp;ldquo;Over the Air&amp;rdquo;).&lt;/p&gt;
&lt;h2 id="integration-into-home-assistant"&gt;Integration into Home Assistant
&lt;/h2&gt;&lt;p&gt;ESPHome makes integration particularly straightforward:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Open Home Assistant.&lt;/li&gt;
&lt;li&gt;Navigate to &amp;ldquo;Settings &amp;gt; Integrations &amp;gt; Add Integration&amp;rdquo;.&lt;/li&gt;
&lt;li&gt;Select &amp;ldquo;ESPHome&amp;rdquo; and enter the IP address of your microcontroller.&lt;/li&gt;
&lt;li&gt;Enter the encryption key from your ESPHome configuration.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Once the integration is complete, you can view the recorded values (current speed, average, gusts) in Home Assistant and use them for automations.&lt;/p&gt;
&lt;h2 id="whats-next"&gt;What&amp;rsquo;s Next
&lt;/h2&gt;&lt;p&gt;With the collected wind data, you have a wide range of control options, for example:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Automatically retract awnings when a critical wind speed is reached.&lt;/li&gt;
&lt;li&gt;Close roller shutters to protect windows during storms.&lt;/li&gt;
&lt;li&gt;Send warning notifications when extreme weather conditions are approaching.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Do you have questions or other ideas for what you can do with wind data? Write them in the comments — I&amp;rsquo;m curious what you&amp;rsquo;ll build with this.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Note: Links marked with &lt;em&gt;affiliate link&lt;/em&gt; are affiliate links. As a partner of various retailers and manufacturers (e.g. Amazon, OBI via the Awin network, Shelly) I earn from qualifying purchases. This means I receive a small commission if you purchase through these links — at no extra cost to you. The revenue helps me run this blog and YouTube channel and keep creating content. Thank you for your support!&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;Joachim&lt;/span&gt;&lt;cite&gt;&lt;/cite&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item></channel></rss>