Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Adapter für mehrere RPI

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Adapter für mehrere RPI

    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      e-i-k-e last edited by

      Hallo,

      danke für deine Antwort!

      Ich werde es später testen. Mal sehen, wie weit ich komme. 😉

      Ich habe gestern auf dem Slave, ioBroker neu installiert und erstmals nicht als Slave eingerichtet.

      Jetzt konnte problemlos RPI-Monitor installieren. Nachdem ich ihn mit dem Master verbunden hatte, kamen die o. g. Fehler.

      Kann sich das jemand erklären?

      1 Reply Last reply Reply Quote 0
      • E
        e-i-k-e last edited by

        @Stabilostick:

        So eine Meldung hatte ich, als ich „aus versehen" 'socket.io 2.1.1' inklusive 'engine-io 3.2.0' installiert hatte, ohne den 'socket.io-client' auf @latest upzudaten (passiert alles im '/opt/iobroker/node_modules'-Ordner).

        War bei mir (echt, keine Kopie Deiner Meldung), wenn der Admin starten sollte:

        undefined Error: server error
            at Socket.onPacket (C:\dev\iobroker\node_modules\socket.io-client\node_modules\engine.io-client\lib\socket.js:445:19)
            at XHR. <anonymous>(C:\dev\iobroker\node_modules\socket.io-client\node_modules\engine.io-client\lib\socket.js:268:10)
            at XHR.Emitter.emit (C:\dev\iobroker\node_modules\socket.io-client\node_modules\component-emitter\index.js:133:20)
            at XHR.Transport.onPacket (C:\dev\iobroker\node_modules\socket.io-client\node_modules\engine.io-client\lib\transport.js:145:8)
            at callback (C:\dev\iobroker\node_modules\socket.io-client\node_modules\engine.io-client\lib\transports\polling.js:144:10)
            at Object.exports.decodePayload (C:\dev\iobroker\node_modules\socket.io-client\node_modules\engine.io-parser\lib\index.js:309:18)
            at XHR.Polling.onData (C:\dev\iobroker\node_modules\socket.io-client\node_modules\engine.io-client\lib\transports\polling.js:148:10)
            at Request. <anonymous>(C:\dev\iobroker\node_modules\socket.io-client\node_modules\engine.io-client\lib\transports\polling-xhr.js:126:10)
            at Request.Emitter.emit (C:\dev\iobroker\node_modules\socket.io-client\node_modules\component-emitter\index.js:133:20)
            at Request.onData (C:\dev\iobroker\node_modules\socket.io-client\node_modules\engine.io-client\lib\transports\polling-xhr.js:296:8)</anonymous></anonymous>
        

        100% gleich!

        Vorschlag so als Anregung & Verdacht zur Ausführung im /opt/iobroker-Ordner zum Versionsprüfen:

        >npm ls socket.io
        >npm ls engine.io
        >npm ls socket.io-client
        >npm ls engine.io-client
        

        socket.io sollte v1.7.2 und engine.io v1.8.2 sein. Mit socket.io v2.1.1 ist ggf. noch nicht gut Kirschen essen, auch wenn der uWS in engine.io als default herausgenommen wurde.

        Wenn Version zu hoch: (Vorsicht!) engine-io und socket.io im /opt/iobroker-Ordner mit npm ohne '-g' deinstallieren und mit stable wieder herstellen.

        Zu technisch von mir? [emoji53] `

        So siehts bei mir aus.

        root@raspberrypi-display1:~# npm ls socket.io
        iobroker.inst@1.1.2 /root
        ├─┬ iobroker.admin@3.4.7
        │ └── socket.io@1.7.2
        └─┬ iobroker.js-controller@1.2.3
          └── socket.io@1.7.4
        
        
        root@raspberrypi-display1:~# npm ls engine.io
        iobroker.inst@1.1.2 /root
        ├─┬ iobroker.admin@3.4.7
        │ └─┬ socket.io@1.7.2
        │   └── engine.io@1.8.2
        └─┬ iobroker.js-controller@1.2.3
          └─┬ socket.io@1.7.4
            └── engine.io@1.8.5
        
        
        root@raspberrypi-display1:~# npm ls socket.io-client
        iobroker.inst@1.1.2 /root
        ├─┬ iobroker.admin@3.4.7
        │ └─┬ socket.io@1.7.2
        │   └── socket.io-client@1.7.2
        └─┬ iobroker.js-controller@1.2.3
          ├─┬ socket.io@1.7.4
          │ └── socket.io-client@1.7.4  deduped
          └── socket.io-client@1.7.4
        
        
        root@raspberrypi-display1:~# npm ls engine.io-client
        iobroker.inst@1.1.2 /root
        ├─┬ iobroker.admin@3.4.7
        │ └─┬ socket.io@1.7.2
        │   └─┬ socket.io-client@1.7.2
        │     └── engine.io-client@1.8.2
        └─┬ iobroker.js-controller@1.2.3
          └─┬ socket.io-client@1.7.4
            └── engine.io-client@1.8.5
        
        
        1 Reply Last reply Reply Quote 0
        • Stabilostick
          Stabilostick last edited by

          Hmm, schaut ganz gut aus. Ich habe mir gestern einen RPI mit ioBroker selbst installiert und habe die gleichen Versionen drauf wie Du, außer jeweils beim js-controller. Der hat bei mir zwar die gleiche Version 1.2.3, habe aber bei socket.io(-client) die 1.7.2 und bei engine.io(-client) die 1.8.2

          Ob das aber etwas ausmacht, weiß ich leider nicht. Vieleicht bin ich hier auch auf der falschen Fährte und das Ganze weist einfach auf ein Kommunikationsproblem mit dem Master hin…

          Trotzdem: Was sagten die Befehle von oben auf dem Master ausgeführt?

          1 Reply Last reply Reply Quote 0
          • E
            e-i-k-e last edited by

            Beim Master sieht es wie folgt aus.

            pi@sudoraspi-config:~ $ npm ls socket.io
            iobroker.inst@1.1.2 /home/pi
            ├─┬ iobroker.admin@2.0.9
            │ └── socket.io@1.7.4
            └─┬ iobroker.js-controller@1.2.3
              └── socket.io@1.7.4  deduped
            
            
            pi@sudoraspi-config:~ $ npm ls engine.io
            iobroker.inst@1.1.2 /home/pi
            └─┬ iobroker.admin@2.0.9
              └─┬ socket.io@1.7.4
                └── engine.io@1.8.5
            
               ╭─────────────────────────────────────╮
               │                                     │
               │   Update available 5.8.0 → 6.2.0    │
               │       Run npm i npm to update       │
               │                                     │
               ╰─────────────────────────────────────╯
            
            
            pi@sudoraspi-config:~ $ npm ls socket.io-client
            iobroker.inst@1.1.2 /home/pi
            ├─┬ iobroker.admin@2.0.9
            │ └─┬ socket.io@1.7.4
            │   └── socket.io-client@1.7.4  deduped
            └─┬ iobroker.js-controller@1.2.3
              └── socket.io-client@1.7.4
            
            
            pi@sudoraspi-config:~ $ npm ls engine.io-client
            iobroker.inst@1.1.2 /home/pi
            └─┬ iobroker.js-controller@1.2.3
              └─┬ socket.io-client@1.7.4
                └── engine.io-client@1.8.5
            
            

            ______________________________________________________________________________________________________-

            Ist das normal?

            (Slave)

            ` > root@raspberrypi-display1:~# cd /opt/iobroker

            root@raspberrypi-display1:/opt/iobroker# iobroker list instances

            undefined server error

            undefined Error: server error

            at Socket.onPacket (/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/socket.js:445:19)

            at XHR. <anonymous>(/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/socket.js:268:10)

            at XHR.Emitter.emit (/root/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)

            at XHR.Transport.onPacket (/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/transport.js:145:8)

            at callback (/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/transports/polling.js:144:10)

            at Object.exports.decodePayload (/root/node_modules/engine.io-parser/lib/index.js:309:18)

            at XHR.Polling.onData (/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/transports/polling.js:148:10)

            at Request. <anonymous>(/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/transports/polling-xhr.js:126:10)

            at Request.Emitter.emit (/root/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)

            at Request.onData (/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/transports/polling-xhr.js:296:8)</anonymous></anonymous> `

            1 Reply Last reply Reply Quote 0
            • Stabilostick
              Stabilostick last edited by

              Auch gut. Das npm-Update brauchst Du nicht zu machen. Die Version 5.8.0 ist in Ordnung.

              Jetzt weiß ich nicht mehr weiter. Wenn du den RPI wieder zum Master machst, geht alles? Nach welcher Anleitung gehst Du beim Verbinden vor?

              1 Reply Last reply Reply Quote 0
              • Stabilostick
                Stabilostick last edited by

                Und: Nutzt Du Redis?

                1 Reply Last reply Reply Quote 0
                • E
                  e-i-k-e last edited by

                  Ich bin nach dieser Anleitung vorgegangen.

                  http://www.iobroker.net/docu/?page_id=3068&lang=de

                  Redis habe ich zum Testen aktiviert.

                  iobroker setup custom
                  type of states DB [file, redis], default [file] : redis
                  

                  Zuvor habe ich die ip unter geändert.

                  nano /etc/redis/redis.conf
                  bind 0.0.0.0
                  

                  Habe es danach aber wieder auf default gestellt.

                  Ob file oder redis, brachte keine Verbesserung.

                  Was mir aber aufgefallen ist, unter:

                  Host of objects DB(file), default[127.0.0.1]
                  

                  wird keine andere IP Adresse (Master: 0.0.0.0, Slave: 192.168.178.35) übernommenen/gespeichert.

                  1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators last edited by

                    Sollte aber.

                    Woran machst du das fest?

                    Beim nächsten Aufruf steht da erst einmal der default Wert.

                    Da musst du in der iobrojer.conf (?) Nachsehen.

                    Gruß Rainer

                    1 Reply Last reply Reply Quote 0
                    • Stabilostick
                      Stabilostick last edited by

                      Datei /opt/iobroker/iobroker-data/iobroker.json

                      Bei lokaler DB:

                      {
                        "system": {
                          "memoryLimitMB": 0,
                          "hostname": ""
                        },
                        "multihostService": {
                          "enabled": false,
                          "secure": true
                        },
                        "network": {
                          "IPv4": true,
                          "IPv6": true,
                          "bindAddress": null,
                          "useSystemNpm": true
                        },
                        "objects": {
                          "type": "file",
                          "typeComment": "Possible values: 'file' - [port 9001], redis - [port 6379], couch - [port 5984].",
                          "host": "127.0.0.1",
                          "port": 9001,
                          "user": "",
                          "pass": "",
                          "noFileCache": false,
                          "connectTimeout": 2000
                        },
                        "states": {
                          "type": "file",
                          "typeComment": "Possible values: 'file' - [port 9000], 'redis' - [port 6379].",
                          "host": "127.0.0.1",
                          "port": 9000,
                          "maxQueue": 1000,
                          "options": {
                            "auth_pass": null,
                            "retry_max_delay": 15000
                          }
                        },
                      [...]
                      
                      1 Reply Last reply Reply Quote 0
                      • E
                        e-i-k-e last edited by

                        Das ist auch alles merkwürdig. 😐

                        Die IP wurde richtig übernommen.

                        Anbei der Code vom Master

                          "system": {
                            "memoryLimitMB": 0,
                            "hostname": ""
                          },
                          "multihostService": {
                            "enabled": true,
                            "secure": true,
                            "password": "muster"
                          },
                          "network": {
                            "IPv4": true,
                            "IPv6": true,
                            "bindAddress": null,
                            "useSystemNpm": true
                          },
                          "objects": {
                            "type": "file",
                            "typeComment": "Possible values: 'file' - [port 9001], redis - [port 6379],$
                            "memoryLimitMB": 0,
                            "hostname": ""
                          },
                          "multihostService": {
                            "enabled": true,
                            "secure": true,
                            "password": "muster"
                          },
                          "network": {
                            "IPv4": true,
                            "IPv6": true,
                            "bindAddress": null,
                            "useSystemNpm": true
                          },
                          "objects": {
                            "type": "file",
                            "typeComment": "Possible values: 'file' - [port 9001], redis - [port 6379],$
                            "host": "0.0.0.0",
                            "port": 9001,
                         "pass": "",
                            "noFileCache": false,
                            "connectTimeout": 2000
                          },
                          "states": {
                            "type": "file",
                            "typeComment": "Possible values: 'file' - [port 9000], 'redis' - [port 6379$
                            "host": "0.0.0.0",
                            "port": 9000,
                            "maxQueue": 1000,
                            "options": {
                              "auth_pass": null,
                              "retry_max_delay": 15000
                            }
                          },
                          "log": {
                            "level": "info",
                            "maxDays": 7,
                            "noStdout": true,
                             "file1": {
                                "type": "file",
                                "enabled": true,
                                "filename": "log/iobroker",
                                "fileext": ".log",
                                "maxsize": null,
                                "maxFiles": null
                              },
                              "syslog1": { "enabled": false,
                                "host": "localhost",
                                "host_comment": "The host running syslogd, defaults to localhost.",
                                "port_comment": "The port on the host that syslog is running on, defaul$
                                "protocol": "udp4",
                                "protocol_comment": "The network protocol to log over (e.g. tcp4, udp4,$
                                "path_comment": "The path to the syslog dgram socket (i.e. /dev/log or $
                                "facility_comment": "Syslog facility to use (Default: local0).",
                                "localhost": "iobroker",
                        
                        $ng from (Default: localhost).",
                                "sysLogType_comment": "The type of the syslog protocol to use (Default:$
                                "app_name_comment": "The name of the application (Default: process.titl$
                                "eol_comment": "The end of line character to be added to the end of the$
                              }
                            }
                          },
                          "dataDirComment": "Always relative to iobroker.js-controller/",
                          "dataDir": "../../iobroker-data/"
                        }
                        
                        

                        Vom Slave

                          "system": {
                            "memoryLimitMB": 0,
                            "hostname": ""
                          },
                          "multihostService": {
                            "enabled": false,
                            "secure": true
                          },
                          "network": {
                            "IPv4": true,
                            "IPv6": true,
                            "bindAddress": null,
                            "useSystemNpm": true
                          },
                          "objects": {
                            "type": "file",
                            "typeComment": "Possible values: 'file' - [port 9001], redis - [port 6379],$ "port": 9001,
                            "user": "",
                            "pass": "",
                            "noFileCache": false,
                            "connectTimeout": 2000
                          },
                          "states": {
                            "type": "file",
                            "typeComment": "Possible values: 'file' - [port 9000], 'redis' - [port 6379$
                            "host": "192.168.178.35",
                            "port": 9000,
                            "maxQueue": 1000,
                            "options": {
                              "auth_pass": null,
                              "retry_max_delay": 15000
                            }
                          },
                          "log": {
                            "level": "info",  
                            "maxDays": 7,
                            "noStdout": true,
                            "transport": {
                              "file1": {
                                "type": "file",
                                "enabled": true,
                                "filename": "log/iobroker",
                                "fileext": ".log",
                                "maxsize": null,
                                "maxFiles": null
                         "syslog1": {
                                "type": "syslog",
                                "enabled": false,
                                "host": "localhost",
                                "host_comment": "The host running syslogd, defaults to localhost.",
                                "port_comment": "The port on the host that syslog is running on, defaul$
                                "protocol": "udp4",
                                "protocol_comment": "The network protocol to log over (e.g. tcp4, udp4,$
                                "path_comment": "The path to the syslog dgram socket (i.e. /dev/log or $
                                "facility_comment": "Syslog facility to use (Default: local0).",
                                "localhost": "iobroker",
                                "localhost_comment": "Host to indicate that log messages are coming fro$
                                "sysLogType_comment": "The type of the syslog protocol to use (Default:$
                                "app_name_comment": "The name of the application (Default: process.titl$
                                "eol_comment": "The end of line character to be added to the end of the$
                              }
                            }
                          },
                          "dataDirComment": "Always relative to iobroker.js-controller/",
                         "dataDir": "../../iobroker-data/"
                        }
                        
                        
                        1 Reply Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators last edited by

                          Gib mal beim slave unter iobroker setup custom

                          Auch bei Objects die IP des masters ein

                          Gruß Rainer

                          1 Reply Last reply Reply Quote 0
                          • E
                            e-i-k-e last edited by

                            Ich habe die IP Adresse neu eingegeben.

                            Nun wird sie unter /opt/iobroker/iobroker-data/iobroker.json auch angezeigt.

                            Ich bin mir aber sicher, dass ich diese IP bereits eingegeben hatte. :?


                            Habe versucht, einen Adapter auf dem Slave hinzuzufügen.

                            Bekomme immer wieder die gleiche Meldung.

                            $ ./iobroker add hilink 
                            undefined server error
                            undefined Error: server error    at Socket.onPacket (/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/socket.js:445:19)
                                at XHR. <anonymous>(/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/socket.js:268:10)
                                at XHR.Emitter.emit (/root/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                                at XHR.Transport.onPacket (/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/transport.js:145:8)
                                at callback (/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/transports/polling.js:144:10)
                                at Object.exports.decodePayload (/root/node_modules/engine.io-parser/lib/index.js:309:18)
                                at XHR.Polling.onData (/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/transports/polling.js:148:10)
                                at Request. <anonymous>(/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/transports/polling-xhr.js:126:10)
                                at Request.Emitter.emit (/root/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20)
                                at Request.onData (/root/node_modules/socket.io-client/node_modules/engine.io-client/lib/transports/polling-xhr.js:296:8)</anonymous></anonymous>
                            

                            Anschließend habe ich die Verbindung zum Master getrennt und mich direkt auf den ioBroker angemeldet.

                            Hier kann die Adapter ohne Probleme installieren.


                            Nachtrag: Habe bei PI gerade komplett neu aufgesetzt.

                            Nun funktioniert alles!

                            Es ist aber trotzdem merkwürdig, dass es vorher nicht funktionierte! :?

                            1 Reply Last reply Reply Quote 0
                            • Stabilostick
                              Stabilostick last edited by

                              Glückwunsch. Prima das es jetzt funktioniert. Darf ich noch fragen, welche npm-Version du jetzt nutzt und ob der Autostart auf dem PI sofort geklappt hat?

                              1 Reply Last reply Reply Quote 0
                              • E
                                e-i-k-e last edited by

                                Danke! 😉

                                Aktuell ist NPM 5.8.0 drauf.

                                Wobei ich auch bei dieser Neuinstallation das Problem hatte, dass NPM nicht vorhanden war bzw. mit installiert worden ist.

                                Ich habe mich an die folgende Anleitung gehalten. http://www.iobroker.net/docu/?page_id=5106&lang=de

                                Somit musste ich über > sudo apt-get install npm npm installieren, anschließend habe ich habe ich die Version 5.8.0 über > sudo npm install -g npm@5 eingespielt.

                                Der Autostart hat auch nicht geklappt, da die Datei iobroker.sh. fehlte.

                                :lol: :mrgreen:

                                1 Reply Last reply Reply Quote 0
                                • Stabilostick
                                  Stabilostick last edited by

                                  Sie fehlte im /etc/init.d-Ordner?

                                  1 Reply Last reply Reply Quote 0
                                  • E
                                    e-i-k-e last edited by

                                    Korrekt.

                                    /etc/init.d/iobroker.sh

                                    Gibt es eigentlich noch mit der NPM Version 5.8.0 Probleme?

                                    1 Reply Last reply Reply Quote 0
                                    • Stabilostick
                                      Stabilostick last edited by

                                      Das schaut man sich gerade an. Bei mir ging es mit npm 4.6.1 inkl. der automatischen init.d-Anpassung. Alles wird besser…

                                      1 Reply Last reply Reply Quote 0
                                      • First post
                                        Last post

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate
                                      FAQ Cloud / IOT
                                      HowTo: Node.js-Update
                                      HowTo: Backup/Restore
                                      Downloads
                                      BLOG

                                      534
                                      Online

                                      31.9k
                                      Users

                                      80.2k
                                      Topics

                                      1.3m
                                      Posts

                                      4
                                      23
                                      3840
                                      Loading More Posts
                                      • Oldest to Newest
                                      • Newest to Oldest
                                      • Most Votes
                                      Reply
                                      • Reply as topic
                                      Log in to reply
                                      Community
                                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                      The ioBroker Community 2014-2023
                                      logo