Vorgehen - GPI Input mit Pull-up

Begonnen von kptkip, 10 November 2020, 08:00:24

Vorheriges Thema - Nächstes Thema

kptkip

Hallo,

ich will einen simplen Schalter am RASPI anschließen und damit den Schaltzustand für FHEM abgreifen und dort abbilden.

Dazu hab ich ganz naiv das Ding an einem (25;Ground) angeschlossen, die Pakete installiert und nach WIKIm eingerichtet. Allerdings habe ich nicht das gewünschte Ergebnis im Device - sprich:

Use-Cases:
Schalter zu->Device on; Schalter auf->Device off (Achtung: Kein Taster - ein Schalter)

Mittlerweile bin ich über das Thema Pull-Up Widerstand gelaufen, um definierte High- und Low-Pegel zu generieren und werde die Mini-Schaltung nach der angehängten Skizze aufbauen.

Was ich mich jetzt frage, wie ich das Device in FHEM generell einrichten soll, damit es grundsätzlich funktioniert (s. Use-Cases oben). Vor allem das Thema "interrupt=both" würde mich interessieren, da ich den longpress nicht brauche - es ist ja schließlich kein Taster.

Hier mal mein bisheriges Device:
Internals:
   DEF        25
   EXCEPT_FD  67
   FUUID      5fa90a71-f33f-00e0-f468-9ba66800728a9520
   GPIO_Basedir /sys/class/gpio
   GPIO_Nr    25
   NAME       EG_Tuerschloss
   NR         368
   STATE      off
   TYPE       RPI_GPIO
   WiringPi_gpio /usr/local/bin/gpio
   READINGS:
     2020-11-09 20:07:17   Counter         36
     2020-11-09 20:07:16   Dblclick        on
     2020-11-10 07:47:13   Pinlevel        low
     2020-11-09 20:07:17   Toggle          off
     2020-11-09 20:45:33   state           off
   fhem:
     interfaces switch
Attributes:
   DbLogExclude .*
   direction  input
   interrupt  both
   room       Alarm,Erdgeschoss->Flur,Infrastruktur->Serverschrank
FHEM Revision: 22312 auf RasPI3B+,1xNeumannCUL,HMLAN,1xRasPi3B+,2xRasPI ZERO W
CUL_HM:HM-Sec-SCo, HM-CC-RT-DN
Fritz: Fritz!Box 6590C,DECT301,DECT200
Shelly:Shelly1,Shelly2, ShellyBulb Xiaomi: Schalter, Fensterkontakte HUE: ConbeeII
Tasmota:SonoffBridge, Stecker

Frank_Huber

#1
Kurze Frage,
Was für ein Raspi? 2er, 3er oder 4er?

Beim 4er funktioniert das setzen der Pull Up Widerstände nicht über das Modul!
Da muss man das etwas umständlicher vor dem FHEM Start machen.

Für deine Schaltung gegen 3,3V benötigst Du einen Pull Down.
Wenn Du gegen 0V schaltest (würde ich empfehlen) einen Pull Up.

kannst (sofern es kein 4er RPI ist per Attribut "pudResistor" setzen.

my-engel

Hallo

@ Frank_Huber
und wie funktioniert das mit den Pull´s am Pi4 genau vor FHEM?
was ich herausgefunden habe: es geht das gar nicht mit den internen sondern nur mit externen Widerständen.
Es gibt wohl keine System-Befehle hierfür und WiringPi setzt die Register falsch und wird nicht weiterentwickelt....

@ kptkip
die Logic kannst du umdrehen mit "active_low -> yes/no"

MfG
Uwe

Frank_Huber

interne Pull up beim PI4 setzen:
geht auch als Pull down.

Zitat von: Frank_Huber am 03 Juni 2020, 09:38:01
Habs jetzt doch hinbekommen! :-)

sudo nano /etc/systemd/system/fhem.service

In der [Service] Sektion eine Zeile über ExecStart= einfügen:
ExecStartPre=/usr/bin/raspi-gpio set 4-27 pu

my-engel

Danke dir werde ich mal testen...

MfG
Uwe

kptkip

Ich hab nen Raspi 3B+

Mir ging es allerdings mehr um die Config in FHEM, die mir Kopfzerbrechen bereitet, und weniger, wie ich das System elektronisch verdrahte.
FHEM Revision: 22312 auf RasPI3B+,1xNeumannCUL,HMLAN,1xRasPi3B+,2xRasPI ZERO W
CUL_HM:HM-Sec-SCo, HM-CC-RT-DN
Fritz: Fritz!Box 6590C,DECT301,DECT200
Shelly:Shelly1,Shelly2, ShellyBulb Xiaomi: Schalter, Fensterkontakte HUE: ConbeeII
Tasmota:SonoffBridge, Stecker

Frank_Huber

Na dann fehlt dir nur das Pull Down Attribut.

kptkip

 :) supi, danke!

Ich melde mich wieder wenn es läuft!

Gruß
Alex
FHEM Revision: 22312 auf RasPI3B+,1xNeumannCUL,HMLAN,1xRasPi3B+,2xRasPI ZERO W
CUL_HM:HM-Sec-SCo, HM-CC-RT-DN
Fritz: Fritz!Box 6590C,DECT301,DECT200
Shelly:Shelly1,Shelly2, ShellyBulb Xiaomi: Schalter, Fensterkontakte HUE: ConbeeII
Tasmota:SonoffBridge, Stecker

Duz

Guten Morgen Community,

ich wollte mir drei Taster ins FHEM einbinden.
Dazu schalte ich ganz normale Taster mit einem Pull-up widerstand, den ich in FHEM aktiviere gegen Ground.

Bei den ersten beiden funktioniert das super ... ich bekomme aber auf teufel komm raus keinen dritten Taster konfiguriert.
Ich habe schon sämtliche freien I/Os probiert ... gibt es seitens FHEM oder einem plug in ein Limit?

Es handelt sich um einen RPi 3+ den ich sogar mit einem HAT ausgestattet habe auf dem die GPIOs mit einer Schraubleiste und LEDs rausgeführt sind.
Bei den ersten beiden GPIOs, die ich als INPUT Taster mit einem Pull-up definiert habe, leuchtet sogar die LED durch das hochziehen des potentials ...

Einen dritten bekomme ich wie gesagt nicht zum laufen ...

Die ersten beiden laufen auf IO05 & IO06

Frank_Huber

Zitat von: Duz am 22 Dezember 2021, 09:52:00
Guten Morgen Community,

ich wollte mir drei Taster ins FHEM einbinden.
Dazu schalte ich ganz normale Taster mit einem Pull-up widerstand, den ich in FHEM aktiviere gegen Ground.

Bei den ersten beiden funktioniert das super ... ich bekomme aber auf teufel komm raus keinen dritten Taster konfiguriert.
Ich habe schon sämtliche freien I/Os probiert ... gibt es seitens FHEM oder einem plug in ein Limit?

Es handelt sich um einen RPi 3+ den ich sogar mit einem HAT ausgestattet habe auf dem die GPIOs mit einer Schraubleiste und LEDs rausgeführt sind.
Bei den ersten beiden GPIOs, die ich als INPUT Taster mit einem Pull-up definiert habe, leuchtet sogar die LED durch das hochziehen des potentials ...

Einen dritten bekomme ich wie gesagt nicht zum laufen ...

Die ersten beiden laufen auf IO05 & IO06

Ich habe auf meinen PIs alle freien GPIO als Eingang definiert. läuft seit 5 Jahren.
Du solltest mal schauen ob die GPIO die du verwenden willst evtl durch andere Funktionen belegt sind.
I2C, RS232, ..., ...

Duz

Zitat von: Frank_Huber am 22 Dezember 2021, 12:55:21
Ich habe auf meinen PIs alle freien GPIO als Eingang definiert. läuft seit 5 Jahren.
Du solltest mal schauen ob die GPIO die du verwenden willst evtl durch andere Funktionen belegt sind.
I2C, RS232, ..., ...

Hallo Frank,

vielen Dank für deine Antwort.
im rasp-config habe ich nichts aktiviert außer 1-wire.
Und der liegt bei mir auf IO4 ... ich bin ratlos  :-\

Papa Romeo

...der Taster selber ist o.k. ?  Den mal an einen "jetzt" funktionierenden Port gehängt.

LG
Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

Duz

Zitat von: Papa Romeo am 22 Dezember 2021, 14:55:36
...der Taster selber ist o.k. ?  Den mal an einen "jetzt" funktionierenden Port gehängt.

LG
Papa Romeo

Hallo Romeo,

vielen Dank für deine Antwort.
Ich teste das auch ohne Taster ..lediglich mit einem Kabel. Und die LEDs auf dem Breakoutboard reagieren auch nicht auf die Pullup Widerstände

Frank_Huber

Mach mal bitte den Rest ohne das Breakout Board.

Kannst auch direkt mit nem jumper Kabel von gnd zum gpio testen.
Und posten mal bitte ein list der funktionierenden und nicht funktionierenden gpio.

Du nutzt auch sicher den richtigen pin zum definierten gpio?

Papa Romeo

Zitat von: Duz am 22 Dezember 2021, 17:24:53
.... und die LEDs auf dem Breakoutboard reagieren auch nicht auf die Pullup Widerstände

...  ???  :o ... kannst da mal´n Foto von machen ...
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary