Vor ein paar Tagen habe ich euch in dem Artikel „Conbee II auf Raspberry Pi installieren“ beschrieben, wie ihr das universelle Zigbee Gateway auf einem Einplatinenrechner installieren könnt. Da ich selbst seit Anfang dieses Jahrs auf einen Intel NUC mit Proxmox für meine Hausautomation setze, beschreibe ich euch in diesem Artikel, wie ihr diesen wirklich interessanten Ersatz in einer VM (virtuellen Maschine) installieren könnt. Ich erkläre auch, warum VM und nicht LXC Container und warum ich mich für Debian und nicht Ubuntu entschieden habe.

Vorwort

Es gibt im Internet viele Diskussionen und mindestens genauso viele Meinungen dazu, ob es besser ist, eine VM oder einen LXC Container zu verwenden. Es gibt aus meiner Sicht sicherlich Gründe einen LXC Container zu benutzen. Dadurch werden verschiedene Ressourcen eures Servers, wie beispielsweise das Kernel optimaler verteilt und genutzt. Es gibt aber auch deutliche Einschränkungen was die Sicherheit, speziell die Definitionen der Benutzersicherheit und Vergabe von Root Rechten anbetrifft „LINK zu weiterführenden Informationen“.

Ich habe mich aus verschiedenen Gründen für die Installation des Conbee II USB-Sticks und der Software deCONZ in einer VM (virtuelle Maschine) und gegen eine LXC Installation entschieden. Das ist natürlich meine persönliche Entscheidung und es bleibt euch überlassen, einen anderen Weg zu gehen. Nachfolgend die Grüne, welche mich zu dieser Entscheidung gebracht haben:

  • Das Durchreichen eines USB-Sticks ist im LXC Container sehr schwierig und mr nicht zufriedenstellend gelungen;
  • Der Backup eines LXC Containers (Unprivilegierter Container) auf einer NAS ist nicht möglich, das NFS nicht aktiviert werden kann;
  • Sicherheitsbedenken (siehe Link oben);
  • Eine VM (virtuelle Maschine) ist sehr einfach zu verwalten und zu sichern;
  • Mit meinem NUXi3 haben ich ausreichend Ressourcen, um aus diesem Grund auf den LXC Container zu wechseln (siehe Screenshot);
  • Das Durchreichen eines USB-Sticks ist mit einer VM kein Problem. Nicht beim Neustart der VM oder des gesamten Servers;
  • Es war mir sogar möglich im Testbetrieb zwei VMs für deCONZ einzurichten, eine mit Ubuntu und eine zweite mit Debian. Beide konnten problemlos, natürlich nur einzeln auf den gleichen USB-Stick zugreifen;

Nachfolgend ein Screenshot, welcher die aktuelle Auslastung meines Intel NUCs zeigt. Installiert sind aktuell jeweils eine VM mit RaspberryMatic, ioBroker, Conbee und node-RED. Wie ihr sehen könnt, brauche ich mir keine Gedanken um die Performance zu machen.

Wie ihr sehen könnt, habe ich wie oben schon beschrieben, zwei VMs installiert für den Conbee II USB-Stick. Es darf immer nur jeweils eine aktiv sein, weil ich ja nur einen USB-Sick angeschlossen habe. Das hat in der Testphase auch sehr gut und ohne Probleme funktioniert. Ich musste nur jeweils die entsprechende VM starten, sowie die andere vorher Herunterfahren. Der USB-Stick wurde immer ohne Probleme gefunden. Im nachfolgenden Absatz beschreibe ich für welche Plattform (Ubuntu oder Debian) ich mich entschieden habe und warum.

Debian oder Ubuntu

Ich bin eigentlich völlig objektiv an diese Entscheidung heran gegangen und hatte irgendwo im Internet eine Empfehlung für Ubuntu gefunden. Daher war meine erste Installation auf der Ubuntu Plattform und das Ganze hat auf Anhieb so funktioniert wie es auf der Phoscon Seite beschrieben worden ist. In einem zweiten Schritt habe ich es dann auch mit Debian versucht, weil alle meine anderen VMs ebenfalls auf Debian laufen. Hier war die Installation nicht ganz so einfach. Der Grund dafür ist, dass bestimmte Programme in dem Standard Debian ISO-Image nicht beinhaltet sind. Das sind im Speziellen die Programme SUDO und GNUPG.

Da man diese Nachinstallieren kann, stellt das kein allzu großes Problem dar. Daher habe ich dann auch die Phoscon Installation auf Basis von Debian ans Laufen bekommen und auch hier funktioniert das Zigbee Gateway auf Basis den Conbee II USB-Sticks einwandfrei.

Die Gründe warum ich mich am Ende für Debian entschieden habe, sind in der Hauptsache der deutlich höhere Ressourcen Verbrauch von Ubuntu und vielleicht auch ein wenig subjektiv. Ubuntu verbraucht mehr RAM und erheblich mehr Plattenplatz. Die genauen Zahlen könnt ihr aus den nachfolgenden Screenshots entnehmen.

  • Schon beim ISO-Image ist das von Ubuntu mit 870 MB deutlich größer als das von Debian mit 335 MB;
  • RAM Verbrauch bei Debian ca. 220 MB bei gleicher Konfiguration;
  • RAM Verbrauch bei Ubuntu ca. 650 MB bei gleicher Konfiguration;
  • Plattenplatzverbrauch für den Debian Backup auf NAS liegt bei ca. 800 MB;
  • Plattenplatzverbrauch für den Ubuntu Backup auf NAS liegt bei ca. 4000 MB (4 GB);

Debian ISO-Image herunterladen und auf Intel NUC übertragen

Als erstes müssen wir die aktuelle Debian Version als ISO-File herunterladen. Unter dem folgenden Link könnt ihr diese Version finden. Ich habe mich für die AMD64 Version entschieden. Der Intel NUC hat zwar keinen AMD Prozessor, aber ich wollte zum einen eine 64 Bit Version haben und habe mit dieser ISO-Datei gute Erfahrungen gemacht. Der oberste Link ist die Website zum Debian Download. Der untere Link ist der Download Link der AMD64 Version.

Nun müssen wir die gerade herunter geladene ISO-Datei auf den Intel NUC kopieren/transferieren. Ich verwende dazu gerne WINSCP, weil man mit diesem Tool nicht nur Dateien zwischen dem Windows PC und dem Intel NUC/Raspberry Pi hin- und herschieben kann, sondern ähnlich wie im Datei-Explorer einen Überblick über die Verzeichnis Struktur bekommt, Dateien anlege, editieren und löschen kann, ohne Linux Befehle zu kennen. Zusätzlich kann auch ein Terminal geöffnet werden, um wie beispielsweise mit PUTTY Kommandos abzusetzen.

Der nachfolgende Screenshot zeigt, wie das Hochladen auf den Intel NUC funktioniert. Auf der rechten Seite findet ihr das Zielverzeichnis „/var/lib/vz/template/iso/„. Hier müssen alle ISO-Images hochgeladen werden, damit sie später gefunden werden können. Auf der linken Seite seht ihr das Verzeichnis auf dem Windows Rechner, wo ich die Datei nach dem Download gespeichert habe. Über einen „Mausklick rechts“ könnt ihr dann die Funktion „Hochladen“ auswählen.

Neue virtuelle Maschine (VM) erzeugen

Nachfolgend beschreibe ich euch Schritt für Schritt die Aktionen, welche durchgeführt werden müssen. Um das Ganze zu Virtualisieren, könnt ihr dann die entsprechenden Screenshots in der Diashow anschauen. Dabei stimmen die Schritt Nummern mit der Reihenfolge der Bilder in der Diashow überein.

  1. Im Hauptmenü von Proxmox oben rechts „Erstelle VM“ anklicken, um eine virtuelle Maschine zu erstellen;
  2. Unter Allgemein den Knoten „PVE“, die VM ID „350“ und den Namen der VM „ConBee“ eingeben;
  3. Unter OS im Feld „ISO Image“ die herunter geladene ISO Datei auswählen;
  4. Unter SYSTEM können die Einstellungen beibehalten werden;
  5. Unter LAUFWERK die „Disk-Größe (GiB) eingeben, in meinem Fall „12“;
  6. Unter CPU die Anzahl der Sockets und der Cores, bei mir „2“ auswählen;
  7. Unter SPEICHER den gewünschten RAM Speicher in MiB angeben, bei mir „2048“, also 2 GB;
  8. Unter NETZWERK können die Einstellungen beibehalten werden;
  9. Unter BESTÄTIGUNG alles kontrollieren und mit Abschließen die VM erstellen.
  10. Unter Hardware die Option Hinzufügen auswählen, um dann wie gezeigt den Conbee II USB-Stick auswählen. Zusätzlich die Option USB3 verwenden deaktivieren;
  11. Im letzten Screenshot seht ihr die Werte der neuen VM (virtuellen Maschine.

DEBIAN in der VM installieren

Im nächsten Schritt werden wir nun in der gerade erstellen virtuellen Maschine (VM) die vorher herunter geladene Debian Version installieren.

  1. Im Proxmox Hauptmenü bitte die gerade neu erstellte VM „ConBee“ auswählen und mit Mausklick rechts ein Pulldown Menü öffnen, und dort dann „Start“ auswählen. Damit startet die Debian Installation.
  2. Um die Installation durchzuführen, bitte auf Konsole klicken und im ersten Menü „Install“ auswählen und ENTER drücken;
  3. In dem nächsten Bildschirm „Select a language“ als Sprache „GERMAN“ auswählen;
  4. Im nächsten Bildschirm „Auswählen des Standortes“ als Land „DEUTSCHLAND“ auswählen;
  5. Im Bildschirm „Tastatur konfigurieren“ als Layout „Deutsch“ auswählen;
  6. Als nächsten unter „Netzwerk einrichten“ den Rechnernamen eingeben. Ich habe „ioBroker“ gewählt;
  7. Nun könnt ihr im nächsten Schritt einen Domain-Namen eingeben. Ich habe nichts eingegeben;
  8. Im nächsten Bildschirm das „Root-Passwort“ eingeben und gut merken;
  9. Nun müsst ihr das gewählte „Root-Passwort“ wiederholen;
  10. Jetzt kann ein zusätzlicher Benutzer angelegt werden. Ich habe hier meinen Namen eingegeben;
  11. Im nächsten Schirm ist der „Benutzername“ einzugeben;
  12. Nun wieder das „Passwort“ für den neuen Benutzer eingeben:
  13. … und auch noch einmal wiederholen;
  14. Im Bildschirm „Festplatte partitionieren“ die Option „Geführt – vollständige Festplatte verwenden“ wählen;
  15. Wenn ihr wie ich in eurem System nur eine Festplatte habt, die Vorgabe durch „ENTER“ bestätigen;
  16. Im nächsten Bildschirm ist meine Empfehlung „Alle Dateien auf eine Partition …“ zu wählen;
  17. Nun können wir die „Partitionierung beenden und Änderungen übernehmen„;
  18. Die nächste Abfrage mit „Ja“ bestätigen;
  19. Da wir keine CD haben, die Abfrage mit „Nein“ bestätigen;
  20. Beim Paketmanager wählen wir wieder „Deutschland“ aus;
  21. … und bestätigen die Vorgabe „deb.debian.org„;
  22. Das Feld für den „HTTP-Proxy“ lassen wir leer und bestätigen mit „Weiter„;
  23. Eine „Paketverwendungserfassung“ möchte ich nicht, also „Nein„;
  24. Softwareauswahl – meine Empfehlung wäre „SSH Server“ und „Standard-Systemwerkzeuge„;
  25. Die Installation des „GRUB-Bootloaders“ mit „Ja“ bestätigen;
  26. Als Gerät für die Bootloader-Installation die Vorgabe auswählen;
  27. Zum guten Schluss mit „Weiter“ die Installation abschließen;
  28. Nachdem alles installiert ist, bootet das System neu und wir bekommen den Anmeldebildschirm;

Nun verlassen wir die Konsole von Proxmox. Wir haben damit die Installation von Debian in der virtuellen Maschine beendet. Für die Vorbereitung und Installation von ioBroker stellen wir nun über PUTTY eine Verbindung mit dem neuen System her. Dazu schaut ihr auf eurem Router nach der IP-Adresse von ioBroker und stellt mit PUTTY eine SSH Verbindung her. Wie das zu tun ist und alle weiteren Schritte folgen im nächsten Absatz.

deCONZ Installation

Im nächsten Schritt werden wir nun der gerade installierten virtuellen Maschine (VM) mit Debian, noch ein paar Voraussetzungen und Programme installieren, um dann deCONZ zu installieren.

  • Nachdem das System oben ist, stellen wir über PUTTY eine SSH Verbindung her und melden uns mit der persönlichen Benutzerkennung und nicht mit „root“ an. Wenn ihr angemeldet seid, gebt ihr „su“ ein, um dann das Passwort des „Root-Benutzers“ einzugeben.
  • Jetzt mit dem folgenden Befehl sudo installieren: apt-get install sudo
  • Nun müssen wir noch das Paket „gnupg“ installieren. Dies machen wir mit dem Befehl: apt-get install gnupg
  • Als nächsten Schritt müssen wir die USB-Zugriffsrechte für Nutzer setzen. Dazu bitte folgenden Befehl eingeben: sudo gpasswd -a $USER dialout
  • Mit dem folgenden Befehl impotieren wir den Phoscon Public-Key:
  • APT-Repository für deCONZ konfigurieren:
  • APT Paketliste aktualisieren: sudo apt update
  • deCONZ installieren sudo apt install deconz
  • Mit dem folgenden Befehl wird definiert, das deCONZ beim Booten der VM automatisch gestartet wird: sudo systemctl enable deconz
  • Nach ein paar Sekunden wird das Betriebssystem auf dem Raspberry neu gestartet
  • Als letzten Schritt bitte die VM (virtuelle Maschine) am Besten über Proxmox neu booten;
  • Nach ein paar Sekunden ist der Startprozess abgeschlossen und das Gateway steht in eurem Netzwerk zur Verfügung
  • Über euren Router könnt ihr nun die vergebene IP-Adresse ermitteln oder einfacher den nächsten Schritt zur Erstinbetriebnahme durchführen

Erstinbetriebnahme

Aufruf der Phoscon App über http://phoscon.de/app in einem Browser. Das Gateway wird mit dem Namen Phoscon-GW und seiner aktuellen IP-Adresse angezeigt. Falls nicht, kann die Suche nach dem Gateway direkt über das Phoscon Logo gestartet werden.

  • Wenn ihr das Gateway zum ersten Mal aufruft, erscheint ein Bildschirm, wo ihr zur Sicherheit ein neues Passwort vergeben müsst. Anschließend auf Weiter klicken;
  • Als nächstes kommt ihr auf die Seite, wo ihr neue Lichter anlernen könnt. Empfehlung wäre hier, erstmal oben rechts auf Ohne Lichter fortfahren klicken;
  • Nun werdet ihr aufgefordert eine Erste Gruppe zu definieren. Auch diesen Bildschirm erstmal mit X beenden;
  • Als nächstes wählt ihr den Menüpunkt Gateway aus, um zu kontrollieren, ob das Gateway erreichbar und ob ein Firmware Update erforderlich ist. In meinem Fall war die Version bereits auf dem neuesten Stand, weil ich bereits bei der Installation in einer Proxmox VM ein Update durchgeführt habe.
  • Damit ist die grundlegende Einrichtung der Phoscon APP auch schon erledigt. Die Phoscon App ist eine Software zur Konfiguration und Steuerung eurer smarten Lichtinstallationen, egal ob klein oder groß, spezialisiert auf den Zigbee Funkstandard. Die Phoscon App unterstützt dabei eine ständig wachsende Anzahl an Lichtern, Sensoren und Schalter verschiedener Hersteller.

Eine wirklich umfangreiche und gute Dokumentation findet ihr unter dem nachfolgenden Link: Dokumentation

Damit sollten alle weiteren Aktionen wie Anlernen von Lampen und anderen Geräte, Definition von Gruppen oder Szenarien ohne Probleme möglich sein.

Abschluss

Damit ist nun auch der deCONZ in einer virtuellen Maschine auf unserem NUC installiert worden.

Fazit

Bei mir läuft auch deCONZ und somit das individuelle ZIGBEE Gateway mit dem ConBee II USB-Stick nun schon einige Zeit auf dem Intel NUC in der VM super stabil und ohne Probleme. Auch bei einem Neustarte der VM oder des gesamten Proxmox Server wird der USB-Stick problemlos gefunden und die Lampen, Schalter und Sensoren sind errecihbar. Damit ist das Hauptziel des Projektes erreicht und ich kann einen weiteren Raspberry abschalten.

Viel Spaß beim Ausprobieren und Konfigurieren eures neuen Gateways. Ich denke ihr werdet nach kurzer Zeit genauso begeistert sein wie ich es bin. Ihr seid nun schon in der Lage eigene Szenarien zu definieren und eure Zigbee Umgebung smart zu machen.

6 Kommentare
  1. Avatar
    Thomas sagte:

    Hallo Werner,

    Gemäss ioBroker Forum kann man den Conbee Stick nun auch mit dem Zigbee Adapter betrieben. Somit entfällt die weitere VM wie von Dir beschrieben. Nun habe ich jedoch den ioBroker in einer LXC am laufen… Versuche die kommenden Tage mal den Stick in diese LXC durch zu reichen.
    Wirst Du diesbezüglich auch noch eine Anleitung online stellen?

    Gruss Thomas

    Antworten
    • Avatar
      Max sagte:

      Grüß dich Max!
      Hast du mal ein Link zu dem ioBroker Thread, in welchem dies beschrieben wird? Also das Betreiben eines Conbee Sticks als ZigBee Adapter? Bin gerade dabei alles erstmalig aufzusetzen, und würde mir ja somit den Schritt der Conbee VM sparen. Die ioBroker VM (nicht LXC) habe ich am laufen, würde also auch keine (weniger) Probleme haben, den USB Stick durch zu reichen..
      Danke dir im Voraus!
      Gruß Max

      Antworten
  2. Avatar
    Steffen sagte:

    Hallo Werner,
    danke für die gute Anleitung, bin ohne Probleme durchgekommen. Trotzdem wird dann in der Phoscon App unter Gateway nur eine leere Seite angezeigt. Ich habe den Stick schon eine Weile da liegen, ich vermute das die Firmeware zu alt ist. Du hast geschrieben, das du die Firmware schon in der VM aktualisiert hast. Kannst du mir bitte dafür mal eine Hilfestellung geben?

    Gruß Steffen

    Antworten
    • Avatar
      Steffen sagte:

      Hallo Werner,
      habe den Fehler gefunden. Es lag nicht am Stick, sondern am Internet Explorer. Mit Opera geht es ohne Probleme.
      Schönes Wochenende
      Steffen

      Antworten
  3. Avatar
    Marco sagte:

    Hallo Werner,
    vielen Dank für diesen tollen Beitrag. Habe meine Hardware komplett wie von Dir vorgestellt auf den NUC umgestellt. Der NUC läuft spitze. Die Artikel sind wirklich sehr gut geschrieben, sodass man kein IT-Spezialist sein muss, um diese nachzubauen. Bin schon gespannt, was noch so alles kommt.
    Danke und Grüße.

    Antworten

Hinterlasse ein Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.