DoorPi erkennt Taster Eingang am GPIO nicht

  • Hallo,

    nachdem ich einen neuen DoorPi (mit neuer Hardware) aufgesetz habe bekomme ich Eingänge über GPIO nicht mehr als EVENT. GPIO Ausgänge lassen sich über DoorPi.ini zuverlässig ansteuern.

    Die GPIOs sind soweit verfügbar, ein 'sudo gpio readall' bringt auch das gweünschte Ergebnis. Per 'sudo watch -n 1 -t gpio readall' wird auch der Eingang vom Taster (Pulldown mit 10k Widerstand) korrekt angezeigt.

    Habt Ihr vielleicht eine Idee, warum das mit dem GPIO Eingang nicht klappt?


    Besten Dank schon mal ...


    VG Alex

  • Ja auf dem alten Raspi gings noch. Ärgerlicherweise hat der nach relativ kurzer Zeit SD Karten geschreddert ;( so das ich ihn ersetzen wollte.

    Der neue ist zwar ein BananaPi, aber die GPIOs funktionieren an sich. Im trace Modus hab ich mir das auch schon angesehen, es wird einfach kein EVENT ausgelöst beim Tastendruck. Wenn ich parallel in einer zweiten Session mit 'sudo watch -n 1 -t gpio readall' nachschaue, kann ich den GPIO Status des Tasters sehen. Dieser funktioniert einwandfrei, der Port ist auf IN gesetzt und 1, bei Tastendruck gibts eine 0.

  • Hm also DoorPi setzt auf RPi.GPIO für das Keyboard. Da ist es denke ich nicht ganz egal, welches Pi Derivat (Banana) du nutzt.


    http://wiki.lemaker.org/BananaPro/Pi:GPIO_library demnach gibt's da eine angepasste Version für BananaPis. Ggf. probier doch sonst mal aus, ob du in ner Python-Console Zugriff auf die GPIOs über RPi.GPIO bekommst.


    Dazu kommt aber noch, dass lt. z.B. http://forum.banana-pi.org/t/b…gpio-python-module/5726/6 die event-detection nicht wirklich funktioniert. Ich weiß nicht ob das mittlerweile von denen gefixt wurde.

  • Richtig, ganz egal ist die Hardware dann doch nicht. Ich habe auf dem Banana eine angepasste Paspbian Version laufen. Die GPIO Bibliothek von lemarker ist nicht wirklich aktuell, mit Stretch gehts damit nicht mehr. Ich hab diese -> https://github.com/BPI-SINOVOIP/RPi.GPIO hier verwendet.

    Einen Versuch über die Python Console könnte ich natürlich noch mal machen. Verwundert bin ich nur darüber, das Ausgänge problemlos funktionieren nur ebend Eingänge nicht erkannt werden.

  • Das Problem des BananaPis soll ja scheinbar Zeile 55 im from_gpio.py (https://github.com/motom001/Do…rpi/keyboard/from_gpio.py) - also RPiGPIO.add_event_detect - sein. Das wird nur für die Eingänge genutz. Der Rest des Codes sollte klappen.


    Ok also https://forum.armbian.com/topi…switch-to-vanilla-kernel/ meint es hinbekommen zu haben und hat https://github.com/hcoohb/RPi.GPIO_BP/blob/bananapi/ seine Version zur Verfügung gestellt. Das ganze ist aber eigtl ein Banana Pi Problem und weniger DoorPi, deswegen bin ich mir nicht sicher ob du hier die Lösung bekommst.

  • von hcoohb mal testen. Wenn’s denn garnicht geht, muss halt doch wieder ein originaler Raspi ran. Der BPI-P2Zero hat allerdings handfeste Vorteile: Spannungsversorgung über PoE ohne Zusatzmodul, eMMC Flash fürs Betriebssystem, sehr geringe Wärmeentwicklung. Aber wenn die GPIOs nicht sauber funktionieren hat es wenig Sinn. Ich hatte testweise mal mit einem Piface2 experimentiert, läuft leider auch nicht richtig :( . Relais per gpio -p Write 200 1 lassen sich schalten, alles andere geht nicht zuverlässig.