[Gelöst] MQTT(2): Problem Wechsel publishSet nach set List

Begonnen von Niel, 09 April 2021, 20:36:28

Vorheriges Thema - Nächstes Thema

Niel

Hallo!

Nachdem ich heute Probleme mit MQTT hatte, habe ich MQTT2 in Betrieb. Funktioniert auch soweit. Nur die Funktionen von publishSet bekomme ich mit SetList nicht hin.

Bisher hatte ich die Klimaanlage wie folgt eingebunden und konnte sie auch steuern:

Internals:
   IODev      mqtt
   NAME       SZ_Klimaanlage
   NR         323
   STATE      {"roomTemperature":21.5,"temperature":24,"fan":"1","vane":"1","action":"off","mode":"off"}
   TYPE       MQTT_DEVICE
   READINGS:
     2021-04-09 20:31:01   action          off
     2021-04-09 20:31:01   fan             1
     2021-04-09 20:31:01   mode            off
     2021-04-09 20:31:01   roomTemperature 21.5
     2021-04-09 20:31:01   state           {"roomTemperature":21.5,"temperature":24,"fan":"1","vane":"1","action":"off","mode":"off"}
     2021-04-09 20:31:01   temperature     24
     2021-04-09 20:31:01   transmission-state incoming publish received
     2021-04-09 20:04:42   vane            1
   message_ids:
   publishSets:
     fan:
       topic      SZ_Klimaanlage/Mitsubishi/fan/set
       values:
         1
         2
         3
         4
         AUTO
     mode:
       topic      SZ_Klimaanlage/Mitsubishi/mode/set
       values:
         cool
         dry
         fan
         heat
         off
     temp:
       topic      SZ_Klimaanlage/Mitsubishi/temp/set
       values:
         16
         17
         18
         19
         20
         21
         22
         23
         24
         25
         26
         27
         28
         29
         30
         31
     vane:
       topic      SZ_Klimaanlage/Mitsubishi/vane/set
       values:
         1
         2
         3
         4
         5
         AUTO
         SWING
   sets:
     fan        1,2,3,4,AUTO
     mode       cool,dry,fan,heat,off
     temp       16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
     vane       1,2,3,4,5,AUTO,SWING
   subscribe:
     SZ_Klimaanlage/Mitsubishi/state
   subscribeExpr:
     ^SZ_Klimaanlage\/Mitsubishi\/state$
   subscribeQos:
     SZ_Klimaanlage/Mitsubishi/state 0
   subscribeReadings:
     SZ_Klimaanlage/Mitsubishi/state:
       cmd       
       name       state
Attributes:
   IODev      mqtt
   group      Klima
   publishSet_fan 1 2 3 4 AUTO SZ_Klimaanlage/Mitsubishi/fan/set
   publishSet_mode cool dry fan heat off SZ_Klimaanlage/Mitsubishi/mode/set
   publishSet_temp 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 SZ_Klimaanlage/Mitsubishi/temp/set
   publishSet_vane 1 2 3 4 5 AUTO SWING SZ_Klimaanlage/Mitsubishi/vane/set
   room       Heizung
   subscribeReading_state SZ_Klimaanlage/Mitsubishi/state


Jetzt ist sie so eingebunden:

Internals:
   CID        HVAC_58a58b
   DEF        HVAC_58a58b
   DEVICETOPIC MQTT2_HVAC_58a58b
   IODev      mqttSERVER
   LASTInputDev mqttSERVER
   MSGCNT     327
   NAME       MQTT2_HVAC_58a58b
   NR         331
   STATE      ???
   TYPE       MQTT2_DEVICE
   mqttSERVER_MSGCNT 327
   mqttSERVER_TIME 2021-04-09 20:24:31
   READINGS:
     2021-04-09 20:24:31   action          off
     2021-04-09 20:24:31   fan             1
     2021-04-09 20:24:31   mode            off
     2021-04-09 20:24:31   roomTemperature 21.5
     2021-04-09 20:24:31   temperature     24
     2021-04-09 20:24:31   vane            1
Attributes:
   IODev      mqttSERVER
   group      Klima
   readingList HVAC_58a58b:SZ_Klimaanlage/Mitsubishi/settings:.* { json2nameValue($EVENT) }
HVAC_58a58b:SZ_Klimaanlage/Mitsubishi/state:.* { json2nameValue($EVENT) }
   room       Heizung
   setList    vane1: HVAC_58a58b:SZ_Klimaanlage/Mitsubishi/vane/set 1
vane2: HVAC_58a58b:SZ_Klimaanlage/Mitsubishi/vane/set 2
   webCmd     vane1:vane2


Wenn ich einen Befehl aus der Setliste oder dem Webcmd auswähle, kommt nur die Fehlermeldung "Unknown argument..."

Wie kann ich die SetList am besten gestalten, so dass es wie früher aussieht? Problem ist vermutlich, dass nicht einfach die Readings neu gesetzt werden, sondern andere Topics zum Steuern genutzt werden.

Vielen Dank für alle Hinweise.

Grüße

Niel

Otto123

#1
Hallo Niel,

mqttserver ist ein MQTT2_SERVER?

Hilft Dir das als Einstieg? https://forum.fhem.de/index.php/topic,116480.msg1107818.html#msg1107818

Versuch doch erstmal eine setList (nur aus dem Kopf) :
setList    vane:1,2,3,4,5,AUTO,SWING SZ_Klimaanlage/Mitsubishi/vane/set $EVTPART1

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Niel

Hallo,

ja, es ist ein MQTT2-Server.

Habe jetzt folgendes probiert:
SetList temperature:16,18,20 SZ_Klimaanlage/Mitsubishi/temp/set $EVTPART1

Da kommt dann wieder "unknown argument, choose one of temperature:16,18,20"

Ohne Auswahl klappt es z. B. mit:
setList Aus SZ_Klimaanlage/Mitsubishi/mode/set off
kann ich die Anlage abschalten.

Es liegt irgendwie an den Auswahlmöglichkeiten. Aber wo?

Otto123

wann kommt dieser Fehler? Bei welcher Situation?
Bis auf setList mit kleinem s ist der Code richtig und funktioniert bei mir
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Niel

Der Fehler kommt immer, wenn ich versuche die Temperatur zu setzen, egal ob über Drop-Down und dann set-Button oder über Befehlszeile.

TomLee

Zeig halt nochmal ein list MQTT2_HVAC_58a58b vlt. übersiehst du was was andere wiederum sehen.

Niel

Internals:
   CID        HVAC_58a58b
   DEF        HVAC_58a58b
   DEVICETOPIC MQTT2_HVAC_58a58b
   IODev      mqttSERVER
   LASTInputDev mqttSERVER
   MSGCNT     700
   NAME       MQTT2_HVAC_58a58b
   NR         331
   STATE      off
   TYPE       MQTT2_DEVICE
   mqttSERVER_MSGCNT 700
   mqttSERVER_TIME 2021-04-09 22:55:37
   READINGS:
     2021-04-09 22:55:37   action          off
     2021-04-09 22:55:37   fan             1
     2021-04-09 22:55:37   mode            off
     2021-04-09 22:55:37   roomTemperature 21
     2021-04-09 22:44:07   state           mode
     2021-04-09 22:55:37   temperature     19
     2021-04-09 22:55:37   vane            1
Attributes:
   IODev      mqttSERVER
   devStateIcon off:ios-off cooling:ios-on-green cooling:ios-on-green
   group      Klima
   readingList HVAC_58a58b:SZ_Klimaanlage/Mitsubishi/settings:.* { json2nameValue($EVENT) }
HVAC_58a58b:SZ_Klimaanlage/Mitsubishi/state:.* { json2nameValue($EVENT) }
   room       Heizung
   setList    temperature:16,18,20 SZ_Klimaanlage/Mitsubishi/temp/set $EVTPART1

   stateFormat action

Otto123

#7
Zitat von: Niel am 09 April 2021, 22:41:20
Der Fehler kommt immer, wenn ich versuche die Temperatur zu setzen, egal ob über Drop-Down und dann set-Button oder über Befehlszeile.
Du eierst mit der Groß und Kleinschreibung - das macht mich wuschig. Wie Thomas sagt: zeig ein list sonst wird das nichts :)
und bitte einversion MQTT2
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Niel

List hatte ich ja schon gepostet.

version MQTT2:
File               Rev   Last Change

10_MQTT2_DEVICE.pm 17200 2018-08-24 16:07:49Z rudolfkoenig
00_MQTT2_SERVER.pm 17205 2018-08-25 14:37:35Z rudolfkoenig

doif.js                    15546 2017-12-03 09:57:42Z Ellert
fhemweb.js                 17233 2018-08-30 16:43:41Z rudolfkoenig


Okay, führt zu Verwirrung: Ich meinte tatsächlich "die Temperatur" und nicht "temperature" als reading. "temperature" ist ja das Reading für die Temperatur.

Otto123

Machst Du bitte mal Update? Wahrscheinlich ist Deine Version zu alt für setList mit Auswahl?

Du hast probiert und wir wollten schon ein aktuelles list und nicht das Alte sehen :) aber egal. Wir wollte ja wissen was Du eingetragen hast.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Niel

Hallo!

Es war das fehlende Update! Jetzt läuft es wie gewünscht.

Mit Updates bin ich sehr vorsichtig, seitdem mir ein Update mal die halbe Haussteuerung zerschossen hat. Aber manchmal muss es halt sein.

Vielen Dank und schönes Wochenende!

Grüße
Niel