Installatie OpenHAB op Raspberry PI
Installatie van OpenHABian
Ik heb gekozen voor OpenHabian in plaats van het separaat installeren van Raspbian en OpenHAB. OpenHABian is een kant en klare versie van Raspbian met OpenHAB en diverse standaard tools en instellingen. Het betreft in de basis een headless versie maar het is mogelijk een display aan te sturen.
Ik gebruik een Raspberry PI 2B welke is voorzien van een 7” touchscreen. Dit touchscreen wordt echter niet gebruikt (zou wel kunnen maar ik heb er voor gekozen dit niet te doen).
Informatie over de installatie is te vinden op https://docs.openhab.org/installation/openhabian.html
Installatie
Download de laatste versie van https://github.com/openhab/openhabian/releases en schrijf deze naar een SD card (bv. Met etcher https://etcher.io/)
Indien de PI uitsluitend via WiFi gebruikt gaat worden, is het noodzakelijk dit eerst in te stellen alvorens de PI op te starten. Indien de ook gebruik kunt maken van ethernet, is dit niet nodig en kan eventueel later, via de ethernetverbinding, Wifi ingesteld worden. Om WiFi in te stellen dient eerst het bestand openhabian.conf aangepast te worden:
- Open de file openhabian.conf op de SD card (staat in /etc)
- Vul waarden in voor wifi_ssid en wifi_psk
- Sla de wijzigingen opPlaats nu de SD card in de PI en start deze. Wacht 15 tot 45 minuten (ja, het kan soms erg lang duren alvorens de initiële setup is uitgevoerd, geduld is een schone zaak). En omdat er headless wordt gewerkt, zie je niet eenvoudig wanneer de installatie gereed is. Lang genoeg wachten dus of steeds proberen verbinding te maken.
IP-adres
Het is belangrijk dat de PI een vast IP-adres krijgt. Dit kun je op de PI configureren of, zoals ik heb gedaan, een vast IP-adres op de DHCP server instellen voor de PI. Ik heb voor het laatste gekozen omdat ik tijdens de ontwikkelfase de PI op twee verschillende locaties (met verschillende netwerkadressen) heb gebruikt.
Ik heb internet van Ziggo en maak gebruik van de DHCP server van de Ziggo router. Op deze router kun je een vaste IP-adres instellen voor het MAC-adres van je PI.
Het is verstandig om vooraf een nummerplan te maken voor devices. Ik heb gekozen voor het volgende plan:
- Netwerk devices: 1..9
In deze reeks heb ik onder andere de Ziggo router, 2 WiFi access points en een printer - DHCP reeks: .138
Gebruik vaste IP-adressen uitgegeven door DHCP vanaf 90: - Telefoons: 90..99
- 90: MAC: 60:a3:7d:31:f0:f3 LulijzerRob
- 91: …
- Servers: 100..109
- 100: MAC: 60:e3:27:17:53:b5 PI
Raspberry PI 2 met OpenHAB en MQTT broker - 101: MAC: PI
Testomgeving voor OpenHAB. Heeft een eigen MQTT broker maar kan ook gebruik maken van de productieomgeving - 102: …
- 100: MAC: 60:e3:27:17:53:b5 PI
- ESP8266 modules: 110..114
- 100:
- 111: MAC: 60:01:94:30:57:c9 ESP_Easy_test ESP8266-01 module
- Sonoff POW modules: 115..119
- 115: MAC: 68:c6:3a:ce:06:87 ESP_Easy_POWR2_01 unit: 1
- Sonoff TH modules: 120..124
- 120:
- 121: MAC: 2c:3a:e8:3b:26:32 ESP_Easy_TH10_01 unit: 2
- Sonoff Basic modules: 125..138
- 125: MAC: 84:f3:eb:af:a0:23 TASMOTA_BASIC_01
Ik overweeg over te gaan naar een klasse B adres range zodat er wat meer ruimte komt in het nummerplan.
In dit geval is er dus een vast IP adres gekoppeld aan het MAC adres van de PI: 192.168.178.100
OpenHAB is te nu bereiken op \\192.168.178.100:8080
Openhabian Configuration tool
Het Openhabian Configuration tool is handig voor updates, upgrades en het in- of uitschakelen van basis componenten.
Als je nog geen PuTTY (https://www.putty.org/) of vergelijkbare SSH client, installeer deze dan eerst.
Open PuTTy en maak een verbinding met de PI (in mijn geval 192.168.178.100 port 22). Log in met userID “openhabian” en password “openhabian”. Maak het window groter zodat het tenminste 120 kolommen heeft. Dit is nodig voor het configuratietool (groter maken kan ook nog als het tool reeds is gestart).
Start nu het configuratietool: sudo openhabian-config
Voer nu de volgende acties uit:
- Doe eerst een update en een upgrade (01 en 02). Hiermee is je installatie weer up-to-date
- Kies 10 Apply Improvements
- Voer alle opties uit
- Kies 20 Optional components
Kies in ieder geval de volgende componenten:- 21 Log Viewer
- 23 Mosquitto
Ik heb Mosquitto geïnstalleerd zonder password, dit is echter later aan te passen. Gebruiker is openhabian
- 30 System settings
- 31 Change hostname
Hostname aangepast naar “RobsSmartHome” - 32 en 33 eventueel gebruiken om system language en timezone aan te passen
- 34 Passwords
Hier kun je passwords aanpassen (sterk aan te bevelen)
- 31 Change hostname
Password met optie 34 aanpassen was bij mij geen succes. Ik weet niet wat er fout ging maar daarom heb ik de passwords maar op normale manier aangepast:
- Linux system
sudo passwd
oud: openhabian
nieuw: <wat je maar wilt, wel onthouden> - Samba
sudo smbpasswd openhabian
oud: openhabian
nieuw: <wat je maar wilt, wel onthouden>
Logviewer
Erg handig (zeg maar noodzakelijk) is de logviewer, welke is te bereiken op poort 9001. Je kunt de logviewer ook vanuit het dashboard activeren maar standaard staat de verwijzing naar het juiste IP-adres niet goed. Om de logviewer vanuit het dashboard te bereiken dien je de volgende aanpassing te plegen:
- sudo nano /etc/openhab2/services/dashboard.cfg
- zoek naar viewer, dan kom je bij de log viewer settings
- pas de link aan zodat het juiste ip-adres gebruikt wordt
- sla het bestand op en sluit af
Bestanden benaderen met Windows verkenner
Ik vind het handig om met de Windows Verkenner bestanden op de PI te kunnen benaderen. Type hiertoe in de adresbalk, vooraf gegaan door dubbel back-slash, het IP-adres van de PI in (in mijn geval \\192.168.178.100. Er wordt dan om de smb userid en wachtwoord gevraagd. Zelf heb ik de door de PI geboden shares als netwerk drive gemapped.
Om met een tool als Visual Code Studio of vergelijkbare editor eenvoudig aanpassingen te kunnen plegen, is het nog wel noodzakelijk de toegangsrechten van de bestanden aan te passen (in PuTTY met chmod, als je niet weet hoe: https://www.nucleus.be/helpdesk/webhosting/linux-file-permissions-en-ownership/)
VNC
Het is niet de bedoeling van OpenHabian maar als je perse wilt, kun je met VNC de PI gebruiken. Hier een verkorte instructie:
- sudo apt install raspberrypi-ui-mods
- sudo reboot
- sudo apt-get update
- sudo apt-get install realvnc-vnc-server realvnc-vnc-viewer
- sudo raspi-config
5 Interface options – P3 VNC - vncser –randr 1280×800
Let op welk ip adres wordt terug gegeven en vooral de poort (192.168.178.100:1). Je kunt natuurlijk ook andere schermafmetingen opgeven. - Maak nu een VNC verbinding met de PI met je favoriete VNC client. Zelf gebruik ik RealVNC (https://www.realvnc.com/en/)