Smart Home Automation

Scotttheking

Ars Legatus Legionis
12,199
Subscriptor++
Not really. If you're used to using docker, which presumably you are if you're running HA in docker, it's dead simple to add anything else that's containerized. And you get the control of doing it yourself. I run tons of different services via docker, and I need to be able to manage them myself, not let HA do whatever it thinks is right. I have different networks to segregate services. Some can reach the internet, some can reach my IoT devices, some can't reach shit. I have different paths mounted to different containers. I manage backups if each automatically via zfs snapshots. I share hardware like GPUs across multiple containers.

If HA stopped releasing docker images, I'd containerize it myself (or I'm sure linuxserver would have an image, if they don't already). I don't have a reason to ever go back to VMs.
I don’t think we are disagreeing.
 
  • Like
Reactions: gregatron5

ERIFNOMI

Ars Tribunus Angusticlavius
15,299
Subscriptor++
I don’t think we are disagreeing.
I don't think it's really more effort. If you just want to use it off the shelf, with no customizations (all you can do from the "add-on store"), then it's open your docker-compose.yaml, copy and paste a block, rename the service to whatever you want to call it, and change the image name to whatever image you want to run. That might take me two minutes vs one minute digging through the add-on store thing or likely the same amount of time if I have to go add the repo manually anyway, but is it more effort? No, I don't think so.

If you want to do anything outside of "run this image as it comes", then it's much less effort to manage the containers yourself. I don't think you can even modify anything about the containers running as add-ons, can you?

Here's an example. I use Frigate, which I know is available as an add-on. I also know add-ons can't use the Nvidia runtime, so no GPU decode like I'm using. And can you even mount USB or PCIe devices into the container? Because the whole point of Frigate is to use AI classifiers accelerated by cheap AI accelerators like the Coral. I also don't believe you have any way of defining a mount point for your video, so I can't mount the path for my NVR to the frigate container. How does that work? It uses the media path common to all other services installed by HA? I also have my cams on a segregated subnet that keeps them away from everything, even my other IoT devices. But I don't route all that traffic across VLANs. I mean I could, but then that's unnecessary traffic to and from the router and the camera feeds would go down while updating the router. Instead, my frigate container has an interface on the camera VLAN and also in the IoT subnet with HA. I know you definitely can't to any fancy networking with add-ons.

E: sorry, I didn't mean to start an argument. It's been a long, long day.
 
Last edited:

Scotttheking

Ars Legatus Legionis
12,199
Subscriptor++
I don't think it's really more effort. If you just want to use it off the shelf, with no customizations (all you can do from the "add-on store"), then it's open your docker-compose.yaml, copy and paste a block, rename the service to whatever you want to call it, and change the image name to whatever image you want to run. That might take me two minutes vs one minute digging through the add-on store thing or likely the same amount of time if I have to go add the repo manually anyway, but is it more effort? No, I don't think so.

If you want to do anything outside of "run this image as it comes", then it's much less effort to manage the containers yourself. I don't think you can even modify anything about the containers running as add-ons, can you?

Here's an example. I use Frigate, which I know is available as an add-on. I also know add-ons can't use the Nvidia runtime, so no GPU decode like I'm using. And can you even mount USB or PCIe devices into the container? Because the whole point of Frigate is to use AI classifiers accelerated by cheap AI accelerators like the Coral. I also don't believe you have any way of defining a mount point for your video, so I can't mount the path for my NVR to the frigate container. How does that work? It uses the media path common to all other services installed by HA? I also have my cams on a segregated subnet that keeps them away from everything, even my other IoT devices. But I don't route all that traffic across VLANs. I mean I could, but then that's unnecessary traffic to and from the router and the camera feeds would go down while updating the router. Instead, my frigate container has an interface on the camera VLAN and also in the IoT subnet with HA. I know you definitely can't to any fancy networking with add-ons.

E: sorry, I didn't mean to start an argument. It's been a long, long day.
No worries, not trying to spark one either. What I'm hearing from you is paraphrased "if you already run docker infra it's no big deal" and I agree with that. Getting to that point vs. the HASS VM, I'd argue is more work.
 

ERIFNOMI

Ars Tribunus Angusticlavius
15,299
Subscriptor++
No worries, not trying to spark one either. What I'm hearing from you is paraphrased "if you already run docker infra it's no big deal" and I agree with that. Getting to that point vs. the HASS VM, I'd argue is more work.
I suppose it depends on what you're used to. Before I started using docker, it seemed confusing. Now, I go to docker for everything. I can spin up a new service via docker in a minute or two. It takes that long just to create a VM, nevermind installing an OS in it and then deploying your software on top of that. Even if you have a favorite template to start with, cloning a VM template takes longer than writing a docker compose.

I just think it's a tool that people who are using VMs for everything should look into learning. It really is a better way of doing things. I was wasting so much memory running VMs sized for what they needed at peak usage, even if they spent most of their time running with way less than that. And man, safely shutting down a dozen VMs before you can safely shut down your server... I had to trigger a shutdown the second my UPSs went on battery to have even a hope in hell of shutting down before they ran flat. Then on boot, you then have to wait for all of those VMs to boot. And you have to manage updates in each of those VMs. And all that wasted disk space. The more I think about it, the more I remember how much of a pain VMs are.
 

gregatron5

Ars Legatus Legionis
11,753
Subscriptor++
I am just learning Docker (for other things) and I'm confused as fuck. I'm also fairly competent technically. I understand the concepts, but getting it to work correctly has been a huge PITA. That said, I'm running HA on an ODROID and it works just fine, probably almost identically to how it would work in a VM. If I was trying to use HA in Docker I probably would have given up a looooooooong time ago.

The only people who can start out using HA on Docker are people who already know and use Docker. It may be easy for you because you've been doing it for such a long time, but it's not that easy for most other people. The level of effort to get comfortable with Docker is significant, and the time and effort to gain the proficiency it sounds like you have is likely well beyond what people who don't use Docker for a living are willing to put in.
 
  • Like
Reactions: Defenestrar

ERIFNOMI

Ars Tribunus Angusticlavius
15,299
Subscriptor++
I mean my more complex setup would be a bit much for most people, but I wasn't all that experienced with docker when I started moving my stuff to docker. And if you just want to run HA and you don't want to do anything funky, a very minimal docker compose will do just fine. Home Assistant even provides a docker compose in their official docs. https://www.home-assistant.io/installation/alternative/ Copy and paste that whole block and all you have to do is change the path to where you want the config. ./config will do fine.

Adding other containers is just as easy. Everyone that publishes a docker container also documents a bare minimum docker compose that shows you what you need. Usually it's a bunch of default stuff that's fine, but you can tweak if you want. Copy and paste, rename the service of you like fun names, docker compose pull, docker compose start.

The people who can set up a VM for HA are also people who already know what a VM is and how to set one up. Of course it requires either some pre-existing knowledge or spending some time building that base knowledge.
 

Defenestrar

Senator
15,154
Subscriptor++
I am just learning Docker (for other things) and I'm confused as fuck. I'm also fairly competent technically. I understand the concepts, but getting it to work correctly has been a huge PITA.
I'm right there with you. I get what's supposed to be happening under the hood and I don't have any problem getting something to work with all the defaults, but since I've never had to mess with it before and almost never have to do anything other than run an update that's a command line copy/paste from some website, I just don't get the frequency with docker to actually learn it. It's on my to-do list of things I should eventually learn, but I've got a really long list of things at hobby-level priority (which is where Docker sits for me). I've got even longer lists of higher priority items. So I don't know when I'll get a chance to sit down and learn in a way that sticks - rather than learn enough for today and forget it by the time I need to run another command in three to six months.
 

Drizzt321

Ars Legatus Legionis
30,769
Subscriptor++
Considering my HA instance runs over top of FreeBSD NAS/Server, I don't know that Docker would work, or would be a lot more effort, so a VM it is. HassOS to be specific, and I also like the Add-On easy install/etc bit too.

Although I do run Frigate in it's own VM, and I use the Proxy Add-On, because it was before HA added better external/network/additional data storage functionality.
 
You can always use a dynamic dns service instead of static IP. In my experience, home IPs generally don't change very much, unless you're offline for quite a while.
I have a static IP address, I just don't want to put my HA server directly on the Internet. Using wire guard to a VPN on the ESP directly seems a lot safer.

I've been thinking about getting into ESPHome stuff, but I think I'll pass. For now, at least.
Backdoor was fake FYI.
 
  • Like
Reactions: Defenestrar

Drizzt321

Ars Legatus Legionis
30,769
Subscriptor++
I've been thinking about getting into ESPHome stuff, but I think I'll pass. For now, at least.
Innnnteresting. I'm very much wondering if that's baked into the hardware, or something baked into ESP-IDF, their development framework, and a update to that could strip all those BT things out. If the ESP-IDF update is viable, that'd be nice.
 

Drizzt321

Ars Legatus Legionis
30,769
Subscriptor++
I have a static IP address, I just don't want to put my HA server directly on the Internet. Using wire guard to a VPN on the ESP directly seems a lot safer.


Backdoor was fake FYI.
Ah. I've done so via reverse proxy TLS Nginx, I haven't done a wireguard/whatever VPN from my phone/laptop to my home yet.

Hrm? Backdoor was fake? How do you mean? Any info somewhere about that?
 
Hrm? Backdoor was fake? How do you mean? Any info somewhere about that?

View: https://youtu.be/ndM369oJ0tk?t=218


Basically, the bluetooth hardware can be told by the operating system to write to memory and send packets ... which the operating system can already do since it is the operating system. Doesn't appear to be exploitable since you have to send the commands from the OS side.
 

Drizzt321

Ars Legatus Legionis
30,769
Subscriptor++

View: https://youtu.be/ndM369oJ0tk?t=218


Basically, the bluetooth hardware can be told by the operating system to write to memory and send packets ... which the operating system can already do since it is the operating system. Doesn't appear to be exploitable since you have to send the commands from the OS side.

Wait...so these commands are Host -> BT? Not Remote BT device -> device Host?

I mean... huh? Thank you very much for this. Doesn't really seem like anything to freak out in the slightest. It's neat how they figured out that it was there...but such non-news. sigh
 
  • Like
Reactions: Defenestrar
Anyone got a recommendation of a smart smoke/CO detector that will talk to the thermostat and shut off the furnace if CO is detected? Looks like my previous solution has entered the next circle of its death spiral. Which sucks because I didn't buy into the Google ecosystem for exactly this reason. But that didn't stop them from buying into my house and killing my hardware :p
 

gregatron5

Ars Legatus Legionis
11,753
Subscriptor++
Is there a "smart" thermometer, preferably Home Assistant compatible, that can use the temperature of sensors instead of itself? The thermostat in this house is just a sheet of drywall (and maybe a sheet of aluminum ductwork) away from the air return, which runs down the wall directly behind it. This makes the thermostat read 3º F cooler than the rest of the main floor. The problem is once the sun stops heating things up and the rest of the house cools down, it would get too cold if I left it 3º colder than I want it. So I want a thermostat that can ignore its own readings and only use those of remote sensors. Does such a thing exist?

(It's a rental, so I'm not going to think about relocating the thermostat or doing anything with the A/C unit otherwise.)
 

Drizzt321

Ars Legatus Legionis
30,769
Subscriptor++
Well, if you have ZigBee you can get a variety of ones, https://zigbee.blakadder.com/ is generally a good spot for a list that you can find things that likely will work.

DIYing with ESPhome shouldn't be so hard either

https://community.home-assistant.io...that-works-with-esphome-home-assistant/379459
https://theorangeone.net/posts/esphome-dht-sensor/
https://www.instructables.com/Humidity-Temperature-Sensor-ESPHome/
https://home-assistant-guide.com/guide/the-best-temperature-and-humidity-sensor-for-esphome/
https://github.com/jepnoda/ESP-Temperature-Sensor

Among many other guides out there.

EDIT: Oh, you want an actual thermostat? That could be more of an issue, maybe check to see what kind you currently have. Is it simply closing a relay (2 wire) to turn on and off? That should be easy to do. However you'll also want some minimum time on/maximum time on configured as well. They generally don't want to go on-off-on-off sort of behavior within seconds.
 

Scotttheking

Ars Legatus Legionis
12,199
Subscriptor++
Is there a "smart" thermometer, preferably Home Assistant compatible, that can use the temperature of sensors instead of itself? The thermostat in this house is just a sheet of drywall (and maybe a sheet of aluminum ductwork) away from the air return, which runs down the wall directly behind it. This makes the thermostat read 3º F cooler than the rest of the main floor. The problem is once the sun stops heating things up and the rest of the house cools down, it would get too cold if I left it 3º colder than I want it. So I want a thermostat that can ignore its own readings and only use those of remote sensors. Does such a thing exist?

(It's a rental, so I'm not going to think about relocating the thermostat or doing anything with the A/C unit otherwise.)
Assuming you mean thermostat, that’s easy - look for a remote temperature sensor.

The thermostat I use is a Venstar, look at Explorer, Explorer IAQ, or ColorTouch lines that have wifi: https://venstar.com/
Then add either https://venstar.com/thermostats/accessories/wifi-temperature-sensor/ or https://venstar.com/thermostats/accessories/remote-sensor-10k/ or if IAQ https://venstar.com/thermostats/accessories/vennet-temp-hum-sensor/ and set the thermostat to use that for temperature readings. Works great via local API with HA.
Could also rig something up with HA to adjust the thermostat set point based on the difference between thermostat and remote.

Anyone got a recommendation of a smart smoke/CO detector that will talk to the thermostat and shut off the furnace if CO is detected? Looks like my previous solution has entered the next circle of its death spiral. Which sucks because I didn't buy into the Google ecosystem for exactly this reason. But that didn't stop them from buying into my house and killing my hardware
Depends on how you want to go.
More self contained - get a CO detector that has a relay and use that to open/close the shut off contacts on your furnace. Or trap that signal with a smart relay and use it to send a command to the thermostat. My thermostat has a pair of contacts that can be used directly for this function even (Venstar Explorer IAQ).
Zwave alarm signal sensor: https://www.thesmartesthouse.com/products/zooz-800-series-z-wave-long-range-dc-signal-sensor

Random link, kiddie interface module: https://www.supplyhouse.com/Kidde-CO120X-CO120X-Carbon-Monoxide-Alarm-Relay-Module
Another: https://www.mtiindustries.com/product/plug-in-carbon-monoxide-alarm-with-relay/?gQT=1
 
Last edited:

ChaoticUnreal

Ars Tribunus Angusticlavius
7,664
Subscriptor++
Is there a "smart" thermometer, preferably Home Assistant compatible, that can use the temperature of sensors instead of itself? The thermostat in this house is just a sheet of drywall (and maybe a sheet of aluminum ductwork) away from the air return, which runs down the wall directly behind it. This makes the thermostat read 3º F cooler than the rest of the main floor. The problem is once the sun stops heating things up and the rest of the house cools down, it would get too cold if I left it 3º colder than I want it. So I want a thermostat that can ignore its own readings and only use those of remote sensors. Does such a thing exist?

(It's a rental, so I'm not going to think about relocating the thermostat or doing anything with the A/C unit otherwise.)
Honestly your best bet is to get a smart thermostat and then just ignore the temp on it and turn it on/off via HA using other sensors.

These are cheap and can be flashed
Then you can get a couple cheap esp32 to handle sending the bluetooth back to HA to get the temps where you want them.
Can also flash some smart plugs to pull double duty and function as a bluetooth proxy as well as a smart plug.

Then just need to do some automations in HA to turn the heat/ac on/off when you want it and don't set a temp on the thermostat
 
  • Like
Reactions: gregatron5

ChaoticUnreal

Ars Tribunus Angusticlavius
7,664
Subscriptor++
Anyone got a recommendation of a smart smoke/CO detector that will talk to the thermostat and shut off the furnace if CO is detected? Looks like my previous solution has entered the next circle of its death spiral. Which sucks because I didn't buy into the Google ecosystem for exactly this reason. But that didn't stop them from buying into my house and killing my hardware :p
https://www.amazon.com/dp/B08FFB233...FWYSSX91U&ref_=list_c_wl_lv_ov_lig_dp_it&th=1

you'd need to write an automation yourself but shouldn't be too hard.