kleiner Erweiterungsvorschlag für ESPEasy Modul

Begonnen von Freibeuter, 21 Juli 2018, 14:12:22

Vorheriges Thema - Nächstes Thema

Freibeuter

Hallo und vielen Dank für das Modul.
mir ist aufgefallen, dass  der Status 2 um ein Relais zu schalten fehlt.
Ich  würde mich freuen wenn der Staus 2 für den gpio Befehl mit übertragen würde, aktuell werden nur  0 und 1 übertragen.

-->Setting GPIO to "2" means that it will be able to detect low level relays (with high impedance, "Z").

https://www.letscontrolit.com/wiki/index.php/GPIO

Gruß Peter F.

dev0

Das Moduls habe ich dementsprechend angepasst.
Die aktualisierte Version findest Du hier. Die Rückmeldung bitte auch dort. Danke.

Klaus0815

Was passiert da genau bei diesen low-level-relais?
Der Ausgang kann doch nur 0 oder 1 sein? - also 0V oder 3,3V


Grüße
Klaus

Papa Romeo

...oder Ausgang offen   --> unendlicher Widerstand....gab`s bei den 74LS- Bausteinen auch schon....

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

Klaus0815

Aber es ist doch ein Ausgang? Bei einem Eingang würde ich es verstehen, werden die Pull-Ups anders gesetzt.
Dem ESP ist es doch egal welche Impendanz das Relais hat?

Papa Romeo

-->Setting GPIO to "2" means that it will be able to detect low level relays (with high impedance, "Z").

...aus dem "detect" schliesse ich, dass der GPIO in diesem Moment als Eingang geschaltet sein muß.
...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

clumsy

#6
Guten Tag

Super Modul! Echt praktisch und einfach zu verwenden (läuft bei mir mit über 20Nodes problemlos)!

Von mir auch noch einen kleinen Erweiterungsvorschlag, auch im Zusammenhang mit den GPIO's jedoch extern angeschlossene, wie z.b. den PCF8574. Bisher wird statisch bei der GPIO Abfrage via "pollGPIOs" attribut auf "status,gpio,<pin>" abgefragt. Für Erweiterungsmodule wie der PCF (o.ä.) wird das Modulabhängig gemacht (z.b. für den PCF wäre es "status,pcf,<PIN>".

Ebenso werden mit dem Attribut "readingSwitchText" die Zustände low/high (resp. 0/1) ja in on/off umgewandelt, was für active-low komponenten ja eigentlich invertiert ist und mit etwas "basteln" im fhem ja problemlos angepasst werden kann. Da auch der Typ der vom ESPEasy HTTP Modul zurück gesendet wird beim PCF ein anderer ist als bei einem Switch wird die Umwandlung sowieso gar nicht erst vorgenommen.

Ich habe mir deshalb erlaubt, letzteres bereits mal anzupassen (direkt im 34_ESPEasy.pm) falls jemand das auch sonst noch dieses edürfnis hat hänge ich meine Version mal an hier, evtl. liest ja der Maintainer mit und kann/möchte das ins SVN übernehmen...

Was ist neu bisher:
- Das Attribut readingSwitchText nimmt nun auch noch "2" als Argument, was soviel bedeuted wie die Zustände in "on/off" umwandeln, jedoch mit active-low logik (0=>on / 1=>off)
- Bei readingSwitchText Umwandlung wird auch das PCF Modul als Switch erkannt.
EDIT:
- den ersten Punkt müsste man mal noch ansehen, damit auch die GPIO's von externen Modulen abgefragt werden können. Mal sehen was die Zeit sagt ;)
- Es gibt ein neues Attribut namens "pollGPIOsCmd" welches beim abfragen von GPIO's anstelle von "gpio" verwendet wird. Also bei "attr <DEVICE> pollGPIOsCmd pcf" wird nun das kommando "status,pcf,<PIN>" an das device gesendet (anstelle von "status,gpio,<PIN>". Somit können auch andere, resp. externe GPIO's abgefragt werden, z.b. von PCF Modulen.

dev0

#7
Zitat von: clumsy am 27 Juli 2018, 08:25:46
Ich habe mir deshalb erlaubt, letzteres bereits mal anzupassen (direkt im 34_ESPEasy.pm)
Eröffne dazu bitte einen eigenen Thread, Du kaperst gerade einen bestehen Thread...

Weiterhin ist es mehr als unhöflich, ein gepatches Modul, unter gleichem Namen, hier im Forum zu veröffentlichen ohne es mit dem Autor /Maintainer abgesprochen zu haben. Das erschwert den Support für den Autor/Maintainer, es sei denn Du liest jeden Thread hier mit und greifst entsprechend ein, bevor der Autor/Maintainer sich damit deschäftigen muss...

Edit:
Moderator informiert.

clumsy

#8
Wow, Jetzt bin ich zum 2. Mal erstaunt, genau deshalb hatte ich dir erst eine PM geschrieben um mit dir abzusprechen ob ich das hier vorschlagen soll oder dir die Änderungen/Vorschläge persönlich senden soll um eben niemanden auf den Fuss zu treten! Da führte zu einer Antwort deinerseits das ich das im forum machen soll und nicht per PM inklusive dass du mich für weitere Abklärungen geblockt hast! Der Admin darf dazu gerne unseren PM Verkehr Ansehen!!

Nun hab ich es so wie du wolltest hier gepostet, das scheint auch nicht OK... Was nun? Erst per PM absprechen oder hier im forum vorschlagen??

Nach über 10 Jahren fhem Entwicklung ist mir das tatsächlich noch nie passiert...

Aber natürlich entschuldige ich mich für die Unannehmlichkeiten, insbesondere das ich nicht noch einen neuen thread eröffnet habe und bin auf die Antwort des Moderators gespannt!!

PS: hab's file mit den Änderungen wieder gelöscht!

rudolfkoenig

Ich sehe kein Problem darin, wenn man Vorschlaege nicht als Patch sondern als komplette Datei per Anhang in einem Beitrag veroeffentlicht. Es ist was Anderes, wenn jemand diese Aenderungen als nicht-Maintainer ins SVN einpflegt, aber das war ja hier nicht der Fall. Falls der Maintainer diese Aenderungen nicht annehmen will, dann ist das sein gutes Recht, und falls ein Benutzer das Modul aus dem Anhang verwendet, dann kann es passieren, dass er damit mehr Probleme kriegt oder kein Support bekommt. Auf der anderen Seite koennen so Benutzer den Vorschlag testen, und Feedback geben, und dadurch dem Maintainer helfen.

clumsy

#10
hmm... was nun?

@dev0:
einerseits würde ich ja gerne im Sinne von OpenSource meine Vorschläge der Community zur Verfügung stellen, anderseits natürlich nicht wenn der Maintainer partout dagegen ist...

Die Änderungen beschränken sich ja auf ca. 10 Zeilen code und ändern weder die grundlegende Funktionalität noch die Rückwärtskompatibilität resp. bestehende Funktionen.

Aber natürlich ist es Dein Entscheid ob du solche Community-Based Vorschläge annehmen willst oder nicht, ich bin für alles offen! Da du das anscheinend anders handhabst wie ich das sonst von den Maintainern hier kenne, möchte ich mich hier bei diesem Modul Deinem Entscheid/Vorgehen anschliessen!

Falsl ich nichts mehr höre behalte ich die Erweiterungen für mich in meinem Repo, ansonsten lass mich einfach wissen, ob und wie du resp. die Community die Erweiterungen haben willst..

Und nochmals sorry, dass ich dir da anscheinend etwas zu Nahe getreten bin mit meinen Vorschlägen!

Grüsse an alle aus der Schweiz!

PS: dass ich den thread heir "gekapert" habe war weil mir der Titel generisch genug erschien und bereits zwei verschiedene Erweiterungen hier diskutiert wurden... und es schon genügend offene Threads im Forum hat sonst...

dev0

Du bist mir nicht mit Deinen Vorschlägen zu nahe getreten, sondern mit Deiner patzigen Art per PM und dem unabgesprochen Veröffentlichen Deiner Änderungen in Modulform und nicht als svn diff. Mit letzterem habe aber anscheinend nur ich ein Problem. Schwamm drüber.

Also: bitte für den Änderungsvorschlag, der das "gpio/pcf polling" betrifft einen eigenen Thread starten, da ich in diesem Zusammenhang noch Diskussionsbedarf habe. Es ist mAn der falsche Weg und ich das Polling lieber heute als morgen ganz aus dem Modul verbannen möchte. Dazu interessieren mich aber auch die Meinungen weiterer Anwender.

Das Invertieren von on/off werde ich in die nächste Version einbauen.

clumsy

Zitat von: dev0 am 30 Juli 2018, 09:14:21
Das Invertieren von on/off werde ich in die nächste Version einbauen.

cool! danke!

clumsy

Zitat von: dev0 am 30 Juli 2018, 09:14:21
Also: bitte für den Änderungsvorschlag, der das "gpio/pcf polling" betrifft einen eigenen Thread starten, da ich in diesem Zusammenhang noch Diskussionsbedarf habe. Es ist mAn der falsche Weg und ich das Polling lieber heute als morgen ganz aus dem Modul verbannen möchte. Dazu interessieren mich aber auch die Meinungen weiterer Anwender.

auch erledigt, siehe hier https://forum.fhem.de/index.php/topic,89807.0.html. Mal ohne konkreten Vorschlag/Umsetzung da du das ja noch diskutieren, resp. weitere Meinungen dazu möchtest!

Gruss und danke im Voraus!

STefan

dev0

Schaue ich mir bei nächster Gelegenheit an, mitten in der Woche ist es für mich immer etwas schwierig.