ESP Home passender Sensor gesucht

Hallo,

ich bin noch recht neu im Bereich ESP Home und bin noch auf der Suche nach einem geeigneten Sensor. Auf der Doku für ESP Home bin ich leider bisher nicht fündig geworden aber vielleicht suche ich ja auch nicht nach dem richtigen.

Ich habe ein Messgerät (Kemo M167N), welches mit 3V arbeitet und an 10 verschiedenen Ausgängen einen Strom für je eine LED ausgibt je nachdem ob dieser Ausgang zur Masse geschlossen ist oder nicht.

Nun suche ich nach einem möglichst einfachen Sensor, den ich mit je einer LED verbinden kann und der z.B. 1 ausgibt, wenn die LED leuchtet (also Strom fließt) oder 0 wenn nicht.

Das geht sicherlich noch einfacher aber ich habe einen festen Aufbau, welcher sich nicht so einfach anpassen lässt. Die Konstante dabei sind die 11 Kabel (1x Masse + 10x Messkabel), welche ich erhalten will, da ich da nicht so einfach ran komme und der Aufbau prinzipiell auch gut und fehlerfrei funktioniert. Daher erscheint mir das Messgerät als “Mittelsmann” (dann natürlich mit 3V Dauerstrom versorgt) als geeignetste Lösung.

Könnt ihr mir helfen, welchen Sensor ich für diesen Zweck an einen ESP32 verwenden sollte?

Vielen Dank.

Da braucht es nur den ESP 32, dieser erkennt an den Pins ob Spannung anliegt oder nicht

Hallo,

schau dir mal diesen Thread an. Da wird fast das gleiche besprochen.

Nur das du keine Kontakte hast die gegen Masse schalten, sondern gegen Plus.

2 „Gefällt mir“

@metallmanu danke für deine Antwort.

Verstehe ich das richtig? Ich muss lediglich die stromgebende Leitung der jeweiligen LED an einen GPIO anschließen und bekomme dort dann das Signal An/Aus?

Kannst du mir auch sagen, wie dann Beispielhaft die Konfiguration eines solchen Sensors in der yaml für einen dieser PINs aussehen muss?

Korrekt

binary_sensor:
  - platform: gpio
    pin:
      number: GPIO22
      inverted: true
      mode:
        input: true
    name: "LED1" 
1 „Gefällt mir“

Ich würde sagen es ist nicht ganz so einfach, wenn man sichere reproduzierbare Werte haben möchte. Schnelles Googeln (nur eine Quelle überprüft) sagt, dass von -0.3 bis 0,825V ein Signal sicher als LOW interpretiert wird und von 2,475 bis 3,3V sicher als High. Dazischen hängt das von vielen Faktoren ab und muss ausprobiert werden.
Normalerweise hängt man an einen GPIO ein Pull-Up oder Pull-Down Widerstand (z.B. 10KOhm Pull-Down von GPIO nach GND), um ein sicheres Signal zu erhalten, ansonsten könnte der Wert einfach auf LOW oder High kleben bleiben oder zufällig aufgrund von Störsignalen schalten (siehe https://www.youtube.com/watch?v=OIbofbFCcv4). Vielleicht fließt über die LED alleine nicht genug ab und der Wert bleibt auf High.
Nicht alle GPIO Pins sind gleichermaßen gut geeignet. Du solltest in einem PINOUT nachlesen welche PIN zu meiden sind (die Anschlüsse haben mehere Funktionen, eingebaute Pull-Up oder Pull-Down Widerstände, müssen beim ESP-Start Low oder High sein damit er startet etc.)

Das mit high und Low ist richtig.
Deshalb ziehe ich in meiner ESP Konfiguration die GPIOs inter auf high und schalte sie über die Kontakte auf Masse.

Für die Anwendung hier würde ich dir GPIOs unter auf Low ziehen und sobald Strom auf die LEDs kommt gehen sie auf high.

Durch den internen PullDown ist Low immer gesichert und durch den 3V Ausgang des Messgerät gilt das gleiche für High.

Korrigiert mich falls ich falsch liege.
Ich lerne immer gerne was dazu.

2 „Gefällt mir“

Vielen Dank euch allen für die hilfreichen Hinweise! Damit komme ich denke ich gut weiter. :+1:

nicht wirklich falsch, aber unvollständig.

Es kommt auch darauf an, wie die LEDs geschaltet werden.
Werden sie über einen NPN-Transistor geschaltet, hängt deren Anode immer auf Plus und der Transistor schaltet die Masse.
Über einen PNP-Transistor geschaltet, hängt die Kathode der LEDs auf Masse und der Transistor schaltet Plus.
In den meisten Mikrocontrollern werden die Ausgänge mit einer push-pull-Stufe geschaltet, so daß der Ausgang immer definiert auf Masse oder Vcc hängt, je nachdem ob der Ausgang 0 oder 1 ausgeben soll.
Bei einfachen Kontakten kommt es darauf an, ob sie gegen Vcc oder Masse schalten.

Ob die internen Pull up oder pull down Widerstände eingeschaltet werden müssen und ob der Eingang invertiert werden muss, hängt also davon ab, was am Eingang angeschlossen ist.

Danke @LutzHB
da bin ich etwas zu kurz gesprungen. :rofl:
Natürlich muss man bei Transistor-Schaltungen alle Eventualitäten berücksichtigen.

Im Fall von Heilretter sieht das aber so aus, dass das Messgerät 10 Ausgänge hat die auf Plus liegen und im Brunnen/Zisterne vom Wasser gegen Masse geschlossen werden.

Wenn er jetzt die 10 Plus-Leitungen mit 10 GPIOs verbindet und Masse mit Masse so kann er einfach abfragen wie hoch das Wasser steht.

“Sicherheitshalber” würde ich aber die GPIOs intern auf high ziehen - muss aber wahrscheinlich gar nicht sein.
Aber da hilft einfaches ausprobieren.

P.S.: ich liebe diese Community und den Austausch. Man lernt schließlich nie aus.

Gruß
Michael

1 „Gefällt mir“