Ankündigung

Einklappen
Keine Ankündigung bisher.

GPIO Plugin: Fehler im Eingangskanal

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Schuetti
    antwortet
    So langsam übersteigt das meinen Linux-Horizont...
    Ich habe das RPi.GPIO-Modul jetzt installiert. Unnötige Einträge in den items habe ich weg gelassen.
    Python v3.7.3 final läuft auf dem System.

    Zitat von bmx Beitrag anzeigen
    Also Python Interpreter anwerfen gpio importieren und mal "zu Fuß" testen. Wenn es da geht, kann man bei SHNG suchen. Ansonsten liegt der Fehler zwischen Python Modul und Betriebssystem/Treiber.

    Für SHNG wäre es dann wirklich gut Debug Ausgaben zu haben wie Morg geschrieben hat.
    Wenn ich das richtig verstanden habe, einfach per ssh einloggen, Python ausführen, RPi.GPIO importieren und gucken ob es läuft? Werde ich morgen mal versuchen, bin zur Zeit nicht zu Hause.
    Aber grundsätzlich lief es, als ich es mit pigpio über ssh in der Konsole habe laufen lassen.
    Mal sehen, ob es morgen klappt.

    Beste Grüße

    Einen Kommentar schreiben:


  • Morg
    antwortet
    OnkelAndy, das hatte ich schon verstanden. Mit gpio an sich geht es ja wohl bei ihm, so wie ich es verstanden habe. Interessant wäre natürlich, es mit RPi.GPIO zu probieren, da wird es aber schon etwas anspruchsvoller, wenn du die Sprungdetektion mit Callback "manuell" testen willst. Das würde ich dann erst tun, wenn ich weiß, was (oder was nicht) das Log hergibt...

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Also Python Interpreter anwerfen gpio importieren und mal "zu Fuß" testen. Wenn es da geht, kann man bei SHNG suchen. Ansonsten liegt der Fehler zwischen Python Modul und Betriebssystem/Treiber.

    Für SHNG wäre es dann wirklich gut Debug Ausgaben zu haben wie Morg geschrieben hat.

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Ne, ich meinte, er solle es unter Python ausprobieren, nicht (nur) über ein Debianpaket.

    Einen Kommentar schreiben:


  • Morg
    antwortet
    Python3 dürfte nicht das Problem sein. Als ich das das letzte Mal überarbeitet habe, müsste das sogar schon 3.7 gewesen sein (allerdings nicht auf deinem Image...)

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Ich hab oben gelesen, er nutzt mein Image. Ist ist sowohl von den Rechten als auch Modulen her alles vorbereitet. Ich fände wie auch schon erwähnt wichtig, das Ganze mal unabhängig von shng in Python 3 zu testen, also mit genanntem Modul und manuellen Abfragen.

    Einen Kommentar schreiben:


  • Morg
    antwortet
    Ich finde auf Anhieb zumindest nichts definitives. Beschaltung auf +3,3V und Pulldown ist eigentlich okay. Alternativ könntest du Schalten gegen Masse und Pullup testen...

    Was ich prüfen würde:

    Ist das RPi.GPIO-Modul installiert? (Python)

    Ich würde testweise mal den telegram_info und gpio_pud im Item weglassen.

    Was sagt das Log, wenn du das gpio-Plugin auf debug stellst?

    Einen Kommentar schreiben:


  • Schuetti
    antwortet
    Sorry für späte Antwort, komme momentan nicht jeden Tag dazu, an dem Projekt zu arbeiten.
    Danke soweit für eure Hilfe, ich habe jetzt den smarthome-User zur Gruppe Dialout hinzugefügt. In der Konsole funktionieren die Inputs und auch die Outputs der GPIO Pins.

    Konfiguration der Plugins.yaml:
    Code:
    GPIO:
        plugin_name: gpio
        mode: BCM
        pullupdown: down
    Item für das Input Item:
    Code:
    Eingaenge:
        Eingang_Bewegung_Halle:
            type: bool
            visu_acl: rw
            gpio_in: 16
            gpio_pud: down
            telegram_info: input
    Genau, die 3,3V von Pin1 sind mit GPIO 16 (Pin 36 ) mittels Taster verbunden.

    Ich wünsche mir, dass beim Drücken des Tasters der Wert "Eingang_Bewegung_Halle" auf true springt und sobald man den Taster loslässt zurück auf false. Später soll hier ein Bewegungsmelder angeschlossen werden.

    Das Problem ist halt, dass der Wert manchmal umspringt, manchmal aber auch nicht. In welcher Stellung er bleibt ist ungewiss.

    Wenn ich das Ganze über die Konsole teste, funktioniert es:
    Halte ich den Taster gedrückt und lese den Wert aus, wird 1 ausgegeben.
    Lasse ich den Taster los und lese erneut aus, wird 0 ausgegeben.
    Zuletzt geändert von bmx; 26.04.2021, 14:08.

    Einen Kommentar schreiben:


  • Morg
    antwortet
    Ja, der relevante Abschnitt aus etc/plugin.yaml für das GPIO-Plugin und die Item-Definition der entsprechenden Items.

    Eingang GPIO gegen 3,3V heißt, du hast den GPIO-Pin über einen Schalter auf 3,3V gelegt?

    Einen Kommentar schreiben:


  • Schuetti
    antwortet
    Also Konfiguration sieht folgendermaßen aus:
    Raspberry Pi 3B+
    SmarthomeNG 1.7.1 Image

    4-fach Relaiskarte
    Ein Eingang GPIO Pin 16 gegen 3,3V
    Ansonsten läuft im SmarthomeNG ein Mail Plugin und das GPIO Plugin.
    Ist alles noch recht spartanisch eingerichtet, da dies zur Zeit nur eine Versuchsumgebung ist.
    Auf nem anderen Pi betreibe ich smarthomeNG jetzt seit 4 Jahren sehr zuverlässig, allerding ohne GPIO zu nutzen.
    Gibt es noch Infos, die hilfreich sein könnten?
    Beste Grüße
    Schütti

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Den user in die Gruppe "dialout" zu nehmen, ist bestimmt auch kein Fehler. Siehe 2. Antwort hier: https://askubuntu.com/questions/1230...-pi-gpio-group

    Hast du es mal in der Python3 "Konsole" probiert? Gibt da ja ne Menge verschiedener Ansätze und Versionen von Modulen und Systempaketen..

    Einen Kommentar schreiben:


  • Morg
    antwortet
    Zitat von Schuetti Beitrag anzeigen
    Es scheint wirklich ein Problem des Plugins zu sein.
    Darum können wir dir - wildes Raten ausgenommen - auch nur helfen, wenn du deine Konfiguration postest. Oder ist die geheim?

    Bei mir läuft es. Also liegt es nicht (nur) am Plugin.


    Einen Kommentar schreiben:


  • Schuetti
    antwortet
    Das habe ich noch nicht getan, habe es jetzt versucht und es ändert leider nichts. Smarthomeng wird auch als user "smarthome" ausgeführt. Ein Neustart brachte auch keinen Erfolg. Gibt es eine Möglichkeit, auszulesen, welche Rechte für den Ordner vergeben sind? Ich versuche mich da gerade einzuarbeiten, aber einige Kenntnisse im Umgang mit Linux fehlen mir da leider.

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Schuetti Du hast aber schon das Recht auf die GPIO dem User unter dem SmartHomeNG läuft eingeräumt, oder?

    Also sowas wie
    Code:
    sudo usermod -a -G smarthome,gpio smarthome

    Einen Kommentar schreiben:


  • Schuetti
    antwortet
    Ich hab die Inputs, sowohl auf Masse als auch auf 3,3V gelegt und verschiedenste Varianten durchprobiert. Ich denke, dass ich es einfach mit einem externen Widerstand versuchen muss. Wenn ich es allerdings über die Konsole mit pigpio versuche, funktioniert es einwandfrei auch ohne externen Widerstand. Es scheint wirklich ein Problem des Plugins zu sein.

    Einen Kommentar schreiben:

Lädt...
X