openHAB2, 2.4, MAX! binding, command not send to hardware

max
maxcube
binding
Tags: #<Tag:0x00007fe0660c39a8> #<Tag:0x00007fe0660c3818> #<Tag:0x00007fe0660c3610>

(Marcin) #1

Hi

I use to max cubes in my home. Communication (I mean sending setpoints) to one cube is working, but to the second one not (direction from openhab to cube). No problem for the communication from the cube to openhab, Setting from devices are sent to openhab properly.

My first cube has about 15 accesories. second one (that ‘faulty’ one) only two.
I’m sending a new setpoint to the ‘faulty’ cube (first accessory):

2019-01-14 12:07:23.595 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 70 (LEQ1161116-set_temp:5 ?C).
2019-01-14 12:07:30.482 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Removed Command id 70 (LEQ1161116-set_temp) from queue. Superceeded by 71
2019-01-14 12:07:30.482 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 71 (LEQ1161116-set_temp:4 ?C).

‘Keep-alive’ packet to the faulty cube happens here (150 seconds timeout). Everything look fine.

2019-01-14 12:07:37.758 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Sending request #4 to MAX! Cube
2019-01-14 12:07:37.759 [TRACE] [nternal.handler.MaxCubeBridgeHandler] - Write string to Max! Cube 192.168.X.6: l:
2019-01-14 12:07:37.863 [TRACE] [nternal.handler.MaxCubeBridgeHandler] - message block: 'L:DBGSuAkSGQQiAAAA2wsQtOP/EhkACQAAAA=='
2019-01-14 12:07:37.863 [TRACE] [nternal.handler.MaxCubeBridgeHandler] - === L Message ===
2019-01-14 12:07:37.864 [TRACE] [nternal.handler.MaxCubeBridgeHandler] -        RAW: DBGSuAkSGQQiAAAA2wsQtOP/EhkACQAAAA==
2019-01-14 12:07:37.864 [TRACE] [b.binding.max.internal.device.Device] - Device 1192b8 (Wallmounted Thermostat): L Message length: 12 content: 11 92 B8 09 12 19 04 22 00 00 00 DB
2019-01-14 12:07:37.864 [DEBUG] [b.binding.max.internal.device.Device] - Device 1192b8 (Wallmounted Thermostat): Actual Temperature : 21.9
2019-01-14 12:07:37.864 [TRACE] [b.binding.max.internal.device.Device] - Device 10b4e3 (Thermostat): L Message length: 11 content: 10 B4 E3 FF 12 19 00 09 00 00 00
2019-01-14 12:07:37.865 [DEBUG] [b.binding.max.internal.device.Device] - Device 10b4e3 (Thermostat): Actual Temperature : 0.0
2019-01-14 12:07:37.865 [TRACE] [nternal.handler.MaxCubeBridgeHandler] - 2 devices found.
2019-01-14 12:07:37.865 [DEBUG] [x.internal.handler.MaxDevicesHandler] - No changes for Wallmounted Thermostat Termostat ?cienny 1 (LEQ1466197) id: max:wallthermostat:KEQ0817579:LEQ1466197
2019-01-14 12:07:37.866 [DEBUG] [x.internal.handler.MaxDevicesHandler] - No changes for Thermostat Termostat 1 (LEQ1161116) id: max:thermostat:KEQ0817579:LEQ1161116

I’m sending a new setpoint to the ‘faulty’ cube (second accessory):

2019-01-14 12:08:00.467 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 72 (LEQ1466197-set_temp:16.5 C).
2019-01-14 12:08:03.121 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Removed Command id 72 (LEQ1466197-set_temp) from queue. Superceeded by 73
2019-01-14 12:08:03.121 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 73 (LEQ1466197-set_temp:16.0 C).

Now I’m sending a new setpoint to the ‘working’ cube ():

2019-01-14 12:08:45.845 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 74 (LEQ1161125-set_temp:20.0 ?C).
2019-01-14 12:08:45.845 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command org.openhab.binding.max.internal.handler.SendCommand@56b32afe[id=74,channelUID=max:thermostat:LEQ1281426:LEQ1161125:set_temp,command=20.0 ?C,cubeCommand=<null>,serialNumber=LEQ1161125,key=LEQ1161125-set_temp,commandText=20.0 ?C] sent to MAX! Cube at IP: 192.168.X.5
2019-01-14 12:08:45.845 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Sending request #1004 to MAX! Cube
2019-01-14 12:08:45.845 [TRACE] [nternal.handler.MaxCubeBridgeHandler] - Write string to Max! Cube 192.168.X.5: s:AARAAAAAELTNA2g=
2019-01-14 12:08:46.011 [TRACE] [nternal.handler.MaxCubeBridgeHandler] - message block: 'S:18,0,31'
2019-01-14 12:08:46.011 [TRACE] [nternal.handler.MaxCubeBridgeHandler] - === S Message ===
2019-01-14 12:08:46.011 [TRACE] [nternal.handler.MaxCubeBridgeHandler] -        RAW : 18,0,31
2019-01-14 12:08:46.012 [TRACE] [nternal.handler.MaxCubeBridgeHandler] -        DutyCycle         : 24
2019-01-14 12:08:46.012 [TRACE] [nternal.handler.MaxCubeBridgeHandler] -        Command Discarded : false
2019-01-14 12:08:46.012 [TRACE] [nternal.handler.MaxCubeBridgeHandler] -        FreeMemorySlots   : 49
2019-01-14 12:08:46.012 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - S message. Duty Cycle: 24, Free Memory Slots: 49
2019-01-14 12:08:46.013 [TRACE] [nternal.handler.MaxCubeBridgeHandler] - Command org.openhab.binding.max.internal.handler.SendCommand@56b32afe[id=74,channelUID=max:thermostat:LEQ1281426:LEQ1161125:set_temp,command=20.0 ?C,cubeCommand=<null>,serialNumber=LEQ1161125,key=LEQ1161125-set_temp,commandText=20.0 ?C] completed for MAX! Cube at IP: 192.168.X.5

after that I’m sending again a new setpoint to the ‘faulty’ cube (second accessory):

2019-01-14 12:09:01.378 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Removed Command id 73 (LEQ1466197-set_temp) from queue. Superceeded by 75
2019-01-14 12:09:01.379 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 75 (LEQ1466197-set_temp:15.5 C).

As you can see - previous command (73) is still in queue. Setpoint is not sent to ‘faulty’ cube at all, but the command for the ‘working’ cube is sent properly in this time. Duty cycle for the fault cube is 0

Any idea what to do (do I have to clear something)?
your code goes here

EDIT
After bundle:stop bundle:start when sending first command:

2019-01-14 20:21:25.992 [DEBUG] [nternal.handler.MaxCubeBridgeHandler] - Command queued id 11 (LEQ1466197-set_temp:14.0 C).
2019-01-14 20:21:25.992 [ERROR] [nternal.handler.MaxCubeBridgeHandler] - Unexpected exception occurred during run of queueConsumer
java.lang.NullPointerException: null
        at org.openhab.binding.max.internal.handler.MaxCubeBridgeHandler.getCommand(MaxCubeBridgeHandler.java:422) ~[270:org.openhab.binding.max:2.4.0]
        at org.openhab.binding.max.internal.handler.MaxCubeBridgeHandler.access$0(MaxCubeBridgeHandler.java:405) ~[270:org.openhab.binding.max:2.4.0]
        at org.openhab.binding.max.internal.handler.MaxCubeBridgeHandler$QueueConsumer.run(MaxCubeBridgeHandler.java:356) [270:org.openhab.binding.max:2.4.0]
        at java.lang.Thread.run(Thread.java:748) [?:?]

What else should I check to find the cause?
I’ve tired restart, things remove/things add - no luck.


(Vincent Regaud) #2

Could you add code fences around the log extracts to your question please?
It is really difficult to read as it is now. Thanks


(Marcin) #3

Sorry, post updated.
Thanks