Neue Firmware für HM_LC_Sw1PBU_FM mit getrenntem Aktor, Taster + Wechselschalter

Begonnen von jab, 29 Dezember 2013, 22:04:10

Vorheriges Thema - Nächstes Thema

jab

Hi andre,

Ja das sollte funktionieren. Ich habe das trocken getestet. Es gibt einen Aktor Channel für die Wechselschaltung. Der Kanal ist je nachdem ob Strom fließt an oder aus. Bei schalten toggelt er das relay. Wenns Probleme gibt kann ich potentielle Probleme fixen. Habe ein Spielgerät zum entwickeln.


Gruß
Jan

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Pelan

Hallo Jan,

danke für die Rückmeldung!
Die Einstellung des langen Tastendrucks per Firmware wäre kein Problem für mich. Auch die Strommessung muss nicht präzise sein, sie wird bei mir nur zur Realisierung der Wechselschaltung benötigt.

Danke noch mal und schönen Gruß,

Arndt

daduke

Hallo zusammen,

habe einen Aktor "in Produktion" verbaut, tut wunderbar (allerdings nicht Wechselschaltung). Mein 2. wartet drauf, dass ich mit aktuellem gcc ein 2. hex mit abweichender serial# compilieren kann  ;)

nochmal danke an Jan für die tolle Arbeit. Mit dieser FW wird der Aktor erst brauchbar.

-Christian
fhem auf pcengines apu, Philips Hue, MAX!, div. HomeMatic, Spark Core, panstamp, div. eigene Hardware

Samsi

Hallo Jan,

also bei mir läuft er noch nicht 100%. Wenn ich eine Lampe dran habe und am Wechselschalter umschalte, dann habe ich Probleme mit dem Internen Taster, denn dann ist oben und unten vertauscht.
Außerdem besteht noch das Problem, das er jede Sekunde den Stromstatus sendet, wenn kein Strom fließt. Weißt Du noch ob Du das korrigiert hast?
Die Version die ich habe ist vom 21.1. Ich habe in der History nichts gefunden, was diese Probleme angeht.
Aber da ich gesehen habe, das Du außer Compiler-Anpassung auch noch Kleinigkeiten geändert hast, werde ich heute noch mal die neuste Version aufspielen.

Grüße
FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM

jab

Hi Samsi,

Zitat von: Samsi am 14 Februar 2014, 10:52:53
Wenn ich eine Lampe dran habe und am Wechselschalter umschalte, dann habe ich Probleme mit dem Internen Taster, denn dann ist oben und unten vertauscht.
Kannst du das etwas konkretisieren? Wie sieht das peering aus?
Taster -> Internes Relay oder Taster -> Interner Wechselschalter
Kannst du die Register und Readings posten?

Zitat von: Samsi am 14 Februar 2014, 10:52:53
Außerdem besteht noch das Problem, das er jede Sekunde den Stromstatus sendet, wenn kein Strom fließt. Weißt Du noch ob Du das korrigiert hast?
Ja stimmt er sendet aktuell recht häufig den Status. Glaube ich habe das Problem auch schon gefunden. Fixe ich später.


Gruß,
Jan

Samsi

ZitatKannst du das etwas konkretisieren? Wie sieht das peering aus?
Ja daran hatte ich auch schon kurz gedacht. Momentan ist der interne Taster mit CH1 gepeert, ich muss den vermutlich mit CH2 peeren. Ich dachte aber auch, das es nicht geht, weil noch der folgende Punkt offen ist:  "Sending remote event by current sensor"

Ich werde heute mal die aktuelle Version ausprobieren und dann den  CH2 peeren, und noch mal berichten.

Grüße
FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM

jab

Hi,

Zitat von: Samsi am 14 Februar 2014, 13:20:09
Ja daran hatte ich auch schon kurz gedacht. Momentan ist der interne Taster mit CH1 gepeert, ich muss den vermutlich mit CH2 peeren.
Wenn du mir CH1 peerst dann schaltet er einfach das Relay. AN => Relay auf S1. AUS => Relay auf S2.
CH2 schaltet abhängig vom Strom. AN => Wenn _kein_ Strom fließt dann toogle Relay. AUS => Wenn Strom flißt dann toogle Relay.

Zitat von: Samsi am 14 Februar 2014, 13:20:09
Ich dachte aber auch, das es nicht geht, weil noch der folgende Punkt offen ist:  "Sending remote event by current sensor"
Das wäre ein anderes Feature. Dann würde er bei Spannungsabfall bzw Spannungsansprung ein Remote Event an einen anderen Aktor schicken. Bisher hat sich niemand gemeldet der es haben will. Ist nicht so schwer zu implementieren. Allerdings müsste man neue Register erfinden, da es das so nicht als Homematic Gerät gibt. Die anderen Aktoren mit Strommessung können afaik auch nur intern schalten.

Gruß,
Jan

Samsi

Hallo Jan,

danke für Deine Erklärung was das Strom-Event angeht.

ZitatAllerdings müsste man neue Register erfinden, da es das so nicht als Homematic Gerät gibt.
Wäre das nicht dsa selbe wie bei dem HM-ES-PMSw1-Pl? Der kann doch auch andere Aktoren steuern, abhängig von Strom oder Spannung. Ader hab ich das jetzt wieder falsch verstanden?
Also müsste es die Register doch schon geben (mal abgesehen davon das man bei dem  HM_LC_Sw1PBU_FM die werte nicht so exakt einstellen kann, und man könnte immer nur eine fiktive Spannung nehmen entweder 0 oder 230v und den Strom müsste man halt irgendwie abbilden, das sind zwar dann keine exakten werte wie bei dem HM-ES-PMSw1-Pl, aber wer seinen Verbraucher beobachtet kann sich ja die Schaltwerte z.B. im Plot suchen)

Grüße
FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM

trilu

@jan
vielleicht müsste man das strom messen in einen eigenen kanal verlagern und dann über 41'er messages an den schaltkanal senden.
die relay class kann zwar noch nicht die sensor event messages, aber das wäre flott implementiert.

ab wann dann und wie auf die gemessenen werte reagiert werden soll, kann man dann über die relay class einstellen.
dazu gibts dann auch die register definition schon:
uint8_t  shCtDlyOn           :4;     // 0x02, s:0, e:4
uint8_t  shCtDlyOff          :4;     // 0x02, s:4, e:8
uint8_t  shCtOn              :4;     // 0x03, s:0, e:4
uint8_t  shCtOff             :4;     // 0x03, s:4, e:8
uint8_t  shCtValLo;                  // 0x04, s:0, e:0
uint8_t  shCtValHi;                  // 0x05, s:0, e:0


jab

Hi Trilu,

Das sollte eigentlich schon funktionieren. Aktuell schickt er es nur immer an die zentrale also fehlt nur ein Channel dafür.  Remote events braucht man eigentlich nicht.


Gruß
Jan

trilu

mhh, ich denke schon das man remote events dafür braucht - nehmen wir mal an wir haben einen channel 4, dieser sendet je nach strommessung einen wert zwischen 0 und c8. diesen channel 4 verknüpfen wir mit dem relay auf channel 1 über die 41'er message. das relay weiss von der 40'er message, dass es aus sein soll - jetzt bekommt es eine 41'er message mit dem wert c8. also dass es eigentlich an ist.
das nutzen wir und lassen das relay wieder auf 0 schalten....

also 40'er message ist maßgebend und 41'er message überschreibt nur den zustand des relay's...


Samsi

Hallo Jan,

Also ich habe heute alles noch mal geflashed und sieht so weit gut uas. Allerdings eine Kleinigkeit irritiert mich noch und das könnte ein Fehler sein:


Also ich habe jetzt die internen Taster self01 und self02 NUR mit dem CH4 (Also SW_02) gepeert. Ich habe die Taster so konfiguriert, das der eine immer einschaltet und der andere immer aus. Das Funktioniert auch. Und es funktioniert auch so, wenn ich den Wechselschalter betätige. Also genau so wie es sein soll.
Allerdings, wenn ich am Wechselschalter ausschalte und dann den Taster drücke um einzuschalten, geht auch CH3(SW_01) an und die LED am Aktor leuchtet und im webfrontend geht bei CH3 auch die lampe an.
Drücke ich die taste noch mal, geht die LED am Aktor und die lampe im Frontend aus. Die Physikalische Lampe leuchtet aber weiter, so wie es auch sein soll.

Da CH3 aber nicht mit den internen Tastern gepeert ist, sollte das doch nicht passieren, oder? Mich beeinflusst das zwar nicht, weil ich den CH3 ja nicht  benötige.

Grüße
FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM

jab

Hi Samsi,

zum Verständnis:
Channel 3 (SW1) entspricht dem Schaltzustand des Relays (OFF = Stellung S1, ON = Stellung S2).
Channel 4 (SW2) enspricht dem Stromfluß (ON = Strom fließt, OFF = Strom fließt nicht).

SW2 kann den Strom leider nicht direkt beinflussen. Daher schaltet SW2 einfach SW1 wenn er den Zustand ändern will. Beide Channel laufen immer parallel. Man kann beide schalten und sie haben immer jeweils ihre Eigenschaften

Entweder ich verstehe das Problem nicht oder du verstehst das Konzept anders.


Gruß,
Jan

Samsi

ZitatChannel 3 (SW1) entspricht dem Schaltzustand des Relays (OFF = Stellung S1, ON = Stellung S2).
Channel 4 (SW2) enspricht dem Stromfluß (ON = Strom fließt, OFF = Strom fließt nicht).

Ok, ich versuche es noch  mal nach deiner Bescheibung.

Ich schalte nur Channel 4 mit den internen Tasten. Ich schalte channel 4 Ein, das Strom fließt, der Aktor muss natürlich das Relay schalten (tooglen). Also wenn das relay (Ch3) aus war geht es an und die LED/Webforntend sollte leuchten, meine Lampe Brennt. So weit so gut.
Schalte ich aber noch mal CH4 ein dürfte das ja keine Auswirkung auf CH3 haben, denn meine Lampe Brennt schon, strom fließt, das Relay bleibt an seiner Stelle. Und genau das passiert auch das relay ändert sich nicht, aber die LED am Aktor geht aus und ein neuer Schaltzustand für CH3 wird an FHEM übertragen.

Grüße

FHEM 5.5 / BBB Debian Wheezy

Homematic CFG-LAN

HM-Sec-MDIR / HM-Sec-SD / HM-Sec-WDS / HM-LC-Sw2-FM / HM-Sec-SC / HM-LC-Sw1PBU-FM / HM-SCI-3-FM / HM-Sec-Key / HM-RC-Key3-B / HM-LC-Dim1TPBU-FM /  HM-CC-RT-DN / HM-PBI-4-FM / HM-RC-Key4-2 / HM-ES-PMSw1-Pl / HM-LC-Sw4-WM