Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. RPI 2.0 GPIOs können nicht angesteuert werden

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    RPI 2.0 GPIOs können nicht angesteuert werden

    This topic has been deleted. Only users with topic management privileges can see it.
    • arteck
      arteck Developer Most Active last edited by

      alles gut…hab ich auch

      1518_gpio.jpg

      wobei ich mit dem 17 nichts mache und der steht bei mir auch auf OUT…

      nimm mal nen anderen.. probeweise

      1 Reply Last reply Reply Quote 0
      • M
        Micky79 last edited by

        Ich habe auch mal versucht einen anderen Pin zu initialisieren. Auch vorher das Script dazu durchgeführt. Alles ohne Erfolg.

        Ich glaube, ich werde mich mit meinem Workarround, die Sache per externen Script anzugehen, anfreunden müssen.

        Wobei das über RPI echt eine elegante Lösung wäre.

        Habe auch noch mal auf ein paar anderen Pis gpio readall ausgeführt. Das sieht identisch aus.

        1 Reply Last reply Reply Quote 0
        • arteck
          arteck Developer Most Active last edited by

          das kann doch nicht.. bei mir geht es auch..

          was hast du für jessie Image drauf ?? so ein ioBroker image oder direkt vom raspbian geladen ??

          1 Reply Last reply Reply Quote 0
          • M
            Micky79 last edited by

            Direkt von raspian. Das neuste.

            1 Reply Last reply Reply Quote 0
            • arteck
              arteck Developer Most Active last edited by

              ich frage weil ich mit einem ioBroker Image Probleme hatte…

              so siehts bei mir aus.. wobei meiner ein IN-put ist

              1518_1.png

              1 Reply Last reply Reply Quote 0
              • M
                Micky79 last edited by

                @arteck

                Ja, aussehen ist bei mir identisch, nur ist die State Änderung ohne Funktion.

                Bekommst Du beim starten des Adapters denn auch die Fehlermeldung?

                1 Reply Last reply Reply Quote 0
                • arteck
                  arteck Developer Most Active last edited by

                  rpi2.0	2017-02-24 17:40:03.041	info	starting. Version 0.3.1 in /opt/iobroker/node_modules/iobroker.rpi2, node: v4.7.3
                  

                  nö alles gut

                  ich hab mal den Loglevel erhöht … nix in die Richtung das es kein pin xyz nicht gibt..

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

                    Sag ich auch - das muss doch gehen…

                    Bei mir funktioniert's ja auch mit dem Jessie-Image von ioBroker...

                    Noch eine Vermutung in die Runde: Kann es sein, dass die Anweisungen die du in die rc.local schreibst irgendwie die GPIO-Schnittstelle "blockieren"?

                    Ich hab's ein wenig anders. Die folgende Datei als separates Python-Script abgespeichert und dieses Script dann in die rc.local eingebunden.

                    #!/usr/bin/python
                    import RPi.GPIO as GPIO 
                    
                    #gpio 
                    gP23 = 23
                    
                    GPIO.setwarnings(False)
                    GPIO.setmode(GPIO.BCM)
                    
                    # klingel als INPUT einstellen
                    GPIO.setup(gP23, GPIO.IN, pull_up_down=GPIO.PUD_UP)
                    
                    1 Reply Last reply Reply Quote 0
                    • arteck
                      arteck Developer Most Active last edited by

                      damit initialisierst du nur den pin 23 direkt nach dem booten

                      normalerweise ist es unötig… aber nach irgendeinen jessie update .. ging meine Klingel nicht mehr (da sitzt ein Pi drauf und wertet ein gpio23 aus)

                      nach dem Initialisieren schon.. also hab ich es mit übernommen

                      schau mal ob du es per Programm schalten kannst (so langsam gehen mir die Ideen aus)

                      #!/usr/bin/python
                      import RPi.GPIO as GPIO 
                      
                      #gpio 
                      gP17 = 17
                      
                      GPIO.setwarnings(False)
                      GPIO.setmode(GPIO.BCM)
                      
                      GPIO.setup(gP17 , GPIO.OUT)
                      
                      GPIO.output(gP17 , GPIO.HIGH)
                      time.sleep(2)
                      GPIO.output(gP17 , GPIO.LOW)
                      
                      

                      direkt von der konsole ausführen als program

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

                        Ja, denke ich auch dass mein Script eigentlich überflüssig sein müsste. Allerdings hatte ich anfangs eben auch Probleme mit der Initialisierung des INPUT-Ports. Nachdem ich das Script verwendet habe hat's geklappt.

                        Meine Vermutung ist nur - Micky79 macht das ja in seinem Script leicht anders, nicht das sich da vielleicht was gegenseitig beharkt…

                        Und @Micky79, du hattest glaube ich noch nicht beantwortet ob dein ioBroker als root läuft?

                        1 Reply Last reply Reply Quote 0
                        • arteck
                          arteck Developer Most Active last edited by

                          @Thisoft:

                          Ja, denke ich auch dass mein Script eigentlich überflüssig sein müsste. Allerdings hatte ich anfangs eben auch Probleme mit der Initialisierung des INPUT-Ports. Nachdem ich das Script verwendet habe hat's geklappt.

                          Meine Vermutung ist nur - Micky79 macht das ja in seinem Script leicht anders, nicht das sich da vielleicht was gegenseitig beharkt…

                          Und @Micky79, du hattest glaube ich noch nicht beantwortet ob dein ioBroker als root läuft? `

                          ja läuft als root… steht zumindest so im einstiegsthread

                          1 Reply Last reply Reply Quote 0
                          • M
                            Micky79 last edited by

                            @Thisoft

                            Ja, iobroker läuft als Root.

                            Dein Script habe ich auch schon ausprobiert, weil ich auch dachte das dies evtl. die GPIOS anders initialisiert. Aber auch ohne Erfolg.

                            Vielleicht doch die andere Node Version?

                            1 Reply Last reply Reply Quote 0
                            • M
                              Micky79 last edited by

                              @arteck

                              Bei Deinem Script zeigt er an das er time nicht findet.

                              Aber unabhängig davon, wenn ich das Script aufrufe (einmal mit High und danach mit LOW) funktioniert es.

                              Also per Python kann ich die GPIOS auch ansprechen.

                              1 Reply Last reply Reply Quote 0
                              • M
                                Micky79 last edited by

                                Ich habe mal recherchiert wie ich node 6.9 installiere.

                                Aber kann ich das so einfach drüber bügeln? Oder muss ich dann iobroker neu installieren?

                                Hat das schon mal jemand gemacht?

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

                                  Micky,

                                  iobroker und die Adapter sollen neu installiert werden. Machs jetzt immer so dass ich

                                  Iobroker abschalte (sudo iobroker stop)

                                  das Verzeichnis /opt/iobroker umbenenne in z,.b iobroker.bak

                                  ein neues Verzeichnis dann in /opt/oipbroker anlege

                                  und das Unterverzeichnis von /opt/iobroker.bak/iobroker-data auf /opt/iobroker kopiere.

                                  Dann installiere ich in opt/iobroker iobroker (und die Adapter) neu. Wenn alles funktioniert kann man das .bak-Verzeichnis löschen.

                                  Damit hab ich die alten Einstellungen aber die neuen nodejs-Module passend auf das neue nodejs.

                                  1 Reply Last reply Reply Quote 0
                                  • arteck
                                    arteck Developer Most Active last edited by

                                    an der node version liegt es nicht… gpio Steuerung hat erstmal nichts mit node zu tun...

                                    hab ein import übersehen

                                    #!/usr/bin/python
                                    import RPi.GPIO as GPIO 
                                    import os, sys, time 
                                    
                                    #gpio 
                                    gP17 = 17
                                    
                                    GPIO.setwarnings(False)
                                    GPIO.setmode(GPIO.BCM)
                                    
                                    GPIO.setup(gP17 , GPIO.OUT)
                                    
                                    GPIO.output(gP17 , GPIO.HIGH)
                                    time.sleep(2)
                                    GPIO.output(gP17 , GPIO.LOW)
                                    
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      Micky79 last edited by

                                      So, habe mal auf node.js 6.10 upgedatet.

                                      Puh. Scheint soweit alles geklappt zu haben.

                                      Danke an fsjoke.

                                      Beim Start des RPI Adapters kommt jetzt keine Fehlermeldung mehr.

                                      Aber beim Zugriff auf den GPIO steht "GPIO is not initialized!" im LOG. 😞

                                      Hab dann mal das Python Script laufen lassen, um den GPIO 17 per Script richtig zu initialisieren. RPI Adapter neu gestartet. Gleiches Problem. GPIO is not initialized!

                                      Leute, ich gebe auf. Irgendwie bekomme ich den GPIO Zugriff nicht initialisiert.

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

                                        Also,

                                        hab mir das mal angeschaut da ich rausfinden wollte warum's am development Raspi auch nicht funktioniert.

                                        Der Grund scheint zu sein dass das rpi-gpio library nicht neu kompiliert wird/wurde da es anscheinend irgendwo im cache mit einer alten Version vorhanden ist.

                                        Ich habs zu Laufen gekriegt nachdem ich:

                                        cd /opt/iobroker/node_modules
                                        rm -r rpi-gpio
                                        cd iobroker.rpi2
                                        rm -r node_modules
                                        npm install --production
                                        
                                        

                                        gemacht habe.

                                        Das hat eine neue kompilierung des rpi-gpio-Libraries durchgeführt und der Adapter lief dann wieder ohne Fehler.

                                        Habe auch ein

                                        npm cache clean

                                        gemacht, leider erst nachher, und hoffe dass die alten Kopien der Module vielleicht verschwinden…. Mal sehen ob es nächstes mal hilft wenn ich es vorher mache.

                                        Ach ja, hab' vergessen zu erwähnen: Der Grund kann auch daher rühren dass (z.B. mittels sudo apt-get upgrade oder dist-upgrade) das System und der kernel oder gpio-libraries auf eine neuere Version upgedated wurden und deshalb das nodejs-Modul auch neu kompiliert werden muss. Der Fehler liegt also weniger bei ioBroker sondern mehr bei neuen libraries, entweder von nodejs oder vom System.

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          Micky79 last edited by

                                          Hey fsjoke,

                                          habe Deine Schritte mal durchgeführt.

                                          Das Verzeichnis rpi-gpio gibt es bei mir nicht.

                                          Die restlichen Befehl gingen. Clean Cache auch.

                                          Adapter neugestartet, direkt im LOG ne Fehlermeldung das er den GPIO nicht initialisieren kann.

                                          Das Script ausgeführt um die GPIO zu initialisieren. Adapter Neustart, auch nix.

                                          GPIO 27 probiert. Gleiche Meldung.

                                          GPIO 22 probiert (Physikalisch PIN 15) -> keine Fehlermeldung.

                                          GPIO über Objektbaum angesprochen, GEHT! Über JavaScript natürlich auch!

                                          DANKE!!!

                                          Komisch nur das nicht alle GPIOS gehen. Aber im Moment brauche ich nur den einen.

                                          Viele Grüße Micky

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

                                            Hallo Micky,

                                            gut dass es jetzt zumindest teilweise geht!

                                            Hast schon mal 'gpio readall' gemacht? Bei mir kommt da folgendes:

                                             +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+
                                             | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
                                             +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
                                             |     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |
                                             |   2 |   8 |   SDA.1 | ALT0 | 1 |  3 || 4  |   |      | 5V      |     |     |
                                             |   3 |   9 |   SCL.1 | ALT0 | 1 |  5 || 6  |   |      | 0v      |     |     |
                                             |   4 |   7 | GPIO. 7 |   IN | 1 |  7 || 8  | 0 | IN   | TxD     | 15  | 14  |
                                             |     |     |      0v |      |   |  9 || 10 | 1 | IN   | RxD     | 16  | 15  |
                                             |  17 |   0 | GPIO. 0 |   IN | 0 | 11 || 12 | 0 | IN   | GPIO. 1 | 1   | 18  |
                                             |  27 |   2 | GPIO. 2 |   IN | 0 | 13 || 14 |   |      | 0v      |     |     |
                                             |  22 |   3 | GPIO. 3 |   IN | 0 | 15 || 16 | 0 | IN   | GPIO. 4 | 4   | 23  |
                                             |     |     |    3.3v |      |   | 17 || 18 | 0 | IN   | GPIO. 5 | 5   | 24  |
                                             |  10 |  12 |    MOSI |   IN | 0 | 19 || 20 |   |      | 0v      |     |     |
                                             |   9 |  13 |    MISO |   IN | 0 | 21 || 22 | 0 | IN   | GPIO. 6 | 6   | 25  |
                                             |  11 |  14 |    SCLK |   IN | 0 | 23 || 24 | 1 | IN   | CE0     | 10  | 8   |
                                             |     |     |      0v |      |   | 25 || 26 | 1 | IN   | CE1     | 11  | 7   |
                                             |   0 |  30 |   SDA.0 |   IN | 1 | 27 || 28 | 1 | IN   | SCL.0   | 31  | 1   |
                                             |   5 |  21 | GPIO.21 |   IN | 1 | 29 || 30 |   |      | 0v      |     |     |
                                             |   6 |  22 | GPIO.22 |   IN | 1 | 31 || 32 | 0 | IN   | GPIO.26 | 26  | 12  |
                                             |  13 |  23 | GPIO.23 |   IN | 0 | 33 || 34 |   |      | 0v      |     |     |
                                             |  19 |  24 | GPIO.24 |   IN | 1 | 35 || 36 | 0 | IN   | GPIO.27 | 27  | 16  |
                                             |  26 |  25 | GPIO.25 |  OUT | 1 | 37 || 38 | 0 | IN   | GPIO.28 | 28  | 20  |
                                             |     |     |      0v |      |   | 39 || 40 | 0 | IN   | GPIO.29 | 29  | 21  |
                                             +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
                                             | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
                                             +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+
                                            
                                            

                                            Nun ist wichtig anzumerken dass die GPIO-Zahlen die in der Reihe 'BCM' stehen in rpi2-Adapter verwendet werden und nicht die 'GPIO' -Zahlen!

                                            Ich verwend z.B. GPIO-24 als Eingang und GPIO-25 als Ausgang und das sind bei der Adapter-Konfig (BCM)19 und (BCM)26.

                                            Hab mal probiert, GPIO-27 (BCM)16 funktioniert, GPIO-2 (BCM)27 nicht obwohl er im Adapter als erlaubt aufgeführt ist.

                                            Könnte ein Problem in der SW sein, das müßte sich Bluefox mal anschauen, die Fehlermeldung wird anscheinen vom Betriebssystem erzeugt da ich sie im Adapter nicht finden kann.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            882
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            43
                                            7057
                                            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