Hassio not suitable for offline environments (no local control, privacy second)?

I know this is 2 months later, but they are working on making it completely local:

Maybe not be fully there at this point in time, but it’s headed that way!

BTW, did you figure out how to configure NTP with hass.io? It looks like it should be possible by creating a timesyncd.conf file somewhere, although there is confusion on exactly where.

I think, based on operating-system/Documentation/configuration.md at 712dcf9f74497eef6a75ed1e76f8ae8817ae3ee6 · home-assistant/operating-system · GitHub, and confirmed by OS: allow set NTP by pvizeli · Pull Request #252 · home-assistant/operating-system · GitHub, that it might need to be /etc/systemd/timesyncd.conf

1 Like

What I don’t understand why picotts doesn’t get fixed on hassio. It’s a offline tts which is available for years and works. I used it since ever before I moved from a home assistant pip install to hassio.

So it’s not right that their is no offline tts available at the moment like mentioned from @balloob in the video. It’s just broken at the moment. Their is even a python version of picotts which looks like perfectly for hass/io…

1 Like

Has anyone figured out how to change NTP servers?

My internet is very fast, but not always reliable (very rural cable, sometimes high latency in the 1000’s of mS or intermittent packet loss - in fact had an hour or so outage just today) so I bought a Stratum-1 NTP server appliance that syncs to GPS and I have everything on my network point at that, or at my router (which points to my local NTP server, with NIST as a backup). This has brought most of my systems down from being +/- >1 second to +/- <25mS accuracy (a few experimental things I do actually require that precise of a clock).

I’ve tried to follow directions at https://github.com/home-assistant/operating-system/blob/a592fc986610fac9dbaec96f514ee616c1a44d17/Documentation/configuration.md bit it says the filesystem /etc/systemd/ is read-only so I can’t do anything to change it.

Seems like this should be trivial to add as a setting to the web-UI configuration along with specifying location and units.

I gather NTP is required, and using a local NTP server would guarantee it’s always available, even when internet goes out .

I’m not paranoid about using a public NTP server from a privacy perspective, but I’d prefer to use one that is local and I can have some say in the reliability of so my network continues to function when I have gaps in connectivity to “the cloud”.

hey ,
i didn’t get the last point you mentioned; could you explain more, please ?
what kind of trade-offs ?

Well, if you don’t have internet access the obvious answer is not being able to use anything that requires the internet to function. Like the popular voice assistants like Google Assistant or Alexa.

Then there is the lack of access to any cloud services. For example, ones that I use regularly are weather forecasts and alerts. And of course the recently added coronavirus integration.

Or any cloud based integrations for smart devices (none that I use).

I can understand and agree with the need for the internet for things like updating software, getting the news, weather, and alerts.

However, why should I have to go out to the internet just to get the curtains to open?

Worse still, why would anybody want to make use of any of the “free” services provided by privacy violators like Facebook, Google or Amazon?

Sure, the internet is full of great things and possibilities and people, but it also has more than it’s fair share of baddies who would wreck your environment, DDoS it, co-opt it into zombie farms or ransomware your backups just to name a few things.

We are all so careful to stay at home at the moment and are trying really hard to not get COVID-19, but ok to expose our data to potential abuse. We are so careful against catching a real virus, but are just so happy to catch a ride in the voice assistant limousine where all surfaces are covered layers thick in all sorts of computer viruses, malware and spyware.

More shame us all!

1 Like

I completely agree with you. That’s the reason to use HA and make things work without the cloud if at all possible.

As far as the other concerns, I see your point there too. But each person has to act on their own level of comfort.

However to compare the threat to your physical well-being from a real world virus to the “danger” to you of your computer being “infected” from a computer “virus” or some of your data being stolen is a bit far.

One could literally kill you. While the other is at most potentially financially harmful and usually no more than a big inconvenience or just embarrassing.

Ah, wouldn’t it be nice to go back to the good ol’ days when all you really had to worry about is someone stealing info on your grocery buying habits (first world problems…)? :mask:

1 Like

And for people who don’t care about voice assistants or weather?

I’m unsure if sunrise/sunset requires Internet but that’s the only thing I use that might. For what I care most about it’s looking at stuff on my LAN and at sensors, acting like a really fancy plug-in wall timer.

Also sometimes even if you are fine with Internet connectivity, you may have connectivity interruptions - I run my own GPS sync’d NTP server because I get better precision and uptime of the NTP server than my ISP’s stability provides to the various Internet servers.

About using HA completely offline. I have a sailboat I live on for about 2 to 3 months a year. After HA’ing my house, I recently started doing the same with my boat. After all, it’s pretty much a small floating appartment. When at sea, I only have internet connectivity over Iridium satellites, which is both very slow and very expensive. So I only use it for essential things (like getting weather maps), but certainly not for updating software packages.

I ended up using HA core in a venv on Raspbian. The same setup as in my earthbound home. I get NTP over GPS. The only problem I still have now is that the Lovelace frontend, which can be accessed from small tablets in the cabins of the boat, will try to get fonts from Google. Looks like the culprit is charts.js used for history.

decentraleyes could be a work’a’round (you will need it on all your clients)

Thanks yeah, but I’d rather not rely on browser plugins for things like that.

Looks like in HA version 0.108.x there’s no request to Google anymore when loading the history page. I previously used 0.103. Seems to be loading fine now when requesting the page on a LAN without internet access. Haven’t updated to 0.110 yet, but unless they added a CDN access back in, HA should work entirely offline now.

1 Like

Hello, does anyone know if this is because the pi doesn’t have a battery to keep a local clock running? I live in a rural area and loosing internet connection and power is common, so if there’s no internet and there’s a power cut, home assistant won’t boot again and I end up with my house lights dead (almost all my lights are controlled with hass) even though power is back. I’m asking because I was thinking that instead of having a local NTP server, a solution could be upgrading to a NUC which should be able to “remember” the time even after a power cut. Anyone knows if that’ll work or I’m better off with a local NTP server? I’m a bit worried about using the local NTP approach since I’d probably go with a pi for that server and I don’t want to end up in a situation were the local NTP won’t start after a power cut when there’s no internet

As far as I know, (and I may be wrong) Home Assistant is hard-coded to use Google’s Public NTP service.

If you wanted Home Assistant to use your local NTP server, I imagine you would have to spoof DNS to make it appear as being Google’s NTP.

I was planning on achieving that with this https://github.com/home-assistant/operating-system/blob/329caf6c1c0b6267146bd39199ccf62c387784c0/Documentation/configuration.md#ntp. But then I’m not sure if my local NTP will still be responding after restarting without internet

1 Like

I stand corrected, it can be modified; good to know.

Or just add an rtc module to your pi. There are plenty of them, most simply plug onto a part of the gpio port and they typically use a little coin cell to keep the time when the power is out. If it’s only to cover the time of a power / net outage (rather than complete offline operation), even a cheapo rtc for a few bucks should be more than enough.

Ohh, I’m going to look into that, thanks! :wink:

Hi HeyImAlex, there are any configuration win Hassio that must be modified to use the added RTC module connected to the RPi?

Thanks

I don’t think there is, was following this thread but it seems no one has found a solution yet. I saw the home assistant os is based on buildroot and motioneye os is also based on it and does support RTC, this are their instructions, I was thinking maybe enabling developer access to the home assistant os I’d be able to add that same config and hopefully it’d just work :sweat_smile:, I just need to order a RTC module and a raspberry to try that without the risk of breaking my home. Worst case scenario it doesn’t work and I use that new raspberry as a NTP server. I would rather not have my home assistant depend on another server to boot but that’ll be better than what I have now.

I never used Hassio / Home Assistant OS, so I don’t know how straightforward it is (or not). I’m running HA as a venv under Raspbian (well, Raspberry Pi OS now). I have the PCF8523 based RTC, so enabling it was pretty easy (enabling the kernel driver, disable the fake hw clock and enable the real hwclock support). Indeed HA OS seems to be based on Buildroot, so I would assume that it should be possible to add RTC support. But they really locked down the OS, so it might be easier to just have an external NTP.

Alternatively, if you are already setting up a new Pi, you could also install HA either as a Python venv or in a Docker container. And keep full access to the host OS in either case.