Alexa + homebridgeMapping für Steuerung einer Klimaanlage

Begonnen von fireball, 29 Juli 2025, 14:23:38

Vorheriges Thema - Nächstes Thema

fireball

Moinsen Freund,

ich versuche gerade meine Klimaanlage, welche über MQTT eingebunden ist mit Alexa zu steuern.
Ich habe schon div. Dinge hier gelesen, komme aber nicht 100% an mein Ziel.

Meine Klimaanalge ist als genericDeviceType=thermostat eingebunden mit einem homebridgeMapping.
Laut AlexaSeite gibt es folgende Einstellungen.

Das ist mein Device:


Internals:
   CID        klimaanlage_dc4f222c8068
   DEF        klimaanlage_dc4f222c8068
   FUUID      6824d5e0-f33f-0804-e91e-f95511439fc1fe47
   IODev      MyBroker
   LASTInputDev MyBroker
   MSGCNT     1548
   MyBroker_CONN MyBroker_192.168.178.33_60168
   MyBroker_MSGCNT 1548
   MyBroker_TIME 2025-07-29 13:48:06
   NAME       Klimaanlage
   NR         715
   STATE      online
<br>
auto
   TYPE       MQTT2_DEVICE
   eventCount 632
   READINGS:
     2025-07-29 12:43:18   IODev           MyBroker
     2025-05-21 11:48:49   act_t           klimaanlage/climate/mitsubishi_klimaanlage/action/state
     2025-07-29 13:32:35   auto_sub_mode   AUTO_LEADER
     2025-07-29 13:32:35   avty_t          klimaanlage/status
     2025-07-29 13:32:34   board           d1_mini
     2025-07-29 13:32:35   bssid           3C:A6:2F:5C:16:45
     2025-07-29 13:32:35   cmd_t           klimaanlage/button/restart_mitsubishi_klimaanlage/command
     2025-05-21 11:48:49   curr_temp_t     klimaanlage/climate/mitsubishi_klimaanlage/current_temperature/state
     2025-07-29 13:48:00   current_temperature 21.5
     2025-05-19 08:31:24   debug           ␛[0;32m[I][CN105:010]: setupUART() with baudrate  2400 ␛[0m
     2025-07-29 13:32:35   dev_cla         restart
     2025-07-29 13:32:35   dev_cns_1_1     mac
     2025-07-29 13:32:35   dev_cns_1_2     dc4f222c8068
     2025-07-29 13:32:35   dev_ids         dc4f222c8068
     2025-07-29 13:32:35   dev_mdl         d1_mini
     2025-07-29 13:32:35   dev_mf          Espressif
     2025-07-29 13:32:35   dev_name        Mitsubishi_Klimaanlage
     2025-07-29 13:32:35   dev_sw          2025.4.2 (May 21 2025, 15:01:46)
     2025-07-29 13:32:35   ent_cat         config
     2025-07-29 13:32:35   esphome_version 2025.4.2 May 21 2025, 15:01:46
     2025-07-29 13:48:00   fan_mode        low
     2025-05-21 11:48:49   fan_mode_cmd_t  klimaanlage/climate/mitsubishi_klimaanlage/fan_mode/command
     2025-05-21 11:48:49   fan_mode_stat_t klimaanlage/climate/mitsubishi_klimaanlage/fan_mode/state
     2025-05-21 11:48:49   fan_modes_1     auto
     2025-05-21 11:48:49   fan_modes_2     low
     2025-05-21 11:48:49   fan_modes_3     medium
     2025-05-21 11:48:49   fan_modes_4     high
     2025-05-21 11:48:49   fan_modes_5     middle
     2025-05-21 11:48:49   fan_modes_6     quiet
     2025-07-29 13:32:34   friendly_name   Mitsubishi_Klimaanlage
     2025-07-29 13:32:35   ic              mdi:restart
     2025-07-29 13:32:35   ip              192.168.178.33
     2025-07-29 13:32:34   mac             dc4f222c8068
     2025-05-21 11:48:49   max_hum         99
     2025-05-21 11:48:49   max_temp        31
     2025-05-21 11:48:49   min_hum         30
     2025-05-21 11:48:49   min_temp        15
     2025-07-29 13:48:00   mode            auto
     2025-05-21 11:48:49   mode_cmd_t      klimaanlage/climate/mitsubishi_klimaanlage/mode/command
     2025-05-21 11:48:49   mode_stat_t     klimaanlage/climate/mitsubishi_klimaanlage/mode/state
     2025-05-21 11:48:49   modes_1         auto
     2025-05-21 11:48:49   modes_2         off
     2025-05-21 11:48:49   modes_3         cool
     2025-05-21 11:48:49   modes_4         heat
     2025-05-21 11:48:49   modes_5         fan_only
     2025-05-21 11:48:49   modes_6         dry
     2025-07-29 13:32:35   name            Restart Mitsubishi_Klimaanlage
     2025-07-29 13:32:34   network         wifi
     2025-05-21 11:48:48   ops_1           AUTO
     2025-05-21 11:48:48   ops_2           ↑↑
     2025-05-21 11:48:48   ops_3           ↑
     2025-05-21 11:48:48   ops_4           —
     2025-05-21 11:48:48   ops_5           ↓
     2025-05-21 11:48:48   ops_6           ↓↓
     2025-05-21 11:48:48   ops_7           SWING
     2025-07-29 13:48:00   outside_temperature 20.0
     2025-07-29 13:32:34   platform        ESP8266
     2025-07-29 13:32:34   port            6053
     2025-05-21 11:48:49   precision       0.5
     2025-07-29 13:32:35   ssid            WLAN24
     2025-07-29 13:32:35   stage           GENTLE
     2025-05-21 11:48:48   stat_cla        measurement
     2025-05-21 11:48:49   stat_t          klimaanlage/sensor/auto_sub_mode/state
     2025-07-29 13:48:00   state           118.9
     2025-07-29 13:32:35   status          online
     2025-07-29 13:32:35   sub_mode        NORMAL
     2025-07-29 13:48:00   swing_mode      vertical
     2025-05-21 11:48:49   swing_mode_cmd_t klimaanlage/climate/mitsubishi_klimaanlage/swing_mode/command
     2025-05-21 11:48:49   swing_mode_stat_t klimaanlage/climate/mitsubishi_klimaanlage/swing_mode/state
     2025-05-21 11:48:49   swing_modes_1   off
     2025-05-21 11:48:49   swing_modes_2   both
     2025-05-21 11:48:49   swing_modes_3   vertical
     2025-05-21 11:48:49   swing_modes_4   horizontal
     2025-07-29 13:48:00   target_temperature 20
     2025-05-21 11:48:49   temp_cmd_t      klimaanlage/climate/mitsubishi_klimaanlage/target_temperature/command
     2025-05-21 11:48:49   temp_stat_t     klimaanlage/climate/mitsubishi_klimaanlage/target_temperature/state
     2025-05-21 11:48:49   temp_step       1
     2025-05-21 11:48:49   temp_unit       C
     2025-07-29 13:32:35   uniq_id         ESPbuttonrestart_mitsubishi_klimaanlage
     2025-05-21 11:48:48   unit_of_meas    °C
     2025-07-29 13:47:22   uptime          46820
     2025-07-29 13:32:34   version         2025.4.2
     2025-07-29 13:48:06   wifi_signal     -47
Attributes:
   alexaName  Klimaanlage
   autocreate 0
   devStateIcon online:FS20.on offline:FS20.off heat:FS20.off@red cool:FS20.off@blue fan_only:Ventilator_wind
   event-on-change-reading .*
   genericDeviceType thermostat
   homebridgeMapping CurrentTemperature=current_temperature
TargetTemperature=Temperatur::Temperatur,minValue=19,maxValue=30,minStep=1
CurrentHeatingCoolingState=mode,values=off:OFF;;heat:HEAT;;cool:COOL;;auto:AUTO
TargetHeatingCoolingState=Betrieb_Modus,values=off:OFF;;HEAT:heat;;COOL:cool;;auto:AUTO,cmds=OFF:Betrieb_Modus+off;;HEAT:Heizen;;COOL:Kühlen;;AUTO:Betrieb_Modus+auto
   icon       sani_heating_heatpump
   readingList klimaanlage_dc4f222c8068:klimaanlage/status:.* status
klimaanlage_dc4f222c8068:esphome/discover/klimaanlage:.* { json2nameValue($EVENT) }
klimaanlage_dc4f222c8068:klimaanlage/climate/mitsubishi_klimaanlage/mode/state:.* mode
klimaanlage_dc4f222c8068:klimaanlage/climate/mitsubishi_klimaanlage/target_temperature/state:.* target_temperature
klimaanlage_dc4f222c8068:klimaanlage/climate/mitsubishi_klimaanlage/action/state:.* state
klimaanlage_dc4f222c8068:klimaanlage/climate/mitsubishi_klimaanlage/fan_mode/state:.* fan_mode
klimaanlage_dc4f222c8068:klimaanlage/climate/mitsubishi_klimaanlage/swing_mode/state:.* swing_mode
klimaanlage_dc4f222c8068:klimaanlage/climate/mitsubishi_klimaanlage/current_temperature/state:.* current_temperature
klimaanlage_dc4f222c8068:klimaanlage/sensor/bssid/state:.* bssid
klimaanlage_dc4f222c8068:klimaanlage/sensor/ssid/state:.* ssid
klimaanlage_dc4f222c8068:klimaanlage/sensor/ip/state:.* ip
klimaanlage_dc4f222c8068:klimaanlage/sensor/wifi_signal/state:.* wifi_signal
klimaanlage_dc4f222c8068:klimaanlage/sensor/input_power/state:.* state
klimaanlage_dc4f222c8068:klimaanlage/sensor/energy_usage/state:.* state
klimaanlage_dc4f222c8068:klimaanlage/sensor/outside_air_temp/state:.* outside_temperature
klimaanlage_dc4f222c8068:klimaanlage/sensor/stage/state:.* stage
klimaanlage_dc4f222c8068:klimaanlage/sensor/sub_mode/state:.* sub_mode
klimaanlage_dc4f222c8068:klimaanlage/sensor/auto_sub_mode/state:.* auto_sub_mode
klimaanlage_dc4f222c8068:klimaanlage/sensor/uptime/state:.* uptime
klimaanlage_dc4f222c8068:klimaanlage/sensor/esphome_version/state:.* esphome_version
##klimaanlage_dc4f222c8068:klimaanlage/select/vertical_vane/state:.* state
##klimaanlage_dc4f222c8068:klimaanlage/debug:.* debug

klimaanlage_dc4f222c8068:homeassistant/button/klimaanlage/restart_mitsubishi_klimaanlage/config:.* { json2nameValue($EVENT) }

   room       FLUR
   setList    Aus:noArg klimaanlage/climate/mitsubishi_klimaanlage/mode/command off
Heizen:noArg klimaanlage/climate/mitsubishi_klimaanlage/mode/command heat
Ventilator:noArg klimaanlage/climate/mitsubishi_klimaanlage/mode/command fan_only
Trocknen:noArg klimaanlage/climate/mitsubishi_klimaanlage/mode/command dry
Kühlen:noArg klimaanlage/climate/mitsubishi_klimaanlage/mode/command cool
Betrieb_Modus:off,heat,fan_only,dry,cool,auto klimaanlage/climate/mitsubishi_klimaanlage/mode/command $EVTPART1
Temperatur:slider,19.00,1.00,30.00 klimaanlage/climate/mitsubishi_klimaanlage/target_temperature/command $EVTPART1
Ventilator_Modus:auto,quiet,low,medium,high klimaanlage/climate/mitsubishi_klimaanlage/fan_mode/command $EVTPART1
Swing_Modus:AUTO,↑↑,↑,—,↓,↓↓,SWING klimaanlage/select/vertical_vane/command $EVTPART1

   stateFormat status
<br>
mode
   verbose    0

Mir macht der TargetHeatingCoolingState Probleme. Das Auslesen der aktuellen Temperatur, das setzen einer Zieltemperatur und der aktuelle Status geht.

Am Anfang hatte ich keinen "Betrieb_Modus" und konnte daher bei TargetHeatingCoolingState auch kein Readings als Mapping eintragen und weiß auch nicht, ob das leer bleiben kann!?

Ich wollte die verschiedenen Modi direkt schalten, also set Klimanalage Heizen/Kühlen/Aus .
Das hat aber irgendwie nicht geklappt, daher habe ich dann noch "Betrieb_Modus" als set eingebaut, sodass ich das Mapping komplett anlegen konnte:
TargetHeatingCoolingState=Betrieb_Modus,values=off:OFF;;HEAT:heat;;COOL:cool;;auto:AUTO,cmds=OFF:Betrieb_Modus+off;;HEAT:Heizen;;COOL:Kühlen;;AUTO:Betrieb_Modus+auto
Wenn ich Alexa sage geh auf Heizen/Kühlen, dann wird der Modus geschaltet.
Wenn ich Aus sage, sagt Alexa, dass das Gerät das nicht unterstützt (in der Alexa APP ist das Device als Typ Klimaanlage eingerichtet)
Wenn ich auf Auto gehe, wird auto gesetzt, aber sofort wieder in Kühlen geschaltet?!

1. Größtes Problem ist also Aus! Warum geht das nicht?!
2. Wozu sind die values, wenn die cmds ausgeführt werden, egal was da steht?!
3. Kann man auch 2 Befehle bei den cmds angeben?! Also zB bei Heat:Heizen;Temperatur+25 ? Also stelle auf Heizen und die Temperatur auf 25 Grad?!

VG+Danke
René