My steps to success for Hass.io on Intel NUC

The current HASSOS does not have a build specifically for the NUC.

Sadly, the image I used is no longer supported and the install would not progress using that image as the server-side files are no longer available. Youā€™ll have to wait for an official HassOS NUC image. I saw a tweet a month or two ago showing the developers have a NUC for testing so hopefully itā€™s coming along soon.

1 Like

Yea, I was doing the same ā€œhunt for the imageā€ but I ended up just setting up an Ubuntu VM on top of ESXi 6.7 (hosted on my NUC) and using this article to install it. Really is pretty simple and straight forward.

As for the Intel NUC itself, there are some switches for this. It would look like this:

curl -sL https://raw.githubusercontent.com/home-assistant/hassio-build/master/install/hassio_install | bash -s -- -m intel-nuc

I have never actually tried this, but would be curious to know if this works on a pre-installed Linux system running on an Intel NUC.

The switch merely pulls an image designed for the hardware. Itā€™s still sitting on a Linux OS, running in docker. It isnā€™t even close to the same as the old resinos based hassio.

It actually works even without the nuc switch. Iā€™m running that on Debian stretch.

I installed hass.io on a NUC running Ubuntu 18.04 in Docker in under 20 minutes with not much pre existing knowledge of either Docker or Ubuntu. The biggest challenge was writing the Udev rules (who ever decided to arbitrarily name USB devices in Linux?!?)

System is running rocksolid, consuming around 6 watts and CPU at around 6% load on average :slight_smile:

Hej Frank,

Do you have it documented somewhere? I would be interested.

Hi @doubleus

It is really easy! Steps are (roughly):

Install Ubuntu Server 18.04 LTS http://releases.ubuntu.com/18.04/
Install Docker https://linuxconfig.org/how-to-install-docker-on-ubuntu-18-04-bionic-beaver
Install Portainer (as I like a GUI) https://portainer.io/install.html
Install hass.io (I do remember I ran into some issues with dependencies not being found so I manually installed them) https://www.home-assistant.io/hassio/installation/
Write some Udev rules in case you have multiple USB devices http://hintshop.ludvig.co.nz/show/persistent-names-usb-serial-devices/

Profit :smiley:

6 Likes

@fversteegen Thanks!

Anyone else running Hassio on NUC have trouble when there is a power failure? I have the bios set to start the NUC but HA never recovers. I can ping the device but no frontend or Samba access. Luckily I can still SSH in and the only way to fix it is to reboot the OS. Anyone else seen that?

Mine restarts as soon as power is restoredā€¦

Thanks, wonder what mine is doing. Iā€™ll post a log shortly.

Hereā€™s my log. Youā€™ll see it said it was OK but I could not restart HA.

core-ssh:~# hassio ha info
{
    "result": "ok",
    "data": {
        "version": "0.82.0",
        "last_version": "0.82.0",
        "machine": "intel-nuc",
        "image": "homeassistant/intel-nuc-homeassistant",
        "custom": false,
        "boot": true,
        "port": 8123,
        "ssl": false,
        "watchdog": true,
        "wait_boot": 600
    }
}
core-ssh:~# hassio ha restart
ERROR
core-ssh:~# hassio ha logs
Error decoding json invalid character '-' after top-level value: 2018-11-14 08:04:09 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:04:09 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):                                                         
  File "/usr/local/lib/python3.6/site-packages/homeassistant/helpers/entity_platform.py", line 354, in _async_add_entity
    await entity.async_added_to_hass()                                                     
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/sensor/mqtt.py", line 177, in async_added_to_hass
    message_received, self._qos)                                                           
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 306, in async_subscribe
    topic, msg_callback, qos, encoding)                                                    
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 688, in async_subscribe
    await self._async_perform_subscription(topic, qos)                                     
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 723, in _async_perform_subscription
    _raise_on_error(result)                                                                
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 808, in _raise_on_error
    'Error talking to MQTT: {}'.format(mqtt.error_string(result_code)))                    
homeassistant.exceptions.HomeAssistantError: Error talking to MQTT: The client is not currently connected.
2018-11-14 08:04:09 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:04:09 INFO (SyncWorker_1) [googleapiclient.discovery] URL being requested: GET https://www.googleapis.com/discovery/v1/apis/calendar/v3/rest
2018-11-14 08:04:09 INFO (SyncWorker_7) [googleapiclient.discovery] URL being requested: GET https://www.googleapis.com/discovery/v1/apis/calendar/v3/rest
2018-11-14 08:04:09 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):                                                         
  File "/usr/local/lib/python3.6/site-packages/homeassistant/helpers/entity_platform.py", line 354, in _async_add_entity
    await entity.async_added_to_hass()                                                     
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/sensor/mqtt.py", line 177, in async_added_to_hass
    message_received, self._qos)                                                           
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 306, in async_subscribe
    topic, msg_callback, qos, encoding)                                                    
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 688, in async_subscribe
    await self._async_perform_subscription(topic, qos)                                     
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 723, in _async_perform_subscription
    _raise_on_error(result)                                                                
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 808, in _raise_on_error
    'Error talking to MQTT: {}'.format(mqtt.error_string(result_code)))                    
homeassistant.exceptions.HomeAssistantError: Error talking to MQTT: The client is not currently connected.
2018-11-14 08:04:09 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:04:09 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):                                                         
  File "/usr/local/lib/python3.6/site-packages/homeassistant/helpers/entity_platform.py", line 354, in _async_add_entity
    await entity.async_added_to_hass()                                                     
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/binary_sensor/mqtt.py", line 166, in async_added_to_hass
    self.hass, self._state_topic, state_message_received, self._qos)                       
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 306, in async_subscribe
    topic, msg_callback, qos, encoding)                                                    
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 688, in async_subscribe
    await self._async_perform_subscription(topic, qos)                                     
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 723, in _async_perform_subscription
    _raise_on_error(result)                                                                
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 808, in _raise_on_error
    'Error talking to MQTT: {}'.format(mqtt.error_string(result_code)))                    
homeassistant.exceptions.HomeAssistantError: Error talking to MQTT: The client is not currently connected.
2018-11-14 08:04:09 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:04:09 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):                                                         
  File "/usr/local/lib/python3.6/site-packages/homeassistant/helpers/entity_platform.py", line 354, in _async_add_entity
    await entity.async_added_to_hass()                                                     
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/binary_sensor/mqtt.py", line 166, in async_added_to_hass
    self.hass, self._state_topic, state_message_received, self._qos)                       
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 306, in async_subscribe
    topic, msg_callback, qos, encoding)                                                    
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 688, in async_subscribe
    await self._async_perform_subscription(topic, qos)                                     
  File "/usr/local/lib/python3.6/site-packages/homeassistant/components/mqtt/__init__.py", line 723, in _async_perform_subscription
Config directory: /config                                                                  
Could not get remote info for https://raw.githubusercontent.com/custom-cards/information/master/repos.json
Could not get remote info for https://raw.githubusercontent.com/kuuji/button-card/master/tracker.json
Could not get remote info for https://raw.githubusercontent.com/kalkih/mini-graph-card/master/tracker.json
Could not get remote info for https://raw.githubusercontent.com/custom-components/information/master/repos.json
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 INFO (SyncWorker_3) [pychromecast] Querying device status              
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 INFO (SyncWorker_5) [pychromecast] Querying device status              
2018-11-14 08:08:23 INFO (SyncWorker_0) [pychromecast] Querying device status              
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 INFO (SyncWorker_9) [pychromecast] Querying device status              
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 INFO (SyncWorker_2) [pychromecast] Querying device status              
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 INFO (SyncWorker_8) [pychromecast] Querying device status              
2018-11-14 08:08:23 INFO (SyncWorker_6) [pychromecast] Querying device status              
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 INFO (SyncWorker_7) [pychromecast] Querying device status              
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 INFO (SyncWorker_1) [pychromecast] Querying device status              
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish
2018-11-14 08:08:23 INFO (SyncWorker_4) [pychromecast] Querying device status              
2018-11-14 08:08:23 WARNING (MainThread) [homeassistant.core] Unable to find service mqtt/publish

core-ssh:~#

So itā€™s not a power failure issue but a restart Home Assistant issue? The very first error seems to be MQTTā€¦ what does that configuration look like?

Are you using the new integration? New version 4 of the addon? Are you using discovery? Config yaml entries for MQTT?

Hereā€™s my MQTT config (offboard). Nothin too complex there?

mqtt:
  broker: <ipofmynas> #core-mosquitto
  client_id: hassio_nuc
  birth_message:
    topic: 'hassio/status'
    payload: 'online'
  will_message:
    topic: 'hassio/status'
    payload: 'offline'

My HA and MQTT instances are on different platforms. I found this way more reliable.

Hi @fversteegen, can you say a bit more about the steps between the Portainer install and hass.io install? For me, there is a little ā€œand then a miracle appearsā€ step here. Thanks! :slight_smile:

What step?

Did you click the link?

I installed Portainer and then it says ā€œYouā€™ll just need to access the port 9000 of the Docker engine where portainer is running using your browser.ā€

But what is the URL here?

The URL is whatever the URL is of the box itā€™s running on.

If you access HA on 192.168.1.100:8123 then portainer is 192.168.1.100:9000

1 Like

I find this fairly well stated. You installed portainer. What machine did you install portainer on? Youā€™re probably connected via ssh? What IP is it?