mqtt2.template: bugs, Fragen, Anregungen

Begonnen von Beta-User, 15 Dezember 2018, 11:44:43

Vorheriges Thema - Nächstes Thema

travelling-man

Hallo Otto,

Du hast natürlich Recht. Das Device hat noch ein weiteres readingList.


shellies/EG_BZ_WS/announce:.* { json2nameValue($EVENT) }


Dadurch greift das globale announce nicht. https://github.com/mhop/fhem-mirror/blob/master/fhem/FHEM/lib/AttrTemplate/mqtt2.template#L2524
Ein Bugfix kann man nur übers SVN einkippen?

VG
Basti

OdfFhem

Zitat von: travelling-man am 13 Januar 2022, 19:23:13

shellies/announce:.* { $EVENT =~ m,..id...EG_BZ_WS...mac.*, ? json2nameValue($EVENT) : return }



{"id":"EG_BZ_WS","model":"SHSW-1","mac":"xxxxxxxx","ip":"xxxxxxx","new_fw":false,"fw_ver":"20211109-124958/v1.11.7-g682a0db"}


Zitat von: travelling-man am 13 Januar 2022, 23:49:44

shellies/EG_BZ_WS/announce:.* { json2nameValue($EVENT) }


Mit den angegebenen Informationen ist klar, dass - abhängig vom Topic - nur ein Eintrag aus readingList relevant sein kann. Der eine Eintrag verarbeitet allgemeine Events, der andere Eintrag die speziell für das FHEM-Device gedachten Events.

Wenn Du sagst, dass der von Dir angegebene Payload verarbeitet wurde, kann er nur zu einem der beiden Einträge passen ... der mit der Bedingung kann es schon mal nicht sein ... bei der Ermittlung, welcher Eintrag relevant ist, spielt allerdings der Payload gar keine Rolle ... das Topic alleine entscheidet bei den von Dir genannten Einträgen aus der readingList.

Mir erscheint die formulierte Bedingung im allgemeinen Eintrag auch verbesserungswürdig ... klar, man will den Payload nur verarbeiten, wenn er für das betrachtete FHEM-Device gedacht ist ... aber wieso klammert man sich zusätzlich an "mac", denn generell kann "mac" irgendwo vor oder hinter der "id" stehen ... übrigens ist auch die "id" nicht generell auf den Anfang des Payloads fixiert, was die beiden Punkte am Anfang des regulären Ausdrucks suggerieren könnten - die beiden Punkte stehen für beliebige Zeichen und nicht zwanghaft für {" ...

***

Jeder kann Verbesserungsvorschläge machen, aber nicht jeder kann diese selbst für die Allgemeinheit ins SVN einstellen ... interessant wäre jetzt vermutlich, wie Dein Bugfix aussieht ... "(weiter)entwickeln" und "austesten" kann man ja vorab nach Herzenslust auf seinem eigenen System ...

Beta-User

Was dieses "announce"-Topic angeht, war ich schon immer skeptisch, ob man das braucht, und wenn es (meistens?) untauglich ist, stellt sich die Frage, ob man das nicht ganz "erden" sollte und (zusätzlich) empfehlen, diesen Zweig in "ignoreRegexp" zu ergänzen (statt das zu "verbessern")...

[partly OT]
Könnte evtl. jemand isy den "Knopf" zeigen, wie man bei dem shellyplus1 das "generic status update via MQTT" einschaltet... (https://forum.fhem.de/index.php/topic,125408.0.html)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Brandensittich

Hallo zusammen, arbeitet schon jemand an einem Template für den Shelly Uni?

Hier ein List vom Device so wie es vom Autocreate angelegt wurde:

Internals:
   CFGFN     
   CID        shellyuni_98CDAC2514D0
   DEF        shellyuni_98CDAC2514D0
   DEVICETOPIC MQTT2_shellyuni_98CDAC2514D0
   FUUID      61ee089b-f33f-7637-2fd5-b0408adf85b24269
   IODev      MQTT2
   LASTInputDev MQTT2
   MQTT2_MSGCNT 6310
   MQTT2_TIME 2022-01-24 16:14:56
   MSGCNT     6310
   NAME       MQTT2_shellyuni_98CDAC2514D0
   NR         461
   STATE      ???
   TYPE       MQTT2_DEVICE
   READINGS:
     2022-01-24 15:43:27   0_event         
     2022-01-24 15:43:27   0_event_cnt     0
     2022-01-24 15:43:27   1_event         
     2022-01-24 15:43:27   1_event_cnt     0
     2022-01-24 15:43:27   announce_fw_ver 20211109-131507/v1.11.7-g682a0db
     2022-01-24 15:43:27   announce_id     shellyuni-98CDAC2514D0
     2022-01-24 15:43:27   announce_ip     *****
     2022-01-24 15:43:27   announce_mac    98CDAC2514D0
     2022-01-24 15:43:27   announce_model  SHUNI-1
     2022-01-24 15:43:27   announce_new_fw false
     2022-01-24 15:43:27   info_actions_stats_skipped 0
     2022-01-24 15:43:27   info_adcs_1_voltage 0.00
     2022-01-24 15:43:27   info_cfg_changed_cnt 0
     2022-01-24 15:43:27   info_cloud_connected false
     2022-01-24 15:43:27   info_cloud_enabled false
     2022-01-24 15:43:27   info_fs_free    147086
     2022-01-24 15:43:27   info_fs_size    233681
     2022-01-24 15:43:27   info_has_update false
     2022-01-24 15:43:27   info_inputs_1_event
     2022-01-24 15:43:27   info_inputs_1_event_cnt 0
     2022-01-24 15:43:27   info_inputs_1_input 0
     2022-01-24 15:43:27   info_inputs_2_event
     2022-01-24 15:43:27   info_inputs_2_event_cnt 0
     2022-01-24 15:43:27   info_inputs_2_input 0
     2022-01-24 15:43:27   info_mac        98CDAC2514D0
     2022-01-24 15:43:27   info_mqtt_connected true
     2022-01-24 15:43:27   info_ram_free   37488
     2022-01-24 15:43:27   info_ram_total  49984
     2022-01-24 15:43:27   info_relays_1_has_timer false
     2022-01-24 15:43:27   info_relays_1_ison false
     2022-01-24 15:43:27   info_relays_1_source input
     2022-01-24 15:43:27   info_relays_1_timer_duration 0
     2022-01-24 15:43:27   info_relays_1_timer_remaining 0
     2022-01-24 15:43:27   info_relays_1_timer_started 0
     2022-01-24 15:43:27   info_relays_2_has_timer false
     2022-01-24 15:43:27   info_relays_2_ison false
     2022-01-24 15:43:27   info_relays_2_source input
     2022-01-24 15:43:27   info_relays_2_timer_duration 0
     2022-01-24 15:43:27   info_relays_2_timer_remaining 0
     2022-01-24 15:43:27   info_relays_2_timer_started 0
     2022-01-24 15:43:27   info_serial     1
     2022-01-24 15:43:27   info_time       15:43
     2022-01-24 15:43:27   info_unixtime   1643035406
     2022-01-24 15:43:27   info_update_has_update false
     2022-01-24 15:43:27   info_update_new_version 20211109-131507/v1.11.7-g682a0db
     2022-01-24 15:43:27   info_update_old_version 20211109-131507/v1.11.7-g682a0db
     2022-01-24 15:43:27   info_update_status idle
     2022-01-24 15:43:27   info_uptime     162472
     2022-01-24 15:43:27   info_wifi_sta_connected true
     2022-01-24 15:43:27   info_wifi_sta_ip *****
     2022-01-24 15:43:27   info_wifi_sta_rssi -68
     2022-01-24 15:43:27   info_wifi_sta_ssid *****
     2022-01-24 16:14:56   input_0         0
     2022-01-24 16:14:56   input_1         0
     2022-01-24 15:43:27   online          true
     2022-01-24 16:14:56   relay_0         off
     2022-01-24 16:14:56   relay_1         off
Attributes:
   IODev      MQTT2
   readingList shellyuni_98CDAC2514D0:shellies/shellyuni-98CDAC2514D0/online:.* online
shellyuni_98CDAC2514D0:shellies/shellyuni-98CDAC2514D0/announce:.* { json2nameValue($EVENT, 'announce_', $JSONMAP) }
shellyuni_98CDAC2514D0:shellies/shellyuni-98CDAC2514D0/info:.* { json2nameValue($EVENT, 'info_', $JSONMAP) }
shellyuni_98CDAC2514D0:shellies/shellyuni-98CDAC2514D0/relay/0:.* relay_0
shellyuni_98CDAC2514D0:shellies/shellyuni-98CDAC2514D0/relay/1:.* relay_1
shellyuni_98CDAC2514D0:shellies/shellyuni-98CDAC2514D0/input/0:.* input_0
shellyuni_98CDAC2514D0:shellies/shellyuni-98CDAC2514D0/input_event/0:.* { json2nameValue($EVENT, '0_', $JSONMAP) }
shellyuni_98CDAC2514D0:shellies/shellyuni-98CDAC2514D0/input/1:.* input_1
shellyuni_98CDAC2514D0:shellies/shellyuni-98CDAC2514D0/input_event/1:.* { json2nameValue($EVENT, '1_', $JSONMAP) }
   room       MQTT2_DEVICE


Danke für eure Unterstützung!

Viele Grüße
Christian

Beta-User

Paßt das "shelly25_split" nicht auch dafür?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Brandensittich

Zitat von: Beta-User am 25 Januar 2022, 10:53:31
Paßt das "shelly25_split" nicht auch dafür?
Ich probiere es aus und melde mich wieder

Brandensittich

Zitat von: Beta-User am 25 Januar 2022, 10:53:31
Paßt das "shelly25_split" nicht auch dafür?
Hallo Beta-User,

grundsätzlich passt das zum schalten mit den beiden Kanälen. Die Temperaturanzeigen in der Übersicht funktionieren logischerweise nicht und wie es mit messen und den übrigen Funktionen des UNI aussieht kann ich nicht sagen, weil ich es nicht getestet habe. Aber Eingänge lesen und Ausgänge schalten funktioniert.
Eine Anpassung speziell für den UNI wäre aber wahrscheinlich für eine vollständige Unterstützung erforderlich. Leider bin ich dazu überhaupt nicht kompetent.
Danke für den Tipp mit dem shelly25_split. Mein Problem ist damit erstmal erledigt.

Viele Grüße
Christian

Beta-User

Zitat von: Brandensittich am 28 Januar 2022, 10:09:29
grundsätzlich passt das zum schalten mit den beiden Kanälen. Die Temperaturanzeigen in der Übersicht funktionieren logischerweise nicht und wie es mit messen und den übrigen Funktionen des UNI aussieht kann ich nicht sagen, weil ich es nicht getestet habe. Aber Eingänge lesen und Ausgänge schalten funktioniert.
Vielleicht machst du für das Thema einen separaten Thread auf oder hängst dich an den "allgemeinen Shelly-Thread" mit dran (da sind ein paar Leute, die die Hardware - im Unterschied zu mir - vielleicht auch haben)?

Auf Basis des von dir gezeigten list kann ich dir nicht so recht folgen. Der UNI hatte bis dato nur die Schaltzustände geliefert, und der Teil sollte mit dem "kleinen split"-template zusammenpassen.

Neuerdings scheint man aber zumindest Infos über laufende timer zu bekommen...?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

popy

Hallo.

Habe jetzt endlich mal, teilw. erfolgreich auf MQTT2_SERVER & DEVICE von mosquitto + MQTT + TASMOTA_DEVICE (abgekündigt) umgestellt.
Einfache Sonoff basic's mit tasmota funktionieren einwandfrei.

Jetzt habe ich aber einen SOnoff Basic mit an den IN's angeschlossenen Betten Sensoren, diese werden wie folgt gesendet im Tasmota LOG:


19:56:23 MQT: /smarthome/sz/bedsensor/cmnd/POWER2 = ON
19:56:23 MQT: /smarthome/sz/bedsensor/stat/RESULT = {"Command":"Error"}
19:56:24 MQT: /smarthome/sz/bedsensor/cmnd/POWER2 = OFF
19:56:24 MQT: /smarthome/sz/bedsensor/stat/RESULT = {"Command":"Error"}
19:56:24 MQT: /smarthome/sz/bedsensor/cmnd/POWER2 = ON
19:56:24 MQT: /smarthome/sz/bedsensor/cmnd/POWER2 = OFF
19:56:24 MQT: /smarthome/sz/bedsensor/stat/RESULT = {"Command":"Error"}
19:56:25 MQT: /smarthome/sz/bedsensor/stat/RESULT = {"Command":"Error"}
19:56:25 MQT: /smarthome/sz/bedsensor/cmnd/POWER2 = ON
19:56:25 MQT: /smarthome/sz/bedsensor/stat/RESULT = {"Command":"Error"}
19:56:40 MQT: /smarthome/sz/bedsensor/cmnd/POWER2 = OFF
19:56:40 MQT: /smarthome/sz/bedsensor/stat/RESULT = {"Command":"Error"}


Wie kann ich das nun dem MQTT2 device beibringen damit das auch POWER2 & POWER3 übersetzt?

Danke

Beta-User

Zitat von: popy am 29 Januar 2022, 20:03:56
Wie kann ich das nun dem MQTT2 device beibringen damit das auch POWER2 & POWER3 übersetzt?
Indem du ggf. einfach die betreffenden Topics abonnierst...?

Kann sein, dass das "basic"-attrTemplate das Attribut "autocreate" am MQTT2_DEVICE auf 0 stellt - das dann ggf. ändern, dann sollten die weiteren Topics automatisch erkannt werden. (Wobei: Da ist Großschreibung - ist da überhaupt ein attrTemplate im Spiel gewesen?!?)

Na jedenfalls:
Falls du nicht mit obigem Hinweis bereits weiterkommst, empfehle ich die Lektüre von https://wiki.fhem.de/wiki/MQTT2_DEVICE_-_Schritt_f%C3%BCr_Schritt.

Falls du damit dann auch nicht weiterkommst, mach bitte einen neuen Thread auf und liefere alle Infos, die in https://forum.fhem.de/index.php/topic,112327.0.html zu finden sind.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

masterpete23

#505
Nabend,

ich habe gerade ein update gefahren. Nun habe ich eine zigbee2mqtt Gruppe erstellt und wollte sie manuell adden ( wie ich hier gelesen hatte : https://forum.fhem.de/index.php/topic,91394.msg908357.html#msg908357 ).
Leider finde ich im template die zigbee2mqtt_light_dimmer
in der Datei /opt/fhem/FHEM/lib/AttrTemplate/mqtt2.template sehe ich es aber.
Habe schon einen anderen Browser funktioniert. Die attr Liste sieht irgendwie anders aus als sonst - ich kann es aber nicht beschreiben / erklären
Kann jemand helfen?


EDIT: Ich vermute, dass es an der fehlenden CID liegt.

Edit2: Nach dem einmaligen Aus/Ein Schalten wurde per autocreate ein neues Objekt erstellt. Dieses konnte ich normal das template zuweisen.

Somit erledigt. Nur falls es noch wer hat, lasse ich es hier drin, wenn iO.

carlos

Zitat von: kjmEjfu am 06 April 2021, 10:03:09
Ich habe mal ein Template für openWB gebastelt. Allerdings frage ich mich, ob man den Teil readingList irgendwie kürzen kann. openWB nutzt (derzeit) keine JSON, sondern packt tatsächlich in jeden Pfad(?) den entsprechenden Wert rein.

name:openWB_with_two_loading_points
filter:TYPE=MQTT2_DEVICE:FILTER=readingList=.*openWB.*
desc:Applies to openWB interface with 2 loading point. Firmware 1.9.x+ is needed <br> For direct connection to openWB MQTT Server. Otherwise check devicetopic.
#order:L_17b
#par:BASE_TOPIC;base topic: Base topic prefix, without trailing /;{ AttrVal("DEVICE","devicetopic",AttrVal("DEVICE","readingList","")) =~ m,[\b]?([^\/:]+)[\/].+, ? $1 : undef }
#par:IODEV;IO Dev without trailing :;{ AttrVal("DEVICE","IODev","") }
attr DEVICE devicetopic openWB
attr DEVICE icon building_carport_socket
attr DEVICE model openWB
setreading DEVICE attrTemplateVersion 20210406
attr DEVICE devicetopic openWB
attr DEVICE stateformat Lademodus: ChargeMode | Ladestatus Lp1: lp_1_ChargeStatus | verbleibende Ladezeit Lp1: lp_1_TimeRemaining <br> Ladestatus Lp2: lp_2_ChargeStatus | verbleibende Ladezeit Lp2: lp_2_TimeRemaining
attr DEVICE readingList \
$\DEVICETOPIC/global/WHouseConsumption:.* WHouseConsumption \
$\DEVICETOPIC/global/WAllChargePoints:.* WAllChargePoints \
$\DEVICETOPIC/global/ChargeMode:.* {my %h=(0=>'SofortLaden',1=>'MinPV',2=>'NurPV',3=>'Stop',4=>'Standby'); return {ChargeMode=>$h{$EVENT}}} \
$\DEVICETOPIC/system/Date:.* Date \
$\DEVICETOPIC/system/Timestamp:.* Timestamp \
$\DEVICETOPIC/system/Uptime:.* Uptime \
$\DEVICETOPIC/system/IpAddress:.* IPAddress \
$\DEVICETOPIC/system/Version:.* Version \
$\DEVICETOPIC/evu/ASchieflast:.* evu_ASchieflast \
$\DEVICETOPIC/evu/Hz:.* evu_Hz \
$\DEVICETOPIC/evu/APhase1:.* evu_Phase1 \
$\DEVICETOPIC/evu/APhase2:.* evu_APhase2 \
$\DEVICETOPIC/evu/APhase3:.* evu_APhase3 \
$\DEVICETOPIC/evu/PfPhase1:.* evu_PfPhase1 \
$\DEVICETOPIC/evu/PfPhase2:.* evu_PfPhase2 \
$\DEVICETOPIC/evu/PfPhase3:.* evu_PfPhase3 \
$\DEVICETOPIC/evu/VPhase1:.* evu_VPhase1 \
$\DEVICETOPIC/evu/VPhase2:.* evu_VPhase2 \
$\DEVICETOPIC/evu/VPhase3:.* evu_VPhase3 \
$\DEVICETOPIC/evu/WPhase1:.* evu_WPhase1 \
$\DEVICETOPIC/evu/WPhase2:.* evu_WPhase2 \
$\DEVICETOPIC/evu/WPhase3:.* evu_WPhase3 \
$\DEVICETOPIC/evu/W:.* evu_W_evu \
$\DEVICETOPIC/evu/WhExported:.* evu_WhExported \
$\DEVICETOPIC/lp/1/P%Soc:.* lp_1_Pct_Soc \
$\DEVICETOPIC/lp/1/countPhasesInUse:.* lp_1_countPhasesInUse \
$\DEVICETOPIC/lp/1/ChargePointEnabled:.* lp_1_ChargePointEnabled \
$\DEVICETOPIC/lp/1/ChargeStatus:.* lp_1_ChargeStatus \
$\DEVICETOPIC/lp/1/kWhChargedSincePlugged:.* lp_1_kWhChargedSincePlugged \
$\DEVICETOPIC/lp/1/kWhActualCharged:.* lp_1_kWhActualCharged \
$\DEVICETOPIC/lp/1/kWhCounter:.* lp_1_kWhCounter \
$\DEVICETOPIC/lp/1/strChargePointName:.* lp_1_strChargePointName \
$\DEVICETOPIC/lp/1/TimeRemaining:.* lp_1_TimeRemaining \
$\DEVICETOPIC/lp/1/VPhase1:.* lp_1_VPhase1 \
$\DEVICETOPIC/lp/1/VPhase2:.* lp_1_VPhase2 \
$\DEVICETOPIC/lp/1/VPhase3:.* lp_1_VPhase3 \
$\DEVICETOPIC/lp/1/APhase1:.* lp_1_APhase1 \
$\DEVICETOPIC/lp/1/APhase2:.* lp_1_APhase2 \
$\DEVICETOPIC/lp/1/APhase3:.* lp_1_APhase3 \
$\DEVICETOPIC/lp/1/W:.* lp_1_W \
$\DEVICETOPIC/lp/2/P%Soc:.* lp_2_Pct_Soc \
$\DEVICETOPIC/lp/2/countPhasesInUse:.* lp_2_countPhasesInUse \
$\DEVICETOPIC/lp/2/ChargePointEnabled:.* lp_2_ChargePointEnabled \
$\DEVICETOPIC/lp/2/ChargeStatus:.* lp_2_ChargeStatus \
$\DEVICETOPIC/lp/2/kWhChargedSincePlugged:.* lp_2_kWhChargedSincePlugged \
$\DEVICETOPIC/lp/2/kWhActualCharged:.* lp_2_kWhActualCharged \
$\DEVICETOPIC/lp/2/kWhCounter:.* lp_2_kWhCounter \
$\DEVICETOPIC/lp/2/strChargePointName:.* lp_2_strChargePointName \
$\DEVICETOPIC/lp/2/TimeRemaining:.* lp_2_TimeRemaining \
$\DEVICETOPIC/lp/2/VPhase1:.* lp_2_VPhase1 \
$\DEVICETOPIC/lp/2/VPhase2:.* lp_2_VPhase2 \
$\DEVICETOPIC/lp/2/VPhase3:.* lp_2_VPhase3 \
$\DEVICETOPIC/lp/2/APhase1:.* lp_2_APhase1 \
$\DEVICETOPIC/lp/2/APhase2:.* lp_2_APhase2 \
$\DEVICETOPIC/lp/2/APhase3:.* lp_2_APhase3 \
$\DEVICETOPIC/lp/2/W:.* lp_2_W \
deletereading -q DEVICE (?!associatedWith).*
attr DEVICE setlist Lademodus:SofortLaden,Min+PV,NurPV,Stop,Standby { my %h=(SofortLaden=>'0','Min+PV'=>'1',NurPV=>'2',Stop=>'3',Standby=>'4');qq({$DEVICETOPIC/set/Chargemode $h{$EVTPART1}}) } \
Lp1_DirectChargeSubMode:Aus,kWh_Laden,SoC_Laden { my %h=(Aus=>'0',kWh_Laden=>'1',SoC_Laden=>'2');qq({$DEVICETOPIC/set/lp/1/DirectChargeSubMode $h{$EVTPART1}}) } \
Lp1_DirectChargeSoc:slider,1,1,100 $DEVICETOPIC/set/lp/1/DirectChargeSoc { $EVTPART1 } \
Lp1_DirectChargeAmps:slide,6,1,32 $DEVICETOPIC/set/lp/1/DirectChargeAmps { $EVTPART1 } \
Lp1_kWhDirectChargeToCharge:slide,1,1,100 $DEVICETOPIC/set/lp/1/kWhDirectChargeToCharge { $EVTPART1 } \
Lp1_ChargePointEnabled:Ein,Aus { my $value = $EVTPART1 eq "Ein" ? "1" : "0"; qq({$DEVICETOPIC/set/lp/1/ChargePointEnabled $value}) } \
Lp1_ResetDirectCharge:noArg $DEVICETOPIC/set/lp/1/boolResetDirectCharge 1 \
Lp2_DirectChargeSubMode:Aus,kWh_Laden,SoC_Laden { my %h=(Aus=>'0',kWh_Laden=>'1',SoC_Laden=>'2');qq({$DEVICETOPIC/set/lp/2/DirectChargeSubMode $h{$EVTPART1}}) } \
Lp2_DirectChargeSoc:slider,1,1,100 $DEVICETOPIC/set/lp/2/DirectChargeSoc { $EVTPART1 } \
Lp2_DirectChargeAmps:slide,6,1,32 $DEVICETOPIC/set/lp/2/DirectChargeAmps { $EVTPART1 } \
Lp2_kWhDirectChargeToCharge:slide,1,1,100 $DEVICETOPIC/set/lp/2/kWhDirectChargeToCharge { $EVTPART1 } \
Lp2_ChargePointEnabled:Ein,Aus { my $value = $EVTPART1 eq "Ein" ? "1" : "0"; qq({$DEVICETOPIC/set/lp/2/ChargePointEnabled $value}) } \
Lp2_ResetDirectCharge:noArg $DEVICETOPIC/set/lp(2/boolResetDirectCharge 1



Warum wurde das OpenWB template nicht übernommen oder übersehe ich da was?

Gruß Carlos
FHEM svn auf Intel NUC mit proxmox,1 UDOO, 3 Raspberry Pi, signalduino, nanoCUL, div. Homematic Komponenten, toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

Beta-User

Zitat von: carlos am 18 Juni 2022, 11:53:58
Warum wurde das OpenWB template nicht übernommen oder übersehe ich da was?
Na ja, es gab irgendwie (aus meiner Sicht) ein paar offene Punkte (siehe die Folgebeiträge), so dass ich nach wie vor nicht so richtig sicher bin, ob das jetzt irgendwie als "fertig" betrachtet werden soll/kann...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

HomeAlone

#508
Update: Da die Kommunikation über den "alten / falschen Thread lief, dort aber gelöst wurde, hier der Link dorthin:
https://forum.fhem.de/index.php/topic,129414.msg1237494.html#msg1237494
Sorry noch mal für die Konfusion.

Hallo zusammen,

ich habe diese Lampe von Paul Neuhaus: https://www.zigbee2mqtt.io/devices/NLG-TW_light.html
Über die GUI von Zigbee2MQTT kann ich sie einwandfrei steuern.

In fhem habe ich ihr das mqttTemplate zigbee2mqtt_light_cct verpasst.

Das funktioniert soweit auch einwandfrei, bis auf eine Kleinigkeit:
Wenn ich über den Color Picker in der GUI von fhem die Farbtemperatur ändere, springt der Slider nach der Einstellung immer wieder auf den Minimalwert zurück.
Dies ist aber nur optisch - die Lampe wird sehr wohl auf die ausgewählte Farbtemperatur eingestellt. Das läßt sich sowohl visuell an der Lampe als auch über den Blick in die Zigbee2MQTT Oberfläche überprüfen, wo der Wert entsprechend abgeändert wird.

Hier die Definition der Lampe in fhem:
defmod MQTT2_zigbee_wz_Sofatisch_Licht MQTT2_DEVICE zigbee_wz_Sofatisch_Licht
attr MQTT2_zigbee_wz_Sofatisch_Licht alias MQTT2_zigbee_wz_Sofatisch_Licht
attr MQTT2_zigbee_wz_Sofatisch_Licht devicetopic zigbee2mqtt/wz_Sofatisch_Licht
attr MQTT2_zigbee_wz_Sofatisch_Licht genericDeviceType light
attr MQTT2_zigbee_wz_Sofatisch_Licht homebridgeMapping Brightness=brightness::brightness,maxValue=100,factor=0.39216,delay=true
attr MQTT2_zigbee_wz_Sofatisch_Licht icon light_control
attr MQTT2_zigbee_wz_Sofatisch_Licht jsonMap color_temp:ct color_temp_startup:ct_startup
attr MQTT2_zigbee_wz_Sofatisch_Licht model zigbee2mqtt_light_cct
attr MQTT2_zigbee_wz_Sofatisch_Licht readingList $DEVICETOPIC:.* { my $ret=json2nameValue($EVENT);; $ret->{state}=lc($ret->{state}) if defined $ret->{state};; return $ret }\
zigbee2mqtt/wz_Sofatisch_Licht/availability:.* availability
attr MQTT2_zigbee_wz_Sofatisch_Licht room MQTT2_DEVICE,Wohnzimmer
attr MQTT2_zigbee_wz_Sofatisch_Licht setList on:noArg $DEVICETOPIC/set {"state":"ON"}\
  off:noArg $DEVICETOPIC/set {"state":"OFF"}\
  brightness:colorpicker,BRI,0,5,255 $DEVICETOPIC/set {"state":"on","$EVTPART0":"$EVTPART1"}\
  ct:colorpicker,CT,153,2,370 $DEVICETOPIC/set {"color_temp":"$EVTPART1"}\
  ct_startup:coolest,cool,neutral,warmest,previous $DEVICETOPIC/set {"color_temp_startup":"$EVTPART1"}
attr MQTT2_zigbee_wz_Sofatisch_Licht webCmd toggle:on:off:brightness:ct


Einzige Veränderung, die ich gegenüber dem originalen zigbee2mqtt_light_cct vorgenommen habe: Ich habe im setList für den colorpicker den Bereich für die Color Temperature an meine Lampe angepasst (153-370), da ich dachte, dass dies die Ursache für das Problem sein könnte. Das Verhalten ist aber sowohl mit den Originalwerten (154-500) als auch mit meinen angepassten Werten identisch.

Wenn ich die Helligkeit in der GUI von Zigbee2MQTT ändere, wird diese auch korrekt in in fhem Web dargestellt - ändere ich die Color Temperature bleibt der slider in fhem unbeeindruckt auf der 153 stehen - die Lampe reagiert aber sehr wohl.

Hat jemand eine Idee, woran das liegen kann / wie es zu beheben ist?

Beste Grüße
Sascha

P.S. Ich hätte noch zwei Verbesserungsvorschläge, um diesen Thread besser finden zu können:

  • anpinnen, so dass er nicht aus der ersten Seite rausrutscht.
  • Diesen Thread hier in mqtt2.template: Contributing nicht nur oben im Text verlinken sondern auch unten in der Liste mit "links zu diversen template-Threads und auch den Begriff bugs mit aufnehmen :)

Beta-User

Zitat von: HomeAlone am 30 September 2022, 10:02:52
P.S. Ich hätte noch zwei Verbesserungsvorschläge, um diesen Thread besser finden zu können:

       
  • anpinnen, so dass er nicht aus der ersten Seite rausrutscht.
  • Diesen Thread hier in mqtt2.template: Contributing nicht nur oben im Text verlinken sondern auch unten in der Liste mit "links zu diversen template-Threads und auch den Begriff bugs mit aufnehmen :)
@Rudi, bzw. sonst ein mitlesender Mod: Kannst du das mit dem anpinnen bitte erledigen?

Den als 2. Punkt angeregten Link habe ich eingefügt, eine inhaltliche Antwort zum eingentlichen Thema ist bereits in https://forum.fhem.de/index.php/topic,129414.0.html zu finden.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files