Autor Thema: neues Modul 66_EseraOneWire für den Esera 1-Wire Controller  (Gelesen 54976 mal)

Offline pizmus

  • Developer
  • Full Member
  • ****
  • Beiträge: 115
Antw:neues Modul 66_EseraOneWire für den Esera 1-Wire Controller
« Antwort #135 am: 23 Mai 2020, 22:36:03 »
Hallo ivor,
in der commandref zu den Esera... Modulen findest Du jeweils die Liste unterstützten Chips oder Esera Produkte. Für das Produkt 11221 gibt es noch nichts.
Wenn Du das Ding im ConfigTool nicht als 11221 konfigurierst, könnte es sein, dass es als DS2408 erscheint. In diesem Fall könnte das FHEM Modul EseraDigitalInOut eine Lösung sein.
Gruß,
pizmus

Offline ivor

  • New Member
  • *
  • Beiträge: 7
Antw:neues Modul 66_EseraOneWire für den Esera 1-Wire Controller
« Antwort #136 am: 30 Mai 2020, 09:50:50 »
Salü pizmus

Danke für den Tipp, ich bin zwar etwas weiter gekommen, jedoch die gewünschten Möglichkeiten konnte ich nicht ausschöpfen.

Der Dimmer hat zwei Kanäle, wobei ich mit dem zweiten am Rumspielen bin. Die Kanäle habe ich je als ein eigenes Device in FHEM eingebunden:

define EseraAnalogInOut_owEseraCtrl01_8C0000xxxxxxxxxxx_1 EseraAnalogInOut owEseraCtrl01 8C0000xxxxxxxxxxx DS2408 1 0
define EseraAnalogInOut_owEseraCtrl01_8C0000xxxxxxxxxxx_2 EseraAnalogInOut owEseraCtrl01 8C0000xxxxxxxxxxx DS2408 1 1

So kann ich teilweise die Lampe "etwas" ein- und ausschalten. Manchmal geht's mit on/off, manchmal löscht sie nicht komplett aus, sondern bleibt gedimmt, bzw. bei "on" geht sie nicht auf 100%. Manchmal geht's gar nicht. Mit "out" habe ich ähmlich komische Effekte.

Ich habe mal im Essera ConfigTool mitgeschnitten, wenn ich die Lampe bediene, vielleicht kannst Du mir ein Tipp geben, wie ich zum gewünschten Resultat kommen könnte:

C70000xxxxxxxxxxx Ist ein 8fach Relais (11220) - uninteressant
730000xxxxxxxxxxx Temp. Sensor 1 - uninteressant
510000xxxxxxxxxxx Temp. Sensor 2 - uninteressant
8C0000xxxxxxxxxxx Der ist spannend, 1-Wire Dimmer (11221)

Zeitstempel:
08:43:12 - Start Mitschnitt
08:43:20 - Slider vom 2.Kanal komplett auf die rechte Seite verschoben (höchster Wert ist dann 31) --> Screenshot
08:43:31 - Slider vom 2.Kanal auf 10 verschoben
08:43:39 - Slider vom 2.Kanal auf 0 verschoben (also Lampe wieder aus)

Die entsprechenden Kommandos wären laut Logfile:
set,owd,dim,5,2,31
set,owd,dim,5,2,10
set,owd,dim,5,2,0

Ich schätze, dass "5" die OWD ID ist und "2" der zweite Dimmer.

08:43:12 30.05.2020 1_EVT|8:43:19
08:43:12 30.05.2020 1_C70000xxxxxxxxxxx_1|0
08:43:12 30.05.2020 1_C70000xxxxxxxxxxx_2|00000000
08:43:12 30.05.2020 1_C70000xxxxxxxxxxx_3|0
08:43:12 30.05.2020 1_C70000xxxxxxxxxxx_4|00000000
08:43:12 30.05.2020 1_8C0000xxxxxxxxxxx_1|0
08:43:12 30.05.2020 1_8C0000xxxxxxxxxxx_2|00000000
08:43:12 30.05.2020 1_8C0000xxxxxxxxxxx_3|0
08:43:12 30.05.2020 1_8C0000xxxxxxxxxxx_4|0
08:43:12 30.05.2020 1_730000xxxxxxxxxxx|1206
08:43:12 30.05.2020 1_510000xxxxxxxxxxx|1212
---
>>> get,sys,data
08:43:13 30.05.2020 1_EVT|8:43:20
08:43:13 30.05.2020 1_C70000xxxxxxxxxxx_1|0
08:43:13 30.05.2020 1_C70000xxxxxxxxxxx_2|00000000
08:43:13 30.05.2020 1_C70000xxxxxxxxxxx_3|0
08:43:13 30.05.2020 1_C70000xxxxxxxxxxx_4|00000000
08:43:13 30.05.2020 1_8C0000xxxxxxxxxxx_1|0
08:43:13 30.05.2020 1_8C0000xxxxxxxxxxx_2|00000000
08:43:13 30.05.2020 1_8C0000xxxxxxxxxxx_3|0
08:43:13 30.05.2020 1_8C0000xxxxxxxxxxx_4|0
08:43:13 30.05.2020 1_730000xxxxxxxxxxx|1206
08:43:13 30.05.2020 1_510000xxxxxxxxxxx|1212
---
>>> set,owd,dim,5,2,31
08:43:20 30.05.2020 1_EVT|8:43:27
08:43:20 30.05.2020 1_FFFFFFFFFFFFFFFF_4|31
---
08:43:22 30.05.2020 1_EVT|8:43:29
---
08:43:22 30.05.2020 1_C70000xxxxxxxxxxx_1|0
08:43:22 30.05.2020 1_C70000xxxxxxxxxxx_2|00000000
08:43:22 30.05.2020 1_C70000xxxxxxxxxxx_3|0
08:43:22 30.05.2020 1_C70000xxxxxxxxxxx_4|00000000
08:43:22 30.05.2020 1_8C0000xxxxxxxxxxx_1|0
08:43:22 30.05.2020 1_8C0000xxxxxxxxxxx_2|00000000
08:43:22 30.05.2020 1_8C0000xxxxxxxxxxx_3|0
08:43:22 30.05.2020 1_8C0000xxxxxxxxxxx_4|31
08:43:22 30.05.2020 1_730000xxxxxxxxxxx|1206
08:43:22 30.05.2020 1_510000xxxxxxxxxxx|1212
---
08:43:29 30.05.2020 1_EVT|8:43:35
08:43:29 30.05.2020 1_8C0000xxxxxxxxxxx_1|0
08:43:29 30.05.2020 1_8C0000xxxxxxxxxxx_2|00000000
08:43:29 30.05.2020 1_8C0000xxxxxxxxxxx_3|0
08:43:29 30.05.2020 1_8C0000xxxxxxxxxxx_4|31
---
>>> set,owd,dim,5,2,10
08:43:31 30.05.2020 1_EVT|8:43:38
08:43:31 30.05.2020 1_FFFFFFFFFFFFFFFF_4|10
---
08:43:32 30.05.2020 1_EVT|8:43:39
08:43:32 30.05.2020 1_C70000xxxxxxxxxxx_1|0
08:43:32 30.05.2020 1_C70000xxxxxxxxxxx_2|00000000
08:43:32 30.05.2020 1_C70000xxxxxxxxxxx_3|0
08:43:32 30.05.2020 1_C70000xxxxxxxxxxx_4|00000000
08:43:32 30.05.2020 1_8C0000xxxxxxxxxxx_1|0
08:43:32 30.05.2020 1_8C0000xxxxxxxxxxx_2|00000000
08:43:32 30.05.2020 1_8C0000xxxxxxxxxxx_3|0
08:43:32 30.05.2020 1_8C0000xxxxxxxxxxx_4|10
08:43:32 30.05.2020 1_730000xxxxxxxxxxx|1206
08:43:32 30.05.2020 1_510000xxxxxxxxxxx|1212
---
>>> set,owd,dim,5,2,0
08:43:39 30.05.2020 1_EVT|8:43:45
08:43:39 30.05.2020 1_8C0000xxxxxxxxxxx_1|0
08:43:39 30.05.2020 1_8C0000xxxxxxxxxxx_2|00000000
08:43:39 30.05.2020 1_8C0000xxxxxxxxxxx_3|0
08:43:39 30.05.2020 1_8C0000xxxxxxxxxxx_4|10
08:43:39 30.05.2020 1_EVT|8:43:46
08:43:39 30.05.2020 1_FFFFFFFFFFFFFFFF_4|0
---
08:43:42 30.05.2020 1_EVT|8:43:49
08:43:42 30.05.2020 1_KAL|1
---
08:43:42 30.05.2020 1_EVT|8:43:49
08:43:42 30.05.2020 1_C70000xxxxxxxxxxx_1|0
08:43:42 30.05.2020 1_C70000xxxxxxxxxxx_2|00000000
08:43:42 30.05.2020 1_C70000xxxxxxxxxxx_3|0
08:43:42 30.05.2020 1_C70000xxxxxxxxxxx_4|00000000
08:43:42 30.05.2020 1_8C0000xxxxxxxxxxx_1|0
08:43:42 30.05.2020 1_8C0000xxxxxxxxxxx_2|00000000
08:43:42 30.05.2020 1_8C0000xxxxxxxxxxx_3|0
08:43:42 30.05.2020 1_8C0000xxxxxxxxxxx_4|0
08:43:42 30.05.2020 1_730000xxxxxxxxxxx|1206
08:43:42 30.05.2020 1_510000xxxxxxxxxxx|1212
---
08:43:49 30.05.2020 1_EVT|8:43:55
08:43:49 30.05.2020 1_8C0000xxxxxxxxxxx_1|0
08:43:49 30.05.2020 1_8C0000xxxxxxxxxxx_2|00000000
08:43:49 30.05.2020 1_8C0000xxxxxxxxxxx_3|0
08:43:49 30.05.2020 1_8C0000xxxxxxxxxxx_4|0
---
08:43:52 30.05.2020 1_EVT|8:43:59
08:43:52 30.05.2020 1_C70000xxxxxxxxxxx_1|0
08:43:52 30.05.2020 1_C70000xxxxxxxxxxx_2|00000000
08:43:52 30.05.2020 1_C70000xxxxxxxxxxx_3|0
08:43:52 30.05.2020 1_C70000xxxxxxxxxxx_4|00000000
08:43:52 30.05.2020 1_8C0000xxxxxxxxxxx_1|0
08:43:52 30.05.2020 1_8C0000xxxxxxxxxxx_2|00000000
08:43:52 30.05.2020 1_8C0000xxxxxxxxxxx_3|0
08:43:52 30.05.2020 1_8C0000xxxxxxxxxxx_4|0
08:43:52 30.05.2020 1_730000xxxxxxxxxxx|1206
08:43:52 30.05.2020 1_510000xxxxxxxxxxx|1212

gruss ivo
« Letzte Änderung: 30 Mai 2020, 09:59:40 von ivor »

Offline pizmus

  • Developer
  • Full Member
  • ****
  • Beiträge: 115
Antw:neues Modul 66_EseraOneWire für den Esera 1-Wire Controller
« Antwort #137 am: 31 Mai 2020, 11:34:08 »
Hallo ivor,
vielen Dank für die gesammelten Informationen. Ich habe mich entschieden auf der Basis ein neues Modul zu schreiben, denn der Dimmer passt konzeptionell nicht zu den Digital Ein-/Ausgängen. Das neue Modul ist angehängt. Du musst auch 66_EseraOneWire.pm ersetzen. autocreate ist implementiert. Wichtig ist, dass Du per Esera ConfigTool dem Dimmer die Produktnummer (11221) zuweist! Schau Dir den Source Code mal in Ruhe an und probiere ihn aus. Da ich die Hardware selbst nicht habe konnte ich nicht vollständig testen. Die Log Einträge würden mich auf jeden Fall interessieren.
Gruß,
pizmus

Offline pizmus

  • Developer
  • Full Member
  • ****
  • Beiträge: 115
Antw:neues Modul 66_EseraOneWire für den Esera 1-Wire Controller
« Antwort #138 am: 31 Mai 2020, 16:09:52 »
Es gibt ein neues Modul EseraDimmer für die Dimmer Produkte 11221 und 11222 von Esera. autocreate erzeugt für jeden der zwei Kanäle ein eigenes Device.
Gruß,
pizmus

Offline ivor

  • New Member
  • *
  • Beiträge: 7
Config-Schnippsel für die Verwendung des Esera 11221 Dimmers
« Antwort #139 am: 02 Juni 2020, 08:20:46 »
Salü pizmus

Besten Dank für das Modul, es funktioniert problemlos.

Anbei den Code, wie ich's zusammen mit einem Slider für den Dimmer verwende für den Kanal 2 als Beispiel:

############################
# 2fach Dimmer Device / Kanal 2

# Dimmer Device / Kanal 2 definieren (autocreate)
define EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2 EseraDimmer owEseraCtrl01 8C0000xxxxxxxxxx 11221 2
attr EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2 room EseraDimmer
attr EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2 alias Lampe Dungeon

# Logging für Dimmer Device / Kanal 2 (autocreate)
define FileLog_EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2 FileLog ./log/EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2-%Y.log EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2
attr FileLog_EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2 room EseraDimmer
attr FileLog_EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2 logtype text

# Netter Slider dummy definieren für Dimmer Device / Kanal 2
define EseraDimmer_Slider_2 dummy
attr EseraDimmer_Slider_2 room EseraDimmer
attr EseraDimmer_Slider_2 alias Lampe Dungeon Dimmer
attr EseraDimmer_Slider_2 setList out:colorpicker,BRI,0,1,31
attr EseraDimmer_Slider_2 webCmd out

# Triggert das Slider dummy Device um die änderung an den Dimmer weiter zu geben
define nf_rs_Slider_X_EseraDimmer_2 notify EseraDimmer_Slider_2 \
  { my $valDimSlider = Value("EseraDimmer_Slider_2");; \
  fhem("set EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2 $valDimSlider") }

# Triggert das Dimmer Device um die änderung an den Slider weiter zu geben
#   (Update des Sliders kann ein paar Sekunden dauern - no stress)
define nf_rs_EseraDimmer_X_Slider_2 notify EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2:* \
  { my $valDimDimmer = ReadingsVal("EseraDimmer_owEseraCtrl01_8C0000xxxxxxxxxx_2","out","0");; \
  fhem ("set EseraDimmer_Slider_2 $valDimDimmer") }
############################

Vielleicht kann's noch jemand brauchen.

gruss ivo
« Letzte Änderung: 02 Juni 2020, 10:40:01 von ivor »