Umstellen von MQTT-DEVICE auf MQTT2_DEVICE

Begonnen von Freee84neu, 26 November 2018, 07:18:09

Vorheriges Thema - Nächstes Thema

Freee84neu

Moin

wollte meine MQTT Geräte umstellen.

Kann man den Typen umstellen oder muss ich alles Löschen und dann unter dem selben Namen alles neu Anlegen?

Gruß Mike

Beta-User

Einfach nur die Definition ändern im Web-Interface geht nicht.

Was ggf. geht, ist (in FHEMWEB) in die RAW-Definition zu gehen, da ein "delete <devicename>" vorneweg einzufügen und dann die nachfolgende defmod-Anweisung zu ändern. Dabei solltest du aber darauf achten, ob wirklich alles nachfolgende 1:1 übernommen werden kann.
Da wäre ich mir nicht so sicher... Und bitte nach dem ersten auch kontrollieren, ob die Änderung Auswirkungen auf angrenzende Dinge wie notify usw. hatte.

(Bitte in jedem Fall nicht in der fhem.cfg rumeditieren, das könnte sonst seltsame Effekte geben).

Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Freee84neu

OK dann werde ich wohl alles von Hand umstellen.

bin gerade dabei eine Sonoff B1 umzustellen..

das ist eine List von MQTT_Device

Internals:
   IODev      Mosquitto
   NAME       Licht_Kuebel1
   NR         1136
   STATE      OFF
   TYPE       MQTT_DEVICE
   .attraggr:
   .attrminint:
   .qos:
     *          0
   .retain:
     *          0
   READINGS:
     2018-11-22 14:40:19   CT              153
     2018-11-22 14:40:19   Channel_01      0
     2018-11-22 14:40:19   Channel_02      0
     2018-11-22 14:40:19   Channel_03      0
     2018-11-22 14:40:19   Channel_04      100
     2018-11-22 14:40:19   Channel_05      0
     2018-11-22 14:40:19   Color           000000FF00
     2018-11-22 14:40:19   Dimmer          100
     2018-11-22 18:05:10   Fade            OFF
     2018-11-22 14:40:19   HSBColor        0,0,0
     2018-11-26 08:04:29   POWER           OFF
     2018-11-26 03:55:01   RESTART         1
     2018-11-26 08:04:29   RESULT          {"POWER":"OFF"}
     2018-11-26 03:55:01   Restart         Restarting
     2018-11-22 13:53:58   Scheme          0
     2018-11-21 15:47:59   rgb             -
     2018-11-26 08:04:29   state           OFF
     2018-11-26 08:47:36   transmission-state subscription acknowledged
   message_ids:
   publishSets:
     :
       topic      cmnd/Kuebel1/power
       values:
         ON
         OFF
     CT:
       topic      cmnd/Kuebel1/CT
       values:
         slider,153,1,500
     Channel_01:
       topic      cmnd/Kuebel1/Channel1
       values:
         slider,0,1,100
     Channel_02:
       topic      cmnd/Kuebel1/Channel2
       values:
         slider,0,1,100
     Channel_03:
       topic      cmnd/Kuebel1/Channel3
       values:
         slider,0,1,100
     Channel_04:
       topic      cmnd/Kuebel1/Channel4
       values:
         slider,0,1,100
     Channel_05:
       topic      cmnd/Kuebel1/Channel5
       values:
         slider,0,1,100
     Dimmer:
       topic      cmnd/Kuebel1/Dimmer
       values:
         slider,0,1,100
     Fade:
       topic      cmnd/Kuebel1/Fade
       values:
         0,1
     RESTART:
       topic      cmnd/Kuebel1/RESTART
       values:
         1
     Scheme:
       topic      cmnd/Kuebel1/Scheme
       values:
         0,1,2,3,4,+,-
     Speed:
       topic      cmnd/Kuebel1/Speed
       values:
         slider,1,1,20
     Wakeup:
       topic      cmnd/Kuebel1/Wakeup
       values:
         slider,0,1,100
     WakeupDuration:
       topic      cmnd/Kuebel1/WakeupDuration
       values:
         slider,1,1,3600
     rgb:
       topic      cmnd/Kuebel1/Color
       values:
         1,2,3,4,5,6,7,8,9,10,11,12,+,-
   sets:
     CT         slider,153,1,500
     Channel_01 slider,0,1,100
     Channel_02 slider,0,1,100
     Channel_03 slider,0,1,100
     Channel_04 slider,0,1,100
     Channel_05 slider,0,1,100
     Dimmer     slider,0,1,100
     Fade       0,1
     OFF       
     ON         
     RESTART    1
     Scheme     0,1,2,3,4,+,-
     Speed      slider,1,1,20
     Wakeup     slider,0,1,100
     WakeupDuration slider,1,1,3600
     rgb        1,2,3,4,5,6,7,8,9,10,11,12,+,-
   subscribe:
     stat/Kuebel1/RESULT
     stat/Kuebel1/POWER
   subscribeExpr:
     ^stat\/Kuebel1\/RESULT$
     ^stat\/Kuebel1\/POWER$
   subscribeQos:
     stat/Kuebel1/POWER 0
     stat/Kuebel1/RESULT 0
   subscribeReadings:
     stat/Kuebel1/POWER:
       cmd       
       name       state
     stat/Kuebel1/RESULT:
       cmd       
       name       RESULT
Attributes:
   IODev      Mosquitto
   alias      Licht Kübel 1
   devStateIcon ON:light_light_dim_100@FFFF00:OFF OFF:light_light:ON
   genericDeviceType light
   group      Party Hütte
   homebridgeMapping On=state,values=OFF:0;ON:1,cmdOff=OFF,cmdOn=ON
   icon       light_uplight
   publishSet ON OFF cmnd/Kuebel1/power
   publishSet_CT slider,153,1,500 cmnd/Kuebel1/CT
   publishSet_Channel_01 slider,0,1,100 cmnd/Kuebel1/Channel1
   publishSet_Channel_02 slider,0,1,100 cmnd/Kuebel1/Channel2
   publishSet_Channel_03 slider,0,1,100 cmnd/Kuebel1/Channel3
   publishSet_Channel_04 slider,0,1,100 cmnd/Kuebel1/Channel4
   publishSet_Channel_05 slider,0,1,100 cmnd/Kuebel1/Channel5
   publishSet_Dimmer slider,0,1,100 cmnd/Kuebel1/Dimmer
   publishSet_Fade 0,1 cmnd/Kuebel1/Fade
   publishSet_RESTART 1 cmnd/Kuebel1/RESTART
   publishSet_Scheme 0,1,2,3,4,+,- cmnd/Kuebel1/Scheme
   publishSet_Speed slider,1,1,20 cmnd/Kuebel1/Speed
   publishSet_Wakeup slider,0,1,100 cmnd/Kuebel1/Wakeup
   publishSet_WakeupDuration slider,1,1,3600 cmnd/Kuebel1/WakeupDuration
   publishSet_rgb 1,2,3,4,5,6,7,8,9,10,11,12,+,- cmnd/Kuebel1/Color
   room       3. Aussenbereich,HomeKit
   stateFormat state
   subscribeReading_RESULT stat/Kuebel1/RESULT
   subscribeReading_state stat/Kuebel1/POWER
   webCmd     Scheme


jetzt hänge ich aber  bei der Umstellung auf MQTT2 bei der setList dort bekomme ich die Slider nicht hin

Internals:
   .eventMapCmd ON:noArg OFF:noArg
   CFGFN     
   CID        39
   DEF        39
   DEVICETOPIC MQTT2_39
   IODev      MQTT2_Server
   LASTInputDev MQTT2_Server
   MQTT2_Server_MSGCNT 11
   MQTT2_Server_TIME 2018-11-26 14:03:44
   MSGCNT     11
   NAME       MQTT2_39
   NR         2546
   STATE      Power
   TYPE       MQTT2_DEVICE
   .attraggr:
   .attreocr:
     .*
   .attrminint:
   READINGS:
     2018-11-26 14:03:44   CT              153
     2018-11-26 14:03:44   Channel_1       0
     2018-11-26 14:03:44   Channel_2       0
     2018-11-26 14:03:44   Channel_3       0
     2018-11-26 14:03:44   Channel_4       100
     2018-11-26 14:03:44   Color           000000FF00
     2018-11-26 14:03:44   Dimmer          100
     2018-11-26 14:03:44   Fade            OFF
     2018-11-26 13:53:31   FallbackTopic   39
     2018-11-26 13:53:31   GroupTopic      sonoffs
     2018-11-26 14:03:44   HSBColor        0,0,0
     2018-11-26 13:53:31   Hostname        Kuebel3-5266
     2018-11-26 13:53:31   IPAddress       192.168.169.39
     2018-11-26 13:53:31   LWT             online
     2018-11-26 14:03:44   LedTable        OFF
     2018-11-26 13:53:31   Module          Sonoff B1
     2018-11-26 14:03:44   POWER           OFF
     2018-11-26 13:53:31   RestartReason   Software/System restart
     2018-11-26 14:03:44   Scheme          0
     2018-11-26 14:03:44   Speed           1
     2018-11-26 14:03:44   Time            2018-11-26T14:03:44
     2018-11-26 14:03:44   Uptime          0T00:10:18
     2018-11-26 14:03:44   Vcc             3.322
     2018-11-26 13:53:31   Version         6.3.0
     2018-11-26 13:53:31   WebServerMode   Admin
     2018-11-26 14:03:44   Wifi_AP         2
     2018-11-26 14:03:44   Wifi_BSSId      08:96:D7:6F:8C:2C
     2018-11-26 14:03:44   Wifi_Channel    6
     2018-11-26 14:03:44   Wifi_RSSI       70
     2018-11-26 14:03:44   Wifi_SSId       Garten von Farwick
     2018-11-26 13:54:19   state           Scheme
Attributes:
   IODev      MQTT2_Server
   alias      Licht Kübel 1
   devStateIcon ON:light_light_dim_100@FFFF00:OFF OFF:light_light:ON
   event-on-change-reading .*
   eventMap   on:ON off:OFF
   genericDeviceType light
   homebridgeMapping On=state,values=OFF:0;ON:1,cmdOff=OFF,cmdOn=ON
   icon       light_uplight
   readingList 39:tele/Kuebel3/LWT:.* LWT
39:cmnd/Kuebel3/POWER:.* POWER
39:tele/Kuebel3/INFO1:.* { json2nameValue($EVENT) }
39:tele/Kuebel3/INFO2:.* { json2nameValue($EVENT) }
39:tele/Kuebel3/INFO3:.* { json2nameValue($EVENT) }
39:stat/Kuebel3/RESULT:.* { json2nameValue($EVENT) }
39:stat/Kuebel3/POWER:.* POWER
39:tele/Kuebel3/STATE:.* { json2nameValue($EVENT) }
39:tele/Kuebel3/UPTIME:.* { json2nameValue($EVENT) }
   room       MQTT2_DEVICE
   setList    on cmnd/Kuebel1/POWER ON
off cmnd/Kuebel1/POWER OFF
RESTART cmnd/Kuebel1/RESTART 1
CT slider,153,1,500 cmnd/Kuebel1/CT
Channel_1 slider,0,1,100 cmnd/Kuebel1/Channel1
Channel_2 slider,0,1,100 cmnd/Kuebel1/Channel2
Channel_3 slider,0,1,100 cmnd/Kuebel1/Channel3
Channel_4 slider,0,1,100 cmnd/Kuebel1/Channel4
Channel_5 slider,0,1,100 cmnd/Kuebel1/Channel5
Dimmer slider,0,1,100 cmnd/Kuebel1/Dimmer
Fade 0,1 cmnd/Kuebel1/Fade
Scheme 0,1,2,3,4,+,- cmnd/Kuebel1/Scheme
Speed slider,1,1,20 cmnd/Kuebel1/Speed
Wakeup slider,0,1,100 cmnd/Kuebel1/Wakeup
WakeupDuration slider,1,1,3600 cmnd/Kuebel1/WakeupDuration
Color 1,2,3,4,5,6,7,8,9,10,11,12,+,- cmnd/Kuebel1/Color

   stateFormat Power
   webCmd     Scheme



ist dies dort nicht möglich

Beta-User

Schon mit Doppelpunkt statt Leerzeichen versucht?
...
Channel_1:slider,0,1,100 cmnd/Kuebel1/Channel1
...

(Wie muss die Message dann im Ergebnis aussehen? Beispiele mit JSON-Blobs sind hier zu finden: https://wiki.fhem.de/wiki/MQTT2-Module_-_Praxisbeispiele)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Freee84neu


Freee84neu

Stehe mal wieder vor einer Frage bei meiner Heizung

hier als MQTT_Device

Internals:
   IODev      Mosquitto
   NAME       Heizung_Huette
   NR         1131
   STATE      OFF
<br/>
Ist:<strong> 8.1 °C </strong>
<br/>
Soll: <strong>5.0</strong><br/>
   TYPE       MQTT_DEVICE
   .attraggr:
   .attreocr:
     .*
   .attrminint:
   .qos:
     *          0
   .retain:
     *          0
   READINGS:
     2018-11-26 20:24:32   DS18B20_Temperature 8.1
     2018-11-26 20:24:32   ENERGY          {"Time":"2018-11-26T20:24:32","DS18B20":{"Temperature":8.1},"TempUnit":"C"}
     2018-11-26 03:55:01   RESTART         1
     2018-11-22 17:53:01   Soll_Temp       5.0
     2018-11-26 20:24:32   TempUnit        C
     2018-11-26 20:24:32   Time            2018-11-26T20:24:32
     2018-11-26 17:24:24   state           OFF
     2018-11-26 20:24:32   transmission-state incoming publish received
   message_ids:
   publishSets:
     :
       topic      cmnd/Huette_Heizung/power
       values:
         ON
         OFF
     RESTART:
       topic      cmnd/Huette_Heizung/RESTART
       values:
         1
     Soll_Temp:
       topic      30.5
       values:
         0.0
         0.5
         1.0
         1.5
         2.0
         2.5
         3.0
         3.5
         4.0
         4.5
         5.0
         5.5
         6.0
         6.5
         7.0
         7.5
         8.0
         8.5
         9.0
         9.5
         10.0
         10.5
         11.0
         11.5
         12.0
         12.5
         13.0
         13.5
         14.0
         14.5
         15.0
         15.5
         16.0
         16.5
         17.0
         17.5
         18.0
         18.5
         19.0
         19.5
         20.0
         20.5
         21.0
         21.5
         22.0
         22.5
         23.0
         23.5
         24.0
         24.5
         25.0
         25.5
         26.0
         26.5
         27.0
         27.5
         28.0
         28.5
         29.0
         29.5
         30.0
   sets:
     OFF       
     ON         
     RESTART    1
     Soll_Temp  0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0
   subscribe:
     tele/Huette_Heizung/SENSOR
     stat/Huette_Heizung/POWER
   subscribeExpr:
     ^tele\/Huette_Heizung\/SENSOR$
     ^stat\/Huette_Heizung\/POWER$
   subscribeQos:
     stat/Huette_Heizung/POWER 0
     tele/Huette_Heizung/SENSOR 0
   subscribeReadings:
     stat/Huette_Heizung/POWER:
       cmd       
       name       state
     tele/Huette_Heizung/SENSOR:
       cmd       
       name       ENERGY
Attributes:
   IODev      Mosquitto
   alias      Heizung
   devStateIcon ON.*:10px-kreis-gruen:OFF OFF.*:10px-kreis-rot:ON
   event-on-change-reading .*
   genericDeviceType thermostat
   group      Party Hütte
   icon       sani_heating
   publishSet ON OFF cmnd/Huette_Heizung/power
   publishSet_RESTART 1 cmnd/Huette_Heizung/RESTART
   publishSet_Soll_Temp 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 10.0 10.5 11.0 11.5 12.0 12.5 13.0 13.5 14.0 14.5 15.0 15.5 16.0 16.5 17.0 17.5 18.0 18.5 19.0 19.5 20.0 20.5 21.0 21.5 22.0 22.5 23.0 23.5 24.0 24.5 25.0 25.5 26.0 26.5 27.0 27.5 28.0 28.5 29.0 29.5 30.0 30.5
   room       3. Aussenbereich,HomeKit
   stateFormat state
<br/>
Ist:<strong> DS18B20_Temperature °C </strong>
<br/>
Soll: <strong>Soll_Temp</strong><br/>
   subscribeReading_ENERGY tele/Huette_Heizung/SENSOR
   subscribeReading_state stat/Huette_Heizung/POWER
   webCmd     Soll_Temp:°C


und hier als MQTT2_DEVICE

Internals:
   .eventMapCmd ON:noArg OFF:noArg
   CHANGED   
   CID        41
   DEF        41
   DEVICETOPIC MQTT2_41
   IODev      MQTT2_Server
   NAME       Heizung_Huetteneu
   NR         1207
   STATE      OFF<br/>Ist:<strong> 8.1 °C </strong><br/>Soll: <strong>Soll_Temp</strong><br/>
   TYPE       MQTT2_DEVICE
   .attraggr:
   .attreocr:
     .*
   .attrminint:
   READINGS:
     2018-11-26 17:23:57   DS18B20_Temperature 8.1
     2018-11-26 17:23:50   FallbackTopic   41
     2018-11-26 17:23:50   GroupTopic      sonoffs
     2018-11-26 17:23:50   Hostname        Huette_Heizung-3302
     2018-11-26 17:23:50   IPAddress       192.168.169.41
     2018-11-26 17:24:25   LWT             offline
     2018-11-26 17:23:50   Module          Sonoff TH
     2018-11-26 17:23:57   POWER           OFF
     2018-11-26 17:23:50   RestartReason   Software/System restart
     2018-11-26 17:23:57   TempUnit        C
     2018-11-26 17:23:57   Time            2018-11-26T17:23:58
     2018-11-26 17:23:57   Uptime          0T00:00:14
     2018-11-26 17:23:57   Vcc             3.226
     2018-11-26 17:23:50   Version         6.3.0
     2018-11-26 17:23:50   WebServerMode   Admin
     2018-11-26 17:23:57   Wifi_AP         1
     2018-11-26 17:23:57   Wifi_BSSId      08:96:D7:6F:8C:2C
     2018-11-26 17:23:57   Wifi_Channel    6
     2018-11-26 17:23:57   Wifi_RSSI       68
     2018-11-26 17:23:57   Wifi_SSId       Garten von Farwick
     2018-11-26 20:14:29   state           Soll_Temp
Attributes:
   IODev      MQTT2_Server
   alias      Heizung
   devStateIcon ON:light_light_dim_100@FFFF00:OFF OFF:light_light:ON
   event-on-change-reading .*
   eventMap   on:ON off:OFF
   genericDeviceType thermostat
   icon       sani_heating
   readingList 41:tele/Huette_Heizung/LWT:.* LWT
41:cmnd/Huette_Heizung/POWER:.* POWER
41:tele/Huette_Heizung/INFO1:.* { json2nameValue($EVENT) }
41:tele/Huette_Heizung/INFO2:.* { json2nameValue($EVENT) }
41:tele/Huette_Heizung/INFO3:.* { json2nameValue($EVENT) }
41:stat/Huette_Heizung/RESULT:.* { json2nameValue($EVENT) }
41:stat/Huette_Heizung/POWER:.* POWER
41:tele/Huette_Heizung/STATE:.* { json2nameValue($EVENT) }
41:tele/Huette_Heizung/SENSOR:.* { json2nameValue($EVENT) }
   room       MQTT2_DEVICE
   setList    on cmnd/Huette_Heizung/POWER ON
off cmnd/Huette_Heizung/POWER OFF
RESTART cmnd/Huette_Heizung/RESTART 1
Soll_Temp:0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0,5.5,6.0,6.5,7.0,7.5,8.0,8.5,9.0,9.5,10.0,10.5,11.0,11.5,12.0,12.5,13.0,13.5,14.0,14.5,15.0,15.5,16.0,16.5,17.0,17.5,18.0,18.5,19.0,19.5,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0,24.5,25.0,25.5,26.0,26.5,27.0,27.5,28.0,28.5,29.0,29.5,30.0 {setreading MQTT2_41 Soll_Temp $EVENT}
   stateFormat POWER<br/>Ist:<strong> DS18B20_Temperature °C </strong><br/>Soll: <strong>Soll_Temp</strong><br/>
   webCmd     Soll_Temp


Bei dem MQTT_DEVICE hab ich ein setList mit Soll_Temp das mit dann ein Reading erstellt mit dem was ich angewählt habe, Welches ich dann als Soll Temp. Auswerte.

Beim MQTT2 hab ich auch die setList drin jedoch erstellt er mit kein Reading namens Soll_Temp er schreibt es nur ins state und dann ohne Wert.


Beta-User

Hmmm, das ist etwas "außergewöhnlich". MQTT ist eigentlich dafür gemacht (und dementsprechend auch das setList-Attribut in MQTT2_DEVICE), um mit dem angebundenen Gerät zu kommunizieren. Dementsprechend sollte da auch ein Topic kommen, kein Perl-Code.

Wenn es funktioniert, dann "richtig":
{fhem "setreading MQTT2_41 Soll_Temp $EVTPART0"}
Aber keine Gewähr...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Freee84neu

Ne das mit dem Perl-Code war nur geraten... es klappt nicht ... aber vieleicht kann mir einer auf die Sprünge helfen wie es richtig geht ...

Beta-User

...dann laß den hinteren Teil mal einfach ganz weg; vielleicht hilft das schon?

Ansonsten muß sich das mal jemand ansehen, der vom Modulcoden was versteht....
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Freee84neu

Wenn ich den hinteren Teil weglasse sagt er mir das was fehlt.

Heizung_Huetteneu attr setList: more parameters needed

Freee84neu

#10
Hatte einen alten Device Namen  ::) damit geht es fast..

Soll_Temp:0.0,0.5....... {fhem "setreading Heizung_Huetteneu Soll_Temp $EVENT"}

Jedoch kommt dann beim Reading Soll_Temp .. """Soll_Temp 5.5""" anstatt nur 5.5 raus

Mit EVTPART0 kommt nur Soll_Temp ...und kein Wert ...

Freee84neu

{fhem "setreading Heizung_Huetteneu $EVENT"}

So gehts