My (outdated) Quick Start for Home Assistant Core on FreeNAS 11.2

what’s the output from

tail -n50 /var/log/appdaemon_daemon.log

EDIT: I just copy and pasted your exact config you posted to the configurator and there is a format error

Please check line 12.

threads should be lined up with the lines above and below

>  Error loading configuration
> ERROR parser says
> ERROR   in "<unicode string>", line 12, column 2:
>      threads: 10
>      ^
> ERROR expected <block end>, but found '<block mapping start>' while parsing a block mapping

Also when I Run the config chk in homassis I get.

nvalid config for [panel_iframe]: expected a dictionary for dictionary value @ data['panel_iframe']['elevation']. Got 738
expected a dictionary for dictionary value @ data['panel_iframe']['latitude']. Got 42.93278
expected a dictionary for dictionary value @ data['panel_iframe']['longitude']. Got -87.9876
expected a dictionary for dictionary value @ data['panel_iframe']['time_zone']. Got 'America/Chicago'. (See /home/hass/homeassistant/configuration.yaml, line 24). Please check the docs at

Your configuration works after I correct the indentation on line 12. See my edit above

I do not have the second error. Can I please your entry for the iframe?

Was I not supposed to add it also to configuration.yaml ?

    #title: TasmoAdmin
    #icon: mdi:creation
  latitude: 42.932780
  longitude: -87.987600
  elevation: 738 
  time_zone: America/Chicago 
#  usb_path: /dev/cuaU0
#  network_key: !secret zwave_key

appdaemon is running.

No. For appdaemon this only goes to appdaemon.yaml

I see if appdaemon running you figured that out already :+1:

Just a short time ago Home Assistant had these exact entries but they have been removed in favor of the new onboarding process. I bet that’s where it might seem confusing

Yeah It was thanks for the help hopefully helps any one else with prob

Hi Troy. I’ve been running HA using your method for some time now and it seems to work very well (also thanks to your very responsive support!). However, being a complete noob I still can’t get my head around the whole venv vs Hassio vs Docker stuff. I come unstuck when installing new features because they are often for a different environment, so the instructions don’t apply to your method of running HA on Freenas. For example, I’d like to use EspHome, but I have no idea how to approach making it run on this Freenas install. This issue is bound to come up again each time I want to try an integration that doesn’t quite line up easily with the venv approach. Could you humour me and explain how this works and how I could approach installing things like EspHome? Is it simply a case of running pip install esphome within the iocage jail for HA?

Hi @axg20202

No worries. I know it can be confusing. I try to compile a little explanation with more details in the future

What I have done for homeassistant, configurator, and appdaemon, was to follow the instruction for each respective virtualenv install on Linux. Now with this mind FreeNAS is not Linux so the commands are not always exactly the same but they are usually very close. Translating from Linux to FreeNAS is something I can try my best to help you with on a case by case basis but I don’t have a definitive guide for doing this.

Well my friend, you are in luck :wink: ESPHome has already been requested and is included in the updated script for FreeNAS 11.3. It’s a few extra steps but I see no reason that you could not follow these step to add ESPHome to your existing install. I’m going to also include these first steps to “snapshot” you jail before you continue. This way if anything goes wrong we can restore the snapshot to undo any changes

This is assumes your jail name is homeassistant.

Begin from you FreeNAS console

iocage snapshot -n no_esphome homeassistant

You can now continue installing ESPHOME

iocage console homeassistant
pkg install -y gcc wget

wget -O /usr/local/etc/rc.d/esphome
chmod +x /usr/local/etc/rc.d/esphome

wget -O /root/
chmod +x /root/

/root/ esphome

You will still need to add a panel_iframe entry to your HA config for ESPHome after it’s installed.

Yes you are likely to face this but with each experience this should gradually get easy. I know this can become very frustrating in the beginning (It was for me) but I would encourage you to stick with if time and patience allows. Let me know if you need help, I’ll do my best to assistant as mush as I can. The short answer to your final question is yes, basically I am just creating a separate virtualenvs for application I’m adding to the Home Assistant jail.

As usual, excellent help. Thanks for taking the time! I will give it a shot - currently have a
NodeMCU-based multisensor that is itching to join my network and start misreporting like I know it will. Good idea re the snapshot.

1 Like

There is one thing I forgot to mention. Hopefully it does not cause you to much trouble getting started.

This only applies to the initial USB firmware flash.

USB devices are not supported with ESPHome

There is currently no USB detection for device flashing on FreeNAS . You can create, compile and download the initial firmware using ESPHome on FreeNAS. You will need to use esphomeflasher on a seperate computer for the initial flash . After the initial flash and your device is connected to your network, you will be able to manage and flash future firmwares using the ESPHome OTA process.

Oh man, good tip. I could have wasted hours working this out. Thanks.

Hello Troy,
I have successfully installed HA in a FreeNAS 11.3 jail and thank you for your great work.
When I try to install Mosquito and Tasmoadmin, I get a failure message, ’ /mnt/Vol2/iocage/.plugins/github_com_freenas_iocage-ix-plugins_git/dhcp=on.json’ was not found. I have copied and pasted many times and the error message is the same. Is it because IX Systems removed the plugins? If so, is there a way to fix this?
Kind regards, Frank


Don’t worry, it’s just a little different on FreeNAS 11.3. The plugin listed under the 11.2 guide won’t work.

Give these a try instead.

Thanks Troy,
They all worked. Much appreciated.


1 Like

I am getting : No such file or directory after command

wget -O /usr/local/ect/rc.d/esphome
ll /usr/local/ect/rc.d/
-rwxr-xr-x  1 root  wheel  3607 Jan 13 14:08 appdaemon*
-rwxr-xr-x  1 root  wheel  3771 Jan 13 14:08 configurator*
-r-xr-xr-x  1 root  wheel   689 Jan  9 05:56 git_daemon*
-rwxr-xr-x  1 root  wheel  4706 Jan 13 14:08 homeassistant*

I try to change 11.3 to 11.2 same error. Will this only work on 11.3 ?

ugh… I backwards letters… Try this

wget -O /usr/local/etc/rc.d/esphome

But also something is going with github. I haven’t been able to access my account all day.

That will not work. This is only in the 11.3-RELEASE branch. You can still install it in your 11.2 jail but you can only download it from the 11.3 link.

Ah thank you that worked

Update February 3 2020

The original post has been updated for FreeNAS 11.3

  • This update is now using the 11.3-RELEASE
  • This should also work on FreeNAS 11.2 must be U7 or later

Changing the Home Assistant Brand

The purpose here is only to explain how this thread fits into the scheme of things depending on where in time it relates to Changing the Home Assistant Brand

Finding a place in time

A = Home Assistant
B =
C = Home Assistant Core

Forever in time

  • The following statement is always TRUE

From the beginning of time until January 29 2020

A = A
B = B
  • During this time the following statement was TRUE
- This will install Home Assistant in a python virtualenv
- This does not use Docker
- This is not

From January 30 2020 until the end of time

A = C
B = A
  • During this time the following statement is TRUE
- This will install Home Assistant Core in a python virtualenv
- This does not use Docker
- This is not Home Assistant

The quest to to get my documents updated has been a slow moving because of a few things. I’ve had some new ideas about this quick start guide regarding what I want to include and how to include it.

First off, let me say that I am not trying to reinvent the wheel or develope some kind of hassio knock-off here. Simply put I have always tried to keep my own notes as I follow through guides on the internet. I don’t think I’m providing anything ground breaking or writing any new information. It should be more accurate to say this is collection other information, from around web, put together with a focus of using FreeNAS and Home Assistant Core. I’m just sharing my notes here. Because this seems helpful to share this with others, it motivates me to keep my notes updated and continue to share them with the community.

I also have this quick start post in the FreeNAS resources, but that version needs some serious love – Truth be told, I wanted to learn about markdown already to make post better looking in this forum and just to use for text files on GitHub. The FreeNAS forum does not directly use markdown different so I can not just copy and paste the same guide to three different places. I need a better way to maintain this, right now information is spread to 3 locations…

Enter Squirrels 40812 and 40813

I have just discovered GitHub Pages.
jekyll – Because I can’t leave well enough alone.

So rather than constantly updating things in multiple locations, I’m going to try moving everything to my GitHub Pages this will, eventually, be the place to find any updated information or steps to this guide

It’s almost gonna seem like I actually know what I’m doing – We’ll call the whole thing HassBSD. It will be like some kind of mutant love child from that crazy night Hassbian and Hassio got drunk then had a three-way with FreeNAS :rofl: :rofl:

And last thing about ESPHOME

I am going to remove ESPHome the from the Home Assistant Core FreeNAS plugin. I do not want to keep adding additional services to this jail unless there is a good reason to do so. Don’t worry, ESPHome isn’t going away, I’m just moving out on it’s own. It is now a separate FreeNAS plugin. I’ve already submitted a pull request to ix-system so it can be included on the community plugin page.

If your on FreeNAS 11.3 and want to test this now, you can install it from the FreeNAS console

iocage fetch -P esphome -g

On second thought

I was just going to remove the outdated 11.2 guide and keep updating this original post for 11.3

Now after some suggestion, I have to agree that is probably better to just move on to a new thread.

Simply put there are, as of today 228 post with an estimated read time of around 70 minutes. Coming to this thread on FreeNAS 11.3, I think will just have too much outdated information to get through before reach anything current. It’s already a PIA to search through for answers. Plus I think I should consider the name change after the re-brand – second thought, I’m thinking it’s probably not the best idea to have the first 200+ referring to something that used to be one thing… but it is now something else.

The FreeNAS 11.3 release is so close in time to the Home Assistant rebrand…
I’m just gonna start out fresh with Home Assistant Core and FreeNAS 11.3

New Branding = Home Assistant Core = FreeNAS 11.3 = New Thread Here