Tijdens Black Friday zag ik een goede deal voor een oudere Intel NUC machine bij Hardware4Sale.nl. Aangezien Domoticz een belangrijke rol in ons huis speelt voor Domotica leek het mij een goede idee om de Rasperry Pi (die al aardig oud begint te worden) te vervangen door een Intel NUC vanwege de volgende redenen:
- Sneller (CPU en meer geheugen)
- Betrouwbaarder qua opslag (SSD in plaats van USB stick)
- Toekomst bestendiger (gemakkelijker te vervangen)
Ik heb nu de Intel NUC Kit NUC5i3RYH voor een zacht prijsje gekocht. Deze is vrij oud (5e generatie Intel) maar meer dan prima om Domoticz te draaien. De Intel NUC5i3RYH heeft een i3 processor, 8GB DDR3 geheugen en een 120GB SSD harddisk. Bij Hardware4Sale.nl kun je eventueel nog extra opties kiezen of een iets actuelere Intel NUC machine.
Ik heb op dit moment met Domoticz een aardig historie aan gegevens opgebouwd en die wilde ik niet kwijtraken. Gelukkig is het migreren van een Domoticz installatie naar een ander systeem redelijk eenvoudig. In deze blog leg ik uit hoe ik dit voor elkaar heb gekregen.
Voorbereiden Intel NUC
De volgende stappen heb ik doorlopen:
- Intel NUC BIOS update
- Debian installeren
- Domoticz installeren
- Zigbee2MQT installeren
- Mosquitto installeren
- Overnemen oude gegevens van Domoticz en Zigbee2MQTT
Intel NUC BIOS update
Nadat ik de Intel NUC had ontvangen heb ik deze voor de zekerheid van de laatste firmware voorzien. Download hiervoor de firmware en zet deze op een USB stick. Zet dan de Intel NUC aan en druk op de F7 toets. Vervolgens kun je in het menu het BIOS updaten.
Debian
Vervolgens heb ik Debian als Operating Systeem geïnstalleerd op de Intel NUC met behulp van een Debian Boot USB. Creëer een bootable USB disk van de Debian ISO die je download. Je kunt hiervoor bijvoorbeeld gebruik maken van Rufus. Doe de USB disk in je Intel NUC en druk tijdens het opstarten van je Intel NUC op de F10 toets om vervolgens je USB disk als boot drive te gebruiken. Voer vervolgens alle stappen uit die je op je scherm ziet om Debian te installeren. Na installatie verwijder je de USB disk en restart je de Intel NUC.
Tip
Nadat je Debian hebt geïnstalleerd en opgestart kun je het beste de power management functies uitzetten met het volgende commando:
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
Domoticz installeren
Nadat Debian er op stond en deze helemaal up to date was gebracht heb ik Domoticz geïnstalleerd door het volgende commando uit te voeren in de SSH shell:
sudo apt install curl sudo bash -c "$(curl -sSfL https://install.domoticz.com)"
Neem alle default settings over tijdens de installatie. Na een paar minuten is de installatie klaar. Zie voor aanvullende informatie ook mijn eerder artikel over het installeren van Domoticz voor eventuele extra stappen.
Zigbee2MQTT installeren
Aangezien ik gebruik maak van Zigbee2MQTT als broker voor mijn Zigbee devices in huis heb ik de volgende instructies gevolgd om ook Zigbee2MQTT te installeren op de Intel NUC. Deze stappen moet je heel precies opvolgen. Voor het automatisch opstarten van Zigbee2MQTT via een service moet je wel een kleine aanpassing maken in de file ‘/etc/systemd/system/zigbee2mqtt.service’. Verander hier de ‘User’ in de gebruiker die jij hebt aangemaakt in je Debian installatie.
Mosquitto installeren
Als broker voor MQTT berichten maak ik gebruik van Mosquitto. Voer de volgende instructies uit om Mosquitto op je Debian systeem te installeren.
Overnemen oude gegevens van Domoticz en Zigbee2MQTT
Tenslotte gaan we alle gegevens van je oorspronkelijke Domoticz systeem van je Rasperry Pi overnemen. Maak eerst een backup van je Domoticz gegevens op je Raspberry Pi. Restore deze gegevens dan weer op je Intel NUC. Dit alles doe je in het Domoticz hoofdmenu (Instellingen > Instellingen > Backup/Herstel). Kopieer (of installeeer) nu al je Domoticz plugins (in ‘/home//domoticz/plugins’ directory) van je Raspberry Pi naar je Intel NUC.
Voordat we de gegevens van Zigbee2MQTT gaan overnemen moet je eerst deze service stoppen op je Raspberry Pi en Intel NUC met het volgende commando:
sudo systemctl stop zigbee2mqtt
Kopieer de volgende files van je Raspberry Pi naar je Intel NUC:
– /opt/zigbee2mqtt/data/configuration.yaml
– /opt/zigbee2mqtt/data/database.db
Controleer voor de zekerheid of de port in de ‘configuration.yaml’ file klopt op de Intel NUC. Start vervolgens Zigbee2MQTT weer op en controleer de logging met:
sudo journalctl -u zigbee2mqtt.service -f
Aanvullende acties
Afhankelijk wat je nog allemaal op je Raspberry Pi voor Domoticz nog extra heb geïnstalleerd moet je deze eventueel ook nog op je Intel NUC installeren. Zo heb ik o.a. nog de Nefit Easy Server software geïnstalleerd.
Toevallig zelf ook net overgestapt op een NUC en ook Domoticz “verhuisd”. Paar vragen over je artikel:
Waarom draai je niet alles in docker containers? Super makkelijk om alles te verplaatsen en je installeert niks direct op je OS. Ik heb alles (domoticz, mosquito, influxdb, grafana, nginx, nodered) met “scp” vanaf mn oude systeem (Odroid) gedownload om de NUC en “docker-compose up -d” en alles draait weer.
Ik zie dat je ook een artikel hebt over het installeren van de Unifi Controller op Debian. Die heb ik toevallig 2 dagen geleden ook gestart op mn NUC (in docker). De Cloud key staat nu op marktplaats :).
BIOS update kun je altijd nog achteraf doen. Vaak worden hier ook security issues mee opgelost en ik vind het dan ook prettig om op de laatste versie te zitten.
De power management functies heb ik uitgezet omdat ik merkte dat dan ook de netwerk verbinding werd verbroken zonder dat ik deze remote wakker kon maken. Ik moest dan de powerknop weer indrukken om de Intel NUC te ontwaken. Dat is niet handig als je de Intel NUC net als mij headless remote gebruikt.
Ik heb de Intel NUC in de meterkast staan waar ik ook de P1 smartmeter mee heb verbonden. Dat heeft altijd goed gewerkt en ik wilde snel over. Stiekem wordt Domotica in huis toch wel gewaardeerd en als iets niet werkt dan hoor je dat wel. Misschien dat ik in de toekomst nog eens naar Docker containers ga kijken. Ik moet dan wel zeker weten dat USB ook allemaal goed werkt. Bedankt voor de tip in elk geval!
Misschien maar eens kijken naar die bios versie dan. Nooit aan gedacht eigenlijk. Goed punt.
Ik heb nog niet gehad dat mn NUC in slaap modus ging, dus dat zal wel goed zitten.
Van mij staat ook in de meterkast en ook met de P1 usb erin. Ik heb in de docker-compose.yml dit staat waardoor het allemaal werkt:
devices:
– “/dev/ttyUSB0:/dev/ttyUSB0”
Die docker containers zijn echt heerlijk. Als je de gemapte volumes backup’t (moet ik nog regelen) en de docker-compose.yml in git bewaard ben je in no time weer up and running mocht je een clean install weer een keer gaan doen.
Installeer liefst zo min mogelijk deps. op het OS zelf zoals je wel merkt, maar wil het systeem ook nog monitoren (CPU, memory, temp etc) en ben bang dat ik daarvoor wel wat dingen rechtstreeks op het OS moet installeren.
Helaas niet werkend.
Bij mij werkt alles perfect John. De belangrijkste stap is het maken van de backup in Instellingen van Domoticz die je later op je nieuwe installatie weer terughaalt. Verder moet je niet vergeten je plugins van je originele installatie ook de installeren en/of copieren naar je nieuwe installatie. Ik vraag me af wat er precies niet lukt biij jou John. Misschien kunnen we je dan helpen?
Heb je op de NUC eerst alle hardware geinstalleerd onder domoticz, gelijk als aan de rpi? Voordat je de database overzet van de rpi.
Idx blijf hetzelfde?
Zelf wil ik proxmox gaan gebruiken als VM, op een Nuc, met domoticz.
Zover ik me kan herinneren maakt dat niet zoveel uit. Ik heb eerst de database overgezet en toen pas de plugins. De sensoren waarvoor de plugin niet aanwezig is en/of enabled is zullen niet getoond worden. Je kunt ook achteraf deze toevoegen en dan zul je ze zien. De IDX blijft hetzelfde.
Overigens ben ik kort geleden overgestapt op Home Assistant en dat bevalt erg goed. Ik kan alles wat ik met Domoticz kon en nog meer. Zie ook mijn ander artikel op deze blog.
Wilde dit ook wel eens proberen, maar loop vast in het installatie script omdat de recentere Debian versies een i368 opzetten als een 686 waarvoor geen download scripts voor domotica aanwezig zijn. Ik ben teruggegaan naar 11.17 (Bullseye), maar die heeft hetzelfde probleem. Ben je teruggegaan naar Buster? Of zijn er andere manieren zoals het script wijzigen?
Toen ik dit destijds met Debian Bullseye image heb gedaan heb ik geen problemen ondervonden op de Intel NUC, dus kan dat niet bevestigen. Ondertussen ben ik overgestapt op Home Assistant en kan het dus niet verder voor je nakijken. Misschien dat een van de lezers van mijn blog je verder kan helpen. Houd de reacties in de gaten.
Dankjewel voor je snelle response. Ik zal even kijken of iemand nog iets weet. Ook ik zit op Homeassistant, maar ben ooit gestart met domoticz. Nog wil ik het niet kwijt vanwege alle gegevens die erop staan en aangezien de pi wat traag is, dacht ik de overstap te kunnen wagen…
Ik heb enkele maanden een NUC laten draaien die ik hier nog liggen had getest met Home Assistant, maar deze loopt regelmatig vast waardoor ik manueel de NUC moet heropstarten.
Zou dit komen omdat daar een AMD modulle is en omdat de SSD eentje is van maar 70 gb?
Dat zou niet mogen uitmaken en ik verwacht niet dat dat het probleem is. Check je geheugen en harddisk eens op errors (daar zijn diverse tools voor).