NorthernMan54 / homebridge-alexa

Expose your homebridge controlled devices to Amazon Alexa.

Home Page:https://www.homebridge.ca

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AC can't change temperature

sadanro100 opened this issue · comments

Analysis

Whenever I attempt to change the temperature by saying "alexa set the ac to XX degrees" I get the following error as shown in the logs (it worked fine before), everything else works fine.

Expected Behavior

Change temperature

Steps To Reproduce

Ask Alexa to change temperature

Logs

[Alexa Bridge] alexaThermostatController missing action targetSetpoint Unexpected token u in JSON at position 0 {
  thermostatModeCOOL: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":12,"value":2}',
  TurnOn: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":10,"value":1}',
  AdjustPowerLevel: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":18}',
  upperSetpoint: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":15}',
  ReportState: '[{"interface":"Alexa.PowerController","deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":10},{"interface":"Alexa.ThermostatControllerthermostatMode","deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":12},{"interface":"Alexa.ThermostatControllerupperSetpoint","deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":15},{"interface":"Alexa.ThermostatControllerlowerSetpoint","deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":16},{"interface":"Alexa.PowerLevelController","deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":18},{"interface":"Alexa.TemperatureSensor","deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":13}]',
  thermostatModeOFF: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":12,"value":0}',
  lowerSetpoint: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":16}',
  thermostatMode: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":12}',
  thermostatModeAUTO: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":12,"value":3}',
  SetPowerLevel: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":18}',
  TurnOff: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":10,"value":0}',
  thermostatModeHEAT: '{"deviceID":"0E:6F:5E:B9:EA:D0","aid":425,"iid":12,"value":1}'
}

Configuration

Too extensive

Environment

  • OS: raspbian
  • Software:
  • Node:
  • npm:

Process Supervisor

hb-service

Additional Context

No response

What plugin is used by your AC ? Can you share it's configuration?

Hi, Im really sorry for the delay... Im using https://github.com/kiwi-cam/homebridge-broadlink-rm for the AC, here's the config for it. (It used to work with Alexa Bridge and it works fine if I control it in Home app):

I didn't include all the config for it because it's really long since I setup all temperatures for cool and heat as well as all speeds with rotation on and off (took me ages lol)

{
            "platform": "BroadlinkRM",
            "name": "Broadlink RM",
            "hideScanFrequencyButton": true,
            "hideLearnButton": true,
            "hideWelcomeMessage": true,
            "hosts": [
                {
                    "address": "192.168.15.72",
                    "mac": "24:df:a7:b9:c2:84",
                    "isRFSupported": true,
                    "isRM4": true
                },
                {
                    "address": "192.168.15.104",
                    "mac": "a0:43:b0:5e:8a:36",
                    "isRM4": true
                }
            ],
            "accessories": [
                {
                    "name": "Learn Sala",
                    "type": "learn-code",
                    "host": "24:df:a7:b9:c2:84"
                },
                {
                    "name": "AC Sala",
                    "host": "24:df:a7:b9:c2:84",
                    "type": "heater-cooler",
                    "minTemperature": 16,
                    "maxTemperature": 30,
                    "defaultRotationSpeed": 25,
                    "tempStepSize": 1,
                    "fanStepSize": 25,
                    "defaultCoolTemperature": 22,
                    "defaultHeatTemperature": 24,
                    "turnOnWhenOff": false,
                    "allowResend": false,
                    "data": {
                        "cool": {
                            "on": "2600f2000f00024c6100012610120e330e130f120e130e120f120d140e130d330f130d120f330e1210110f330d3310310f330e330e140e130c140d140d130f110f120e130e150c130e120e130d1210120d150c130e140c140d130e130d130e140d130e130d130f120e130d140e120d130e130e130e320e340e330e330f63600001280f320e130e120f120e140d130e120e120f130d330f130d140d140d130d340e330e130e330e330e330f320f320f330e330e340e130d130e140c330f330f3210120e120e130e130e120e140c340e330e140d340d130e330e130e330f120e130e130d130e120f110f130d330e340e320f3310000d0500000000",
                            "off": "260064010e00024b600001270f120f330e130d140d140d130e130e130e120f320f120e520f330f120e330f3210320e330e330f120f130d120f120e130e120f120e1210120d130f120e130e130d140d130d130e130e3c08100f110f120f120e120e130f120d140d130f120d130f130d130e130d140d330e330f6360000127103110120f110f130e120e1210120d1210120d340f120d140e320e130f32103110320f310f330f330e130d130e130d130e130e140d120f120e130e120f130d130e120f130d130d130f130d120e140d130e130d130e140e110f120e130e120f120e130e130d130f1110120d130e130e130d646000012710320e130e130e120e130e130e130d130e120f320f120f120e330e130e130e140d320f330d340e33103111300f330f3110320f130d140d150c330f3111320e120f130d120f130e120e120e140d130e130d330f120f120f120d340e130f110e140d130e120e130e130f110e120f330e330f000d050000",
                            "temperatureCodes": {
                                "16": {
                                    "rotationSpeed25": {
                                        "swingOn": "2600f2000f00024d6100012610130d330e130e120f130d130f110e140d130e330e130d140d340e141709152b1030113110320e330e1210120e130d130f130c140d130d140e140d130d130e120f120e120f130d1210130e110e130e130d130e130d140d140d140c140d120f120f130e120e1210110e330f320f320f340d64610001270f320f130d130e120f130d130f120d140d130f310f130d130f120f120d130e130d350e320f330e330e130f120d330f320f320f120f120e140d340e330d340d140e130d130e120f130e130d130d130e120f3210110e340e140c340d140e130d130f110f140c120f120f320f320f330e340e000d0500000000",
                                        "swingOff": "2600f2001200024d620001260f120f3210110f1110110f1110110f120f1110320f110f130e330e120f120e33103111310f320f320f120f1110110f120f110f130e120f120e120f120f120f11101110110f110f120f1110110f1110110f120f1110110f120f120f120e120f120e130f110f12101010320f320f320f321063600001270f3210120e120f120e130e120f120f1111100f3210110f1110320f11103110320f120f320f330e330f320f32103110320f320f320f120f330e330e330f32101110110f1110110f1110110f120f1110110f320f120f120f120e330e130e120f120f1111100f120f11103110320f320f320f000d0500000000"
                                    },
                                    "rotationSpeed50": {
                                        "swingOn": "2600f2001100024d610001260f120f3210110e130e130e130e120f130c140d340e120f120f320e130e120f320f330f320e340e3210120d140d140d120e130f120f1110120d130e120f120e130e120e130e130e130d120f130d130e140c140e130e120e1210110e130e130d140d120f120e130e120f320f340d330e330f63610001270f320f130e130d130f110f130d120f130d130e330e130e130d140e130d130e130e320f340e320e330e130e130f3110320e340e120f130d130d340e330e330f120e130e140d120e120f120e140d130e140d330d140e120e330f320f130d130e130d130e130e130d120f330e330f320e340e000d0500000000",
                                        "swingOff": "2600f2001200024d620001260f120f3210110f1110110f1110110f120f1110320f110f130e330e120f120e33103111310f320f320f120f1110110f120f110f130e120f120e120f120f120f11101110110f110f120f1110110f1110110f120f1110110f120f120f120e120f120e130f110f12101010320f320f320f321063600001270f3210120e120f120e130e120f120f1111100f3210110f1110320f11103110320f120f320f330e330f320f32103110320f320f320f120f330e330e330f32101110110f1110110f1110110f120f1110110f320f120f120f120e330e130e120f120f1111100f120f11103110320f320f320f000d0500000000"
                                    },
                                    "rotationSpeed75": {
                                        "swingOn": "2600f2000f00024c610001270f1210320e1210120d130e140d130d140d130d330e130e130e330e120e140d340e330e330e330f320f140c130e1210120d140e120d140d130e140c130e150c120f130e130d130e130e120f120e130d1210120d130e130d140e120f130c140d130d150d130e130d150c330e330f320e330f63610001270e340e130d140d130d140e120e130e130e120e330e130e120f320f330e330f330d130e340d340e330e140d120f3210320f330e120f120d130e340d340e330e130d140e130e110f130e130d130e130e130d330f330e120e340d340d140d150b140e140d130d140d130e320f330f320e330e000d0500000000",
                                        "swingOff": "2600f2001200024d620001260f120f3210110f1110110f1110110f120f1110320f110f130e330e120f120e33103111310f320f320f120f1110110f120f110f130e120f120e120f120f120f11101110110f110f120f1110110f1110110f120f1110110f120f120f120e120f120e130f110f12101010320f320f320f321063600001270f3210120e120f120e130e120f120f1111100f3210110f1110320f11103110320f120f320f330e330f320f32103110320f320f320f120f330e330e330f32101110110f1110110f1110110f120f1110110f320f120f120f120e330e130e120f120f1111100f120f11103110320f320f320f000d0500000000"
                                    },
                                    "rotationSpeed100": {
                                        "swingOn": "2600f2001000024d5f0001280e1210320f120e130d140e120d140d130e130e330e130e130e320f130d120f330e330e330f330e330f120d130f120e140d120f130e130d130d130f120e130e120e120f130d140d130d140d140d130d140d140d150c130d130e120f130d140d130d130e130e120e130f320e340d340d340e64600001270f320f130f120e120e130e130d130f120e130d340d130e140d120e340e340e320f120e330f320f3210120d140d330e340d340e130e130e130d330f3210310f120e140d130e140d120f120d140d140d130d340e3210330f320e330e130e130d130e140e120d130e130e330e340e320f330e000d0500000000",
                                        "swingOff": "2600f2001200024d620001260f120f3210110f1110110f1110110f120f1110320f110f130e330e120f120e33103111310f320f320f120f1110110f120f110f130e120f120e120f120f120f11101110110f110f120f1110110f1110110f120f1110110f120f120f120e120f120e130f110f12101010320f320f320f321063600001270f3210120e120f120e130e120f120f1111100f3210110f1110320f11103110320f120f320f330e330f320f32103110320f320f320f120f330e330e330f32101110110f1110110f1110110f120f1110110f320f120f120f120e330e130e120f120f1111100f120f11103110320f320f320f000d0500000000"
                                    }
                                },
                                "17": {
                                    "rotationSpeed25": {
                                        "swingOn": "2600ee00610001270f120e330f120e130e130e120f110f120e1210320f120e130d340e120f130d330f320f330e3210320e120f130e130d130e140c130f120e140c130f130c130f130d140e120f110e1210120e120e130e120f120f120e130d130e130d140d130d140e120f120e120f120e32103210310f330e646000012710320e130f120e120f120e120f120f120e130e320f120f130d330e330f3210320e130e320f330f330e120f120e330f320f320f120e130e130e320f330f330e120f120e120f140c130f320e130e120e130e3210120f320f120e330e140d120f120e130d1310120d120f330f320f320f320f000d050000000000000000",
                                        "swingOff": "2600f2001200024c6200012610110f3210110f1110110f120f1110110f120f330e120f120e330f120f11103110320f320f320f3210110f120f120e130e120f120e1210110f120f1110110f1110110f120f1110110f120f110f120f120f120e120f120e130e120f120f1111100f120f1110110f120f320f320f320f331062610001270f320f120f120f1110110f1110110f120f110f3210110f120f1110120e330e330f120e330f32103110320f320f320f32103110330e120f320f330f3210310f120f1110110f1110110f3210110f120f120e330f120e1210110f3210110f1110110f120f1110110f1110320f320f330e3310000d0500000000"
                                    },
                                    "rotationSpeed50": {
                                        "swingOn": "2600f2000f00024d600001270f130d340d140d140d140d130e120e120f130e320f130d120f330e130e140d330e330e330f320f330f120e130e120e130e130e110f130d130e140d130d130f120d140d130d140e130e130d140d140c130e130e130d130e130d130e130e130d140e130c130e130e140d330e330e3310320f63600001270f320f120e130e130e130d140d150c130e120e330e130d130f330e330f310f330f120e330e330f330e140c140e330e330e3210120f120e130d330f320f320f130d140d140d140d130d330f140d130d130e320f120e130e330e340e130d130e150b150c140e120e130d330f330e330f320f000d0500000000",
                                        "swingOff": "2600f2001200024c6200012610110f3210110f1110110f120f1110110f120f330e120f120e330f120f11103110320f320f320f3210110f120f120e130e120f120e1210110f120f1110110f1110110f120f1110110f120f110f120f120f120e120f120e130e120f120f1111100f120f1110110f120f320f320f320f331062610001270f320f120f120f1110110f1110110f120f110f3210110f120f1110120e330e330f120e330f32103110320f320f320f32103110330e120f320f330f3210310f120f1110110f1110110f3210110f120f120e330f120e1210110f3210110f1110110f120f1110110f1110320f320f330e3310000d0500000000"
                                    },
                                    "rotationSpeed75": {
                                        "swingOn": "2600f2001000024d600001280e130d340d130e130e130e130e120e130e120e3310110e130f310f120f130d340d330f330f320f330e120f120f120e130e120e130e120e130f120d130e130e130d140d140d120f120f130f100f130d130e120f130d1210120d130e120e140d140d140c130e130e130e330d340f320f320f63610001260f3210120e130e130e120f120e140c130e130e330e140d130f110e330f320f320f120f3210320f320f130e130c340e330f320f120e130e120f32103110320e130f120d130e140d130e330e140e120e120e330f320e130e330f330d130e130e130d130e140d130e130f310f320f340e320e000d0500000000",
                                        "swingOff": "2600f2001200024c6200012610110f3210110f1110110f120f1110110f120f330e120f120e330f120f11103110320f320f320f3210110f120f120e130e120f120e1210110f120f1110110f1110110f120f1110110f120f110f120f120f120e120f120e130e120f120f1111100f120f1110110f120f320f320f320f331062610001270f320f120f120f1110110f1110110f120f110f3210110f120f1110120e330e330f120e330f32103110320f320f320f32103110330e120f320f330f3210310f120f1110110f1110110f3210110f120f120e330f120e1210110f3210110f1110110f120f1110110f1110320f320f330e3310000d0500000000"
                                    },
                                    "rotationSpeed100": {
                                        "swingOn": "2600f2001100024d600001270f120f320f1210110e1210120e120e130e120e340d130f130d330f120e120f330e330e330e330f3110120e130e130e130d140d140c130f130d130c150e120e130e120e130e120f130d130e120e130e130e130d140d130d130e140d130d130e130e130e130e120e1210310f330e330f320f63600001280e340e120e130e130e130e120e130e130e120f320f110f130d330f130d330e340e130e330e32103111120e11103110320e330e130e130e130d340e3210320e130e130e120f130d120f320f120e140d130e320f330e340d340e330e130e120f120e130e120f130e110f330f320e330e340e000d0500000000",
                                        "swingOff": "2600f2001200024c6200012610110f3210110f1110110f120f1110110f120f330e120f120e330f120f11103110320f320f320f3210110f120f120e130e120f120e1210110f120f1110110f1110110f120f1110110f120f110f120f120f120e120f120e130e120f120f1111100f120f1110110f120f320f320f320f331062610001270f320f120f120f1110110f1110110f120f110f3210110f120f1110120e330e330f120e330f32103110320f320f320f32103110330e120f320f330f3210310f120f1110110f1110110f3210110f120f120e330f120e1210110f3210110f1110110f120f1110110f1110320f320f330e3310000d0500000000"
                                    }
                                },
                                "18": {
                                    "rotationSpeed25": {
                                        "swingOn": "2600f2001000024c610001270e130e340e120e140d130e120f130d120f120e320f130e130e320f130e120e340d340d330f32103210120d130e120f120e120f130d130f120e130e130d130d130e140d130d140e140c120f130e130e120e130d130e130d130f130e120d140d130e140c140d140d130e330e330f320e330f64600001270e330e130e130f120e130d130d140d140d140d330e130f120e320f330f310f330e130f330e330d340e130e130e320e340e330e1210130c130e340e320e340e120e140d130d140d130e130e330e130f120d3310110e330f120f330d130e130d130e140d130e120e130e330f330e320f330f000d0500000000",
                                        "swingOff": "2600f2001200024c610001271010103110110f120f1110110f120f110f130e330e120f120e331011101011310f320f320f3210320f110f120f120f120e120f120f120f111011101010110f120f1110110f1110110f120f1110110f120f120f120e120f120e1210110f120f1110110f120f1110110f320f32103110330f62610001270f330e120f120f1111100f120f1110110f1110320f1110110f120f120e330f320f120e330f3211310f320f320f32103110320f330e120f330e330f32103110110f1110110f120f1110110f3210110f120f320f120e130f110f3211100f120f1110110f1110110f120f320f320f330f3211000d0500000000"
                                    },
                                    "rotationSpeed50": {
                                        "swingOn": "2600f20010000214600001280e120f330e130f110e140d120f120e130e130e320e130f120e330e130d130f320f331030103210310f130e120e130f120e130d140d130d150c140c140d130e140d120f130d1210110e140d120f130d140d130d130f120e130e130d140d130e140c140d130e120e1210320e330f320e3211635f0001280e330f130e130d130d130e140d130e130e120f320e130f1110310f330f330e320e130f320f330e330e130e1210310f330f320e120f130e130d330e350d330f120d140e120e130e130d130e340e120e130d330f130d130e330f330d140e130d130e130d130e130f110f320f32103110320f000d0500000000",
                                        "swingOff": "2600f2001200024c610001271010103110110f120f1110110f120f110f130e330e120f120e331011101011310f320f320f3210320f110f120f120f120e120f120f120f111011101010110f120f1110110f1110110f120f1110110f120f120f120e120f120e1210110f120f1110110f120f1110110f320f32103110330f62610001270f330e120f120f1111100f120f1110110f1110320f1110110f120f120e330f320f120e330f3211310f320f320f32103110320f330e120f330e330f32103110110f1110110f120f1110110f3210110f120f320f120e130f110f3211100f120f1110110f1110110f120f320f320f330f3211000d0500000000"
                                    },
                                    "rotationSpeed75": {
                                        "swingOn": "2600f2000f00024d610001270e120f320f130e120e130e120f120e130e130d330f120e140c340e130d130f330e330e330f320f3110140c130e120f130d130e140c130e130e130e130e130d130e140c130f110f130e120e130d130e130e130d130f120e130d130e130e130d140d130e130e130d130e320f330f320e330f645f0001280e330f120e140d130e120e140d130e130e130d330e130f110e130f330e320f330f130c340e330e330f130d130e330f320e330f120e130e130e330e330f320f130d130f110f130d1210130c330f130d120f330e330e130e330f330e120f120d140e120e130f120e120f320f320f320f340d000d0500000000",
                                        "swingOff": "2600f2001200024c610001271010103110110f120f1110110f120f110f130e330e120f120e331011101011310f320f320f3210320f110f120f120f120e120f120f120f111011101010110f120f1110110f1110110f120f1110110f120f120f120e120f120e1210110f120f1110110f120f1110110f320f32103110330f62610001270f330e120f120f1111100f120f1110110f1110320f1110110f120f120e330f320f120e330f3211310f320f320f32103110320f330e120f330e330f32103110110f1110110f120f1110110f3210110f120f320f120e130f110f3211100f120f1110110f1110110f120f320f320f330f3211000d0500000000"
                                    },
                                    "rotationSpeed100": {
                                        "swingOn": "2600f2000f00024e5900012e0e140d330f130d140c140e120e130d150c140e330d120f150c3210120e130d330e330e340a370e330e140c150d140c140d140d140d120e130e130d1a06140e130e130c140d130e140d130d140d130d140d130e170a140c130f110f130e130d130c150d130e130e130d340e330e330d340f634d00013b0f320e130e140c140d130f140b130e130e130d340d130f140b340f130c340e330f130e340c340e320f130d130e330e340d350c140d130f130d330e340e3210110f140c140d140c140e130c340e140c130e340e330e340e320e340f120d130e150c130c140e130d130e340c350d340e340e000d0500000000",
                                        "swingOff": "2600f2001200024c610001271010103110110f120f1110110f120f110f130e330e120f120e331011101011310f320f320f3210320f110f120f120f120e120f120f120f111011101010110f120f1110110f1110110f120f1110110f120f120f120e120f120e1210110f120f1110110f120f1110110f320f32103110330f62610001270f330e120f120f1111100f120f1110110f1110320f1110110f120f120e330f320f120e330f3211310f320f320f32103110320f330e120f330e330f32103110110f1110110f120f1110110f3210110f120f320f120e130f110f3211100f120f1110110f1110110f120f320f320f330f3211000d0500000000"
                                    }
                                },

I'm still looking into this, I was able to recreate your issue using your config so this helps a lot. Am hoping to have a fix shortly.

Thank you for getting back and for taking your time to look into this.

FYI - I'm still looking into this, and am suspecting that the problem is on the Alexa side. I went back and used the example configuration from Amazon for a thermostat, and have the same problem.

And other people are also reporting weird issues with thermostats - https://amazon.developer.forums.answerhub.com/questions/246044/alexa-does-not-support-that.html

Am thinking we will need to wait for Amazon to resolve the issue with the backend.

Adding that I am having the same issue over here with all of my AC controllers. Power On/Off works perfectly but setting the temperature no longer works. I am running Homebridge on OpenWrt - I have a friend with the same issue too. We are using both the Xiaomi or Aqara AC controllers to control Midea and Panasonic ACs via the homebridge-miot plugin. All 4 of them are having the same issue. Though, all still operate correctly via HomeKit so it's purely an Alexa issue.

Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]: [9/24/2023, 2:43:08 PM] [Alexa] alexaThermostatController missing action targetSetpoint Unexpected token u in JSON at position 0 {
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]:   thermostatModeCOOL: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6,"value":2}',
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]:   TurnOn: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":4,"value":1}',
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]:   upperSetpoint: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":9}',
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]:   ReportState: '[{"interface":"Alexa.PowerController","deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":4},{"interface":"Alexa.ThermostatControllerthermostatMode","deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6},{"interface":"Alexa.TemperatureSensor","deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":7},{"interface":"Alexa.ThermostatControllerlowerSetpoint","deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":8},{"interface":"Alexa.ThermostatControllerupperSetpoint","deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":9}]',
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]:   thermostatModeOFF: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6,"value":0}',
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]:   lowerSetpoint: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":8}',
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]:   thermostatMode: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6}',
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]:   thermostatModeAUTO: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6,"value":3}',
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]:   TurnOff: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":4,"value":0}',
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]:   thermostatModeHEAT: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6,"value":1}'
Sun Sep 24 14:43:08 2023 daemon.info homebridge[2574]: }

Same here, LGThinQ plugin for AC control:
[24/09/2023, 09:45:45] [Alexa] alexaDiscovery - returned 30 devices
[24/09/2023, 09:53:13] [Alexa] alexaThermostatController missing action targetSetpoint Unexpected token u in JSON at position 0 {
thermostatModeCOOL: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":12,"value":2}',
TurnOn: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":10,"value":1}',
AdjustPowerLevel: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":16}',
upperSetpoint: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":14}',
ReportState: '[{"interface":"Alexa.PowerController","deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":10},{"interface":"Alexa.ThermostatControllerthermostatMode","deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":12},{"interface":"Alexa.TemperatureSensor","deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":13},{"interface":"Alexa.ThermostatControllerupperSetpoint","deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":14},{"interface":"Alexa.ThermostatControllerlowerSetpoint","deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":15},{"interface":"Alexa.PowerLevelController","deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":16}]',
thermostatModeOFF: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":12,"value":0}',
lowerSetpoint: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":15}',
thermostatMode: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":12}',
thermostatModeAUTO: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":12,"value":3}',
SetPowerLevel: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":16}',
TurnOff: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":10,"value":0}',
thermostatModeHEAT: '{"deviceID":"0E:58:F6:AD:34:27","aid":33,"iid":12,"value":1}'
}

I have an Alexa native AC (Thermostat) and that continues to work fine.

Have been looking further at this, and something has definitely changed on the Amazon backend in regards to how they are handling thermostats and in particular ones with dual ( Upper and Lower) set points. Thermostats with Single set points are not having this issue.

Previously thermostats with dual set points when changed by an Alexa command would send updated upper and lower set points, but now Alexa is only sending a single set point targetSetpoint. The documentation for the Alexa Thermostat service does not mention this, but still mentions Upper and Lower set points, and the examples include the Upper and Lower set points. The current sample code for dual set points does not work as documented, so something is broken on the Amazon side of the equation.

To work around the issue, am thinking to change the plugin thermostat code to map the single setpoint sent by Alexa to the dual setpoint used by your thermostats. And need to figure out a method of determining which set point to change when an Alexa changes temperature.

My understanding is that dual set point thermostats have 2 settings, the upper is used to tell the unit when to turn on the AC, and the lower is used to tell the unit when to turn on HEAT.

Am thinking to add a configuration setting, that would indicate what setting to change ( upper or lower ) when a Alexa thermostat command is received.

Does this make sense with your setups ?

I'm not sure how that would work with many 'Heater/Cooler' devices which do not have dual set points.

Taking all of the Aqara/Mi AC controllers - they just have different modes and not a heating cooling set point. If I ask Alexa (previously when it worked) to set the temperate, the temperature would be set and the mode would be preserved. Plus I could ask to heat or to cool.

Would mapping to a dual set point interfere with the mode if it's set lower/higher than the current set point for the opposite mode?

image

If you select Auto, do you see dual set points ?

Not exactly, Auto mode sets the AC to Auto mode (on the AC itself). I don't believe I've ever seen an AC unit with dual set points. It wouldn't really make sense. It does display as dual set points in HomeKit but it doesn't really work as dual set points as changing the temperature just changes both of the points. This behaviour only happens in Auto mode though.

image

As background, inside HomeKit, when you are in Heat mode it changes the lower setpoint, and in AC mode it changes the upper setpoint. And when your in Auto it allows you to change both set points.

With my suggested mapping approach, if the config setting was for upper or AC, then only the upper setting would be changed by an Alexa command, the lower setting would not change. The setting for the other mode could not be changed.

Or another approach could be to have the plugin determine what mode your thermostat is in, and if its Heat, change the lower setting, and it its Cool/AC, then change the upper setting. And if the setting is Auto - do nothing, have Alexa give an error message.

I'm working towards an update based on the second approach suggested above, felt it would be easier and more straight forward for user to use. The second approach was to have the plugin determine what mode your thermostat is in, and if its Heat, change the lower setting, and it its Cool/AC, then change the upper setting. And if the setting is Auto - do nothing, and have Alexa give an error message.

Should have a patch / release with this in a few days.

I have created a beta release to test the fix for this issue. Could you update to v0.6.8-beta.0 and let me know if the issue is resolved ?

I have created a beta release to test the fix for this issue. Could you update to v0.6.8-beta.0 and let me know if the issue is resolved ?

Just tried it, works fine now! Thanks

I also tried it on two setups yesterday. Functionality definitely seems to work again as intended, great! However I did notice that on both of the setups there were occasions where Alexa would 'OK' an action and nothing would happen on homebridge. This is different than before as it would either OK and action it or say there was a problem.

@TJT-JTJ Could you share a homebridge log from when the error/lack of change occurs ?

@TJT-JTJ Could you share a homebridge log from when the error/lack of change occurs ?

Sat Sep 30 00:32:07 2023 daemon.info homebridge[2854]: [9/30/2023, 12:32:07 AM] [Alexa] INFO: DeviceList - The following devices are allow => [ 'Bedroom AC', 'Living Room AC', 'Fan', 'Spare Room AC' ]
Sat Sep 30 00:32:07 2023 daemon.info homebridge[2854]: [9/30/2023, 12:32:07 AM] [Alexa] ERROR: HAP Discovery failed, please review config
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]: [9/30/2023, 12:33:27 AM] [Alexa] alexaThermostatController ERROR: 'ERROR: HB Instance not found' Action: 'targetSetpoint'  {
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]:   thermostatModeCOOL: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6,"value":2}',
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]:   TurnOn: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":4,"value":1}',
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]:   upperSetpoint: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":9}',
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]:   ReportState: '[{"interface":"Alexa.PowerController","deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":4},{"interface":"Alexa.ThermostatControllerthermostatMode","deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6},{"interface":"Alexa.TemperatureSensor","deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":7},{"interface":"Alexa.ThermostatControllerlowerSetpoint","deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":8},{"interface":"Alexa.ThermostatControllerupperSetpoint","deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":9}]',
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]:   thermostatModeOFF: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6,"value":0}',
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]:   lowerSetpoint: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":8}',
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]:   thermostatMode: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6}',
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]:   thermostatModeAUTO: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6,"value":3}',
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]:   TurnOff: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":4,"value":0}',
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]:   thermostatModeHEAT: '{"deviceID":"0E:54:BC:D1:54:A1","aid":11,"iid":6,"value":1}'
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]: }

Though I should point out the issue I was referring to was when Alexa responds 'OK' to the command but doesn't actually do anything. This issue I tried a few times just now and there was nothing that appeared in the logs. This is similar to what I saw on a different setup also yesterday.

This line in the log

Sat Sep 30 00:32:07 2023 daemon.info homebridge[2854]: [9/30/2023, 12:32:07 AM] [Alexa] ERROR: HAP Discovery failed, please review config
Sat Sep 30 00:33:27 2023 daemon.info homebridge[2854]: [9/30/2023, 12:33:27 AM] [Alexa] alexaThermostatController ERROR: 'ERROR: HB Instance not found' Action: 'targetSetpoint'  {

Is the plugin saying that it could not find the homebridge instance "deviceID":"0E:54:BC:D1:54:A1"

Did the plugin recently restart or something, and was still in the process of finding your homebridge instances. Or ???

Your second comment, if nothing appeared in the logs, it sounds like nothing was sent to the plugin by Alexa. To confirm, can you share the username you are using for the service, and the timing of a recent recreation of the issue. I want to check the cloud server logs. ( If your not comfortable with posting it here, you could DM me via the homebridge discord server ).