Een geoptimaliseerde Rasbian + Domoticz-image installeren op een Raspberry Pi 3, Pi 4 of Pi 5.

Domoticz is een multiplatform domoticasysteem dat zeer compact en snel is omdat het in C++ is geschreven. Het maakt het mogelijk om zelfs complexe automatiseringen te schrijven voor het beheer van bijvoorbeeld een compleet alarmsysteem, de volledige aansturing van een warmtepomp, enzovoort.

Een boek hierover is beschikbaar op https://github.com/rwbl/domoticz-homeautomation-workbook

Deze pagina laat zien hoe je een nieuwe, schone image maakt met Raspbian, Domoticz, een firewall en een back-up. Raspbian + Domoticz

Als u liever een hoogwaardige, reeds geprogrammeerde SD-kaart koopt, bezoek dan onze winkel . domoticz klein

Een image schrijven voor Raspberry Pi

We bieden een snelle oplossing voor het installeren van een vooraf geconfigureerde Raspbian-image voor Raspberry Pi 3, Pi 4 en Pi 5, compleet met de nieuwste Domoticz-software en geconfigureerd om het MicroSD-flashgeheugen te beschermen (het flashgeheugen kan niet meer dan 10.000 keer veilig worden beschreven) en een wekelijkse back-up te exporteren die gemakkelijk kan worden hersteld in geval van problemen.

Deze image is getest op zowel Raspberry Pi 3 als Raspberry Pi 4 en maakt gebruik van de nieuwste Raspbian-distributie.

Door deze image op een microSD-kaart te zetten, kunt u uw Domoticz-apparaten direct via de webinterface configureren.

De afbeelding wordt naar een microSD-kaart gekopieerd.

Je hebt een Linux-distributie, wget, sfdisk, fsarchiver en een microSD-kaart (of SSD) met minimaal 16 GB aan opslagruimte nodig.

Voer vanuit de bash-shell de volgende opdrachten in:

 export disk=/dev/sdh #vervang sdh door het microSD/SSD-apparaat
wget https://docs.creasol.it/raspberry_domoticz.sfdisk
wget https://docs.creasol.it/raspberry_domoticz.sfdisk
sfdisk $disk < raspberry_domoticz.sfdisk
fsarchiver -v restfs raspberry_domoticz.fsa id=0,dest=${disk}1 id=1,dest=${disk}2
echo -e "\\aMicroSD gekopieerd"

Functies

  • Werkt met zowel Raspberry Pi 4 als Raspberry Pi 3.
  • Raspbian + een recente versie van Domoticz
  • Geoptimaliseerd om het schrijven naar flashgeheugen te verminderen: /tmp en /var/log bevinden zich in het RAM-bestandssysteem, niet op de SD-kaart, en swap is uitgeschakeld. Tijdelijke Domoticz-bestanden worden naar /tmp geschreven, niet naar de SD-kaart, waardoor de levensduur van het geheugen wordt verlengd.
  • Firewall met iptables/netfilter, die geconfigureerd kan worden door /usr/local/sbin/myfirewallpi.sh te bewerken.
  • Een back-upfunctie die automatisch incrementele back-ups maakt van gewijzigde bestanden; één dag per week een volledige back-up en één dag per maand een image; de back-up kan eenvoudig worden geëxporteerd naar een aangesloten USB-harde schijf of NAS (FTP of CIFS).
  • Domoticz is gedeeltelijk geconfigureerd met enkele apparaten en de Creasol Dombus-plugin is al geïnstalleerd (de Domoticz-plugin maakt gebruik van Creasol DomBus-apparaten die via een RS485 seriële bus op de Raspberry Pi zijn aangesloten).

Toegang tot en configuratie van de Raspberry Pi met de geprogrammeerde image

Dit zijn de standaard inloggegevens voor deze afbeelding:
Linux-gebruiker: pi , wachtwoord: arangingenni
Linux-gebruiker: root , wachtwoord: geriandallse
Domoticz-gebruiker: domoticz , wachtwoord: creasol

Het wordt aangeraden deze standaardwachtwoorden te wijzigen!

Als je de Raspberry Pi met deze image opstart, krijgt deze de netwerkconfiguratie van je DHCP- server (router), zodat je er via de browser verbinding mee kunt maken via een URL zoals http://192.168.1.123:8080 ( controleer je DHCP-server om het IP-adres te achterhalen dat aan de Raspberry Pi is toegewezen , of voer een netwerkscan uit op je LAN). Als je verbinding maakt met de Raspberry Pi vanuit een 192.168.*.*-, 172.16.*.*- of 10.*.*.*-netwerk, is geen authenticatie vereist .
Bovendien is de SSH-service ingeschakeld , zodat u via een beveiligde shell (met SSH, PuTTY of een andere SSH-client) toegang kunt krijgen als gebruiker pi of root.


Hoe maak je een image van een Raspberry SD-kaart?

We hebben het bash- script raspberry_domoticz.sh (zie hierboven) geschreven waarmee een kopie van het Raspberry Pi-geheugen op een USB-stick kan worden opgeslagen en waarmee ook een nieuwe SD-kaart met de inhoud van een opgeslagen image kan worden aangemaakt .

Dit is nuttig omdat:

  1. Flashgeheugen kan niet oneindig vaak beschreven worden : normaal gesproken kan elke flashcel tot 10.000-100.000 keer beschreven worden. De voorgestelde image is geoptimaliseerd om het aantal schrijfbewerkingen naar de SD-kaart te beperken.
  2. Het is altijd een goed idee om een back-up te hebben van de draaiende Raspberry Pi , zodat je in geval van problemen het systeem kunt herstellen vanuit een oude back-up.
  3. Misschien moet je een bestaande SD-kaart klonen en de afbeeldingen op je pc of NAS bewaren.

Functies:

  • Afbeeldingen worden gecomprimeerd ... het is onzinnig om een afbeelding van 16 GB te hebben voor een bijna lege SD-kaart van 16 GB!
  • Afbeeldingen kunnen op verschillende SD-kaarten worden hersteld , dus het is mogelijk om dezelfde afbeelding te gebruiken om zowel een SD-kaart van 32 GB als een SD-kaart van 8 GB te beschrijven.
  • Het maken en herstellen van een image gaat echt snel , in vergelijking met andere systemen.

Helaas werkt dit systeem niet in Windows, maar... wie gebruikt er tegenwoordig nog Windows? Alles migreert naar Linux! Android is Linux. Raspbian is Linux. Je routers, access points en tv's gebruiken hoogstwaarschijnlijk het Linux-besturingssysteem! ;-)

Klik hier om het script raspberry_domoticz.sh te downloaden, sla het op in een uitvoerbare map op uw Linux-systeem (bijv. /usr/local/sbin) en geef het uitvoerrechten.
Voer raspberry_domoticz.sh uit en volg de instructies om een gecomprimeerde image van de Raspberry Pi SD-kaart te maken. Het werkt ook in live-modus, direct vanuit een werkend Linux-systeem, met een hoge kans op succes.

 

Wilt u meer? Presentatie van de uiterst betrouwbare DomBus.

 

Veelgestelde vragen (FAQ)

Enkele handige commando's

ps ax |grep domoticz : geeft een lijst van alle actieve processen weer, maar toont alleen de processen met de naam domoticz

netstat -lnp |grep domoticz : toont de TCP/UDP-poorten die door Domoticz worden gebruikt (normaal gesproken gebruikt het poort 8080).

lsusb : geeft een lijst van apparaten die via USB zijn aangesloten. lsusb -v toont details over USB-apparaten.

Hoe configureer je de GPIO-pinnen van een Raspberry Pi?

Met deze Raspbian-image kunnen GPIO's worden geconfigureerd door het bestand /etc/rc.local te bewerken en de gewenste GPIO in te stellen als 'out' (voor uitvoer), 'in' (voor invoer) of 'both' (voor bidirectionele communicatie).

 [code]#/etc/rc.local bestand

#GPIO instellen met de WiringPi-tool:
#syntax: gpio export GPIONUMBER out|in|both om in te stellen als uitvoer, invoer of I/O
gpio export 24 out # Instellen als uitvoer.
gpio export 23 out
GPIO-export 22 uit
GPIO-export 27 uit
GPIO-export 18 uit
GPIO-export 17 uit
gpio export 25 out #lightOut2
gpio export 8 out #lightOut3
gpio export 7 out #lightOut4
gpio export 12 out #lightOut1[/code]

Na het bewerken typt u /etc/rc.local om het script opnieuw te laden.

Hoe kan ik de Creasol DomBus-plugin bijwerken naar de nieuwste versie?

Typ in de root-shell het commando creasoldombus_update.sh.

Hoe configureer ik een statisch IP-adres voor de Ethernet-interface van Raspbian?

Bewerk het bestand /etc/dhcpcd.conf ( nano /etc/dhcpcd.conf ) en voeg de volgende regels aan het einde toe:

 interface eth0 static ip_address=192.168.1.250/24 static routers=192.168.1.1 static domain_name_servers=192.168.1.1 8.8.8.8

en opslaan met Ctrl-X.

De Raspberry Pi kan niet via SSH (poort 22) of HTTP (poort 8080) worden verbonden.

Zorg ervoor dat de LAN-kabel is aangesloten op de Raspberry Pi en dat een DHCP-server IP-adressen aan het apparaat kan toewijzen.

Er is een firewallscript geïnstalleerd, /usr/local/sbin/myfirewallpi.sh, dat vereist dat de eth0-interface al geconfigureerd is via DHCP of een statisch IP-adres.

Hoeveel stroom verbruikt een Raspberry Pi 4?

Aangezien domoticasystemen zijn ontwikkeld om de ecologische voetafdruk van gebouwen te verkleinen, is het belangrijk om te weten of een Raspberry Pi een geschikte hardware is voor een domotica-controller, met het oog op processorkracht, stabiliteit en energieverbruik.

Op internet vind je maar weinig artikelen die het stroomverbruik van een Raspberry Pi beschrijven. De beste manier is daarom om het stroomverbruik in de praktijk te meten.

Dit is de hardware die getest wordt: een Raspberry Pi 4 met 1 GB RAM, aangesloten op het LAN en gevoed door een gelijkstroomvoeding van 5V.

Raspberry Pi 4 1 GB

Hieronder de waarden van stroom en spanning gemeten met Raspbian OS.
1. Links, zonder enige belasting (zeer laag CPU-gebruik), is het stroomverbruik van de Raspberry Pi = 5V * 0,42A = 2,1W (normaal).

2. Rechts, met 100% belasting op de 4 kernen, is het stroomverbruik van de Raspberry Pi = 5V * 0,63A = 3,15W piek.

Raspberry Pi 4 1GB noload

Raspberry Pi 4 1GB Fullload

 

Raspberry Pi 4 1GB Fullload top

Firewallconfiguratie

Hoe activeer ik het IP-adres waarmee ik mijn Raspberry Pi/Domoticz van buitenaf kan benaderen?

Bewerk het firewallscript met het commando nano /usr/local/sbin/myfirewallpi.sh en wijzig de variabele ADMIN_SOURCE door de IP-adressen (of netwerken) toe te voegen die u wilt inschakelen:

ADMIN_SOURCE='80.86.145.56/29 149.13.157.0/24 37.0.0.0/8'

waarbij /24 betekent dat het laatste cijfer in het IP-adres elk getal tussen 0 en 255 mag zijn, en /8 betekent dat alleen het eerste cijfer wordt gecontroleerd, terwijl de overige 3 cijfers elk getal tussen 0 en 255 mogen zijn.

Sla het bestand op met CTRL-s en CTRL-x en voer vervolgens het script uit door /usr/local/sbin/myfirewallpi.sh te typen.

Hoe schakel ik inkomende verbindingen met de webserver in op een Raspberry Pi?

Wijzig het firewallscript met het commando nano /usr/local/sbin/myfirewallpi.sh en voeg poort 80 (http) of 443 (https) toe aan de variabele TCP_SERVICES_IN_wan

Sla vervolgens het script op (CTRL-s en CTRL-x) en voer het firewallscript uit met het commando /usr/local/sbin/myfirewallpi.sh

 

Back-upconfiguratie

De configuratie wordt opgeslagen in het bestand /usr/local/etc/backup.conf : bewerk dit met uw favoriete editor (bijvoorbeeld nano /usr/local/etc/backup.conf ).

Hoe maak je periodiek een afbeelding aan?

Bewerk de variabele DISKS:
DISKS="mmcblk0p1 mmcblk0p2"
om een image te maken voor de opstart- en rootpartities.

Hoe exporteer ik een back-up naar een externe USB-harde schijf?

BACKUP_DIR_CONTROL="/mnt/usb"
BACKUP_PARTITION_CHECK="/mnt/usb"
BACKUP_DIR="${BACKUP_DIR_CONTROL}/backup_domoticz"
BACKUP_DIR_MOUNT="mount -o nodev,noexec,async /dev/sda1 ${BACKUP_DIR_CONTROL}" # Mount /dev/sda1
BACKUP_DIR_UMOUNT="umount ${BACKUP_DIR_CONTROL}" # Ontkoppel /dev/sda1
BACKUP_DIR_AFTER_UMOUNT="hdparm -S12 /dev/sda" # Externe harde schijf loskoppelen

Hoe exporteer ik een back-up van een NAS die via CIFS (Samba) is gemount?

BACKUP_DIR_CONTROL="/mnt/nas"
BACKUP_PARTITION_CHECK="/mnt/nas"
BACKUP_DIR="${BACKUP_DIR_CONTROL}/backup_domoticz"
BACKUP_DIR_MOUNT="mount -t cifs -o username=USER,password=PASSWORD, //NAS_IP_ADDRESS/SHARE ${BACKUP_DIR_CONTROL}" # Koppel de NAS-partitie
BACKUP_DIR_UMOUNT="umount ${BACKUP_DIR_CONTROL}" # Ontkoppel de NAS-partitie
BACKUP_DIR_AFTER_UMOUNT="" # opdracht verzonden na BACKUP_DIR_UMOUNT: doe niets