Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [Adapter] - iobroker.i2c

    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] - iobroker.i2c

    This topic has been deleted. Only users with topic management privileges can see it.
    • UncleSam
      UncleSam Developer @enricoh831 last edited by UncleSam

      @enricoh831 sagte in [Adapter] - iobroker.i2c:

      ich bin da gerade an einem neuen Projekt dran und möchte einen Arduino Mega direkt per I2C mit IO Broker ansteuern um Gpio zu schalten.

      Hallo Enrico,

      wenn du per I2C zwischen RasPi (Master) und Arduino (Slave) kommunizieren willst, musst du wohl dein eigenes Protokoll machen. Falls du ganz einfach ein paar IOs schalten willst, dann benutze doch das MCP23017 Protokoll im Arduino, dann kannst du im ioBroker einfach MCP23017 einstellen.

      Proprietäre Protokolle, wie du eben möglicherweise machen willst, kann ich leider nicht unterstützen, da jeder ja eben sein eigenes Protokoll hat. Ich unterstütze nur "fixfertige" Silikon-Lösungen (I2C-Chips, die man so einkaufen kann).

      Falls ich etwas falsch verstanden habe, schick mir doch eine PM.

      /UncleSam

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

        @enricoh831 sagte in [Adapter] - iobroker.i2c:

        Im adapter hat er auch gleich an adresse 0x20 was gefunden. Nach dem Konfigurieren
        und speichern geht der Adapter nicht mehr auf grün (garnicht mehr).

        Hast du das Problem lösen können?

        Meine Vermutungen: Bus Nummer 2 ist falsch (war das immer schon Nummer 2?) oder der Adapter respektive ioBroker läuft nicht mit den richtigen Berechtigungen (siehe: https://github.com/UncleSamSwiss/ioBroker.i2c#access-right-issue)

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

          @DrHouse03 sagte in [Adapter] - iobroker.i2c:

          ich bin gerade dabei meine Pool-Steuerung zu planen.
          Jetzt bin ich auf das Tentacle T3 Board für den Raspberry Pi gestossen.
          Damit könnte ich die PH- und Redox-Werte über I2c auslesen.

          Das müsste noch implementiert werden. Gewisse Informationen finde ich hier: https://www.whiteboxes.ch/docs/tentacle/t3/#/code
          Allerdings ist Implementieren ohne Hardware etwas schwierig und das Board ist doch etwas über meinem Budget nur um das zu implementieren.
          Wenn du programmieren kannst, würde ich wohl eher das erwähnte i2c.py Skript erweitern und zum Beispiel per MQTT die Werte an den MQTT Adapter in ioBroker weiter schicken.
          Wenn du nicht programmieren kannst, müssten wir bilateral (per PM) schauen, wie wwir das hinkriegen - es würde allerdings bedingen, dass du die Hardware bereits besitzt.

          /UncleSam

          D 1 Reply Last reply Reply Quote 0
          • UncleSam
            UncleSam Developer @Christin-Michelle Fremgen last edited by

            @Christin-Michelle-Fremgen sagte in [Adapter] - iobroker.i2c:

            Ich habe eine RaspiZero und daran einen Servo-Treiber (https://smile.amazon.de/AZDelivery-PCA9685-Servotreiber-Arduino-Raspberry/dp/B072N8G7Y9/ref=pd_sbs_328_1/257-1480378-7596562?_encoding=UTF8&pd_rd_i=B072N8G7Y9&pd_rd_r=fa0715ab-30dc-4c9f-a613-ebb99265e6a0&pd_rd_w=PPyA1&pd_rd_wg=Vbn4i&pf_rd_p=c8718c55-fb13-473f-a41c-592a17ad3468&pf_rd_r=50ZCEETZNTBTFYH6WE43&psc=1&refRID=50ZCEETZNTBTFYH6WE43). Damit möchte ich die Luftklappen meiner Heizung die eben mit Heißluft anstelle von Heißwasser funktioniert steuern. Es wäre super wenn es möglich wäre die Unterstützung für dieses Modul zu implementieren.

            GitHub Issue ist eröffnet: https://github.com/UncleSamSwiss/ioBroker.i2c/issues/41
            Lieferung in 30-50 Tagen - sofern das Corona-Virus uns keinen Strich durch die Rechnung macht.

            UncleSamSwiss created this issue in UncleSamSwiss/ioBroker.i2c

            closed Support for PCA9685 #41

            T 1 Reply Last reply Reply Quote 0
            • T
              Telefisch last edited by

              Hallo UncleSam.
              ich habe den Adapter "installiert" aber sehe nichts in den Instanzen.
              Ich hab ein Multihost-System, falls das eine Rolle spielt.
              Wie geht's jetzt weiter? Das sind die letzten Zeilen der Installationsausgabe:

              upload [10] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/words.js words.js application/javascript
              upload [9] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/lib/js/jsviews.min.js lib/js/jsviews.min.js application/javascript
              upload [8] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/lib/js/jsviews-jqueryui-widgets.min.js lib/js/jsviews-jqueryui-widgets.min.js application/javascript
              upload [7] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/index.html index.html text/html
              upload [6] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/i2c.png i2c.png image/png
              upload [5] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/devices/PCF8574.js devices/PCF8574.js application/javascript
              upload [4] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/devices/MCP23017.js devices/MCP23017.js application/javascript
              upload [3] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/devices/MCP23008.js devices/MCP23008.js application/javascript
              upload [2] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/devices/DeviceBase.js devices/DeviceBase.js application/javascript
              upload [1] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/devices/BME280.js devices/BME280.js application/javascript
              upload [0] i2c.admin /opt/iobroker/node_modules/iobroker.i2c/admin/devices/ADS1x15.js devices/ADS1x15.js application/javascript
              process exited with code 0
              

              Sieht also nach meinem Empfinden gut aus. Hab ich was falsch gemacht? Ich müsste ihn ja mit I2C im Filter finden.

              Gruß Carsten

              1 Reply Last reply Reply Quote 0
              • D
                DrHouse03 @UncleSam last edited by

                @UncleSam Danke für die Rückmeldung. Es hat sich erledigt. Ich löse das ganze über einen Arduino der die Daten an eine Siemens Logo sendet. Die Kommunikation mit iobroker erfolgt dann über den S7 Adapter.

                1 Reply Last reply Reply Quote 0
                • T
                  Telefisch @UncleSam last edited by Telefisch

                  @UncleSam

                  Mittlerweile scheint der Adapter zu laufen.

                  Ich möchte einen APDS-9960 am RPI auslesen.
                  Wie fange ich das an? Der Sensor wird am Bus gefunden.

                  1 Reply Last reply Reply Quote 0
                  • F
                    flubb last edited by

                    @UncleSam
                    Bist du hier eigentlich noch dran?
                    https://github.com/UncleSamSwiss/ioBroker.i2c/issues/21

                    Falls ja, schon mal Danke!

                    UncleSamSwiss created this issue in UncleSamSwiss/ioBroker.i2c

                    closed Support for HMC5883L / QMC5883L #21

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

                      Grüßgott,

                      1.) Habe vor 2 Tagen iobroker auf mein Raspberry Pi 4 installiert. (Minimal image von 2019.11)
                      2.) Alles upgraded
                      4.) I2C enabled (raspi-config), RPi restarted, installed:

                      sudo apt-get update
                      sudo apt-get install i2c-tools libi2c-dev python-smbus
                      
                      • i2cdetect -l << kann die Busse schön listen:
                      pi@hv:~ $ sudo i2cdetect -l
                      i2c-1   i2c             bcm2835 I2C adapter                     I2C adapter
                      i2c-7   i2c             i2c-tiny-usb at bus 001 device 014      I2C adapter
                      

                      3.) Gab kommand:

                      sudo usermod -G i2c iobroker
                      

                      Trozdem, findet dieses Adapter nicht mal den Bus: 😞

                      host.hv 2020-03-30 17:31:56.944 info instance system.adapter.i2c.0 terminated with code 0 (NO_ERROR)
                      host.hv 2020-03-30 17:31:56.943 error Caught by controller[0]: at objects.getObjectView (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:6061:26)
                      host.hv 2020-03-30 17:31:56.943 error Caught by controller[0]: at Adapter.getForeignStates (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:6018:26)
                      host.hv 2020-03-30 17:31:56.943 error Caught by controller[0]: at Adapter._processStates (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5958:22)
                      host.hv 2020-03-30 17:31:56.943 error Caught by controller[0]: at Adapter._processStatesSecondary (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5892:25)
                      host.hv 2020-03-30 17:31:56.943 error Caught by controller[0]: at StateRedis.getStates (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:594:20)
                      host.hv 2020-03-30 17:31:56.943 error Caught by controller[0]: at states.getStates (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5922:17)
                      host.hv 2020-03-30 17:31:56.942 error Caught by controller[0]: at /opt/iobroker/node_modules/iobroker.i2c/i2c.js:129:14
                      host.hv 2020-03-30 17:31:56.942 error Caught by controller[0]: at I2CAdapter.main (/opt/iobroker/node_modules/iobroker.i2c/i2c.js:43:20)
                      host.hv 2020-03-30 17:31:56.942 error Caught by controller[0]: at Object.openSync (/opt/iobroker/node_modules/i2c-bus/i2c-bus.js:47:3)
                      host.hv 2020-03-30 17:31:56.942 error Caught by controller[0]: at checkBusNumber (/opt/iobroker/node_modules/i2c-bus/i2c-bus.js:55:11)
                      host.hv 2020-03-30 17:31:56.941 error Caught by controller[0]: Error: Invalid I2C bus number 7
                      i2c.0 2020-03-30 17:31:56.430 info (7112) Terminated (NO_ERROR): Without reason
                      i2c.0 2020-03-30 17:31:56.429 info (7112) terminating
                      i2c.0 2020-03-30 17:31:56.424 error at objects.getObjectView (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:6061:26)
                      i2c.0 2020-03-30 17:31:56.424 error at Adapter.getForeignStates (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:6018:26)
                      i2c.0 2020-03-30 17:31:56.424 error at Adapter._processStates (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5958:22)
                      i2c.0 2020-03-30 17:31:56.424 error at Adapter._processStatesSecondary (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5892:25)
                      i2c.0 2020-03-30 17:31:56.424 error at StateRedis.getStates (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:594:20)
                      i2c.0 2020-03-30 17:31:56.424 error at states.getStates (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5922:17)
                      i2c.0 2020-03-30 17:31:56.424 error at /opt/iobroker/node_modules/iobroker.i2c/i2c.js:129:14
                      i2c.0 2020-03-30 17:31:56.424 error at I2CAdapter.main (/opt/iobroker/node_modules/iobroker.i2c/i2c.js:43:20)
                      i2c.0 2020-03-30 17:31:56.424 error at Object.openSync (/opt/iobroker/node_modules/i2c-bus/i2c-bus.js:47:3)
                      i2c.0 2020-03-30 17:31:56.424 error at checkBusNumber (/opt/iobroker/node_modules/i2c-bus/i2c-bus.js:55:11)
                      i2c.0 2020-03-30 17:31:56.424 error (7112) Error: Invalid I2C bus number 7
                      i2c.0 2020-03-30 17:31:56.423 error (7112) uncaught exception: Invalid I2C bus number 7
                      i2c.0 2020-03-30 17:31:56.313 info (7112) starting. Version 0.0.6 in /opt/iobroker/node_modules/iobroker.i2c, node: v10.19.0

                      HB 1 Reply Last reply Reply Quote 0
                      • A
                        Abry last edited by

                        Hallo zusammen,

                        Ich habe gelesen, dass es eine Anfrage für den INA219 gibt. Dies würde mich auch sehr interessieren. Ist der INA 219 schon implementiert?

                        Viele Grüße

                        1 Reply Last reply Reply Quote 0
                        • A
                          Abry last edited by

                          Keine eine Idee?

                          1 Reply Last reply Reply Quote 0
                          • HB
                            HB @PizzaProgram last edited by HB

                            @PizzaProgram Ich habe das gleiche probiert, auf der RaspberryPi4 findet er den ADS1115:
                            befddfcf-8171-430f-a534-d285cb22aa60-image.png
                            Allerdings findet er den über I2C verbunden ADS1115 nicht in IObroker:
                            2271c642-4512-455a-8259-55810d9184b5-image.png

                            Ich kriege den über I2C am Pi4 (habs auch an einem Zero versucht) verbundenen ADS1115 somit leider auch nicht zum laufen, machen wir was falsch?

                            1 Reply Last reply Reply Quote 0
                            • S
                              strago last edited by

                              @PizzaProgram @HB Ich hatte ein ähnliches Probleme wenn man den Iobroker mit einem fertigen Image aufgesetzt hat. Gelöst hab ich das mit folgenden Befehlen:

                              adduser iobroker i2c
                              adduser www-data i2c

                              Vielleicht mal versuchen ob das hilft.

                              sg
                              Strago

                              HB 1 Reply Last reply Reply Quote 0
                              • HB
                                HB @strago last edited by

                                @strago Hallo Strago,
                                Danke zuerst mal;
                                6e22cee7-8754-4ac7-98e3-0c6cbbf4c6cb-image.png
                                leider hat sich allerdings bei mir nichts geändert..

                                Ich habe ein Reboot gemacht und auf dem Pi4 als auch Zero aber die Fehler Meldung, dass I2C Bus umber 1 nicht stimmt bleibt.

                                HB 1 Reply Last reply Reply Quote 0
                                • HB
                                  HB @HB last edited by HB

                                  @HB Ich habe folgende Update gemacht;

                                  sudo -H -u iobroker npm install https://github.com/crycode-de/ioBroker.i2c/tarball/master --production --save --prefix "/opt/iobroker"
                                  

                                  Gefunden habe ich diese hier: https://crycode.de/homepi-iobroker-i2c-pcf8574

                                  Jetzt funktioniert der I2C Adapter und findet den ADS1115 und ADS1015
                                  7a236b2e-f7ac-4023-8c57-3917465d5108-image.png

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    strago last edited by strago

                                    @HB Diesen Beitrag habe ich auch schon gesehen, habe den dann aber nicht verwendet da ich noch keine Interrupts verwende und vom PCF8574 weg bin.

                                    Danke aber für den Hinweis. (Wichtig für eventuelle zukünftige Installationen)

                                    Soweit ich das aber verstanden habe, ist das nicht mehr der offizielle I2c-Adapter von @UncleSam. Vielleicht könnte man diesen wieder zusammenführen und in einer neuen Version veröffentlichen?

                                    sg
                                    Strago

                                    1 Reply Last reply Reply Quote 0
                                    • T
                                      Telefisch last edited by

                                      Ich fürchte das Projekt ist eingeschlafen.
                                      Schade, hatte gehofft auch mit dem I2C Bus kommunizieren zu können aber ich glaube die Adapterprogrammierung ist echt ne Nummer zu hoch für mal eben zwischendurch 😞

                                      Schade und danke an alle, die das voran treiben.

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

                                        Hallo zusammen,
                                        da ich selbst den i2c-Adapter nutze und mir aber noch ein paar Funktionen fehlten, habe ich einen Fork des Adapters erstellt und dort die entsprechenden Änderungen/Ergänzungen vorgenommen.
                                        @HB und @strago erwähnten meine erste Version ja bereits. Einen Pull Request auf GitHub gibt es auch, wobei aber @UncleSam leider momentan recht inaktiv zu sein scheint.

                                        Wer mag, kann gerne meine Version testen. Die Installation erfolgt dabei über die GitHub URL https://github.com/crycode-de/ioBroker.i2c

                                        Änderungen im Vergleich zur letzten Version von @UncleSam:

                                        • Interrupts für PCF8574, MCP23008 und MCP23017 hinzugefügt.
                                        • Inputs beim PCF8574 werden auf High gesetzt, damit diese richtig funktionieren.
                                        • Allgemeines Gerät (Gerneric) hinzugefügt.
                                          • Damit ist es möglich grundlegend mit jedem I2C-Slave zu kommunizieren und dessen Register in ioBroker einzubinden.
                                          • Über die Einstellungen können Register mit dem entsprechenden Datentyp hinzugefügt werden.
                                        • read und write Befehle für die Nutzung in Scripten über sendTo(...) hinzugefügt.
                                          • Ich habe damit beispielsweise das Auslesen eines INA226 ICs über ein Script realisiert.

                                        Viele Grüße
                                        Peter

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          strago last edited by

                                          Hallo,

                                          @crycode danke für deine Antwort. Ich werde deine Version des Adapters gleich am Wochenende testen.
                                          (Es sei denn es kommt was dazwischen 🙂 )

                                          Eine Frage hätte ich vorab: Funktioniert deine Version schon unter nodejs 12? Ich hatte mit der Version von @UncleSam Probleme mit dem Adapter und nodejs 12. Bin daher mit meinem Slave derzeit noch auf nodejs 10 geblieben.

                                          Danke schonmal für die Anpassungen! 👍

                                          sg
                                          Strago

                                          crycode 1 Reply Last reply Reply Quote 0
                                          • crycode
                                            crycode Developer @strago last edited by

                                            @strago Mit Node.js 12 habe ich den Adapter bislang noch nicht getestet. Was für Probleme hattest du da genau? Dann schau ich mir das mal an...

                                            S 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

                                            738
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            i2c
                                            36
                                            128
                                            21554
                                            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