In deze blog beschrijf ik hoe je middels een Raspberry Pi, een Nest thermostaat en een Z-Wave schakelaar de basis kunt leggen voor domotica in je huis. In de toekomst zal ik meer artikelen posten naarmate mijn eigen domotica-project vordert.

Ik maak enkel gebruik van open-source software, dus je hoeft geen software aan te schaffen waardoor de kosten zo minimaal mogelijk blijven.

We hebben de volgende zaken nodig:

  • Een Raspberry Pi (ik heb een type 3B gebruikt, met Wifi en Bluetooth on-board)
  • Een Z-Wave USB controller. (ik gebruik de USB-stick van AEON labs)
  • Een Micro SD-card (Ik heb een 16GB variant gebruikt, wat zeer ruim voldoende is)
  • Een Zwave schakelaar: voor dit projectje heb ik een “slimme” stekker van Neo Coolcam gebruikt.
    Deze plug je eenvoudig in je stopcontact, waarna je vervolgens een lamp in de stekker steekt.
  • Optioneel: Nest Learning Thermostat. (Als je geen Nest wilt gebruiken, dan kun je stap 7 in dit artikel overslaan)

Afhankelijk van de gebruikte computer (ik gebruik een MacBook) heb je een kaartlezer nodig om de SD-card te bewerken. Sommige computers hebben reeds een slot aan boord waar je deze kaart rechtstreeks in kunt steken.

De stappen

  1. De Raspberry Pi voorbereiden
  2. Verbinden met je Raspberry Pi
  3. Installatie van Domoticz
  4. Instellen van de ZWave USB stick
  5. Koppelen van je ZWave device
  6. Apparaat toevoegen in Domoticz
  7. Nest toevoegen aan Domoticz
  8. Veiligheid: Wijzig het standaard wachtwoord!

Stap 1: De Raspberry Pi voorbereiden

  • Sluit de SD-card aan op je computer. We gaan op deze SD-card nu Raspbian installeren. Dit is een linux-versie die geoptimaliseerd is voor de Raspberry Pi. Om te beginnen moeten een image downloaden die het besturingssysteem bevat. Deze kun je hier downloaden. Je kunt kiezen voor twee varianten: met of zonder Pixel. Pixel is een grafische gebruikersinterface. Voor dit project hebben we deze niet nodig, omdat we enkel middels de command line werken. Hoewel je kunt kiezen om het image te downloaden als torrent, raad ik je aan om het image als ZIP-bestand te downloaden.
  • Pak het ZIP-bestand uit met bijvoorbeeld 7-Zip (Windows) of Unzip (Linux). Wanneer je download via MacOS, zal na het downloaden de image automatisch uitgepakt worden.
  • De installation guide van RaspberryPi.org beveelt het gebruik van Etcher aan. Deze applicatie gebruiken we om het gedownloade image naar de SD-card te kopiëren. De applicatie is gratis te downloaden voor Windows, Linux of de Mac.
    • Open Etcher en selecteer het gedownloade .img-bestand op je harddisk.
    • Selecteer vervolgens de SD-card waar je het image naartoe wilt schrijven.
    • Klik nu op Flash en het kopiëren zal starten.
  • Open nu de SD-card op je computer en maak hier een bestandje aan met de naam ssh (zonder extensie). De inhoud van het bestandje is leeg. Door het plaatsen van dit bestandje zal de Raspberry Pi een SSH-server opstarten, waardoor we via het netwerk de Raspberry Pi kunnen bedienen, zonder dat we een scherm hoeven aan te sluiten.
  • Koppel de SD-card los van je computer en steek deze in de Raspberry Pi. Sluit vervolgens de Raspberry Pi middels een netwerkkabel aan op je netwerk en sluit de voedingsadapter aan. (Als je 100% zeker wilt zijn dat je Raspberry Pi volledig zonder problemen opstarten, dan kun je hem even middels een HDMI-kabel aansluiten op je TV zodat je het opstartproces kunt volgen)

Stap 2: Verbinden met je Raspberry Pi

Om te verbinden met je Raspberry Pi, moet je eerst zijn IP-adres achterhalen. De Raspberry Pi krijgt zijn IP-adres van je router middels een DHCP-request. Om het IP-adres te achterhalen heb je de volgende opties:

  • Je sluit hem middels een HDMI-kabel aan op je TV en start hem dan op. Tijdens de opstartberichten kun je zien welk IP-adres hij krijgt.
  • Je kijkt in de DHCP-tabel van je router. Daarin kun je zien welke IP-adressen er zijn uitgedeeld op het netwerk. De apparaten waaraan de IP-adressen zijn uitgedeeld staan er met hun naam (hostname) vermeld. De hostname voor onze Raspberry Pi is raspberrypi.

Wanneer je het IP-adres hebt achterhaald, gaan we verbinden middels een SSH-client. Op Linux en de Mac zit deze standaard als in het besturingssysteem. Gebruik je Windows, dan zul je een SSH-client moeten installeren. Een gratis SSH-client voor Windows is bijvoorbeeld Putty.

De standaar gebruikersnaam om mee in te loggen is pi. Het daarbij behorende standaard wachtwoord is raspberry. (Ik adviseer je vanwege veiligheid ten sterkste om het wachtwoord te wijzigen, hierover later meer)

In dit project gaan we er vanuit dat het IP-adres van de Raspberry Pi 192.168.1.5 is. Vervang daarom steeds dit IP-adres door het IP-adres van jouw Raspberry Pi. Om te verbinden vanuit Linux of de Mac, open je een terminal-venster en typ je het volgende commando:

ssh pi@192.168.1.5

Je wordt nu om het wachtwoord gevraagd. Voer nu als wachtwoord in: raspberry en toets enter.

Je ziet nu het volgende:

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law.

SSH is enabled and the default password for the 'pi' user has not been changed.
This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.

pi@raspberrypi:~ $

Stap 3: Installatie van Domoticz

Het installeren van Domoticz is zeer eenvoudig. Voer het volgende in en druk op enter:

sudo curl -L -k install.domoticz.com | sudo bash

Zodra Domoticz geïnstalleerd is, open je je internet-browser en surf je naar het volgende adres:

http://192.168.1.5:8080 (Vervang 192.168.20.5 door het IP-adres van jouw Raspberry Pi)

Je ziet nu bovenin een aantal keuzemogelijkheden en verder is je scherm nog vrij leeg. Geen nood, daar komt snel verandering in!

Voordat je verder gaat, stellen we Domoticz eerst in het Nederlands in. Dit is voor velen onder ons toch net iets gemakkelijk dan in het Engels. Klik hiervoor op Setup en vervolgens weer op Setup. Selecteer nu bij Language: Dutch en klik vervolgens op Apply Settings.

Stap 4: Instellen van de Zwave USB Stick

  • Klik in Domoticz eerst op Instellingen en vervolgens op Hardware. Voer bij naam een verwijzing naar je USB-stick in, bijvoorbeeld USB Stick.
  • Kies als type OpenZWave USB.
  • Kies vervolgens je seriële poort (USB poort). Meestal kun je hier maar één optie kiezen. (behalve als je je USB-stick in meerdere poorten hebt gestoken, dan zul je even moeten uitproberen welke poort voor jou werkt)
  • Klik tot slot op Toevoegen.

Stap 5: Koppelen van je ZWave device

Het koppelen van je ZWave device is sterk afhankelijk van de gebruikte ZWave adapter en ZWave device. Beide komen met een handleiding waarin staat hoe de koppelingsprocedure voor het apparaat werkt. Allereerst moet de USB-stick in een toevoeg-modus gezet worden. Dit is bij de USB-stick van AEON labs heel eenvoudig. Druk op de knop op de stick. De blauwe led op de stick zal nu langzaam gaan knipperen. Zodra het ZWave device gekoppeld is, zal de blauwe led 2 seconden gaan branden.

Het voordeel van de USB-stick van AEON labs is, dat hij een batterij bevat waardoor hij niet op een USB-poort aangesloten hoeft te zijn om het voor de koppelingsprocedure te gebruiken. Dit is bijzonder handig wanneer het ZWave device dat je wilt koppelen, zich niet in de buurt van de Raspberry Pi bevindt.

Wanneer je de toevoeg-modus op de stick hebt gestart (en de knipperende blauwe led dus ziet) schakel je de toevoeg-modus op de “slimme” stekker in. In het geval van de door ons gebruikte stekker van Neo Coolcam, druk je snel 3x achter elkaar op de knop op de stekker. Wanneer de toevoeg-modus gestart wordt, zal de led in de knop 5x rood knipperen. De blauwe led op de stick zal nu 2 seconden blauw gaan branden.

Steek nu de stick terug in je Raspberry Pi, bij voorkeur in dezelfde USB-poort als voorheen. (anders heb je kans dat je de seriële poort instelling opnieuw moet doen. (zie stap 4).

Klik nu op Instellingen -> Hardware.

Klik nu op de knop Instellingen naar de OpenZWave USB.

Als de koppelings-procedure succesvol is geweest, zie je nu Neo Coolcam Power Plug in je lijstje staan:

Zie je de Neo Coolcam Power Plug er niet tussen staan, voer de gehele koppelingsprocedure nogmaals uit.

Stap 6: Apparaat toevoegen in Domoticz

Klik in Domoticz op Instellingen en vervolgens op Apparaten. Je ziet nu meerdere apparaten. Dit komt doordat de power plug bestaat uit meerdere devices: Naast een schakelaar bevat de power plug ook nog verschillende sensoren voor bijvoorbeeld spanning, vermogen en verbruik. We concentreren ons nu vooralsnog op de schakelaar. Je herkent dit apparaat aan de IDX-waarde van 1 met het lampje ernaast. Klik bij dit apparaat op de groene buiten met de pijl naar rechts. Je wordt nu gevraagd om het apparaat een naam te geven. Zodra je dit hebt gedaan, kun je bovenin klikken op Schakelaars, waar je de schakelaar terug kunt vinden. Door op de lamp te klikken schakel je de lamp in. De afbeelding van de lamp wordt nu een brandende lamp. Door er nogmaals op te klikken gaat de lamp uit.

Door op de ster linksonder te klikken wordt deze toegevoegd aan je favorieten in je Dashboard. (De ster wordt dan geel)

 

Stap 7: Nest toevoegen aan Domoticz

Om je Nest thermostaat toe te voegen aan Domoticz, heb je je gebruikersnaam en wachtwoord voor Nest.com nodig.

  • Klik in Domoticz op Instellingen en vervolgens op Hardware.
  • Kies nu bij Type: Nest Thermostat/Protect.
  • Vul vervolgens je gebruikersnaam en wachtwoord van Nest.com in.
  • Klik nu op Toevoegen.

Je ziet nu dat je Nest Thermostaat wordt toegevoegd aan de hardware.

Vervolgens ga je naar Instellingen en dan naar Apparaten. Je ziet dat er wederom een aantal apparaten zijn toegevoegd. Deze apparaten hebben Nest als Hardware. Via de groene pijltje kun je de apparaten toevoegen aan Domoticz, net zoals we dat gedaan hebben met de Power Plug.

Het apparaat van het type Thermostaat kun je gebruiken om de temperatuur van je Nest in te stellen. De overige apparaten zijn eigenlijk alleen bedoeld om uit te lezen en niet om een instellingen te maken. Via het apparaat van het type Temp + Humidity kun je de temperatuur en luchtvochtigheid via je Nest uitlezen. De overige apparaten van het type Lighting 2 gebruik je om te bepalen of de verwarming actief is en om te bepalen of de Nest in de “Away” stand staat.

Let op!: De Nest learning thermostat wordt niet rechtstreeks gekoppeld aan Domoticz. Zowel de Nest als Domoticz praten met de Nest-servers via internet. De Nest-server functioneren dus eigenlijk als tussenpersoon. Zodra je internetverbinding niet (meer) werkt, zal ook de verbinding tussen Domoticz en Nest niet meer werken.

Stap 8: Veiligheid: Wijzig het standaard wachtwoord!

Om te voorkomen dat kwaadwillenden de controle over je nieuwe domotica-systeem overnemen, is het verstandig om je account-wachtwoord te wijzigen. (Het standaard wachtwoord “raspberry” is wel erg eenvoudig te raden). Dit doe je door middels SSH in te loggen en het volgende commando te geven:

passwd

Je wordt nu eerst gevraagd om het huidige wachtwoord (“raspberry”) in te voeren. Vervolgens wordt je gevraagd om een nieuw wachtwoord en tot slot moet je dit nieuwe wachtwoord nogmaals invoeren ter bevestiging.

De volgende keer kun je via SSH inloggen met pi als gebruikersnaam en je nieuwe wachtwoord.

Reacties