Haier AC with MQTT and nodered ?

For heating/cooling related questions in Domoticz

Moderator: leecollings

eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

@FireWizard
Hi,
FireWizard wrote: Sunday 02 August 2020 15:11 As said, I'm not really happy with this "solution". I see it as a "work around".
I decided to discuss it with waaren and that resulted in a Pull Request.

If this PR is accepted by gizmocuz, the problem is solved in one of the next releases. In that case, you can remove those 3 extra nodes.
You can follow the progress at: https://github.com/domoticz/domoticz/issues/4282

Regards
Nice to see that there is work in progress ..
I will follow this thread and just wait for further notices on this topic.
tnx again @FireWizard and @Waaren
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

Hi @FireWizard

I just received the latest firware for my USB-ESP-Haier stick.
It implements the "Lights" function to switch the LED on the indoor unit on/off.
I changed the node-red flow and all works as expected.

Code: Select all

[{"id":"5eeacbec.3fc754","type":"tab","label":"Haier","disabled":false,"info":""},{"id":"8e2e4a39.4c1b18","type":"mqtt in","z":"5eeacbec.3fc754","name":"","topic":"myhome/topic/+","qos":"0","datatype":"auto","broker":"1a0c69de.7ac4b6","x":130,"y":300,"wires":[["24ee2efb.f409da","855a1b51.10e098"]]},{"id":"6112700d.10535","type":"debug","z":"5eeacbec.3fc754","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":540,"y":240,"wires":[]},{"id":"7996aa6b.53e75c","type":"mqtt out","z":"5eeacbec.3fc754","name":"","topic":"domoticz/in","qos":"0","retain":"false","broker":"1a0c69de.7ac4b6","x":540,"y":300,"wires":[]},{"id":"a275360a.be2188","type":"mqtt in","z":"5eeacbec.3fc754","name":"","topic":"domoticz/out","qos":"2","datatype":"json","broker":"1a0c69de.7ac4b6","x":120,"y":625,"wires":[["70510eb4.3fe2c8"]]},{"id":"70510eb4.3fe2c8","type":"switch","z":"5eeacbec.3fc754","name":"Filter Haier Commands","property":"payload.idx","propertyType":"msg","rules":[{"t":"eq","v":"253","vt":"num"},{"t":"eq","v":"247","vt":"num"},{"t":"eq","v":"248","vt":"num"},{"t":"eq","v":"249","vt":"num"},{"t":"eq","v":"251","vt":"num"},{"t":"eq","v":"252","vt":"num"},{"t":"eq","v":"255","vt":"num"},{"t":"eq","v":"245","vt":"num"}],"checkall":"true","repair":false,"outputs":8,"x":360,"y":625,"wires":[["327932e9.ab5a9e"],["cb9e8de1.b8fc7"],["5a1f3616.93376"],["9e8de2f6.15c9b"],["730324b9.21ceac"],["5ac35af7.cfe434"],["ee06e1a.7eeee2"],["e9cdfbd5.f133a"]]},{"id":"e5bab2e8.49ee18","type":"comment","z":"5eeacbec.3fc754","name":"Output explanation","info":"1. Lock Remote\n2. Power\n3. Health\n4. Swing\n5. Fan Speed\n6. Mode\n7. Thermostat Setpoint","x":340,"y":725,"wires":[]},{"id":"cb9e8de1.b8fc7","type":"function","z":"5eeacbec.3fc754","name":"Lock Remote","func":"msg.topic = \"myhome/topic/set/Lock_Remote\";\nmsg.payload = msg.payload.nvalue.toString();\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":610,"y":520,"wires":[["39626de7.1615c2"]]},{"id":"5a1f3616.93376","type":"function","z":"5eeacbec.3fc754","name":"Power","func":"msg.topic = \"myhome/topic/set/Power\";\nmsg.payload = msg.payload.nvalue.toString();\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":580,"y":560,"wires":[["39626de7.1615c2"]]},{"id":"9e8de2f6.15c9b","type":"function","z":"5eeacbec.3fc754","name":"Health","func":"msg.topic = \"myhome/topic/set/Health\";\nmsg.payload = msg.payload.nvalue.toString();\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":580,"y":600,"wires":[["39626de7.1615c2"]]},{"id":"730324b9.21ceac","type":"function","z":"5eeacbec.3fc754","name":"Swing","func":"msg.topic = \"myhome/topic/set/Swing\";\nif ((msg.payload.nvalue === 0) && msg.payload.svalue1 == \"0\") {\n        msg.payload = \"off\";\n} else if (msg.payload.nvalue === 2) {\n    switch (msg.payload.svalue1) {\n        case \"10\":\n            msg.payload = \"ud\";\n        break;\n        \n        case \"20\":\n            msg.payload = \"lr\";\n        break;\n\n        case \"30\":\n            msg.payload = \"all\";\n        break;\n\n    }\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":580,"y":640,"wires":[["39626de7.1615c2"]]},{"id":"5ac35af7.cfe434","type":"function","z":"5eeacbec.3fc754","name":"Fan Speed","func":"msg.topic = \"myhome/topic/set/Fan_Speed\";\nif (msg.payload.nvalue === 2) {\n    switch (msg.payload.svalue1) {\n        case \"10\":\n            msg.payload = \"max\";\n        break;\n        \n        case \"20\":\n            msg.payload = \"mid\";\n        break;\n\n        case \"30\":\n            msg.payload = \"min\";\n        break;\n\n        case \"40\":\n            msg.payload = \"auto\";\n        break;\n\n    }\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":600,"y":680,"wires":[["39626de7.1615c2"]]},{"id":"ee06e1a.7eeee2","type":"function","z":"5eeacbec.3fc754","name":"Mode","func":"msg.topic = \"myhome/topic/set/Mode\";\nif ((msg.payload.nvalue === 0) && msg.payload.svalue1 == \"0\") {\n        msg.payload = \"off\";\n} else if (msg.payload.nvalue === 2) {\n    switch (msg.payload.svalue1) {\n        case \"10\":\n            msg.payload = \"dry\";\n        break;\n\n        case \"20\":\n            msg.payload = \"heat\";\n        break;\n        \n        case \"30\":\n            msg.payload = \"cool\";\n        break;\n\n        case \"40\":\n            msg.payload = \"auto\";\n        break;\n\n    }\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":580,"y":720,"wires":[["39626de7.1615c2"]]},{"id":"327932e9.ab5a9e","type":"function","z":"5eeacbec.3fc754","name":"Set Temperature","func":"msg.topic = \"myhome/topic/set/Set_Temp\";\nmsg.payload = msg.payload.svalue1;\nif (Number(msg.payload) < 16) (msg.payload) = \"16.00\";\nif (Number(msg.payload) > 30) (msg.payload) = \"30.00\";\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":620,"y":480,"wires":[["b323ac60.184b78"]]},{"id":"39626de7.1615c2","type":"mqtt out","z":"5eeacbec.3fc754","name":"MQTT to Haier","topic":"","qos":"0","retain":"false","broker":"1a0c69de.7ac4b6","x":1010,"y":620,"wires":[]},{"id":"24ee2efb.f409da","type":"function","z":"5eeacbec.3fc754","name":"To Domoticz","func":"switch (msg.topic) {\n\n    case \"myhome/topic/Light\":\n        msg.payload = {\"command\":\"switchlight\",\"idx\":245,\"switchcmd\":msg.payload.charAt(0).toUpperCase() + msg.payload.slice(1)};\n    break;\n    \n    case \"myhome/topic/Fresh\":\n        msg.payload = {\"command\":\"switchlight\",\"idx\":246,\"switchcmd\":msg.payload.charAt(0).toUpperCase() + msg.payload.slice(1)};\n    break;\n    \n    case \"myhome/topic/Lock_Remote\":\n        if (msg.payload == \"true\") {\n            msg.payload = {\"command\":\"switchlight\",\"idx\":247,\"switchcmd\":\"On\"};\n        } else if (msg.payload == \"false\") {\n            msg.payload = {\"command\":\"switchlight\",\"idx\":247,\"switchcmd\":\"Off\"};\n        }\n    break;\n    \n    case \"myhome/topic/Power\":\n        msg.payload = {\"command\":\"switchlight\",\"idx\":248,\"switchcmd\":msg.payload.charAt(0).toUpperCase() + msg.payload.slice(1)};\n    break;\n    \n    case \"myhome/topic/Health\":\n        msg.payload = {\"command\":\"switchlight\",\"idx\":249,\"switchcmd\":msg.payload.charAt(0).toUpperCase() + msg.payload.slice(1)};\n    break;\n    \n    case \"myhome/topic/Compressor\":\n        msg.payload = {\"command\":\"switchlight\",\"idx\":250,\"switchcmd\":msg.payload.charAt(0).toUpperCase() + msg.payload.slice(1)};\n    break;\n    \n    case \"myhome/topic/Swing\":    \n    \n        switch (msg.payload) {\n\n            case \"off\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":251,\"nvalue\":0,\"svalue\":\"0\"};\n            break;\n            \n            case \"ud\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":251,\"nvalue\":1,\"svalue\":\"10\"};\n            break;\n\n            case \"lr\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":251,\"nvalue\":1,\"svalue\":\"20\"};\n            break;\n\n            case \"all\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":251,\"nvalue\":1,\"svalue\":\"30\"};\n            break;\n\n        }\n    break;\n    \n    case \"myhome/topic/Fan_Speed\":    \n    \n        switch (msg.payload) {\n\n            case \"max\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":252,\"nvalue\":1,\"svalue\":\"10\"};\n            break;\n            \n            case \"mid\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":252,\"nvalue\":1,\"svalue\":\"20\"};\n            break;\n\n            case \"min\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":252,\"nvalue\":1,\"svalue\":\"30\"};\n            break;\n\n            case \"auto\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":252,\"nvalue\":1,\"svalue\":\"40\"};\n            break;\n\n        }\n    break;\n    \n    case \"myhome/topic/Mode\":    \n    \n        switch (msg.payload) {\n\n            case \"Off\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":255,\"nvalue\":0,\"svalue\":\"0\"};\n            break;\n            \n            case \"Dry\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":255,\"nvalue\":1,\"svalue\":\"10\"};\n            break;\n\n            case \"Heat\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":255,\"nvalue\":1,\"svalue\":\"20\"};\n            break;\n\n            case \"Cool\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":255,\"nvalue\":1,\"svalue\":\"30\"};\n            break;\n\n            case \"Auto\":\n                msg.payload = {\"command\":\"udevice\",\"idx\":255,\"nvalue\":1,\"svalue\":\"40\"};\n            break;\n\n        }\n    break;\n    \n    case \"myhome/topic/Set_Temp\":\n        msg.payload = {\"command\":\"udevice\",\"idx\":253,\"nvalue\":0,\"svalue\":msg.payload};\n    break;  \n    \n    case \"myhome/topic/Current_Temp\":\n        msg.payload = {\"command\":\"udevice\",\"idx\":254,\"nvalue\":0,\"svalue\":msg.payload};\n    break;\n    \n}\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":340,"y":300,"wires":[["7996aa6b.53e75c","6112700d.10535"]]},{"id":"b2355c98.765f9","type":"comment","z":"5eeacbec.3fc754","name":"245 Light 246 Fresh 247 Lock_Remote 248 Power 249 Health 250 Compressor 251 Swing 252 Fan_Speed 253 Set_Temp 254 Current_Temp 255 Mode","info":"245 Light\n246 Fresh\n247 Lock_Remote\n248 Power\n249 Health\n250 Compressor\n251 Swing\n252 Fan_Speed\n253 Set_Temp\n254 Current_Temp\n255 Mode","x":550,"y":140,"wires":[]},{"id":"10a6dd40.3022f3","type":"trigger","z":"5eeacbec.3fc754","name":"","op1":"","op2":"open","op1type":"pay","op2type":"str","duration":"1","extend":true,"units":"s","reset":"","bytopic":"all","topic":"topic","outputs":1,"x":600,"y":380,"wires":[["b323ac60.184b78"]]},{"id":"855a1b51.10e098","type":"function","z":"5eeacbec.3fc754","name":"Create Gate Control","func":"if (msg.topic == \"myhome/topic/Set_Temp\") {\n    msg.topic = \"control\";\n    msg.payload = \"close\";\n    return [msg, null];\n} else {\n    return [null,msg]\n}","outputs":1,"noerr":0,"initialize":"","finalize":"","x":370,"y":380,"wires":[["10a6dd40.3022f3"]]},{"id":"a271a50b.8975a8","type":"debug","z":"5eeacbec.3fc754","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":1000,"y":480,"wires":[]},{"id":"b323ac60.184b78","type":"gate","z":"5eeacbec.3fc754","name":"Gate","controlTopic":"control","defaultState":"open","openCmd":"open","closeCmd":"close","toggleCmd":"toggle","defaultCmd":"default","persist":false,"x":820,"y":480,"wires":[["39626de7.1615c2","a271a50b.8975a8"]]},{"id":"e9cdfbd5.f133a","type":"function","z":"5eeacbec.3fc754","name":"Light","func":"msg.topic = \"myhome/topic/set/Light\";\nmsg.payload = msg.payload.nvalue.toString();\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","x":590,"y":760,"wires":[["39626de7.1615c2"]]},{"id":"1a0c69de.7ac4b6","type":"mqtt-broker","z":"","name":"localhost","broker":"127.0.0.1","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}]
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

I had to increase the time to 1500ms to stop the AC from beeping ...
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
User avatar
FireWizard
Posts: 1886
Joined: Tuesday 25 December 2018 12:11
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Voorthuizen (NL)
Contact:

Re: Haier AC with MQTT and nodered ?

Post by FireWizard »

Hi Eddie

@eddieb,

Did you also check the "Debug" node, connected to the flow from Domoticz to the USB-ESP?
Just to be sure it is caused by the loop and not by something else, as I think 1,5 secs is quite much. In my situation on a Raspberry Pi 1B (that I use for testing), first generation, 250 msecs was enough. It would mean that your loop is 6 times slower than mine.

Only listening to the beep might not be sufficient.
But the problem will be solved, if gizmocuz accepts the PR.

Let's wait,

Best regards
eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

below the mqtt traffic while the unit is working.
the set/Set_Temp from 14:00:47 is the only time I changed the value of Set_Temp.

the other /set/ are coming from domoticz and I really don't know why, even with 1500ms ...

Code: Select all

2020-08-07 14:00:44 - myhome/topic/Current_Temp - 21
2020-08-07 14:00:46 - myhome/topic/Set_Temp - 21
2020-08-07 14:00:46 - myhome/topic/Current_Temp - 21
2020-08-07 14:00:47 - myhome/topic/set/Set_Temp - 21.00
2020-08-07 14:01:02 - myhome/topic/Set_Temp - 21
2020-08-07 14:01:02 - myhome/topic/Current_Temp - 22
2020-08-07 14:01:10 - myhome/topic/Set_Temp - 21
2020-08-07 14:01:10 - myhome/topic/Current_Temp - 22
2020-08-07 14:01:24 - myhome/topic/Set_Temp - 21
2020-08-07 14:01:24 - myhome/topic/Current_Temp - 22
2020-08-07 14:01:26 - myhome/topic/Set_Temp - 21
2020-08-07 14:01:26 - myhome/topic/Current_Temp - 22
2020-08-07 14:01:28 - myhome/topic/set/Set_Temp - 21.00
2020-08-07 14:01:28 - myhome/topic/Set_Temp - 21
2020-08-07 14:01:28 - myhome/topic/Current_Temp - 22
2020-08-07 14:01:30 - myhome/topic/set/Set_Temp - 21.00
2020-08-07 14:01:32 - myhome/topic/Set_Temp - 21
2020-08-07 14:01:32 - myhome/topic/Current_Temp - 22
2020-08-07 14:01:34 - myhome/topic/Set_Temp - 21
2020-08-07 14:01:34 - myhome/topic/Current_Temp - 22
2020-08-07 14:01:38 - myhome/topic/Set_Temp - 21
2020-08-07 14:01:38 - myhome/topic/Current_Temp - 22
2020-08-07 14:01:40 - myhome/topic/Set_Temp - 21
2020-08-07 14:01:40 - myhome/topic/Current_Temp - 22
2020-08-07 14:02:20 - myhome/topic/Set_Temp - 21
2020-08-07 14:02:20 - myhome/topic/Current_Temp - 21
2020-08-07 14:03:10 - myhome/topic/Set_Temp - 21
2020-08-07 14:03:10 - myhome/topic/Current_Temp - 21
2020-08-07 14:04:14 - myhome/topic/Set_Temp - 21
2020-08-07 14:04:14 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:06 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:06 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:14 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:14 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:16 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:16 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:26 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:26 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:28 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:28 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:32 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:32 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:34 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:34 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:44 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:44 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:46 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:46 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:48 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:48 - myhome/topic/Current_Temp - 20
2020-08-07 14:05:50 - myhome/topic/set/Set_Temp - 21.00
2020-08-07 14:05:52 - myhome/topic/Set_Temp - 21
2020-08-07 14:05:52 - myhome/topic/Current_Temp - 20
2020-08-07 14:08:26 - myhome/topic/Set_Temp - 21
2020-08-07 14:08:26 - myhome/topic/Current_Temp - 19
2020-08-07 14:10:48 - myhome/topic/Set_Temp - 21
2020-08-07 14:10:48 - myhome/topic/Current_Temp - 20
2020-08-07 14:12:30 - myhome/topic/Set_Temp - 21
2020-08-07 14:12:30 - myhome/topic/Current_Temp - 20
2020-08-07 14:16:26 - myhome/topic/Set_Temp - 21
2020-08-07 14:16:26 - myhome/topic/Current_Temp - 21
2020-08-07 14:20:54 - myhome/topic/Set_Temp - 21
2020-08-07 14:20:54 - myhome/topic/Current_Temp - 21
2020-08-07 14:21:28 - myhome/topic/Set_Temp - 21
2020-08-07 14:21:28 - myhome/topic/Current_Temp - 22
2020-08-07 14:22:44 - myhome/topic/Set_Temp - 21
2020-08-07 14:22:44 - myhome/topic/Current_Temp - 21
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

yeah, domoticz is spitting out a set/Set_Temp ...

Of course listening to the BEEP is not the only thing that matters, but If I set the timeout lower and the AC beeps every minute during the night it becomes a different problem. I had to disable node-red last night to get some sleep

Code: Select all

2020-08-07 14:31:05 - myhome/topic/Set_Temp - 21
2020-08-07 14:31:05 - myhome/topic/Current_Temp - 20
2020-08-07 14:31:07 - myhome/topic/set/Set_Temp - 21.00
Screenshot 2020-08-07 at 14.31.57.png
Screenshot 2020-08-07 at 14.31.57.png (25.59 KiB) Viewed 1770 times
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
User avatar
FireWizard
Posts: 1886
Joined: Tuesday 25 December 2018 12:11
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Voorthuizen (NL)
Contact:

Re: Haier AC with MQTT and nodered ?

Post by FireWizard »

@eddieb

I see that the problem is causing trouble in the night.

No idea why, but let's check that it is really Domoticz and not something with Node Red.

Connect a "Debug" node to the first output of the "Split" node and check the results.

If it is a continuous problem, disconnect the "Gate" node to the "MQTT out" node. (Delete the line).
Disadvantage is that you cannot set the Setpoint in Domoticz.

Regards
eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

Screenshot 2020-08-07 at 15.20.07.png
Screenshot 2020-08-07 at 15.20.07.png (93.08 KiB) Viewed 1767 times
Screenshot 2020-08-07 at 15.20.21.png
Screenshot 2020-08-07 at 15.20.21.png (38.28 KiB) Viewed 1767 times

Code: Select all

8/7/2020, 3:24:08 PMnode: 79726f18.f71b5
domoticz/out : msg.payload : Object
object
Battery: 255
RSSI: 12
description: ""
dtype: "Thermostat"
hwid: "23"
id: "001414D"
idx: 253
name: "Haier Set_Temp"
nvalue: 0
stype: "SetPoint"
svalue1: "21.00"
unit: 1
domoticz is just spitting out set commands
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
User avatar
FireWizard
Posts: 1886
Joined: Tuesday 25 December 2018 12:11
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Voorthuizen (NL)
Contact:

Re: Haier AC with MQTT and nodered ?

Post by FireWizard »

Ok,

@eddieb

Hereby it is confirmed that the root cause is Domoticz, and not something in Node Red.

I'm afraid, I cannot do much and we have to wait for the approval of the PR.
I think gizmocuz took a few days off, which I fully understand.

As said you can disable it for the time being.

Regards
eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

the 1st debug part shows a message that triggers sending a /set/
the 2nd debug is the /set/
the 3rd is the same as nr 1 but does NOT trigger a /set/

Code: Select all

8/7/2020, 3:55:08 PMnode: 79726f18.f71b5
domoticz/out : msg.payload : Object
object
Battery: 255
RSSI: 12
description: ""
dtype: "Thermostat"
hwid: "23"
id: "001414D"
idx: 253
name: "Haier Set_Temp"
nvalue: 0
stype: "SetPoint"
svalue1: "21.00"
unit: 1

Code: Select all

8/7/2020, 3:55:09 PMnode: a271a50b.8975a8myhome/topic/set/Set_Temp : msg.payload : string[5]
"21.00"

Code: Select all

8/7/2020, 3:55:16 PMnode: 79726f18.f71b5
domoticz/out : msg.payload : Object
object
Battery: 255
RSSI: 12
description: ""
dtype: "Thermostat"
hwid: "23"
id: "001414D"
idx: 253
name: "Haier Set_Temp"
nvalue: 0
stype: "SetPoint"
svalue1: "21.00"
unit: 1
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

@FireWizard @Waaren

I noticed the github Pull Request #4283 is not included in todays release ...
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
User avatar
FireWizard
Posts: 1886
Joined: Tuesday 25 December 2018 12:11
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Voorthuizen (NL)
Contact:

Re: Haier AC with MQTT and nodered ?

Post by FireWizard »

@eddieb

Hi Eddie,

I have noticed it as well, so you have to wait a little longer.

Regards
eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

today build 12260 was released with a fix !
12260 01784e66e 20200823 Event system Prevent double triggers when updating a Thermostat Setpoint device via JSON API/M
https://github.com/domoticz/domoticz/commit/01784e66e


I have been testing quickly and this seems to solve the problem.
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
User avatar
FireWizard
Posts: 1886
Joined: Tuesday 25 December 2018 12:11
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Voorthuizen (NL)
Contact:

Re: Haier AC with MQTT and nodered ?

Post by FireWizard »

Hello Eddie,
@eddieb

I have seen it at https://www.domoticz.com/wiki/Domoticz_ ... _-_Commits and in the mean time I have updated to version 12269.

I tested it as well and no issues discovered. So I think you can delete the "Function" node, the "Trigger" node and the "Gate"node. (Also "Debug" nodes can be deleted.) Connect the "Function" node, marked "Set Temperature" to the MQTT "Output"node, marked MQTT to Haier.

I think this is the last issue we had in this project. Finally solved. Anything else?

Best regards
eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

Hi,

it seems to work ok now here. tnx again for helping out !

The latest firmware implemented turbo and quiet mode also. I added that to the node-red flow and it works.

Grtz
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
OTiby
Posts: 9
Joined: Monday 13 July 2015 11:20
Target OS: -
Domoticz version:
Contact:

Re: Haier AC with MQTT and nodered ?

Post by OTiby »

Does this also work for the AD25S2SS1FA (non-USB) and the as25s2sf2fa-2 (USB)?
eddieb
Posts: 335
Joined: Wednesday 04 July 2018 7:48
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Haier AC with MQTT and nodered ?

Post by eddieb »

OTiby wrote: Thursday 24 December 2020 15:01 Does this also work for the AD25S2SS1FA (non-USB) and the as25s2sf2fa-2 (USB)?
Hmm, I doubt it. This solution works with Haier AC units which normally have the standard Haier USB stick to be controlled remote.
I just did not like that and replaced the USB stick with the one in this thread. Now, the unit has a local webserver to control it
AND it sends MQTT messages to a broker. The nodered translates all nicely to domoticz..
RPI4 Beta / Tasmota / ZigBee2MQTT / P1meter / Haier AC with Node-Red and MQTT / SolarEdge SE3500H modbus_tcp / Opentherm gateway / Plugwise Anna/Smile / ObserverIP weatherstation thru WuDirect
Feeding ADSB https://adsb.im/home
Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests