Home Assistant Core -- TrueNAS CORE Community Plugin

Hi @CypSteel

All of my recent guides ( and the plugin ) should install everything you need. There are a few exceptions but mostly, I include all dependencies now by default.

The devfs_ruleset should be all you need… There is a bug in iocage to be aware though. If you restart or stop the jail, it will remove the custom ruleset – It’s annoying – If you stop the jail – you’ll need to run the ruleset script again before you restart it – There is more about this a few posts up.

I can say though, if the Aeotec Z-Stick Gen5 is available inside the jail, it will show up as a /dev/cuaU* device. You can use a simple ls /dev to check for the Z-Stick.

 ls /dev | grep cua
root@homeassistant:~ # ls /dev | grep cua
cuaU0
cuaU0.init
cuaU0.lock
1 Like

Thank you once again.

Many thanks for your plug-in. I have tried it, and I am glad to say it works, except for the Homekit integration, see this issue on GH. I think it is because /usr/bin/openssl is a much older version, and installing the newer from ports requires a change to the PATH: it looks like HA is taking it from /usr/bin, as per the system-wide path order. Looking at your rc.d/homeassistant script I saw that sh is used to run hass so I created /home/hass/.profile containing a re-ordered path. This made the error about the missing ChaCha algorithm go away, but I am afraid Homekit still does not work for me: the iOS Home app still returns Couldn't add Home Assistant Bridge error, but this time I do not see anything in the HA log. Indeed, HA thinks it has paired, but on restart it goes back to wanting to pair-up. Do you have any pointers how to debug that?

On another note, I was wondering to what extent I could customise a jail created using your plug-in and not lose those customisations upon update. In my other jails I like to have my standard ssh, zsh+oh-my-zsh set-up and a few other bits and bobs. From what I have seen in other FreeNAS plugins they can take a rough approach to updates, effectively deleting prior configs. Do you have any feelings about that?

Finally…I also use ZWave, though it runs on a remote Pi, over socat/ser2net. I’d rather keep the Pi light-weight and keep all real processing on the FreeBSD server. I hope you figure something out before the big change comes. :slight_smile:

Many thanks again for your valuable time.

Hi @Rafal

You are correct about the issue with openssl version and Home Kit. Sorry, I do not own any Apple or Home Kit devices to help trouble shoot a work around or solution. If anyone figures this out, I will include the required changes to the plugin. – At very worst case, this will finally be resolved in TrueNAS 12 since we will finally have an updated base.

That is just the way the “plugin update” works – rather than simple update, all non-base packages are removed, then reinstalled according to what is included in the manifest. The configuration files should not be removed during this process. Normally this means anything not included in the manifest would be removed with every update… In this plugin however, I have included a step that should automagically reinstall anything you have installed outside of the included packages in manifest.

Mostly this plugin is about providing an easy install and some scripts for convenience. This is not intended to be a managed system that does everything for you – With this in mind, I see no reason to prevent you from adding your own bits and bobs. - I would only caution that you mind these files included in the overlay – These files are always replaced when running a “plugin update” so any manual edits will be lost.

I’ve already got a PI setup with a single docker container to run qt-openwave. When HA 0.110 is released, I’m going to start using the new OpenZWave Beta integration

I’m glad I was wrong about the current Z-Wave integration being removed.

This is mentioned in the 0.110 release blog

There is currently no plan to deprecate the existing Z-Wave integration. But the hope is that the new integration, in the future, will offer a simpler, more stable and more feature-rich experience than the current Z-Wave integration.

It’s too late for me though. I already drank some of that sweet, new integration cool-aid. There’s no turning back now

OpenZWave (beta) has arrived! :tada:

From the 0.110 release blog under “OpenZWave integration now in beta”

If you want to give it a shot, you should be comfortable with setting up custom add-ons and MQTT. There is no migration from the current Z-Wave integration yet, this is still to come.

The plan is to add more platforms in the future, making it super simple to set up the integration. Stay tuned.

There is currently no plan to deprecate the existing Z-Wave integration. But the hope is that the new integration, in the future, will offer a simpler, more stable and more feature-rich experience than the current Z-Wave integration.

The OpenZWave (beta) integration connects to ozwdaemon.

ozwdaemon is provided by qt-openzwave. In other words, ozwdaemon == qt-openzwave, They are the same thing. You may hear either term mentioned around the forums or on discord.

Unfortunately, there is currently no easy solution for running qt-openzwave on FreeNAS but do not despair, the is still a relatively easy solution. As I mentioned before, I have moved my Z-Stick (from my FreeNAS) to a RPI 3B+ running Raspbian Buster Lite with Docker to provide qt-openzwave. There are already, many guides and videos to provide details about installing and using both Raspbian and Docker. Based on such guides, I have put together an outline of the minimal steps I used to setup my RPI for running qt-openzwave.

Outline: Minimal steps to use a RPI for qt-openzwave

I’ve been playing a little more with this over the past few days, and Home Assistant is certainly feeling a little more polished since I last played with it in anger. It’s much easier to configure now, and most of the things I’m using could be setup without even looking at a .yaml file :slight_smile:

I’ve just setup NGINX Proxy Manager, which looks like a much nicer way of managing all my external services rather than manually editing nginx.conf files in a jail. There’s a plugin for HA, but it looks to be using a different ‘store’ to the one installed here. Is this something that would be easy to add?

Thanks again!

I’ve been playing a little more with this over the past few days, and Home Assistant is certainly feeling a little more polished since I last played with it in anger. It’s much easier to configure now, and most of the things I’m using could be setup without even looking at a .yaml file :slight_smile:

I’ve just setup NGINX Proxy Manager, which looks like a much nicer way of managing all my external services rather than manually editing nginx.conf files in a jail. There’s a plugin for HA, but it looks to be using a different ‘store’ to the one installed here. Is this something that would be easy to add?

https://addons.community/

Thanks again!

If you already have this setup, and it provides a web-ui of some sort, you can add it to the side panel in HA using an iframe-panel


If we are talking about a way to provide an easy installation method for NGINX Proxy Manager

As far as a “store” is concerned, FreeNAS plugins and Home Assistant add-ons are completely different (but similar) things. Think of it like this…

software appliance - Computer Definition

A software environment that includes the operating system and application. It is designed for installation in standard hardware that will be dedicated to running that single application. A "hardware appliance " is the software appliance and computer packaged as a single product.

Home Assistant ( formerly Hass.io ) is a software appliance designed to turn a computer into a Home Automation "hardware appliance. Add-ons are used to add (mostly) pre-configured software to your Home Assistant - appliance device

FreeNAS is a software appliance designed to turn a computer into a NAS "hardware appliance. Plugins are used to add (mostly) pre-configured software to your FreeNAS - appliance device

I suppose it would be. I would say in about 99% of situations. If you can do it manually in a regular jail, It can be made a plugin but I’m not sure how difficult it would be. At this time, I have never used NGINX and have no experience with reverse proxies so this not likely to be something I could provide. You might consider making a request a NGINX Proxy Manager plugin over in the FreeNAS forums.

Thanks for the quick reply and the helpful description of appliances.

My question was more around the https://addons.community/ link.

It has some instructions that have a ‘add-on store’ screenshot - https://www.home-assistant.io/hassio/installing_third_party_addons/ - when you can add a repository, but I can’t find that anywhere on the plugin install.

I’ve always been a little confused about the different version of Home Assistant, some of which seemed to have different functionality to others. I thought HA-Core was bringing all of these back together, any maybe this is something that’s been removed? I wasn’t sure if that was added in a similar way to the HACS store?

Thanks @troy

I’ve been doing some more investigation, and I think I’ve just about got my head around the differences now. I’m thinking of Hass.io has a fully functional OS which HA-Core runs on. Being built around Linux, it provides access point and click access to additional components via the ‘add-on store’ but these aren’t all available via a similar route for FreeBSD.

While I’ve got a reasonable understanding of jails in FreeBS, I still can’t pretend to understand how the virtual python environments are built and work to support HA-Core on FreeNAS. I love the way they do though, and the simplicity which you’ve been able to provide them via the plugins, and before that the instructions for building in a jail manually.

My thanks again for this, and your ongoing support which is much appreciated.

I’m going to take a look at Hass.io on a Raspberry Pi 4 I have lying around and decided whether that’s a better way for me to run HA-Core for my requirements. I suspect it’s not, but at least I can compare and contrast.

Installation of plugin went smoothly without errors, however the zwave integration does not work for me. Using HUSBZB-1.

The UI gives an error “Unknown error occurred”, and in home-assistant.log I get following messages:

ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
File “/srv/homeassistant/lib/python3.7/site-packages/aiohttp/web_protocol.py”, line 418, in start
resp = await task
File “/srv/homeassistant/lib/python3.7/site-packages/aiohttp/web_app.py”, line 458, in _handle
resp = await handler(request)
File “/srv/homeassistant/lib/python3.7/site-packages/aiohttp/web_middlewares.py”, line 119, in impl
return await handler(request)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/http/real_ip.py”, line 39, in real_ip_middleware
return await handler(request)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/http/auth.py”, line 127, in auth_middleware
return await handler(request)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/http/view.py”, line 125, in handle
result = await result
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/config/config_entries.py”, line 145, in post
return await super().post(request, flow_id)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/http/data_validator.py”, line 54, in wrapper
result = await method(view, request, *args, **kwargs)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/data_entry_flow.py”, line 103, in post
result = await self._flow_mgr.async_configure(flow_id, data)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/data_entry_flow.py”, line 153, in async_configure
result = await self._async_handle_step(flow, cur_step[“step_id”], user_input)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/data_entry_flow.py”, line 201, in _async_handle_step
result: Dict = await getattr(flow, method)(user_input)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/zwave/config_flow.py”, line 46, in async_step_user
from openzwave.option import ZWaveOption
File “/srv/homeassistant/lib/python3.7/site-packages/openzwave/option.py”, line 29, in
import libopenzwave
ImportError: /srv/homeassistant/lib/python3.7/site-packages/libopenzwave.so: Undefined symbol “libiconv”

Any help would be appreciated.

Hello @mhm69

Can we please, first confirm the HUSBZB-1 is available inside the jail

What is the output from the final command?

iocage console $_HA_JAIL
# Press `0` to exit the menu
# Check for HUSBZB-1
ls -l /dev | grep cua

Hi @troy

It is available, and the Zigbee integration works perfectly fine.

root@ha-plugin:~ # ls -l /dev | grep cua
crw-rw---- 1 uucp dialer 0x3d Jun 4 01:04 cuau0
crw-rw---- 1 uucp dialer 0xc8 Jun 4 01:05 cuaU0
crw-rw---- 1 uucp dialer 0x3e Jun 4 01:04 cuau0.init
crw-rw---- 1 uucp dialer 0xc9 Jun 4 01:05 cuaU0.init
crw-rw---- 1 uucp dialer 0x3f Jun 4 01:04 cuau0.lock
crw-rw---- 1 uucp dialer 0xca Jun 4 01:05 cuaU0.lock
crw-rw---- 1 uucp dialer 0xce Jun 5 22:12 cuaU1
crw-rw---- 1 uucp dialer 0xcf Jun 4 01:05 cuaU1.init
crw-rw---- 1 uucp dialer 0xd0 Jun 4 01:05 cuaU1.lock

As a background, I had originally standard jail installation of Home assistant 0.8x or 0.9x on 11.2, and zwave was working OK. Then I upgraded the jail to 0.105, if I remember correctly, and zwave integration stopped working. After that I upgraded to freenas 11.3, and installed this core plugin, hoping a fresh install would fix any configuration errors, but it did not help. Actually I installed the core plugin twice from the scratch, and on both installs, I am not able to integrate the zwave, and get the same error message.

Ok. I have used a HUSBZB-1 myself with this FreeNAS plugin for sometime. I can confirm it was working with existing Z-Wave as recent as the HA 0.109.x builds - ( I’ve now switched to the OpenZWave (beta) - However on several occasions over the past years, I have had to manual install or upgrade some parts in the virtualenv related Z-Wave. In addition to home-assistant.log – Additional clues for trouble shooting and determining such occasions can be found in /var/log/homeassistant_daemon.log

The next step, please check /var/log/homeassistant_daemon.log for and provide the errors from this log as well.

Looks like there are same messages as in home-assistant.log, when trying the zwave integration:

2020-06-05 23:44:14 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
File “/srv/homeassistant/lib/python3.7/site-packages/aiohttp/web_protocol.py”, line 418, in start
resp = await task
File “/srv/homeassistant/lib/python3.7/site-packages/aiohttp/web_app.py”, line 458, in _handle
resp = await handler(request)
File “/srv/homeassistant/lib/python3.7/site-packages/aiohttp/web_middlewares.py”, line 119, in impl
return await handler(request)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/http/real_ip.py”, line 39, in real_ip_middleware
return await handler(request)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/http/auth.py”, line 127, in auth_middleware
return await handler(request)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/http/view.py”, line 125, in handle
result = await result
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/config/config_entries.py”, line 145, in post
return await super().post(request, flow_id)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/http/data_validator.py”, line 54, in wrapper
result = await method(view, request, *args, **kwargs)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/data_entry_flow.py”, line 103, in post
result = await self._flow_mgr.async_configure(flow_id, data)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/data_entry_flow.py”, line 153, in async_configure
result = await self._async_handle_step(flow, cur_step[“step_id”], user_input)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/data_entry_flow.py”, line 201, in _async_handle_step
result: Dict = await getattr(flow, method)(user_input)
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/zwave/config_flow.py”, line 46, in async_step_user
from openzwave.option import ZWaveOption
File “/srv/homeassistant/lib/python3.7/site-packages/openzwave/option.py”, line 29, in
import libopenzwave
ImportError: /srv/homeassistant/lib/python3.7/site-packages/libopenzwave.so: Undefined symbol “libiconv”

This morning I removed my HUSZB-1 from testing the OpenZwave (beta) integration and used it to try trouble shooting any issues in with the existing Z-Wave integration using HA 0.110.5. Unfortunately I am not able to reproduce your errors ( or any other errors for that matter ) – Because I am also using the Zigbee functions of the HUSZB-1 - I can only test this on my main Home Assistant Core installation, which has had this this integration previously installed. I’m not sure if that is having any part in my success. I’m sorry, it will be several days before I am able to pull the HUSBZB-1 from my main installation to test against a “clean install”

I’ve tried to make some sense of your errors, however there is no obvious cause I can determine at my knowledge level – Following what I can back through the code leads me to a final suggestion, really just a guess, at this time. Maybe for some reason, this integration does not like how you are configuring the path to the HUSBZB-1 Z-Wave device. It’s probably unlikely to be this easy, but please confirm you have a matching entry when attempting to add Z-Wave.

image


The following successful output is from /var/log/homeassistant_daemon.log

When I click SUBMIT

2020-06-06 10:48:05 INFO (MainThread) [homeassistant.setup] Setting up zwave
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.setup] Setup of domain zwave took 0.0 seconds.
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.components.zwave] Z-Wave USB path is /dev/cuaU0
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.components.binary_sensor] Setting up binary_sensor.zwave
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.components.cover] Setting up cover.zwave
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.components.fan] Setting up fan.zwave
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.components.lock] Setting up lock.zwave
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.components.light] Setting up light.zwave
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.components.sensor] Setting up sensor.zwave
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.components.switch] Setting up switch.zwave
2020-06-06 10:48:05 INFO (SyncWorker_34) [homeassistant.loader] Loaded climate from homeassistant.components.climate
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.setup] Setting up climate
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.setup] Setup of domain climate took 0.0 seconds.
2020-06-06 10:48:05 INFO (MainThread) [homeassistant.components.climate] Setting up climate.zwave

When I START NETWORK from the Z-Wave integration page

2020-06-06 10:48:41 INFO (SyncWorker_11) [homeassistant.components.zwave] Starting Z-Wave network...
2020-06-06 10:48:41 INFO (SyncWorker_11) [openzwave] Start Openzwave network.
2020-06-06 10:48:42 INFO (Dummy-17) [openzwave] Driver ready using library Static Controller version Z-Wave 4.05
2020-06-06 10:48:42 INFO (Dummy-17) [openzwave] home_id 0xc00000a, controller node id is 1
2020-06-06 10:48:43 INFO (MainThread) [homeassistant.components.zwave] Z-Wave node 1 ready after 1 seconds
2020-06-06 10:48:43 INFO (MainThread) [homeassistant.helpers.entity_registry] Registered new zwave.zwave entity: zwave.z_wave_sigma_designs_uzb_z_wave_usb_adapter
2020-06-06 10:48:53 INFO (Dummy-17) [homeassistant.components.zwave] Z-Wave network is complete. All nodes on the network have been queried
2020-06-06 10:48:53 INFO (MainThread) [homeassistant.components.zwave] Z-Wave node 46 ready after 11 seconds
2020-06-06 10:48:53 INFO (MainThread) [homeassistant.components.zwave] Z-Wave entity Inovelli Unknown: type=0005, id=0001 Level (node_id: 46) ready after 11 seconds
2020-06-06 10:48:53 INFO (MainThread) [homeassistant.helpers.entity_registry] Registered new zwave.zwave entity: zwave.inovelli_unknown_type_0005_id_0001
2020-06-06 10:48:53 INFO (MainThread) [homeassistant.helpers.entity_registry] Registered new light.zwave entity: light.inovelli_unknown_type_0005_id_0001_level
2020-06-06 10:48:54 INFO (MainThread) [homeassistant.components.zwave] Z-Wave ready after 12 seconds
2020-06-06 10:48:54 INFO (SyncWorker_26) [homeassistant.components.zwave] Z-Wave polling interval set to 30000 ms

@mhm69 I figured this out ( I think ) – I was on the right track thinking it was related to a config entry but turns out this error can occur it you have some pre-existing configuration for Z-Wave stored in homeassistant/.storage/core.config_entries

So after going some through re-installs with a clean configuration the Z-Wave seems to install and work just fine – However after adding and removing the integration a few times, I tried doing a “clean install” ( I deleted the virtualenv and reinstalled it ) , but this time I kept my previous configuration in place, and :boom: I get the same error

2020-06-08 00:26:14 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Z-Wave for zwave
Traceback (most recent call last):
  File "/usr/local/srv/homeassistant/lib/python3.7/site-packages/homeassistant/config_entries.py", line 217, in async_setup
    hass, self
  File "/usr/local/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/zwave/__init__.py", line 341, in async_setup_entry
    from openzwave.option import ZWaveOption
  File "/usr/local/srv/homeassistant/lib/python3.7/site-packages/openzwave/option.py", line 29, in <module>
    import libopenzwave
ImportError: /usr/local/srv/homeassistant/lib/python3.7/site-packages/libopenzwave.so: Undefined symbol "libiconv"

I was able to get Z-Wave working again by manually editing homeassistant/.storage/core.config_entries to remove the existing Z-Wave config.

Your entry should look similar. After I removed this entry, I restart Home Assistant and I was able to configure the Z-Wave integration again

            {
                "connection_class": "local_push",
                "data": {
                    "network_key": "0x00, 0x00, 0xE0, 0xFF, 0x30, 0xAF, 0x55, 0x5E, 0x8A, 0x7B, 0xF5, 0xBB, 0xBB, 0xBB, 0xAF, 0x6C",
                    "usb_path": "/dev/cuaU0"
                },
                "domain": "zwave",
                "entry_id": "d35e7b669b504dbb93c5e38e3364a30c",
                "options": {},
                "source": "user",
                "system_options": {
                    "disable_new_entities": false
                },
                "title": "Z-Wave",
                "unique_id": null,
                "version": 1
            }

Hope that helps

Thank you a lot for your investigation. Unfortunately it does not look same issues for me.
I don not have any files including “zwave” in homeassistant/.storage/core.config_entries (grep zwave *)

As I did twice clean install = new plugin, I never has any old config. The only place, where should have the old config, is the old standard jail (which stopped working after upgrade), and is currently down.

As you got he same error, I think you are on correct track, but there must be another reason for the error.

Hi,

Thanks for your great plugins! I am just dipping my toes into the world of home automation and HA and your freenas plugins have bee great! I currently have HA, Mosquitto and Tasmoadmin all up and running pretty smoothly with several Tasmota devices configured and connected.

The 2 big issues I am having at the moment is that I can’t get the Homekit integration to install.Upon review of the logs I am getting the following error:

[code]
Log Details (ERROR)
Logger: homeassistant.util.package
Source: util/package.py:88
First occurred: 12 June 2020, 22:44:06 (1 occurrences)
Last logged: 12 June 2020, 22:44:06

Unable to install package PyTurboJPEG==1.4.0: ERROR: Command errored out with exit status 1: command: /srv/homeassistant/bin/python3.7 /srv/homeassistant/lib/python3.7/site-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-j6dwtx6e/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple – setuptools wheel ‘Cython>=0.29.14’ cwd: None Complete output (44 lines): Traceback (most recent call last): File “/usr/local/lib/python3.7/runpy.py”, line 193, in _run_module_as_main “main”, mod_spec) File “/usr/local/lib/python3.7/runpy.py”, line 85, in _run_code exec(code, run_globals) File “/srv/homeassistant/lib/python3.7/site-packages/pip/main.py”, line 26, in sys.exit(_main()) File “/srv/homeassistant/lib/python3.7/site-packages/pip/_internal/cli/main.py”, line 73, in main command = create_command(cmd_name, isolated=("–isolated" in cmd_args)) File “/srv/homeassistant/lib/python3.7/site-packages/pip/_internal/commands/init.py”, line 104, in create_command module = importlib.import_module(module_path) File “/usr/local/lib/python3.7/importlib/init.py”, line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File “”, line 1006, in _gcd_import File “”, line 983, in _find_and_load File “”, line 967, in _find_and_load_unlocked File “”, line 677, in _load_unlocked File “”, line 728, in exec_module File “”, line 219, in _call_with_frames_removed File “/srv/homeassistant/lib/python3.7/site-packages/pip/_internal/commands/install.py”, line 24, in from pip._internal.cli.req_command import RequirementCommand, with_cleanup File “/srv/homeassistant/lib/python3.7/site-packages/pip/_internal/cli/req_command.py”, line 16, in from pip._internal.index.package_finder import PackageFinder File “/srv/homeassistant/lib/python3.7/site-packages/pip/_internal/index/package_finder.py”, line 21, in from pip._internal.index.collector import parse_links File “/srv/homeassistant/lib/python3.7/site-packages/pip/_internal/index/collector.py”, line 14, in from pip._vendor import html5lib, requests File “/srv/homeassistant/lib/python3.7/site-packages/pip/_vendor/requests/init.py”, line 114, in from . import utils File “/srv/homeassistant/lib/python3.7/site-packages/pip/_vendor/requests/utils.py”, line 25, in from . import certs File “/srv/homeassistant/lib/python3.7/site-packages/pip/_vendor/requests/certs.py”, line 15, in from pip._vendor.certifi import where File “/srv/homeassistant/lib/python3.7/site-packages/pip/_vendor/certifi/init.py”, line 1, in from .core import contents, where File “/srv/homeassistant/lib/python3.7/site-packages/pip/_vendor/certifi/core.py”, line 12, in from importlib.resources import read_text File “/usr/local/lib/python3.7/importlib/resources.py”, line 11, in from typing import Iterable, Iterator, Optional, Set, Union # noqa: F401 File “/srv/homeassistant/lib/python3.7/site-packages/typing.py”, line 1357, in class Callable(extra=collections_abc.Callable, metaclass=CallableMeta): File “/srv/homeassistant/lib/python3.7/site-packages/typing.py”, line 1005, in new self._abc_registry = extra._abc_registry AttributeError: type object ‘Callable’ has no attribute ‘_abc_registry’ ---------------------------------------- ERROR: Command errored out with exit status 1: /srv/homeassistant/bin/python3.7 /srv/homeassistant/lib/python3.7/site-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-j6dwtx6e/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple – setuptools wheel ‘Cython>=0.29.14’ Check the logs for full command output. [/code]

I even tried installing a completely new version of the plugin and tried to install it first thing but instead of this error it just hung indefinitely on the installing screen. If there is any light you can shed on the issue I would appreciate it.

One last issue I’m facing is getting AppDaemon to start. I get it installed fine but keep getting the message that i might need to restart HA for it to function correctly at the end of the install script, but it never does.

Thanks again for your hard work!