Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Node-red Adapter MCP23017 & MCP3008

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Node-red Adapter MCP23017 & MCP3008

    This topic has been deleted. Only users with topic management privileges can see it.
    • H
      hermannf1 last edited by

      Hallo Rainer

      Ja das funktioniert bei einigen Nodes.

      Aber nicht bei dem MCP23017.

      Error im Log:

      node-red.0	2017-03-01 18:39:28.032	error	node-red.0 Cannot install npm packet: node-red-contrib-mcp23017
      node-red.0	2017-03-01 18:39:28.031	error	node-red.0 Cannot install node-red-contrib-mcp23017: 1
      node-red.0	2017-03-01 18:39:27.995	error	node-red.0 Please include the following file with any support request: npm ERR! /npm-debug.log
      node-red.0	2017-03-01 18:39:27.994	error	node-red.0 npm ERR!
      node-red.0	2017-03-01 18:39:27.993	error	node-red.0
      node-red.0	2017-03-01 18:39:24.909	error	node-red.0 npm ERR! This is most likely a problem with the i2c package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node-gyp rebuild npm ERR! Yo
      node-red.0	2017-03-01 18:39:24.909	error	node-red.0 npm ERR! Failed at the i2c@0.1.4 install script 'node-gyp rebuild'.
      node-red.0	2017-03-01 18:39:24.908	error	node-red.0 npm ERR!
      node-red.0	2017-03-01 18:39:24.906	error	node-red.0 i2c@0.1.4 install: `node-gyp rebuild` npm ERR! Exit status 1
      node-red.0	2017-03-01 18:39:24.887	error	node-red.0 npm ERR!
      node-red.0	2017-03-01 18:39:24.886	error	node-red.0 npm ERR! node v4.8.0 npm ERR! npm v2.15.11 npm ERR! code ELIFECYCLE
      node-red.0	2017-03-01 18:39:24.880	error	node-red.0 ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "node-red-contrib-mcp23017" "--production" "--prefix" "/opt/iobroker/node_modules/iobroker.node-red"
      node-red.0	2017-03-01 18:39:24.879	error	node-red.0 npm
      node-red.0	2017-03-01 18:39:24.879	error	node-red.0 Linux 4.4.48-v7+
      node-red.0	2017-03-01 18:39:24.879	error	node-red.0 ERR!
      node-red.0	2017-03-01 18:39:24.877	error	node-red.0
      node-red.0	2017-03-01 18:39:24.868	error	node-red.0 npm
      node-red.0	2017-03-01 18:39:24.815	error	node-red.0 gyp ERR! stack Error: `make` failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23) gyp ERR! stack at e
      node-red.0	2017-03-01 18:39:24.799	error	node-red.0 build error
      node-red.0	2017-03-01 18:39:24.793	error	node-red.0 ERR!
      node-red.0	2017-03-01 18:39:24.766	error	node-red.0 gyp
      node-red.0	2017-03-01 18:39:24.755	error	node-red.0 make: *** [Release/obj.target/i2c/src/i2c.o] Error 1 
      node-red.0	2017-03-01 18:39:24.754	info	node-red.0 make: Leaving directory '/opt/iobroker/node_modules/iobroker.node-red/node_modules/node-red-contrib-mcp23017/node_modules/node-mcp23017/node_modules/i2c/build'
      node-red.0	2017-03-01 18:39:24.753	info	node-red.0 i2c.target.mk:92: recipe for target 'Release/obj.target/i2c/src/i2c.o' failed
      node-red.0	2017-03-01 18:39:24.376	error	node-red.0 ../src/i2c.cc: In function ‘v8::Handle Scan(const int&)’: ../src/i2c.cc:63:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ ../src/i2c.cc: In function ‘
      node-red.0	2017-03-01 18:39:24.375	error	node-red.0 ../src/i2c.cc: In function ‘v8::Handle SetAddress(const int&)’: ../src/i2c.cc:33:1: warning: control reaches end of non-void function [-Wreturn-type] } ^
      node-red.0	2017-03-01 18:39:24.319	error	node-red.0 /root/.node-gyp/4.8.0/include/node/v8.h:4349:34: note: no known conversion for argument 1 from ‘v8::Handle(const int&) {aka v8::Local(const int&)}’ to ‘v8::Isolate*’
      node-red.0	2017-03-01 18:39:24.318	error	node-red.0 ../src/i2c.cc:247:39: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle (&)(const int&))’ FunctionTemplate::New(WriteBlock)->GetFunction());
      node-red.0	2017-03-01 18:39:24.318	error	node-red.0 In file included from /root/.node-gyp/4.8.0/include/node/node.h:42:0, from ../src/i2c.cc:1: /root/.node-gyp/4.8.0/include/node/v8.h:4349:34: note: static v8::Local
      node-red.0	2017-03-01 18:39:24.318	error	node-red.0 ../src/i2c.cc:237:15: error: ‘NewSymbol’ is not a member of ‘v8::String’ target->Set(String::NewSymbol("open"), ^ ../src/i2c.cc:238:31: error: no matching function for cal
      node-red.0	2017-03-01 18:39:24.317	error	node-red.0 ../src/i2c.cc:234:15: error: ‘NewSymbol’ is not a member of ‘v8::String’ target->Set(String::NewSymbol("setAddress"), ^ ../src/i2c.cc:235:37: error: no matching function f
      node-red.0	2017-03-01 18:39:24.317	error	node-red.0 In file included from /root/.node-gyp/4.8.0/include/node/node.h:42:0, from ../src/i2c.cc:1: /root/.node-gyp/4.8.0/include/node/v8.h:4349:34: note: static v8::Local
      node-red.0	2017-03-01 18:39:24.317	error	node-red.0 ../src/i2c.cc:184:31: error: invalid types ‘const int[int]’ for array subscript Local buffer = args[1]; ^ ../src/i2c.cc:186:22: error: invalid types
      node-red.0	2017-03-01 18:39:24.316	error	node-red.0 In file included from /root/.node-gyp/4.8.0/include/node/node.h:42:0, from ../src/i2c.cc:1: /root/.node-gyp/4.8.0/include/node/v8.h: In function ‘v8::Handle Writ
      node-red.0	2017-03-01 18:39:24.316	error	node-red.0 ../src/i2c.cc:175:20: error: ‘GetCurrent’ is not a member of ‘v8::Context’ callback->Call(Context::GetCurrent()->Global(), argc, argv); ^ ../src/i2c.cc:178:16: erro
      node-red.0	2017-03-01 18:39:24.316	error	node-red.0 ../src/i2c.cc:167:28: error: ‘New’ is not a member of ‘v8::String’ err = Exception::Error(String::New("Cannot write to device")); ^ ../src/i2c.cc:170:13: er
      node-red.0	2017-03-01 18:39:24.316	error	node-red.0 In file included from /root/.node-gyp/4.8.0/include/node/node.h:42:0, from ../src/i2c.cc:1: /root/.node-gyp/4.8.0/include/node/v8.h: In function ‘v8::Handle Writ
      node-red.0	2017-03-01 18:39:24.315	error	node-red.0 ../src/i2c.cc:146:22: error: ‘GetCurrent’ is not a member of ‘v8::Context’ callback->Call(Context::GetCurrent()->Global(), argc, argv); ^ ../src/i2c.cc:149:15:
      node-red.0	2017-03-01 18:39:24.315	error	node-red.0 ../src/i2c.cc:137:30: error: ‘New’ is not a member of ‘v8::String’ err = Exception::Error(String::New("Error reading length of bytes")); ^ ../src/i2c.cc
      node-red.0	2017-03-01 18:39:24.314	error	node-red.0 In file included from /root/.node-gyp/4.8.0/include/node/node.h:42:0, from ../src/i2c.cc:1: /root/.node-gyp/4.8.0/include/node/v8.h:2499:25: note: static v8::Local
      node-red.0	2017-03-01 18:39:24.310	error	node-red.0 ../src/i2c.cc: At global scope: ../src/i2c.cc:65:27: error: ‘Arguments’ does not name a type Handle Close(const Arguments& args) { ^ In file included from
      node-red.0	2017-03-01 18:39:24.246	error	node-red.0 ../src/i2c.cc:40:38: error: invalid conversion from ‘int’ to ‘v8::Isolate*’ [-fpermissive] Local results(Array::New(128)); ^ In file included
      node-red.0	2017-03-01 18:39:24.240	error	node-red.0 ../src/i2c.cc:39:58: error: invalid types ‘const int[int]’ for array subscript Local callback = Local::Cast(args[0]);
      node-red.0	2017-03-01 18:39:24.239	error	node-red.0 ../src/i2c.cc:29:16: error: invalid types ‘const int[int]’ for array subscript addr = args[0]->Int32Value(); ^ ../src/i2c.cc:32:16: error: ‘class v8::HandleScope’ has no
      node-red.0	2017-03-01 18:39:24.238	error	node-red.0 ../src/i2c.cc:22:5: error: ‘ThrowException’ was not declared in this scope ); ^ ../src/i2c.cc: At global scope: ../src/i2c.cc:26:32: error: ‘Arguments’ does not name a type Handl
      node-red.0	2017-03-01 18:39:24.234	error	node-red.0 ../src/i2c.cc: In function ‘void setAddress(int8_t)’: ../src/i2c.cc:21:28: error: ‘New’ is not a member of ‘v8::String’ Exception::TypeError(String::New("Failed to set address")) 
      

      LG Hermann

      geändert: Code in Code-Tags, Homoran (Mod)

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

        und was sagt das log?

        @hermannf1:

        This is most likely a problem with the i2c package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node-gyp rebuild npm ERR! Yo `

        Gruß

        Rainer

        1 Reply Last reply Reply Quote 0
        • H
          hermannf1 last edited by

          Hi

          I2C läuft super.

          Ich kann die Adresse auslesen mit

          i2cdetect -y 1

          die einzelnen Ports schalten z.B.

          gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 write 108 0

          gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 write 108 1

          Funktioniert alles, aber kein Node-Red mcp23017 über ioBroker.

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

            Ich kenne mich nicht wirklich gut aus.
            @hermannf1:

            I2C läuft super. `
            Im Moment vielleicht, kann es aber sein, dass das Paket umgebaut werden muss?

            @hermannf1:

            ERR! Failed at the i2c@0.1.4 install script 'node-gyp rebuild'.

            node-red.0   2017-03-01 18:39:24.908   error   node-red.0 npm ERR!

            node-red.0   2017-03-01 18:39:24.906   error   node-red.0 i2c@0.1.4 install: node-gyp rebuild npm ERR! Exit status 1 `

            und:
            @hermannf1:

            node-red.0 make: *** [Release/obj.target/~~[color=#FF0000]~~i2c/src/i2c.o] Error 1

            node-red.0   2017-03-01 18:39:24.754   info   node-red.0 make: Leaving directory '/opt/iobroker/node_modules/iobroker.node-red/node_modules/node-red-contrib-mcp23017/node_modules/node-mcp23017/node_modules/i2c/build'

            node-red.0   2017-03-01 18:39:24.753   info   node-red.0 i2c.target.mk:92: recipe for target 'Release/obj.target/i2c/src/i2c.o' failed

            node-red.0   2017-03-01 18:39:24.376   error   node-red.0 ../src/i2c.cc: In function ‘v8::Handle Scan(const int&)’: ../src/i2c.cc:63:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ ../src/i2c.cc: In function ‘

            node-red.0   2017-03-01 18:39:24.375   error   node-red.0 ../src/i2c.cc: In function ‘v8::Handle SetAddress(const int&)’: ../src/i2c.cc:33:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ `

            Gruß

            Rainer

            1 Reply Last reply Reply Quote 0
            • H
              hermannf1 last edited by

              Es dürfte an der Node.js Version liegen.

              Wenn ich mit es mit der Node.js v0.12 installiere und starte, so funktioniert es.

              Mache ich dann ein Update auf eine neuere Version, so funktioniert es nicht mehr.

              Ich habe mal an den Programmierer vom diesem Modul geschrieben.

              Eine externe Node-red Installation wird man vermutlich nicht in den ioBroker integrieren können? Oder? :?:

              1 Reply Last reply Reply Quote 0
              • B
                bodyfix last edited by

                Hallo, schreibe in diesem Thread, da es mir genauso um dein Aufbau PI mit MCP23017 und Integration in Node-Red geht,

                könnt Ihr mir helfen, bin Einsteiger im umgang mit Node-Red und komme einfach nicht weiter.

                Kann über i2c lesen und schreiben auch über

                Write : gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 write 100 1 / gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 write 100 0

                Read : gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 read 108

                aber wie bekomme ich es in Node-Red aufgenommen, das Modul "node-red-contrib-mcp23017" kann leider nur lesen will aber 8xinput und 8xoutput

                1 Reply Last reply Reply Quote 0
                • H
                  hermannf1 last edited by

                  Hi

                  Versuch es mit diesem Beispiel: https://www.2hf.org/example-node-red-mcp23017-89/

                  Einfach importieren.

                  LG

                  1 Reply Last reply Reply Quote 0
                  • B
                    bodyfix last edited by

                    Danke Hermann, leider kann dieses Script nur als Output benutzt werden, das node-red-contrib-mcp23017 modul kann nur output.

                    ich möchte gerne aber den IC2 Bus direkt ansprechen und somit Read o. write benutzen

                    Z.B.

                    Write : gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 write 100 1 / gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 write 100 0

                    Read : gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 read 108

                    auch gerne mit IC2 befehle

                    i2cset -y 0 0x20 0x14 0x01

                    i2cget -y 0 0x20 0x14

                    aber wie kann ich diese in Node-Red einbauen.

                    LG

                    1 Reply Last reply Reply Quote 0
                    • H
                      hermannf1 last edited by

                      Hi

                      Ja, das geht! Man kann in node-red jeden Befehl hinterlegen, dann man auch am Respberry in der Konsole eingibt. Node-red führt ihn dann in der Konsole aus.

                      Ich habe gerade keine Installation laufen. Ich suche mal ob ich den Menüpunkt in node-red finde.

                      LG

                      1 Reply Last reply Reply Quote 0
                      • H
                        hermannf1 last edited by

                        Hi

                        Ich habe es im Video gefunden.

                        https://www.youtube.com/watch?v=WxUTYzxIDns

                        Im Video bei 20:20 wird ein Beispiel gezeigt. Es ist das exec node. In diesem Beispiel fährt er mit dem shutdown Befehl den Raspberry runter. Man kann hier jeden Befehl eingeben.

                        LG

                        1 Reply Last reply Reply Quote 0
                        • B
                          bodyfix last edited by

                          Danke, hatte gehoft es gibt ein bidirektionales Modul.

                          LG

                          1 Reply Last reply Reply Quote 0
                          • UncleSam
                            UncleSam Developer last edited by

                            @bodyfix:

                            ich möchte gerne aber den IC2 Bus direkt ansprechen und somit Read o. write benutzen

                            Z.B.

                            Write : gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 write 100 1 / gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 write 100 0

                            Read : gpio -x mcp23017<emoji seq="1f4af">💯</emoji>0x20 read 108

                            auch gerne mit IC2 befehle

                            i2cset -y 0 0x20 0x14 0x01

                            i2cget -y 0 0x20 0x14

                            aber wie kann ich diese in Node-Red einbauen. ` Hi bodyfix

                            Konntest du dein Problem mit dem node-red Adapter für den MCP23017 lösen?

                            Ansonsten gibt es seit heute auch einen Adpater für I2C direkt in ioBroker:

                            http://forum.iobroker.net/viewtopic.php?f=23&t=7437

                            Im Moment unterstützt er zwar erst den PCF8574, aber wenn du wünschst, kann ich versuchen den MCP23017 zu integrieren.

                            Freue mich auf deine Antwort.

                            /UncleSam

                            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

                            573
                            Online

                            32.0k
                            Users

                            80.5k
                            Topics

                            1.3m
                            Posts

                            4
                            18
                            2970
                            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