IntesisHome WiFi AC Control

Hi;

Great that helped. Here is the updated version of the node red and mqtt integration that i have done. (Fixed some edge case scenarios and de-syncs and added swing modes).

[{"id":"f81f71bd23e74d2b","type":"tab","label":"Intesis WMP","disabled":false,"info":"","env":[]},{"id":"384c2350148bf8e0","type":"tcp request","z":"f81f71bd23e74d2b","name":"test2","server":"192.168.155.222","port":"3310","out":"sit","ret":"string","splitc":" ","newline":"","tls":"","x":1590,"y":720,"wires":[["6486ebb88006ef72","efbbcca637b7f778"]]},{"id":"d0816574c67ded10","type":"change","z":"f81f71bd23e74d2b","name":"Ping message","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"PING\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":960,"y":380,"wires":[["384c2350148bf8e0"]]},{"id":"0644d66f7b8d19f3","type":"inject","z":"f81f71bd23e74d2b","name":"Send the Ping message to keep connection alive","props":[{"p":"payload"}],"repeat":"30","crontab":"","once":true,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":650,"y":300,"wires":[["d0816574c67ded10"]]},{"id":"99337d6edfab787a","type":"change","z":"f81f71bd23e74d2b","name":"set mode to FAN","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"SET,1:MODE,FAN\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":970,"y":1180,"wires":[["384c2350148bf8e0"]]},{"id":"872bc81acf65ac00","type":"change","z":"f81f71bd23e74d2b","name":"set fan speed Auto","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"SET,1:FANSP,AUTO\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":950,"y":800,"wires":[["384c2350148bf8e0"]]},{"id":"d59b0e758a699808","type":"change","z":"f81f71bd23e74d2b","name":"set fan speed 1","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"SET,1:FANSP,1\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":940,"y":860,"wires":[["384c2350148bf8e0"]]},{"id":"53673d43e254cdeb","type":"change","z":"f81f71bd23e74d2b","name":"set fan speed 2","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"SET,1:FANSP,2\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":940,"y":920,"wires":[["384c2350148bf8e0"]]},{"id":"d31c3849ba2240cd","type":"change","z":"f81f71bd23e74d2b","name":"set fan speed 3","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"SET,1:FANSP,3\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":940,"y":980,"wires":[["384c2350148bf8e0"]]},{"id":"5ae5543de8dda51a","type":"mqtt out","z":"f81f71bd23e74d2b","name":"set ac mode","topic":"office/ac/mode/set","qos":"2","retain":"true","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"8b50b25020aa6e4c","x":490,"y":2180,"wires":[]},{"id":"22429fac6722ea27","type":"inject","z":"f81f71bd23e74d2b","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"cool","payloadType":"str","x":230,"y":2180,"wires":[["5ae5543de8dda51a"]]},{"id":"2e24dfbdfc137aa6","type":"mqtt in","z":"f81f71bd23e74d2b","name":"set the ac mode","topic":"office/ac/mode/set","qos":"2","datatype":"utf8","broker":"8b50b25020aa6e4c","nl":false,"rap":true,"rh":0,"inputs":0,"x":300,"y":1140,"wires":[["c04e6099852bfd4d"]]},{"id":"c04e6099852bfd4d","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"fan_only","vt":"str"},{"t":"eq","v":"fan_only","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":530,"y":1140,"wires":[["333c93e0a74209eb"],["99337d6edfab787a"]]},{"id":"e589bb1745a4d2de","type":"mqtt in","z":"f81f71bd23e74d2b","name":"Set the temp","topic":"office/ac/temperature/set","qos":"2","datatype":"utf8","broker":"8b50b25020aa6e4c","nl":false,"rap":true,"rh":0,"inputs":0,"x":310,"y":720,"wires":[["5e3937f133777d7b"]]},{"id":"a7ec9b9de0662bee","type":"mqtt in","z":"f81f71bd23e74d2b","name":"Set the fan mode","topic":"office/ac/fan/set","qos":"2","datatype":"utf8","broker":"8b50b25020aa6e4c","nl":false,"rap":true,"rh":0,"inputs":0,"x":320,"y":920,"wires":[["a49240836582e73e"]]},{"id":"2a4786ab3c4c7df1","type":"mqtt in","z":"f81f71bd23e74d2b","name":"Set the power mode off","topic":"office/ac/power/set","qos":"2","datatype":"utf8","broker":"8b50b25020aa6e4c","nl":false,"rap":true,"rh":0,"inputs":0,"x":320,"y":1040,"wires":[["6e28e2e15b5d86a9"]]},{"id":"a49240836582e73e","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"high","vt":"str"},{"t":"eq","v":"medium","vt":"str"},{"t":"eq","v":"low","vt":"str"},{"t":"eq","v":"auto","vt":"str"}],"checkall":"true","repair":false,"outputs":4,"x":510,"y":920,"wires":[["d31c3849ba2240cd"],["53673d43e254cdeb"],["d59b0e758a699808"],["872bc81acf65ac00"]]},{"id":"6486ebb88006ef72","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"AMBTEMP","vt":"str"},{"t":"cont","v":"SETPTEMP","vt":"str"},{"t":"cont","v":"MODE","vt":"str"},{"t":"cont","v":"CHN,1:ONOFF,ON","vt":"str"},{"t":"cont","v":"ONOFF","vt":"str"},{"t":"cont","v":"FANSP","vt":"str"},{"t":"cont","v":"VANELR","vt":"str"},{"t":"cont","v":"VANEUD","vt":"str"}],"checkall":"true","repair":false,"outputs":8,"x":1910,"y":720,"wires":[["5d5453606d792c0d"],["e72ad2c4ccfe740c"],["08b09d11038f3c82","80f26e1ea40136cc"],["4c2076e4d8981977","bbe40aa5f5f8dd38","80f26e1ea40136cc","0da55b6dba0cdc43","b3d912f796eecda7"],["53a4de48711c5887"],["4fb681e78eb078e3"],["6336c6c7457bd039"],["b99986b8f1c5f00f"]]},{"id":"4cf8debf5e07c75e","type":"mqtt out","z":"f81f71bd23e74d2b","name":"amb temp","topic":"office/ac/ambtemperature/set","qos":"2","retain":"true","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"8b50b25020aa6e4c","x":2880,"y":640,"wires":[]},{"id":"5d5453606d792c0d","type":"split","z":"f81f71bd23e74d2b","name":"","splt":":","spltType":"str","arraySplt":"5","arraySpltType":"len","stream":false,"addname":"test","x":2090,"y":640,"wires":[["bcfdef9006666009"]]},{"id":"1757908c1abb8326","type":"split","z":"f81f71bd23e74d2b","name":"","splt":",","spltType":"str","arraySplt":"3","arraySpltType":"len","stream":false,"addname":"test","x":2370,"y":640,"wires":[["298f5d70f5cbd172"]]},{"id":"298f5d70f5cbd172","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"AMBTEMP","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2530,"y":640,"wires":[["5f32bfc97e0f8f6e"]]},{"id":"5f32bfc97e0f8f6e","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"($number($substring(payload,0, ($length(payload)-2)))) /10","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":2700,"y":640,"wires":[["4cf8debf5e07c75e"]]},{"id":"53a4de48711c5887","type":"split","z":"f81f71bd23e74d2b","name":"","splt":":","spltType":"str","arraySplt":"5","arraySpltType":"len","stream":false,"addname":"test","x":2090,"y":800,"wires":[["d2e5c03ea6cdfaf2"]]},{"id":"7caeac347c17f06a","type":"split","z":"f81f71bd23e74d2b","name":"","splt":",","spltType":"str","arraySplt":"3","arraySpltType":"len","stream":false,"addname":"test","x":2370,"y":800,"wires":[["274267526bbaeafa"]]},{"id":"274267526bbaeafa","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"ONOFF","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2530,"y":800,"wires":[["31ef3f58ca48013f"]]},{"id":"d2e5c03ea6cdfaf2","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"ONOFF","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2210,"y":800,"wires":[["7caeac347c17f06a"]]},{"id":"bcfdef9006666009","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"AMBTEMP","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2210,"y":640,"wires":[["1757908c1abb8326"]]},{"id":"c46b1333479479cd","type":"mqtt out","z":"f81f71bd23e74d2b","name":"target temp","topic":"office/ac/statetemperature/set","qos":"2","retain":"true","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"8b50b25020aa6e4c","x":3330,"y":720,"wires":[]},{"id":"e72ad2c4ccfe740c","type":"split","z":"f81f71bd23e74d2b","name":"","splt":":","spltType":"str","arraySplt":"5","arraySpltType":"len","stream":false,"addname":"test","x":2090,"y":720,"wires":[["51d4b0298716cfeb"]]},{"id":"048fe42cbc05ec13","type":"split","z":"f81f71bd23e74d2b","name":"","splt":",","spltType":"str","arraySplt":"3","arraySpltType":"len","stream":false,"addname":"test","x":2370,"y":720,"wires":[["7c5d648ea8c87cd0"]]},{"id":"7c5d648ea8c87cd0","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"SETPTEMP","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2530,"y":720,"wires":[["e093af85f05f50f4"]]},{"id":"e093af85f05f50f4","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"(($number($substring(payload,0, 3))) /10)","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":2700,"y":720,"wires":[["c46b1333479479cd"]]},{"id":"51d4b0298716cfeb","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"SETPTEMP","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2210,"y":720,"wires":[["048fe42cbc05ec13"]]},{"id":"08b09d11038f3c82","type":"split","z":"f81f71bd23e74d2b","name":"","splt":":","spltType":"str","arraySplt":"5","arraySpltType":"len","stream":false,"addname":"test","x":2090,"y":860,"wires":[["1b1dd73ff7def672"]]},{"id":"3e093490bd17b384","type":"split","z":"f81f71bd23e74d2b","name":"","splt":",","spltType":"str","arraySplt":"3","arraySpltType":"len","stream":false,"addname":"test","x":2370,"y":860,"wires":[["e660de635b9adcdd"]]},{"id":"e660de635b9adcdd","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"MODE","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2530,"y":860,"wires":[["34dc65f913670f0c"]]},{"id":"1b1dd73ff7def672","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"MODE","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2210,"y":860,"wires":[["3e093490bd17b384"]]},{"id":"34dc65f913670f0c","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"$lowercase((($substring(payload,0, ($length(payload)-2)))))","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":2680,"y":860,"wires":[["5133e52ba0c4135d"]]},{"id":"540e89929a3aa0bc","type":"mqtt out","z":"f81f71bd23e74d2b","name":"mode","topic":"office/ac/modestate/set","qos":"2","retain":"true","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"8b50b25020aa6e4c","x":3390,"y":840,"wires":[]},{"id":"31ef3f58ca48013f","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"$lowercase((($substring(payload,0, ($length(payload)-2)))))","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":2700,"y":800,"wires":[["d2590209c15dab0d"]]},{"id":"d2590209c15dab0d","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"off","vt":"str"},{"t":"eq","v":"on","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":2870,"y":800,"wires":[["540e89929a3aa0bc"],[]]},{"id":"5133e52ba0c4135d","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"fan","vt":"str"},{"t":"neq","v":"fan","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":2870,"y":880,"wires":[["9907a56f619ac6e2"],["540e89929a3aa0bc"]]},{"id":"9907a56f619ac6e2","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"fan_only","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":3020,"y":840,"wires":[["540e89929a3aa0bc"]]},{"id":"4c2076e4d8981977","type":"change","z":"f81f71bd23e74d2b","name":"get mode information","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"GET,1:MODE\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":1740,"y":400,"wires":[["384c2350148bf8e0"]]},{"id":"efbbcca637b7f778","type":"debug","z":"f81f71bd23e74d2b","name":"target temp","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1770,"y":820,"wires":[]},{"id":"80f26e1ea40136cc","type":"change","z":"f81f71bd23e74d2b","name":"get tempreture","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"GET,1:SETPTEMP\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":1720,"y":340,"wires":[["384c2350148bf8e0"]]},{"id":"1aa9d91c7d629523","type":"change","z":"f81f71bd23e74d2b","name":"get state on/off","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"GET,1:ONOFF\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":1720,"y":280,"wires":[["384c2350148bf8e0"]]},{"id":"8b8aab3f77a4bb5f","type":"server-state-changed","z":"f81f71bd23e74d2b","name":"","server":"ca2808af.ee6db8","version":4,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"climate.office_mqtt","entityidfiltertype":"exact","outputinitially":true,"state_type":"str","haltifstate":"unknown","halt_if_type":"str","halt_if_compare":"is","outputs":2,"output_only_on_state_change":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":1340,"y":300,"wires":[["1aa9d91c7d629523"],[]]},{"id":"5e3937f133777d7b","type":"change","z":"f81f71bd23e74d2b","name":"Convert temp to INTESIS WMP format","rules":[{"t":"set","p":"payload","pt":"msg","to":"(($number(payload)*10))","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":630,"y":720,"wires":[["4fdcd6609af5900b"]]},{"id":"4fdcd6609af5900b","type":"change","z":"f81f71bd23e74d2b","name":"Set temp based on payload","rules":[{"t":"set","p":"payload","pt":"msg","to":"$join([\"SET,1:SETPTEMP,\",$string(payload),\"\\r\"])","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1100,"y":720,"wires":[["384c2350148bf8e0"]]},{"id":"4fb681e78eb078e3","type":"split","z":"f81f71bd23e74d2b","name":"","splt":":","spltType":"str","arraySplt":"5","arraySpltType":"len","stream":false,"addname":"test","x":2090,"y":940,"wires":[["d1050d174424730f"]]},{"id":"0373ab5950998907","type":"split","z":"f81f71bd23e74d2b","name":"","splt":",","spltType":"str","arraySplt":"3","arraySpltType":"len","stream":false,"addname":"test","x":2370,"y":940,"wires":[["52846181b2d1e88c"]]},{"id":"52846181b2d1e88c","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"MODE","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2530,"y":940,"wires":[["2408b59c0278c8a5"]]},{"id":"d1050d174424730f","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"FANSP","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2210,"y":940,"wires":[["0373ab5950998907"]]},{"id":"2408b59c0278c8a5","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"((($substring(payload,0, ($length(payload)-2)))))","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":2700,"y":960,"wires":[["50c2cb2857905219"]]},{"id":"50c2cb2857905219","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"1","vt":"str"},{"t":"eq","v":"2","vt":"str"},{"t":"eq","v":"3","vt":"str"},{"t":"eq","v":"auto","vt":"str"}],"checkall":"true","repair":false,"outputs":4,"x":2870,"y":960,"wires":[["1acd481f966d7c4f"],["f51750d72f4556b4"],["366fa66ee152cad0"],["2e76158f017d9854"]]},{"id":"1acd481f966d7c4f","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"low","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":3140,"y":900,"wires":[["6082c5d9f5c25e7c"]]},{"id":"f51750d72f4556b4","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"medium","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":3140,"y":940,"wires":[["6082c5d9f5c25e7c"]]},{"id":"366fa66ee152cad0","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"high","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":3140,"y":980,"wires":[["6082c5d9f5c25e7c"]]},{"id":"2e76158f017d9854","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"auto","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":3140,"y":1020,"wires":[["6082c5d9f5c25e7c"]]},{"id":"6082c5d9f5c25e7c","type":"mqtt out","z":"f81f71bd23e74d2b","name":"mode","topic":"office/ac/fanstate/set","qos":"2","retain":"true","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"8b50b25020aa6e4c","x":3430,"y":960,"wires":[]},{"id":"bbe40aa5f5f8dd38","type":"change","z":"f81f71bd23e74d2b","name":"get fan speed information","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"GET,1:FANSP\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":1750,"y":440,"wires":[["384c2350148bf8e0"]]},{"id":"cbc08f08b8e99f36","type":"mqtt in","z":"f81f71bd23e74d2b","name":"set the ac swing mode","topic":"office/ac/swing/set","qos":"2","datatype":"utf8","broker":"8b50b25020aa6e4c","nl":false,"rap":true,"rh":0,"inputs":0,"x":340,"y":620,"wires":[["129d295c324bca41"]]},{"id":"129d295c324bca41","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"horizontal","vt":"str"},{"t":"cont","v":"vertical","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":570,"y":620,"wires":[["09fe3b9a1533cb39"],["03377eacbe4646e6"]]},{"id":"09fe3b9a1533cb39","type":"change","z":"f81f71bd23e74d2b","name":"set swign postion horizontal","rules":[{"t":"set","p":"payload","pt":"msg","to":"$join([\"SET,1:VANELR,\",$string(((($substring(payload,11, ($length(payload))))))),\"\\r\"])","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":840,"y":600,"wires":[["384c2350148bf8e0"]]},{"id":"03377eacbe4646e6","type":"change","z":"f81f71bd23e74d2b","name":"set swing postion vertical","rules":[{"t":"set","p":"payload","pt":"msg","to":"$join([\"SET,1:VANEUD,\",$string(((($substring(payload,9, ($length(payload))))))),\"\\r\"])","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":830,"y":640,"wires":[["384c2350148bf8e0"]]},{"id":"b3d912f796eecda7","type":"change","z":"f81f71bd23e74d2b","name":"get vane horizontal","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"GET,1:VANELR\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":1750,"y":480,"wires":[["384c2350148bf8e0"]]},{"id":"0da55b6dba0cdc43","type":"change","z":"f81f71bd23e74d2b","name":"get vane vertical","rules":[{"t":"set","p":"payload","pt":"msg","to":"\"GET,1:VANEUD\\r\"","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":1740,"y":520,"wires":[["384c2350148bf8e0"]]},{"id":"70887ddceec97a14","type":"debug","z":"f81f71bd23e74d2b","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":1130,"y":520,"wires":[]},{"id":"6336c6c7457bd039","type":"split","z":"f81f71bd23e74d2b","name":"","splt":":","spltType":"str","arraySplt":"5","arraySpltType":"len","stream":false,"addname":"test","x":2090,"y":1060,"wires":[["8a049e39545f21dd"]]},{"id":"4ec33ec8fd05048d","type":"split","z":"f81f71bd23e74d2b","name":"","splt":",","spltType":"str","arraySplt":"3","arraySpltType":"len","stream":false,"addname":"test","x":2370,"y":1060,"wires":[["bb5bbc3d5a69f485"]]},{"id":"bb5bbc3d5a69f485","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"VANELR","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2530,"y":1060,"wires":[["44f040afc596b0a6"]]},{"id":"8a049e39545f21dd","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"VANELR","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2210,"y":1060,"wires":[["4ec33ec8fd05048d"]]},{"id":"44f040afc596b0a6","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"$join([\"horizontal_\",((($substring(payload,0, ($length(payload)-2)))))])","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":2720,"y":1080,"wires":[["64b221f6a078e5be"]]},{"id":"b99986b8f1c5f00f","type":"split","z":"f81f71bd23e74d2b","name":"","splt":":","spltType":"str","arraySplt":"5","arraySpltType":"len","stream":false,"addname":"test","x":2090,"y":1120,"wires":[["fec159da3c513c9c"]]},{"id":"5861c89cbbfdd7dd","type":"split","z":"f81f71bd23e74d2b","name":"","splt":",","spltType":"str","arraySplt":"3","arraySpltType":"len","stream":false,"addname":"test","x":2370,"y":1120,"wires":[["f80a9b94e56b57fa"]]},{"id":"f80a9b94e56b57fa","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"neq","v":"VANEUD","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2530,"y":1120,"wires":[["0c442a8e6f8814ed"]]},{"id":"fec159da3c513c9c","type":"switch","z":"f81f71bd23e74d2b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"cont","v":"VANEUD","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":2210,"y":1120,"wires":[["5861c89cbbfdd7dd"]]},{"id":"0c442a8e6f8814ed","type":"change","z":"f81f71bd23e74d2b","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"$join([\"vertical_\",((($substring(payload,0, ($length(payload)-2)))))])","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":2720,"y":1140,"wires":[["64b221f6a078e5be"]]},{"id":"64b221f6a078e5be","type":"mqtt out","z":"f81f71bd23e74d2b","name":"swing","topic":"office/ac/swingstate/set","qos":"2","retain":"true","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"8b50b25020aa6e4c","x":3050,"y":1120,"wires":[]},{"id":"004802bb8248ced0","type":"inject","z":"f81f71bd23e74d2b","name":"","props":[{"p":"payload"}],"repeat":"900","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":1330,"y":380,"wires":[["1aa9d91c7d629523"]]},{"id":"6e28e2e15b5d86a9","type":"change","z":"f81f71bd23e74d2b","name":"Set ON/Off","rules":[{"t":"set","p":"payload","pt":"msg","to":"$join([\"SET,1:ONOFF,\",$uppercase($string(payload)),\"\\r\"])","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":950,"y":1040,"wires":[["384c2350148bf8e0"]]},{"id":"333c93e0a74209eb","type":"change","z":"f81f71bd23e74d2b","name":"Set mode","rules":[{"t":"set","p":"payload","pt":"msg","to":"$join([\"SET,1:MODE,\",$uppercase($string(payload)),\"\\r\"])","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":940,"y":1120,"wires":[["384c2350148bf8e0"]]},{"id":"8b50b25020aa6e4c","type":"mqtt-broker","name":"homeassistantmqtt","broker":"192.168.155.51","port":"1883","clientid":"","autoConnect":true,"usetls":false,"protocolVersion":"4","keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","birthMsg":{},"closeTopic":"","closeQos":"0","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willPayload":"","willMsg":{},"sessionExpiry":""},{"id":"ca2808af.ee6db8","type":"server","name":"Home Assistant","version":2,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":"30"}]```

This is the MQTT
```yaml
mqtt:
  climate:
    - name: office_mqtt
      modes:
        - "off"
        - "cool"
        - "fan_only"
        - "auto"
        - "heat"
        - "dry"
      fan_modes:
        - "high"
        - "medium"
        - "low"
        - "auto"
      swing_modes:
        - "horizontal_1"
        - "horizontal_2"
        - "horizontal_3"
        - "horizontal_4"
        - "horizontal_5"
        - "horizontal_AUTO"
        - "horizontal_SWING"
        - "vertical_1"
        - "vertical_2"
        - "vertical_3"
        - "vertical_4"
        - "vertical_5"
        - "vertical_AUTO"
        - "vertical_SWING"
      qos: 2
      retain: true
      max_temp: 30
      min_temp: 16
      power_command_topic: "office/ac/power/set"
      mode_command_topic: "office/ac/mode/set"
      mode_state_topic: "office/ac/modestate/set"
      temperature_command_topic: "office/ac/temperature/set"
      fan_mode_state_topic: "office/ac/fanstate/set"
      fan_mode_command_topic: "office/ac/fan/set"
      current_temperature_topic: "office/ac/ambtemperature/set"
      temperature_state_topic: "office/ac/statetemperature/set"
      swing_mode_command_topic: "office/ac/swing/set"
      swing_mode_state_topic:  "office/ac/swingstate/set"
      precision: 1.0

Unfortunately the home assistant integration does not allow for different drop down for different swing modes.

Hope that helps

Can I suggest spinning up another thread to discuss mqtt integration - there’s already three different versions of native integrations in this thread which is confusing enough :slight_smile:

1 Like

Do you think @jnimmo that the issue for those of us on the FJ-AC-WIFI-1B is that we’re in need of the newer pyIntesisHome? Which looks like it’s been merged here:

Hopefully get it in 2022.08?

1 Like

@jnimmo I managed to automate placing the files you created under the custom_components directory and I think the code gets loaded, but nothing of interest happens, which is probably due to misconfiguration.

Can you please tell me the repo and Github hash of the software you have written and correct yaml configuration to make this work with HomeAssistant >= 2022.7.4 when a IS-ACX-WIFI-1 module from airconwithme is correctly installed and available via IP 192.168.1.10 (just an example value)?

If I have the correct information, making it work will likely take me 5 minutes (to get to this point of automation took much longer, unfortunately).

 File "/var/lib/hass/custom_components/intesishome/climate.py", line 206, in async_added_to_hass
    await self._controller.add_update_callback(self.async_update_callback)
TypeError: object NoneType can't be used in 'await' expression

No wonder it didn’t work… your code is wrong. You need to remove the await on that line and it does work.

No, nobody has it working, because the code was broken for airconwithme devices.

Also, there is no local support for consumer grade airconwithme devices, because at no point is an IP part of the configuration for airconwithme devices.

Why are you speaking such falsehoods?

?? I’m pretty sure it works for me, locally. You calling me a liar? Weird stuff. … I’m using the integration daily. I’ve got a Mitsubishi hi device, maybe that’s a variable, dunno but to say I’m lying is a bit offensive.

There are multiple device types @lepton , you need to chill out. It supports IntesisHome, Airconwithme, Anywair, and intesishome_local. Intesis do more than just your one airconwith me device :man_facepalming:

I’m just trying to update my fork with the latest changes and config flow support and pull it out into its own repo so it can be installed with HACS. When that’s done, it will be helpful to add a list of devices that are known to work (only a couple) for local control to the readme.

Awesome, thanks @jnimmo ! Is there anything I can provide you to assist with the error:

Error while setting up intesishome platform for climate
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 246, in _async_setup_platform
    task = async_create_setup_task()
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 175, in async_create_setup_task
    return platform.async_setup_platform(  # type: ignore[no-any-return,union-attr]
TypeError: async_setup_platform() takes 3 positional arguments but 4 were given

Happy to port-forward to my A/C Intesis unit for you if that’s helpful, if you wanted to DM me.

Can you confirm there’s no local support for the IS-ASX-WIFI-1? With my change it appears to work, but I haven’t tested beyond setting temperature.

I said it can’t work for anyone with my device type or anyone running that code path. That’s obvious from context. Do you really think I don’t know about it supporting different device types when I have packaged and patched this myself?

You’re breaking Wil Wheatons law @lepton . Time to calm down and take a walk.

now you are just being rude. My god… So if you say it is broken for your device, that weighs heavier than what I’m saying… nice!

My module is: MH-AC-WIFI-1

the files i’m using inside custom_components: removed zip file because the integration is now working from HACS. Thanks @jnimmo

My climate.yaml:

- platform: intesishome
  device: intesishome_local
  username: admin
  password: admin
  host: 192.168.20.216
- platform: intesishome
  device: intesishome_local
  username: admin
  password: admin
  host: 192.168.23.20

Maybe it is just the module which is working for me.

I truly hope you get things working i really do. but all and all there is no reason to act like you do.

2 Likes

Thank you so much @mhoogenbosch coz that zip file has worked perfectly for me! Popped it into my custom_components, restarted HA and my two entries that I had have immediately worked for the intesishome_local!!
image
I have the FJ-AC-WIFI-1B on my Fujitsu so great it’s working across a few models. Thankyou and to @jnimmo for the integration too :slight_smile:

Edit: I’m on 2022.7.0

1 Like

The way you are going about your messages is rude. Implying incompetence or stupidity is rude, regardless how you go about it. Please stop. Does it really matter anyways? Just say your device isn’t working and move on.

Just wanted to chip in and say that local control with airconwithme devices is possible. I have it running without any problems. What took me some time to figure out is the device type. With the cloud integration, I had to use ‘device: airconwithme’ in my configuration.yaml. For the local version I tried ‘device: airconwithme_local’ but that doesn’t exist. Airconwithme users can just use ‘device: intesishome_local’ and that will work for them as well.

Which device model do you have exactly?

How exactly does your configuration look like?

So, version of HA, git hash of the checkout you are using and the repo URL. Without such basic information everyone just has to guess.

Thanks for the tip Wout! Will try and implement tonight

The name of the module is: MH-AC-WIFI-1
I’m running HA 2022.07.0 and my files are identical to the zip @mhoogenbosch posted a few posts back.

climate:
  - platform: intesishome
    device: intesishome_local
    username: admin
    password: admin
    host: 192.168.1.XXX
2 Likes

I can confirm that by simply importing the zip file provided by @mhoogenbosch earlier, I am able to get my 3 myanywair wifi devices integrated with HA finally!

Configuration yaml has below:

climate:

  • platform: intesishome
    device: intesishome_local
    username: admin
    password: password
    host: 192.168.1.2
  • platform: intesishome
    device: intesishome_local
    username: admin
    password: password
    host: 192.168.1.3
  • platform: intesishome
    device: intesishome_local
    username: admin
    password: password
    host: 192.168.1.4
3 Likes