NEWS

ioBroker unter Windows installieren (ohne Installer)



  • Ich biete Euch hier eine einsteigerfreundliche Anleitung, wie man ioBroker unter Windows installiert. Die Anleitung ist noch nicht "im großen Stil" getestet worden, die Installation scheint aber, so die bisherigen Rückmeldungen, fehlerfrei zu funktionieren!

    Basis meiner Arbeit ist die (nicht oder nicht mehr vollständig funktionierende) Anleitung von Norman Bauer, die ich hier korrigiert und um einige wichtige Details ergänzt habe.
    Auf den Windows-Installer von Stabilostick wird bewußt verzichtet, da dieser bei einigen Nutzern nicht richtig funktioniert und zudem derzeit auch nicht aktuell ist.

    Stand meiner Anleitung ist der Mai 2020. Sollte jemand diese Anleitung später befolgen, bitte vorab prüfen, ob neuere Versionen (z.B. von Node) verfügbar sind. Am Vorgehen selbst sollte sich durch neuere verfügbare Versionen, abgesehen vielleicht von den Download-Links, grundsätzlich aber nichts ändern!

    Im zweiten Post dieser Anleitung wird der händische Import von Objekten, Skripten, Adapterinformationen etc. erklärt. Auch hier gibt es offenbar keinerlei Probleme!

    Im dritten Post folgt dann noch eine Anleitung für das händische Update von Node! Diese ist aktuell noch in der Probephase, bei einer neuen Installation, wie hier beschrieben, aber ohnehin nicht erforderlich, da bereits die neueste Version installiert wird. Es handelt sich also um nur um eine Art "Wartungs-Update" für ältere Installationen.

    ANLEITUNG FÜR WIN x64 SYSTEME:

    1) Node.js:

    • generell einfach die Standardeinstellungen verwenden (und Rückfragen der Windows Benutzerkontensteuerung bestätigen), bis auf folgende...
    • Ausnahme: Häkchen bei "automatically install all necessary tools" setzen!
    • Die folgende Fehlermeldung (relativ zu Beginn) kann ignoriert werden: "WARNUNG: Not setting tab completion: Profile file does not exist at 'C:\Users[Name des Benutzers]\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1'".
    • Neustart nach Abschluß aller Installationsprozesse

    2) ioBroker:

    • Windowstaste drücken, "cmd" eingeben, Linksklick auf "Administrator: Node.js command prompt" (nicht die normale "Eingabeaufforderung" verwenden!)
    • In dem sich öffnenden Fenster werden nacheinander folgende Befehle eingegeben:
    npm install --global windows-build-tools
    md C:\iobroker
    cd /d C:\iobroker
    npm install iobroker
    npm install --production
    net start iobroker.exe
    
    • Dies kann eine ganze Weile dauern, sollte aber ohne Probleme durchlaufen.
    • Die folgende Fehlermeldung (nach dem Befehl "npm install iobroker") kann ignoriert werden:
    "found 1 low severity vulnerability | run `npm audit fix` to fix them, or `npm audit` for details"
    
    • Die folgenden beiden Fehlermeldungen (nach dem Befehl "npm install --production") können ebenfalls ignoriert werden:
    "c:\iobroker\node_modules\unix-dgram\src\unix_dgram.cc(9): fatal error C1083: Datei (Include) kann nicht geöffnet werden | : "unistd.h": No such file or directory [C:\ioBroker\node_modules\unix-dgram\build\unix_dgram.vcxproj]"
    
    "found 14 vulnerabilities (11 low, 3 high) | run `npm audit fix` to fix them, or `npm audit` for details"
    
    • Die folgende Fehlermeldung (nach dem Befehl "net start iobroker.exe") kann ebenfalls ignoriert werden, denn sie zeigt nur, daß die Installation geklappt hat und der ioBroker bereits läuft (wie gewünscht):
    "Der angeforderte Dienst wurde bereits gestartet. | Sie erhalten weitere Hilfe, wenn Sie NET HELPMSG 2182 eingeben."
    

    3) Git und OpenSSL:

    • Git: bei "Choosing the default editor used by Git": "Use the Nano editor by default"
    • Git: bei "Configuring the terminal emulator to use with Git Bash": "Use Windows' default console window"
    • Git: bei "view release notes" Häkchen entfernt
    • OpenSSL: bei "copy openssl dlls to: the windows system directory" (Standardeinstellung)

    4) Bonjour:

    5) FFmpeg (nur erforderlich für die Einbindung von Kameras):
    Datei herunterladen und installieren (aktuell: 4.2.2): https://ffmpeg.zeranoe.com/builds/win64/static/ffmpeg-20200515-b18fd2b-win64-static.zip

    • ZIP-Archiv entpacken (z.B. mit 7zip)
    • Aus dem entpackten Ordner (nur) die Datei "ffmpeg.exe" in den Ordner C:\Program Files\nodejs kopieren
    • Prüfen, ob in diesem Ordner die Dateien "node.exe", "npm.cmd" und "ffmpeg.exe" vorhanden sind.

    6) Umgebungsvariablen

    • Windowstaste drücken, "erweiterte Systemeinstellungen anzeigen" eingeben und Enter drücken.
    • "Umgebungsvariablen..." anklicken
    • Unter “Systemvariablen” müssen folgende Einträge vorhanden sein (ggf. ergänzen!):
    Variable: BONJOUR_SDK_HOME Wert: C:\Program Files\Bonjour SDK\
    Variable: PYTHON Wert: C:\Users\Administrator\.windows-build-tools\python27\python.exe
    
    • Unter "Benutzverariablen für [Name des Benutzers]" müssen folgende Einträge vorhanden sein (ggf. ergänzen!):
    Variable: Python Wert: C:\Users\Administrator\.windows-build-tools\python27\
    Variable: Node.js Wert: C:\Program Files\nodejs\
    

    Achtung: Die Pfade können bei Euch abweichen, wenn Ihr andere Installationspfade verwendet habt! Bitte prüfen!

    7) Firewall konfigurieren:

    • Windowstaste drücken, “Windows Defender Firewall mit erweiterter Sicherheit” eingeben und Enter drücken.
      Regel für ioBroker anlegen:
    • Linksklick auf “eingehende Regeln” und “Neue Regel…” anklicken.
    • "Programm" ist standardmäßig bereits ausgewählt, also nur noch auf "weiter" anklicken
    • Unter "dieser Programmpfad" folgendes eingeben: “%SystemDrive%\iobroker\daemon\iobroker.exe”.
    • Alle weiteren Fenster mit "weiter" durchklicken und im letzten Fenster als Namen “ioBroker” angeben und fertigstellen.
      Regel für Node.js anlegen:
    • Linksklick auf “eingehende Regeln” und “Neue Regel…” anklicken.
    • "Programm" ist standardmäßig bereits ausgewählt, also nur noch auf "weiter" anklicken
    • Unter "dieser Programmpfad" folgendes eingeben: “%ProgramFiles%\nodejs\node.exe” .
    • Alle weiteren Fenster mit "weiter" durchklicken und im letzten Fenster als Namen “Node.js” angeben und fertigstellen.
    • PC neustarten!

    BEKANNTE PROBLEME:

    1. Der COM-Adapter nach Installation nicht im Dropdown-Menü verfügbar, kann aber händisch eingetragen werden und funktioniert dann auch. Das Problem tritt auch bei Stabilosticks Installer auf, sodaß es sich wohl um einen Bug im ioBroker selbst handelt, der nichts mit der manuellen Installation zu tun hat!
    2. ACHTUNG! Der JS-Controller ab Version 3 "zerschießt" (spätestens bei einem der nächsten Neustarts) die gesamte ioBroker-Installation! Auch dies ist kein Problem der händischen Installationsweise und tritt auch bei Installationen mithilfe des Windows-Installers auf! Ich empfehle dringend, vorerst nicht über die Version 2.2.9 hinauszugehen, bis die Entwickler das Problem endlich behoben haben! Wie man eine bestimmte Version (anstelle der neuesten) installiert, kann ich bei Interesse gerne noch in der Anleitung ergänzen.
    3. Es sind keine weiteren Probleme bekannt!


  • HÄNDISCHER IMPORT VON DATEN:

    1. Windows-Taste drücken und "Dienste" eintippen. Öffnen per Linksklick.

    2. In die Liste klicken und "i" drücken. Den Eintrag "ioBroker(Instanzname)" mit rechter Maustaste anklicken und mit linker Maustaste auf "beenden" klicken.

    3. Mit dem Windows-Explorer (aufrufbar z.B. mit Windowstaste + E) zum Verzeichnis "iobroker-data" der alten Installation wechseln.

    4. Alle im Ordner enthaltenen Ordner und Dateien markieren und kopieren (Strg + A, Strg + C).

    5. Im Windows-Explorer in das iobroker-data Verzeichnis der neuen Installation wechseln. Dort die Dateien einfügen (Strg + V). Nach einer Weile öffnet sich ein Fenster, in dem gefragt wird, ob entweder die vorhandenen Dateien / Ordner ersetzt oder die neuen Dateien / Ordner beibehalten werden sollen. Hier die vorhandenen Dateien mit den Dateien / Ordnern der alten Sicherung überschreiben!

    6. Wenn alles fertig kopiert ist, den ioBroker unter "Dienste" wieder starten (Rechtsklick und "starten").

    7. Im Browser die Adresse des ioBroker aufrufen (in der Regel ist das "localhost:8081") und dort den Import prüfen - es sollten jetzt alle alten Objekte, Adapter etc. wieder vorhanden sein, wenn auch (noch) nicht in aktueller Version.

    8. Die Adapter aktualisieren! Ich empfehle, die überschriebenen Adapter erst alle zu pausieren und sie erst dann nacheinander der Reihe nach zu aktualisieren, ihre Einstellungen zu überprüfen und sie zu starten. Das hat den Vorteil, daß Fehler ausgeschlossen bzw. direkt erkannt werden können.
      Achtet darauf, daß einige Adapter von anderen Adaptern bzw. auch der Node-Version abhängig sind, sodaß sie erst aktualisiert werden können, wenn der zugehörige Adapter bzw. die Node-Version auch auf aktuellem Stand ist (es erscheint ggf. eine entsprechende Fehlermeldung im Aktualisierungsvorgang). Zur Aktualisierung von Node folgt noch eine Kurzanleitung in Post 3!

    Hinweis: Aktuell hat der ioBroker Probleme mit den Dropdown-Menüs einiger Adapter zur Auswahl des COM-Ports (z.B. RF-Link und Zigbee). Hier kann der richtige Wert (kann im Geräte-Manager ermittelt werden) einfach händisch eingetragen werden! Nach Speichern, Schließen und Neustarten des Adapters funktioniert dieser dann auch trotzdem!



  • AKTUALISIERUNG VON NODE:

    Vorbereitung:
    Ich empfehle dringend, vor der Aktualisierung eine Sicherung Eures ioBroker anzulegen! Das geht am einfachsten, indem man den ioBroker über "Dienste" vollständig stoppt und danach den gesamten Ordner in ein Sicherungsverzeichnis oder auf ein anderes Speichermedium kopiert.
    Danach den ioBroker über "Dienste" wieder starten. Das ist notwendig, da die Aktualisierung nicht funktioniert, wenn der ioBroker-Dienst vollständig beendet wurde!

    Anleitung zur Aktualisierung von Node.js:

    • Windowstaste drücken, "cmd" eingeben, Linksklick auf "Administrator: Node.js command prompt" (nicht die normale "Eingabeaufforderung" verwenden!)
    • In dem sich öffnenden Fenster werden nacheinander (im ioBroker-Ordner, also bspw. C:\ioBroker) folgende Befehle eingegeben:
    iobroker stop (hält den ioBroker Service an, ohne den gesamten Dienst zu stoppen)
    iobroker status (prüft, ob ioBroker gestoppt ist, ohne vollständig beendet zu sein - dies muß sichergestellt sein!)
    iobroker update (sucht nach den neuesten Updates)
    iobroker upgrade self (installiert die neuesten Updates)
    
    • nach Fertigstellung das Fenster schließen
    • PC neustarten (der ioBroker-Dienst sollte wieder automatisch mit gestartet werden)
    • Sollte der ioBroker nicht automatisch starten, einfach wieder, wie oben bereits beschrieben, das "Node.js command prompt" öffnen und dort folgenden Befehl eingeben:
    net start iobroker
    
    • mit dem Browser die Adresse "localhost:8081" öffnen (Standardpfad, bei Verwendung anderer Ports bitte die Zahl anpassen!) und prüfen, ob alles auf aktuellem Stand ist und funktioniert!


  • Ich bitte um Korrekturen und Ergänzungen Eurerseits!!


  • Starter

    Grüße dich. Bekomme diese Woche noch einen PC, auf dem iobroker installiert werden muss. Du bekommst von mir Rückmeldung!

    Danke schon mal für die Arbeit.



  • @Hansi1234 sagte in ioBroker unter Windows installieren (ohne Installer):

    Grüße dich. Bekomme diese Woche noch einen PC, auf dem iobroker installiert werden muss. Du bekommst von mir Rückmeldung!

    Danke schon mal für die Arbeit.

    Gerne! Ich freue mich schon auf Deine Rückmeldung! Insbes. ist für mich natürlich interessant, ob die von mir genannten Probleme (COM-Ports, Autostart) auch bei Dir auftreten oder die Installation nach diesem Muster einen fehlerfreien ioBroker auf die Platte zaubert. Da die Anleitung noch "im werden" ist, empfehle ich Dir auf alle Fälle ein Backup vor der Ausführung.


  • Starter

    Muss vorher den ganzen PC formatieren. Es gibt auch noch keine iobroker Instanz. Wird alles neu gemacht.



  • @Hansi1234
    Die Festplatte würde schon mal reichen 😉



  • @Hansi1234 War bei meinem letzten Versuch auch der Fall, aber in Anbetracht der Tatsache, wie lange es dauert, Windows mitsamt allen Updates aufzuspielen, ist es vermutlich doch keine schlechte Idee, ein Backup zu haben. 😉 Ich handhabe das jetzt nur noch so, weil ich es leid bin, mir andauernd mit ioBroker (oder anderen Programmen) mein sauberes Windows vollzumüllen oder gleich ganz zu zerschießen - das schafft es schließlich, auch ohne Hilfe, schon ganz von alleine! 😄


  • Starter

    Oh vielleicht habe ich mich nicht klar ausgedrückt. Das ist nicht mein PC und es wird auch nicht mein Projekt.
    Ich bekomme einen PC von einem Bekannten, den ich plattmachen soll und da er gerade baut und iobroker in Zukunft benötigt, installiere ich es gleich mit.

    Ist nicht mein Setup 🙂



  • @Hansi1234
    Dann sag dem guten Bekannte besser gleich, dass er sich es noch mal überlegen soll den IOBroker auf nem Windows Desktop PC laufen lassen zu wollen. Das Ding sollte 7/24 laufen und die Stromrechnung wird sich bei nem Windows Desktop Rechner doch etwas höher gestalten 😉



  • @Jan1
    Das kommt sehr auf den Rechner an! Ich bin ein richtiger Sparfuchs (gerade bei Strom!) und habe ganz bewußt auf einen Acer Revo Cube gesetzt. Der braucht kaum mehr Strom als ein Raspberry, hat aber stolze 16GB RAM drin - und auch der sehr schwachbrüstige Celeron hat immer noch deutlich mehr Puste als der Prozessor des Pi.
    Ich bin, nachdem ich anfänglich einen Pi hatte, schnell davon weggekommen, weil die kleine Kiste einfach nicht ausreicht, wenn man ein paar Sachen mehr am Laufen hat (in meinem Falle ein ioBroker mit vielen, vielen Adaptern und noch ein Plex Media Server) und der Zugriff darauf dann einfach keinen Spaß mehr macht.
    Und wenn jemand seinen PC vielleicht ohnehin die meiste Zeit eingeschaltet hat, erübrigt sich das mit dem Strom selbst bei einem leistungsfähigeren Rechner auch gleich wieder.


  • Starter

    @Jan1
    Wird auf nem NUC laufen. Hatte auch schon überlegt, ob ich Proxmox o.Ä. davor installiere. Aber da er den NUC auch als Mediacenter (Kodi z.B.) benutzt, macht das anscheinend Probleme, wenn man das HDMI Signal durchschleifen will



  • @Hansi1234
    @P-A-L-A-D-I-N
    Ein NUC ist auch nicht wirklich ein Desktop PC und davon bin ich ausgegangen.
    Der NUC wird so um die 6-8 Watt verbraten und das ist voll OK. Ein Pi im Vergleich liegt bei etwas weniger als der Hälfte, je nach Pi.

    Aber Windows würde ich trotzdem nicht als OS verwenden und ich mach sonst alles mit Windows 😉


  • Starter

    @P-A-L-A-D-I-N said in ioBroker unter Windows installieren (ohne Installer):

    Kleines Update von mir.
    ioBroker läuft gut. Sogar im Autostart. Nach der Eingabe von "net start iobroker.exe" sagt er mir, dass der Dienst bereits läuft. Ich komme auch von dem PC auf die Admin View, allerdings nur von diesem PC. Wenn ich von einem anderen drauf will, wird die Seite nicht gefunden.

    Was etwas schwammig war, waren die Variablen. Vielleicht solltest du vor den Variablen erwähnen, dass sie unteschiedlichen Pfad haben können.

    Welche Variable (nicht Wert) gebe ich bei der Benutzervariable ein? Ist das relevant? Habe sie nun Phyton und Nodejs genannt

    EDIT: Nach einem weiterem Neustart kann ich auch von anderen Pcs drauf zugreifen


  • Developer

    @Hansi1234 sagte in ioBroker unter Windows installieren (ohne Installer):

    Ich komme auch von dem PC auf die Admin View, allerdings nur von diesem PC. Wenn ich von einem anderen drauf will, wird die Seite nicht gefunden.

    Hast du denn auch eine Firewall Regel in Windows dafür erstellt, bzw. existiert eine dafür?


  • Starter

    @J-A-R-V-I-S
    sorry, jetzt hab ich zwischenzeitlich geantwortet. Funktioniert jetzt nach einem Neustart 🙂



  • @Hansi1234

    Danke für den Hinweis bze. der Variablen! Habe ich in der Beschreibung ergänzt!

    Läuft bei Dir alles problemlos? Mit welchen Einstellungen hast Du die Installation denn genau vorgenommen? Hast Du Adapter, die einen COM-Port benötigen und, falls ja, funktioniert das auch bei Dir?

    Wegen Autostart: Hat bei mir im zweiten Versuch dann auch geklappt. Scheint also kein genereller Fehler zu sein. Ich werde das mal aus der Liste streichen.


  • Starter

    @P-A-L-A-D-I-N
    Läuft soweit alles problemlos. Was meinst du mit welchen Einstellungen ich die Installation vorgenommen habe? Genau wie oben beschrieben 🙂

    Was nicht auf Anhieb ging war VIS. Aber ein anderer User hatte im Forum das gleiche Problem. Musste ein paar Dateien unbenennen, weil bei der VIS Installation gemeckert wurde, dass diese Dateien bereits existieren.

    Was mir auch noch auffällt: Ist es normal, dass im Taskmanager so viele Node.js und Eingabeaufforderungen im Hintergrund laufen?

    Apropo Eingabeaufforderung. Wie bekomme ich die cmd in den Ordner? Sonst muss ich erst immer hinnavigieren....

    Eine Anwendung für den COM-Port habe ich leider nicht. Habe ein Zigbee-Stick bei Ebay gekauft, aber der scheint falsch programmiert worden zu sein.


  • Developer

    @Hansi1234 sagte in ioBroker unter Windows installieren (ohne Installer):

    Ist es normal, dass im Taskmanager so viele Node.js und Eingabeaufforderungen im Hintergrund laufen?

    Jeder Adapter läuft in einem eigenen Prozess, außer du verwendest die im Compact Mode.

    Wenn du sehen möchtest, welcher Prozess zu welchem Adapter gehört, kannst du im Reiter Details mit einem Rechtsklick auf die Spalten gehen, "Spalten auswählen" klicken und den Haken bei "Befehlszeile" aktivieren, dann siehst du den Pfad der Datei, die mit Node ausgeführt wird.

    @Hansi1234 sagte in ioBroker unter Windows installieren (ohne Installer):

    Apropo Eingabeaufforderung. Wie bekomme ich die cmd in den Ordner? Sonst muss ich erst immer hinnavigieren....

    Den Explorer öffnen, in dem Ordner mit Shift + Rechtsklick auf eine frei Stelle klicken und dann den Eintrag "Eingabeaufforderung hier öffnen" wählen.



Suggested Topics

750
Online

27.8k
Users

34.6k
Topics

456.3k
Posts