this post was submitted on 28 Jan 2024
12 points (70.0% liked)

Selfhosted

40648 readers
360 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
12
submitted 10 months ago* (last edited 10 months ago) by TCB13 to c/selfhosted
 

Hello,

My IoT/Home Automation needs are centered around custom built ESPHome devices and I currently have them all connected to a HA instance and things work fine.

Now, I like HA's interface and all the sugar candy, however I don't like the massive amounts of resources it requires and the fact that the storage usage keeps growing and it is essentially a huge, albeit successful, docker clusterfuck.

Is there any alternative dashboard that just does this:

  1. Specifically made for ESPHome devices - no other devices required;
  2. Single daemon or something PHP/Python/Node that you can setup manually with a few systemd units;
  3. Connects to the ESPHome devices, logs the data and shows a dashboard with it;
  4. Runs offline, doesn't go into 24234 GitHub repositories all the time and whatnot.

Obviously that I'm expecting more manual configuration, I'm okay with having to edit a config file somewhere to add a device, change the dashboard layout etc. I also don't need the ESPHome part that builds and deploys configurations to devices as I can do that locally on my computer.

Thank you.

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 21 points 10 months ago (2 children)

How has home assistant become a resource monster? What kind of integrations are you using aside from ESPHome?

[–] Zeoic 11 points 10 months ago (2 children)

Yeah, home assistant is tiny... I'm not sure what he expects? Does he need it to run on a pi zero or something? Lol

[–] mangaskahn 1 points 10 months ago* (last edited 10 months ago)

He's trying to run it on an esp32, didn't you read the title? /s

load more comments (1 replies)
[–] TCB13 -3 points 10 months ago (4 children)

I'm not using any other integration. Isn't this a resource monster?

I just don't want to keep running an entire VM with their image. Something more simple that could be used on a LXC / systemd-nspawn container or directly on a base system would be nicer.

[–] ikidd 11 points 10 months ago (1 children)

It's half a GB of ram and virtually no CPU usage. You could run it on a Pi 3 with a 16Gb SD card and have resources to spare.

This is just weird.

[–] TCB13 3 points 10 months ago (2 children)

What is weird is having to waste almost 700MB of ram + 10GB of storage for a simple webui that charts sensor data and only keeps it for 10 days. As a comparison my NAS container runs Samba4, FileBrowser, Syncthing, Transmission, and a few others under 300MB of RAM with pontual spikes on operations.

[–] ikidd 6 points 10 months ago (1 children)

There's a lot of difference between a container and a VM. You can install HA on a container, all you have to do is set it up according to the manual install instructions, and work around any hardware interfacing issues that come up. You'll save 200MB of RAM and will have to do any upgrades manually. Doesn't seem worth it to me, but to each their own.

[–] TCB13 1 points 10 months ago (1 children)

What I'm going to do is setup HA Core on a container manually and run without addons / docker. That will be about installing python and should waste way less resources.

[–] iarigby 1 points 10 months ago (1 children)

setup on a container run without docker

??

[–] TCB13 2 points 10 months ago* (last edited 10 months ago) (1 children)

If you don't need the addons you don't need Docker. HA Core is a python script with a few dependencies that can run with pyenv and a simple systemd service unit at every boot.

[–] iarigby 1 points 10 months ago (1 children)

yeah but that’s not setting up a container that’s just setting up python env

[–] TCB13 1 points 10 months ago (1 children)

Yes, but I would rather do it inside a LXC container.

[–] iarigby 1 points 10 months ago

ah got it, thanks

[–] [email protected] 0 points 10 months ago (1 children)

You have found the smallest, tiniest, itty bittiest potatoe to get upset about here. You could run this on a toaster.

[–] TCB13 2 points 10 months ago

I'm not upset, just wondering / looking for way to keep the potato from growing further and/or alternatives.

[–] [email protected] 6 points 10 months ago (1 children)

If this is what you consider a resource monster you’re gonna have a really, really rough time

[–] TCB13 2 points 10 months ago (1 children)

This isn't reasonable at all, 700MB of ram + 10GB of storage for a simple webui that charts sensor data and only keeps it for 10 days.

[–] [email protected] 2 points 10 months ago (1 children)

You need to edit your configuration.yaml file to exclude certain sensors or values. I excluded some of the more chatty sensors that I didn't need and my disk use went from around 40gb to 150mb

[–] TCB13 1 points 10 months ago

Interesting. I'll have to check what might be logging so much info.

[–] scarilog 5 points 10 months ago

In what world is this is a resource monster??

[–] [email protected] 1 points 10 months ago (1 children)

Do you have the entire hass-os image running in a VM?

[–] TCB13 1 points 10 months ago
[–] [email protected] 6 points 10 months ago (1 children)

Node-Red can do dashboards. I don't know if it does data logging, but I would guess so since it can do dashboards. It also supports MQTT so it should handle ESPHome devices without a problem.

It's made for automations (and great at it) but it can be a minimalist HA hub too.

[–] TCB13 -1 points 10 months ago

Hmm.. that's interesting. I'll have to explore further. Thanks.

[–] [email protected] 4 points 10 months ago (1 children)

Consider running HA in a light weight systemd-nspawn container with minimal debian. No docker, only install the repositories you need. HACS if needed. Run your own database on the side somewhere and let HA use it.

By itself HA is fairly lightweight already.

[–] TCB13 -3 points 10 months ago (1 children)

I was trying to go that route with LXC actually and while it seems great what about the ESPHome addon? I'm not even sure if that thing is required to use ESPHome devices or not.

[–] [email protected] 2 points 10 months ago* (last edited 10 months ago) (1 children)

It's not needed, and you can run it separately standalone if you do want it as well.

[–] TCB13 0 points 10 months ago (1 children)

It’s not needed,

For what exactly? Can I still add the ESPHome devices to HA without the addon installed, is the addon only for flashing the devices?

Thanks.

[–] [email protected] 2 points 10 months ago (1 children)

Correct, the discovery process where you add them doesn't actually involve the addon and works fine without it. The addon is just a wrapper for the standalone ESPhome web UI. It's also not the only way to author and flash a config to a device, you can do it from any computer and on the command line.

[–] TCB13 1 points 10 months ago

Thank you for clarifying this. I was aware I could flash devices on my computer (I did a few times because a few of my boards ESP32-S2-Mini have to be flashed once by the Flash Download Tool from espressif). Maybe I'll run the ESPHome WebUI on my computer or use the cli, I'll see.

I'll proceed to install the HA Core + HACS on a LXC container and see how it goes.

[–] [email protected] 3 points 10 months ago (1 children)

I went with the virtual appliance when I installed Home Assistant several years ago, turned out to be a great decision looking at how it's architected. I only self-host the database separately, which i've found easier to manage.

the fact that the storage usage keeps growing

There should be a setting to reduce how long Home Assistant retains data for - I removed the limit on mine, however its possible that on newer versions they've changed the default

Hope you find a solution though - I think node red (capable of doing dashboards on its own) with something else is going to get you part way there.

[–] TCB13 -1 points 10 months ago* (last edited 10 months ago) (2 children)

I've been doing this. I'm running HA under LXD (VM) and it works.

$ lxc info havm
Name: havm
Status: RUNNING
Type: virtual-machine
Architecture: x86_64
PID: 541921
Created: 2023/12/05 14:14 WET
Last Used: 2024/01/28 13:35 WET

While it works great and it was very easy to get the VM running I would rather move to something lighter like a container. About the storage I just see it growing everyday and from what I read it should be keeping for 10 days however it keeps growing. Almost 10GB for a web interface and logs from a couple of sensors, wtf?

I would be very happy with HA, really no need to move other stuff as long as things were a bit less opaque than a ready to go VM that runs 32434 daemons and containers inside it.

[–] [email protected] 2 points 10 months ago (1 children)

Curious, you might want to look into what's generating your data first. It's easy to generate data, it's harder to only keep the data that's useful.

[–] TCB13 -1 points 10 months ago (1 children)

And how do I go about that?

[–] [email protected] 2 points 10 months ago (1 children)

One logs into the VM and starts checking the files of course. Go from there.

[–] TCB13 1 points 10 months ago* (last edited 10 months ago)

FYI the DB isn't even that big and the total space is growing at around 100MB every 2 days.

I just don't get it.

[–] [email protected] 1 points 10 months ago (1 children)

Curious, you might want to look into what is generating your data then first. It's very easy to generate data, it's a lot harder to only generate and keep useful data.

[–] TCB13 1 points 10 months ago
[–] [email protected] 3 points 10 months ago

Check out FHEM, you connect them via MQTT

[–] TheInsane42 3 points 10 months ago

I'm running domoticz with an rflink interface for my rf433 devices. No clue if they support ESPHome, but you can check. It runs confined to my network.

[–] ikidd 3 points 10 months ago (1 children)
[–] [email protected] 2 points 10 months ago (1 children)

I run nodered within Homeassistant in a vm on one of my nucs, I do all of my actual automation in there and homeassistant is just an IO layer for zigbee and bluetooth stuff.

[–] ikidd 3 points 10 months ago (1 children)

I started out that way, but I've moved to doing most of it in HA directly since they massively improves the UI. I still use NR for complicated stuff though. I've recently started using Pyscript for modbus integrations too.

[–] [email protected] 2 points 10 months ago (1 children)

The UI is definitely better than it used to be, but nodered can do some more powerful stuff like pulling the html of a devices web ui and parsing data straight from the page when there's no API to use for example. I used to do that for a solar inverter at my last house.

Now I use it to control my AV switcher that distributes video through the house, it has no native homeassistant integration and only supports things like control4 and RTI so I implemented my own control using their REST API and hooked it all up to buttons and selectors in homeassistant. works great.

Also my home theatre receiver has a homeassistant integration but its terrible, so again, I've manually implemented the tcp controls in nodered.

[–] ikidd 2 points 10 months ago

pulling the html of a devices web ui

I've done something similiar in NR to scrape the CUPS webpage on my desktop and turn on a tasmota plug for the printer when it sees a job waiting in the queue. I wouldn't even try to do that in HA directly. But I wouldn't be surprised if there's an integration somewhere that would do it.

[–] MigratingtoLemmy 2 points 10 months ago (1 children)

Why aren't you using Node-red and ntfy/MQTT brokers? HA is feature-bloat for me

[–] TCB13 1 points 10 months ago (1 children)

I wasn't aware that node-red existed until this post :P

[–] MigratingtoLemmy 2 points 10 months ago
[–] [email protected] 1 points 10 months ago* (last edited 10 months ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
HA Home Assistant automation software
~ High Availability
LXC Linux Containers
MQTT Message Queue Telemetry Transport point-to-point networking
NAS Network-Attached Storage

4 acronyms in this thread; the most compressed thread commented on today has 11 acronyms.

[Thread #457 for this sub, first seen 28th Jan 2024, 18:25] [FAQ] [Full list] [Contact] [Source code]