Insteon Thermostat not setting [solved]

I’m using the insteonPLM binding and it works great for my switches and dimmers, and it seems to be reporting the correct data to openhab, however when I change the setpoint, the value changes in openhab, but it remains the same on the thermostat. I went through the linking with insteon-terminal and the DB for both devices seems correct, but I noticed an extra responder in group 00 on my Thermostat database, could this be my problem? I can’t seem to delete it:

>>> thermostat.removeResponder("31.27.10","00")
getting db, be patient!
sent db query msg, incoming records: >>>  1 2 3 4 5 6 7 8 9
----- database -------
1fff 31.27.10                       31.27.10  RESP  10100010 group: 00 data: 3c 50 44
1ff7 modem                          2C.AE.A3  RESP  10100010 group: 00 data: 13 22 42
1fef modem                          2C.AE.A3  CTRL  11100010 group: 01 data: 00 00 01
1fe7 modem                          2C.AE.A3  CTRL  11100010 group: 02 data: 00 00 02
1fdf modem                          2C.AE.A3  CTRL  11100010 group: 03 data: 00 00 03
1fd7 modem                          2C.AE.A3  CTRL  11100010 group: 04 data: 00 00 04
1fcf modem                          2C.AE.A3  CTRL  11100010 group: 05 data: 00 00 05
1fc7 modem                          2C.AE.A3  CTRL  11100010 group: ef data: 03 1f ef
1fbf 00.00.00                       00.00.00 (RESP) 00000000 group: 00 data: 00 00 00
----- end ------------
database complete, analyzing...
no matching found record, no action taken!

Please post your modem’s DB so we can see the modem’s controller links to the thermostat. The thermostat’s links to the modem you posted will only serve for the thermostat to report data to the Modem, but not for the modem to set any values on the thermostat.

Thanks! Here are the modem db:

0000 30.DA.8A                       30.DA.8A  RESP  10100010 group: 01 data: 00 00 00
0000 30.DA.8A                       30.DA.8A  CTRL  11100010 group: 00 data: 03 24 42
0000 2E.4C.6D                       2E.4C.6D  RESP  10100010 group: 01 data: 00 00 00
0000 2E.4C.6D                       2E.4C.6D  CTRL  11100010 group: 00 data: 03 0e 43
0000 2C.18.9B                       2C.18.9B  CTRL  11100010 group: 00 data: 03 08 42
0000 41.FD.B4                       41.FD.B4  RESP  10100010 group: 01 data: 00 00 00
0000 41.FD.B4                       41.FD.B4  CTRL  11100010 group: 00 data: 03 24 42
0000 40.9B.00                       40.9B.00  CTRL  11100010 group: 00 data: 03 20 45
0000 thermostat                     25.1A.12  RESP  10100010 group: 01 data: 00 00 01
0000 thermostat                     25.1A.12  RESP  10100010 group: 02 data: 00 00 02
0000 thermostat                     25.1A.12  RESP  10100010 group: 03 data: 00 00 03
0000 thermostat                     25.1A.12  RESP  10100010 group: 04 data: 00 00 04
0000 thermostat                     25.1A.12  RESP  10100010 group: 05 data: 00 00 05
0000 thermostat                     25.1A.12  RESP  10100010 group: ef data: 00 00 ef
0000 thermostat                     25.1A.12  CTRL  11100010 group: 00 data: 03 0b 0d
0000 47.04.5A                       47.04.5A  RESP  10100010 group: 01 data: 00 00 00
0000 47.04.5A                       47.04.5A  CTRL  11100010 group: 00 data: 03 24 42
0000 31.64.1A                       31.64.1A  RESP  10100010 group: 01 data: 00 00 00
0000 31.64.1A                       31.64.1A  CTRL  11100010 group: 00 data: 03 20 44
0000 30.01.28                       30.01.28  CTRL  11100010 group: 00 data: 03 08 42
0000 31.69.71                       31.69.71  CTRL  11100010 group: 00 data: 03 20 44
0000 44.DF.74                       44.DF.74  RESP  10100010 group: 01 data: 00 00 00
0000 44.DF.74                       44.DF.74  CTRL  11100010 group: 00 data: 03 24 42
0000 41.FB.9E                       41.FB.9E  RESP  10100010 group: 01 data: 00 00 00
0000 41.FB.9E                       41.FB.9E  CTRL  11100010 group: 00 data: 03 24 42
0000 41.FB.9E                       41.FB.9E  CTRL  11100010 group: 00 data: 03 24 42
0000 2E.4F.CF                       2E.4F.CF  RESP  10100010 group: 01 data: 00 00 00
0000 2E.4F.CF                       2E.4F.CF  CTRL  11100010 group: 00 data: 03 0e 43
0000 30.D9.27                       30.D9.27  RESP  10100010 group: 01 data: 00 00 00
0000 30.D9.27                       30.D9.27  CTRL  11100010 group: 00 data: 03 24 42

Just looking at my logs, and I actually don’t see log lines relating to the setpoint being set. I wonder if maybe there’s a problem with my item definitions? The numbers seem to be initialized fine and reflect changes that are made directly on the device? These are my items:

  Number  thermostatCoolPoint "cool point [%.1f °C]" { insteonplm="25.1A.12:F00.00.18#coolsetpoint" }
  Number  thermostatHeatPoint "heat point [%.1f °C]" { insteonplm="25.1A.12:F00.00.18#heatsetpoint" }
  Number  thermostatSystemMode "system mode [%d]" { insteonplm="25.1A.12:F00.00.18#systemmode" }
  Number  thermostatFanMode "fan mode [%d]" { insteonplm="25.1A.12:F00.00.18#fanmode" }
  Number  thermostatIsHeating "is heating [%d]" { insteonplm="25.1A.12:F00.00.18#isheating"}
  Number  thermostatIsCooling "is cooling [%d]" { insteonplm="25.1A.12:F00.00.18#iscooling"}
  Number  thermostatTempFahren  "temperature [%.1f °F]" { insteonplm="25.1A.12:F00.00.18#tempfahrenheit" }
  Number  thermostatTempCelsius  "temperature [%.1f °C]" { insteonplm="25.1A.12:F00.00.18#tempcelsius" }
  Number  thermostatHumidity "humidity [%.0f %%]" { insteonplm="25.1A.12:F00.00.18#humidity" }

edit: Ok, looking at my logs again, and it looks like I am getting a couple of warnings:

2018-01-30 20:47:49.832 [WARN ] [steonplm.internal.message.MsgFactory] - incoming message does not start with 0x02
2018-01-30 20:47:49.834 [WARN ] [ding.insteonplm.internal.driver.Port] - bad data received: incoming message does not start with 0x02
2018-01-30 20:47:49.835 [WARN ] [ding.insteonplm.internal.driver.Port] - got bad data back, must assume message was acked.
2018-01-30 20:47:50.348 [WARN ] [steonplm.internal.message.MsgFactory] - got unknown command code 0x00
2018-01-30 20:47:50.350 [WARN ] [ding.insteonplm.internal.driver.Port] - bad data received: got unknown command code 0x00

Hmm, seeing these warnings when I haven’t done any change to the set point. I’m really not sure what could be going on now

Just want to update this for any future googlers that might come across it. The problem was that I was controlling this through the api and sending the intended temperature in a PUT request to device/state as opposed to POST to the device route directly