Sunday, September 14, 2025

So Long Microsoft! Hello Pi!

Another one of the most stable things I did was ditching the VM I was using to run HA and go to a Raspberry Pi.

I was using Microsoft Windows 10 as the platform on the PC, and then using VM software to create the HA system. In and of itself, the HA VM was very stable and I had no problems with it. But - Microsoft, in all of its haughty and oh-so-mighty glory, decides when you will install Windows updates (including restarting the PC), and if you don't like it - tough toenails. Long and short: I'd find that my wall-mount pads were unresponsive and automations weren't running, so I'd check the PC that ran the VM and it was sitting at the login screen.

Which created another bigger problem: a corrupted VM. I had to reinstall HA several times from the activity. It got old and frustrating very, very quickly.

I switched over to a Raspberry Pi 5 (using a nice Flirc case) with a 480GB external SSD, stuck the SSD in a clear case, and I've never looked back. This has been rock solid from day 1. I would highly recommend, with absolutely no reservations, going this route to run your HA system. 

It runs a back-up every night and puts a copy of that back-up in the cloud; on the SSD; and on my home's NAS. But knock-on-wood, I haven't needed a back-up since I made the switch. It's been rock solid.

Do yourself a favor and put your HA system on a Pi.




Choose Your Views

Back when I started this journey, I found a really cool theme package that made my views look like LCARS straight out of Star Trek: TNG. To be clear, to this day, I still admire the work that Jesse has done with his theme. THe problem I had, though, is that for me, screen real estate is a premium. Especially on the 2 monitors I keep running in my "cockpit" to keep track of everything going on in the house. I needed to go for something more compact.

You know that old saying, "You don't know what you don't know?" Yeah, that works with HA too. By utilizing AI, I've been able to find packages that do exactly what I'm looking for - but, that I had no idea of their existence! 

You can easily get lost in the world of HACS and add-ons. As far as I know, there is no comprehensive catalog out there of all the different add-ons available. In my last post, I talked about decluttering templates I didn't know that existed! Nor did I know about Custom Button Cards. I've since made extreme use of those, and here's why.

Yes, there are many different packages out there that can make your dashboard look snazzy, sexy, sleek, or whatever adjective you want to use. For my tastes, I needed functional. Something that "just works" and gives me, in an instant, a snapshot of my environment. Custom Button Cards does that for me, in spades.

 

 

 Those two screens stay up in my cockpit, and I can tell at a glance if something is amiss just by keying in on the colors.

As always, your mileage may vary. For me, this just works, and my wife and mother-in-law like the simplicity as well. I had to work to win them over to HA and my obsession with collecting data from the house and automating what I could. Having dashboards that were easy to understand and use helped that process out tremendously. 

Weather Alerting System for Home Assistant

When we last left off 2 years ago, my huge project was baking weather alerting features into the HA system. Sure, we have a couple of NOAA weather radios and messages on our phones, but if we have an HA system in the house - why not do some cool stuff with it?

So - that's what I did.

Over the next 2 years, I fine tuned things, found what worked and what didn't, and have a system now that I think works really well.

For starters: my ideas for using a flashing red pattern for tornado & severe thunderstorm warnings had to go away. Both Meross and Govee block all attempts to flash their lights as I wanted (think: Star Trek red alert), warning that it exceeds their API access limits. Thus, no more flashing red; steady red was going to be the way it worked.

I made a lot of tweaks and changes over the next two years. I had a strip of lights outside, wrapped around the pole that holds my outside light. It eventually died in a blistering heat wave, so it's gone.

I added a Govee can light in one room to change colors as necessary. I added that to a Wyze color bulb in an old table lamp fixture; one of the old original Meross strips; and then a Govee dual-LED fixture. All of these ended up being my "alert lights" which, more or less, worked OK. I also had conditional cards that would pop up on most of the wall-mounted tablets around the house.

The logic for making all of that work was insanely complex, though. Making one change (like, adding logic to turn the lights red if a smoke detector activated) was very touchy and prone to a cascading unintentional error. So, with the help of AI, I blew up the entire system and started over. I now have a system that, so far, has been stable and easy to modify as necessary.

An important tip that I can add is to USE PACKAGES. Don't put everything in configuration.yaml. I ended up making a package for each of the subroutines that I added to HA. Doing so means that I can make changes to a small section of my system A) without having to restart the whole system, and B)  minimizing the risk of collateral damage unrelated parts of the system.

Honestly, I wish I'd broken things out into packages a long, long time ago. If I could go back in time and tell the "younger HA me" some tips, this would easily be one of them. 

Moving forward (and in use now) are decluttering templates. By making templates up in the raw configuration editor, I can reuse those templates anywhere in my setup and the cards will always look the same. Another great feature is that the cards can be built with a minimal amount of code on the actual dashboard. I bring this up because for my Lovelace conditional cards that appear under certain conditions, I no longer have to define every card as a conditional card on every dashboard or view! I define it once like this:

type: custom:decluttering-card
template: critical_alerts_block
variables:
  - header: CRITICAL ALERTS

Then, with every type of card already defined in the template critical_alerts_block, they'll all always show up the same on every display. For example: 

 

or

 

Those 4 lines of code above are included on every display. If any other condition were triggered, such as a smoke detector activation, blizzard warning, freezer high temperature alarm... anything that I want to know about in a hurry, those would also show up here; and again, using just those 4 lines of code. By itself, that was a HUGE way to simplify the process. Set it once as a decluttering template and forget about it. Under the old conditional card system, I had to touch every dashboard and make a modification.

 I have my alerts broken down into these categories: 

RED LEVEL – these alerts turn all alerting lights red; display a card on all wall displays; display a message on all display matrices; and produce a sound on all Amazon Echo devices. This level is activated when any of the following actions take place on the HA system:
    • Tornado Warning
    • Severe Thunderstorm Warning
    • Smoke Alarm Activated
    • Boiler Over Temperature
    • Security Alert
    • General Alert
    • Major Solar Storm (wall display card only)

PURPLE LEVEL - these alerts turn all alerting lights purple; display a card on all wall displays; display a message on all display matrices; and produce a sound on all Amazon Echo devices. This level is activated when any of the following actions take place on the HA system:

    • Freezer Over Temperature

ORANGE LEVEL - these alerts turn all alerting lights orange and display a card on all wall displays. This level is activated when any of the following actions take place on the HA system:

    • Flash Flood Warning
    • Excessive Heat Warning
    • Dust Storm Warning
    • Moderate Solar Storm (wall display card only)

BLUE LEVEL - these alerts turn all alerting lights blue and display a card on all wall displays. This level is activated when any of the following actions take place on the HA system:

    • Blizzard Warning
    • Winter Storm Warning
    • Ice Storm Warning
    • Wind Chill Warning

YELLOW LEVEL - these alerts turn all alerting lights yellow and display a card on all wall displays. This level is activated when any of the following actions take place on the HA system:

    • Tornado Watch
    • Severe Thunderstorm Watch
    • Internet Down Condition
    • Minor Solar Storm (wall display card only)

There is a lot here to still unpack and talk about in the blog. For example, the use of 32x64 LED display matrices throughout the house. My goal with this entry is to catch readers up on the changes I've made in the overall alerting system. I'll keep expanding on that, and all other aspects of my system, as we go on. 

 

Saturday, September 13, 2025

Really? Two Years?

Wow - it's been a LONG time since I posted anything here. I've been doing a lot with my HA system. I've blown a few things up in the process, and I've made a ton of progress too. I'll try to cover everything I've done over the next few posts.

Keep in mind that I am, by no means, an HA "guru". I just know what I want, I develop what I can, and I pull in some coding help from AI. I'm not a programmer and I didn't stay at a Holiday Inn Express, either. At 60, I'm not going to learn a lot of new tricks. But I AM going to lament just a tiny bit about the things I didn't do in the past and try to make up for lost time. 

Home Assistant is one of those things. Geez, I wish I'd been able to use this earlier, but I probably would have gotten frustrated with it and put it away. With the tools available now, you don't even have to worry about looking for help from the community necessarily. And that's both a good and bad thing! Bad, because it breaks that spirit of cooperation and camaraderie. But also good, because more than once, I was made to feel like a fool because I didn't find my answer by "RTFM" (if I even got an answer at all).

 So with all that said, I'll take you through some of what I've been doing for the past two years over the next few posts, and I'll try hard to not go so long between updates. Always remember that your mileage may vary. What looks great to you might look cluttered to me, or vice-versa. All I can do is show you what things have worked for me, and maybe it'll inspire something in you.

 And as always - constructive comments are ALWAYS welcome. 

Tuesday, July 18, 2023

Weather Alerting, Rope Lights, and Home Assistant

 (Or "How I Sold My Wife & Mother-in-Law on Home Assistant")

I live out in the Midwest part of the United States. Specifically, Iowa. Some might think of our state as being "tornado alley," and perhaps at one time, that might have been the case. It's not really totally true any longer, though. Yes, we do get our share of interesting weather out here, but the Southeastern part of the US certainly has it's share of tornadic activity (arguably even more than we have in Iowa); and states like Kansas, Oklahoma, and Missouri sometimes give us a run for our money as well. Take a look at the NOAA Storm Prediction Center's "Tornado Watch Summary" for 2023 (up to the date that I started putting this article together) to see what I mean:


It's common knowledge out here that a NOAA Weather Radio is your best line of defense when it comes to keeping up with notification of weather alerts. I've owned one since the early 1990's, and I can attest to it being a nearly flawless method of weather alerting. I say nearly because:
  • You must live close enough to a transmitting site to make a weather radio work. NOAA does a pretty good job of blanketing the country. However, where I live, I must use an external antenna (as opposed to the telescoping whip that comes with the radio) to receive any sort of clarity on any of the stations "near" to me.

  • If you are out of earshot of your radio, it can alert non-stop until the sun rises in the west, and it would do you no good.
There is a pretty good workaround to these issues, though: weather alerts by cell phone. We've seen massive improvements in how well (and reliable) weather alerts by cell phone have become. This assumes, however, that you have your phone with you; you're connected to the network; and you have alerts properly configured.

But what if you want to have a "high tech" or even "Trekkie" kind of look at weather alerting? Something that would make even your wife and live-in mother-in-law think that all of the tinkering you've done with Home Assistant actually makes some useful sense? A way to get the alerts noticed, unmistakably, even when working out in the yard?

If that's what you're seeking, you've come to the right place!

Weatheralerts

The first thing you're going to need is a HACS integration called "Weatheralerts". Nothing that I talk about in this article will work without that integration fully installed and properly configured, as it's the main driver behind this project. My recommendation would be to get that package installed first. Make sure it's actually working as it should, and that you are getting proper notifications of alerts for your specific area. It's far easier to troubleshoot one problem at a time than to introduce several new packages, have something fail, then try to figure out exactly which one caused the wheels to fall off.

It took a little bit of playing around with the YAML code to get Weatheralerts working correctly for my HA installation. Ever since, though, it's been flawless - with one caveat: loss of internet. If there is an active alert and I lose internet connectivity (which happens more than I like, since I'm on Starlink), the package then assumes that there are NO active alerts. That's a problem, and you'll see why shortly.

Light Strips

Once you have Weatheralerts running like a well oiled machine, it's time for the next step: alerting. My house is a very long and narrow build, almost like a manufactured (or mobile) home. I have a very long hallway on the main floor and in the basement, perfect for a long strip of LED lights that will show the current "alert level." I chose the Meross 16.4 ft Smart WiFi LED Strip for this task, one for each floor. There is an integration in HA for Meross, but I strongly advise you to NOT use the standard integration. Instead, look for the Meross LAN integration in HACS. If you use the standard integration, you'll be dependent on the cloud, you'll quickly exhaust your API resources from Meross - and they'll shut you off. I know that from experience. 😉

Alerting Rules

Now, here's where it gets fun.

You need to build an automation that lets HA tell your light strips what to do and when to do it. This is where you're going to need a good understanding of YAML, or a little help from someone who knows YAML. 

I'm going to come out and say it: the HA community does some truly outstanding and amazing things, but for the sake of all that is holy, don't try to find a lot of help with YAML programming. I asked several times for assistance with this on the Discord server and in the HA Community Forums on the web. You might have guessed I was asking for the secret to KFC's fried chicken or the recipe for Coca-Cola; I got almost as much response looking for YAML coding help as I might have gotten for those two requests!

I ended up using a new resource: ChatGPT. I told the AI what I wanted to do, and it actually helped me with setting up the framework. Huge disclaimer here though! Remember that unless you actually subscribe to ChatGPT, you're going to get info that is current only to 2021. YAML programming syntax has changed a little bit in 2 years, and that did create a couple of issues.

But not to worry! At least now I had a framework, I could post what I had. and ask for some specific, targeted help. That generated a little more response, but had it not been for one particular user on Discord who was actually very generous with his (or her) suggestions, I'd probably still be floundering around.

Here's what I had in mind:

Green Alert

Everyday, run of the mill, nothing to see here - move along status. In this mode, the light strips remain turned on, colored green, and at only 5% brightness. This does a couple of things:
  1. Ensures that the light strips are powered on.
  2. Keeps the presence of the light strips in mind, so a change in color is noticed more readily.

Yellow Alert

This mode would be for any alerts that I wanted the household to know about but were not considered critical or immediately life-threatening. In this mode, the lights go to 100% steady yellow. Your level of comfort will vary on this, but for us, we chose the following:
  • Severe Thunderstorm Watch
  • Tornado Watch
  • Flash Flood Warning (we sit on pretty high ground - if we get flooded, we have bigger problems)
  • Excessive Heat Warning (gotta take care of the animals)

Red Alert

Time for the fecal matter to hit the rotary oscillator. In this mode, the lights go to flashing red, 100% brightness. Again, your comfort level will vary, but we chose the following:
  • Severe Thunderstorm Warning
  • Tornado Warning
  • High Wind Warning
  • Extreme High Wind Warning
  • Ice Storm Warning
These are all alerts that we wanted to have as full front & center of our attention. We're still a little on the fence about the Ice Storm Warning, though...  that one might move to yellow, since it's a longer term event.

After some fits and starts, I have code that is basically doing what I want it to do about 95% of the time. You can find my automation code on dpaste. I will strive to keep it updated as I make any changes to it. And I'm very open to others who want to make suggestions to streamline it or make it better! I won't bite your head off or ignore you.

If you want to see how this works, I've posted a short YouTube video of the lights going through their different modes.

What's Not Working?

  1. If NWS issues a follow up "Special Weather Statement" while a "yellow alert" watch of some sort remains in effect, the new SWS will overwrite the watch and the lights will go back to green (they should remain yellow). Or, perhaps a new "yellow alert" watch of some sort is issued while  a "red alert" warning remains active. (Flash Flood watch issued after a Severe Thunderstorm Warning is issued.) Again, the lights will flip to yellow instead of remaining flashing red. I know this can be tweaked with some modifications to the YAML logic statements, but I haven't been able to do so yet.
  2. If internet connectivity is lost while in yellow or red mode, the lights will go back to green. I'm not 100% sure how to handle that one just yet.

Outside Alerts

This was all well and good for interior alerting, but what about outside? We nearly got caught with our britches down one day this spring, so I set out to tackle that as well. For this stage of the project, I purchased the Govee Outside Smart Wi-Fi 32 Foot LED Light Strip. I then wrapped them around the utility pole we have in our driveway for our personal streetlight (seems like everyone has one of these in rural Iowa). There is a HACS repository built for the Govee Lan Integration, and that's the one you want.

Once installed on the pole, it was simply a matter of adding that strip to my "Alert Lights" device group, and bingo-bango - all three strips now act as weather alerting lights. My neighbor even watches for my exterior lights to change from her house, 1/4 mile away.

(I told my wife the next thing I need is a surplus tornado siren from eBay, but she did not think that would be a good idea. Killjoy.)

(And those are not electric wires. That's a folded dipole and the feeder coax.)

Still To Do...

  • If there's a "red alert" from NWS, I'd like to get this automation to switch my wall-mounted tablets from whatever theme they're currently using to the HA LCARS "Red Alert" theme. (If you're a Trekkie and you haven't checked out that frontend in HACS, you're missing out.) And of course, back to whatever default theme they were using when the alert is over. I'm sure it can be done, probably. I haven't fully investigated that.

  • I need to clean up the hallway light strips. This will involve installing an AC outlet up higher to the ceiling. I might also look at some translucent tubing to put the lights in, so it's a more diffused light and it's easier to mount nicely.

  • I might look at a way to add a sound effect to the red alert mode, but it better be something that only sounds for a short period of time (or until/unless manually silenced). Any goodwill I've gotten from the ladies of the house up to this point would be trashed as soon as this project becomes annoying.

  • I still have to believe there's a way to get the trigger for these alerts directly from NWS over their weather radios, as opposed to requiring a feed from NWS in Weatheralerts. This is the 21st century. We have the technology. I just need one or two people really good with automation and coding to help make it happen.

If you've made it this far in the post, thank you for reading! Again, I'm open to any suggestions you might have, as this is not at all a be-all/end-all installation. There's probably a lot more that could be done, and I'm still pretty new to the HA world right now. Constructive comments are always welcome!

Monday, May 22, 2023

To Cloud or Not To Cloud

 To Cloud or Not To Cloud

Before getting into Home Assistant, I was like most of the household automation folks out in the real world: different products from different vendors, none of which talk very well to each other unless you have a "voice assistant" like Alexa, Home Kit, Google, or the like. I suppose if you live in an urban or suburban area with pretty good internet, that's probably not a huge problem. However - I live in the sticks. Way out in the sticks. My internet comes from Starlink, and I consider myself lucky if I can get through a full day without seeing some sort of intermittent slowdown or disruption. If I don't like it, my option is standard DSL, which is kind of like watching the fields sprout.

My voice assistant of choice is Amazon Alexa. It normally, usually, works without any issues. Once in a while, though, it'll have a hiccup - either on its own or with help from Starlink. Everything I did up to this point was 100% dependent on having a connection to the cloud.

Enter Home Assistant

With a little bit of planning and sometimes a little bit of extra work, you can design an entire HA environment that requires no connection to the internet at all. It is entirely possible that everything in your HA environment could be controlled by your HA server and nothing else.

But to do that, you're going to need to really think about your current and future devices.

Some "smart" devices out there simply do not play with HA at all. Others kinda/sorta play with HA but they need a little coercion. And of course, some play very nicely, like the vendor wanted to make sure good APIs were available and cooperation between their products and HA was important.

Let me give you a prime example:

Google and Google Nest products.

Google and Google Nest products do not play nicely with HA without some poking and prodding, and even then (like with the Nest smoke detectors) they will be very, very, VERY finicky. And, you're going to need a connection to the internet to make them work.

You can tell the difference by looking at the card in your "Integrations" area (under "Setup").

Here's my Google Nest integration, which handles my Nest doorbell cam:


You can see the little white cloud in the upper right. That means that this integration must have connectivity to the internet to work correctly. 

By contrast, here is the integration for my router:



No cloud on this one, so even if I lose internet connectivity, this integration will still work fine.

In the end, it's going to come down to your preference. Some users absolutely refuse to install any integrations that require the cloud. Others (me included) accept cloud connectivity requirements grudgingly. I'd rather NOT have to depend on that, but for the integrations that require it, I'll accept it.

For now.

Sometimes, you can find integrations that require the cloud, and then find that the community has developed a better integration that doesn't need the cloud at all. Like this one:



There is a box in the upper right, which indicates that I'm using a custom integration. There's an "official" Meross integration, but it requires the cloud - and if you make too many calls on the Meross API, they will cut you off. (Ask me how I know.) The HA community developed an integration that doesn't require the cloud, and I'm using that now quite successfully and happily.

My point here is that even for the integrations that require the cloud, there might be integrations out there that remove that requirement. You'll just need to do some searching.

And, I would highly recommend that you do some searching for integrations before you purchase a new smart device. Make sure that it will talk to HA before you get it and install it. That'll save you some headaches (and maybe some salty language, if you're like me) later on.

Until my next post - rock on.

Friday, May 19, 2023

Designing Your Views

Designing Your Views

So now you've got HA up and running. It's finding devices and you're figuring out how to add cards to  views and make dashboards. By now, you've probably figured out that it's fairly easy to MAKE cards, but it's much more difficult to ARRANGE the cards so they look nice. I struggled with that for a little while. I'd add a card, then another, then another, and I could never get them to fit quite right and in the order I wanted.

Let me save you a little trouble. Learn how to "nest" your cards.

Remember that in HA, you have "views" that show in tabs across the top, and "dashboards" that show in tabs down the left side. I wanted to make sure we're on the same page here (no pun intended).

HACS

The very first thing you're going to want to do is get the "Home Assistant Community Store" integration ("HACS"). If you don't download or install anything else for HA, you're going to want this one. It will make your life easier when you want to add new things to your HA set up.

Layout-Card

Once you get HACS, you'll need a front-end addition called "layout-card." Grab that through HACS and install it.

Once you have both HACS and layout-card, we're ready to start making new views.

New View

What I found that works easiest for me is to create a new view and use the "Grid (layout-card)" view type. That sets the stage for the new view to be laid out in a basic grid pattern that I can control. Once you've created that new view, you should be looking at a blank screen. Now - here's where we start getting tricky.

You're going to add a new card - and it's going to be a blank "Grid" card. You'll also need to determine how many columns you want this new view to contain. Most of mine are 3 columns, although I do have a couple of views that are only 2. The only important things here are setting the number of columns and also, turn OFF the "Render cards as squares" selection. That makes things look really goofy if you don't.

Your card should look something like this now:


At this point, you must have an idea of what your first column (left side of the screen) is going to look like. Let me show you an example of what I have in one of my views:



There is absolutely no way you'd be able to stack these cards correctly in a standard grid or stack view. It's simply not possible. So, this is where you need to "nest" your grids. Let's dissect this first column.

The very first card I added to this column is a markdown card. That creates the "Interior" header. No issues there.

But then, I wanted to create two distinct columns of entities - single lights and groups. Focus on the keyword here: columns. How do you handle that? You simply add a 2-column grid card as your next card under the header markdown. Doing that, I now have a 2-column grid that I can manipulate however I see fit. Column 1 is a vertical stack of entity cards, and column 2 is a vertical stack of button cards. And they are arranged nicely, in the order I desire.

Here is (most of) the display that shows in my "cockpit" (my office) all day:


I've taken a 3 column grid for the main card and then addressed every column as it's own design area. This means nesting grid cards inside grid cards in some places. For example, look at the "Network Status" area. The header "Network Status" is a markdown card that takes up the entirety of column 2. The next card I added, however, was another grid card that is 3 columns wide. I could then add 6 different entities in there, arranged nicely, and how I wanted them arranged. I finished it up with another markdown card for the footer.

Give it a try. I absolutely 100% guarantee you will not like your first attempt. You probably won't like your second attempt either. What you see as my cockpit view comes after no less than 10 attempts to get it looking exactly like I want it. But remember that every time you fail, you learn a little more. Heck, there are a couple things I'm thinking about changing on this cockpit view.

Oh, and if you like the Star Trek looking "LCARS" view, guess where you can get that? Yep - HACS. I have a blog post about that coming up later.

Start making your views. Experiment and have fun. Learn how to nest grids and stacks inside other grids. It will make things look much better for you.

Until the next post...  rock on.


So Long Microsoft! Hello Pi!

Another one of the most stable things I did was ditching the VM I was using to run HA and go to a Raspberry Pi. I was using Microsoft Window...