krahabb / meross_lan

Home Assistant integration for Meross devices
MIT License
443 stars 47 forks source link

msxh0 smart humidifier not fully supported #155

Closed pierpa68 closed 2 years ago

pierpa68 commented 2 years ago

2.4.3

Hi, I know it isn't declared as supported, but I'd like to inform that it is seen by your module as an RGB light and it works correctly... it is just missing the "fan" component as the cloud meross component shows.

Having the device I can help you to test if needed.

Thank you for your great work

krahabb commented 2 years ago

Hello @pierpa68 , Thank you for reporting this. I would really need a device trace captured from meross_lan in order to further investigate the device capabilities and maybe try to implement more functionalities. You could enable tracing in the Integration configuration entry for the msxh0 and then upload it here so I could have a look at it. Thank you!

pierpa68 commented 2 years ago

Hi,

thanks for your quick answer. I attach my log here as suggested and hope it can be of any help.

I think the missing function could be the "spray" appearing in the log. Actually it has 2 modes of working: continuous and intermittent (so are called in the cloud version of the Meross integration).

Regards

Debug log



2022/01/16 - 23:53:52       auto    GETACK  Appliance.System.All    {"system": {"hardware": {"type": "msxh0", "subType": "us", "version": "3.0.0", "chipType": "mt7682", "uuid": "################################", "macAddress": "#################"}, "firmware": {"version": "3.1.5", "compileTime": "2020/11/13 11:02:51 GMT +08:00", "wifiMac": "#################", "innerIp": "#############", "server": "##################", "port": "###", "userId": "######"}, "time": {"timestamp": 1642373604, "timezone": "Europe/Rome", "timeRule": [[1616889600, 7200, 1], [1635634800, 3600, 0]]}, "online": {"status": 1}}, "digest": {"spray": [{"channel": 0, "mode": 0, "lmTime": 1642290187, "lastMode": 1, "onoffTime": 1642290187}], "triggerx": [], "timerx": [], "light": {"onoff": 0, "capacity": 5, "channel": 0, "rgb": 4783990, "luminance": 100, "transform": 0}}}
2022/01/16 - 23:53:52       auto    GETACK  Appliance.System.Ability    {"Appliance.Config.Key": {}, "Appliance.Config.WifiList": {}, "Appliance.Config.Wifi": {}, "Appliance.Config.Trace": {}, "Appliance.System.All": {}, "Appliance.System.Hardware": {}, "Appliance.System.Firmware": {}, "Appliance.System.Debug": {}, "Appliance.System.Online": {}, "Appliance.System.Time": {}, "Appliance.System.Ability": {}, "Appliance.System.Runtime": {}, "Appliance.System.Report": {}, "Appliance.System.Position": {}, "Appliance.Control.Multiple": {"maxCmdNum": 5}, "Appliance.Control.Spray": {}, "Appliance.Control.TimerX": {"sunOffsetSupport": 1}, "Appliance.Control.TriggerX": {}, "Appliance.Control.Bind": {}, "Appliance.Control.Unbind": {}, "Appliance.Control.Upgrade": {}, "Appliance.Control.Light": {"capacity": 5}, "Appliance.Digest.TriggerX": {}, "Appliance.Digest.TimerX": {}}
2022/01/16 - 23:53:52   TX  http    GET Appliance.System.Runtime    {"runtime": {}}
2022/01/16 - 23:53:52   RX  http    GETACK  Appliance.System.Runtime    {"runtime": {"signal": 70}}
2022/01/16 - 23:53:55   TX  http    GET Appliance.System.All    {"all": {}}
2022/01/16 - 23:53:55   RX  http    GETACK  Appliance.System.All    {"all": {"system": {"hardware": {"type": "msxh0", "subType": "us", "version": "3.0.0", "chipType": "mt7682", "uuid": "################################", "macAddress": "#################"}, "firmware": {"version": "3.1.5", "compileTime": "2020/11/13 11:02:51 GMT +08:00", "wifiMac": "#################", "innerIp": "#############", "server": "##################", "port": "###", "userId": "######"}, "time": {"timestamp": 1642373634, "timezone": "Europe/Rome", "timeRule": [[1616889600, 7200, 1], [1635634800, 3600, 0]]}, "online": {"status": 1}}, "digest": {"spray": [{"channel": 0, "mode": 0, "lmTime": 1642290187, "lastMode": 1, "onoffTime": 1642290187}], "triggerx": [], "timerx": [], "light": {"onoff": 0, "capacity": 5, "channel": 0, "rgb": 4783990, "luminance": 100, "transform": 0}}}}
2022/01/16 - 23:53:57   TX  http    GET Appliance.System.Position   {"position": {}}
2022/01/16 - 23:53:57   RX  http    GETACK  Appliance.System.Position   {"position": {"longitude": 0, "latitude": 0}}
2022/01/16 - 23:54:02   TX  http    GET Appliance.Control.Spray {"spray": {}}
2022/01/16 - 23:54:02   RX  http    GETACK  Appliance.Control.Spray {"channel": 0, "spray": {"channel": 0, "mode": 0, "lmTime": 1642290187, "lastMode": 1, "onoffTime": 1642290187}}
2022/01/16 - 23:54:06   TX  http    SET Appliance.Control.Light {"light": {"onoff": 1, "capacity": 4, "channel": 0, "rgb": 4783990, "luminance": 100, "transform": 0}}
2022/01/16 - 23:54:06   RX  http    SETACK  Appliance.Control.Light {"light": {"onoff": 1, "capacity": 4, "rgb": 4783990, "channel": 0, "luminance": 100, "transform": 0}}
2022/01/16 - 23:54:07   TX  http    GET Appliance.Control.TimerX    {"timerx": {}}
2022/01/16 - 23:54:07   RX  http    GETACK  Appliance.Control.TimerX    {"digest": {}, "timerx": {}}
2022/01/16 - 23:54:12   TX  http    GET Appliance.Control.TriggerX  {"triggerx": {}}
2022/01/16 - 23:54:12   RX  http    GETACK  Appliance.Control.TriggerX  {"digest": {}, "triggerx": {}}
2022/01/16 - 23:54:17   TX  http    GET Appliance.Control.Light {"light": {}}
2022/01/16 - 23:54:17   RX  http    GETACK  Appliance.Control.Light {"light": {"onoff": 1, "capacity": 5, "channel": 0, "rgb": 4783990, "luminance": 100, "transform": 0}}
2022/01/16 - 23:54:20   TX  http    SET Appliance.Control.Light {"light": {"channel": 0, "onoff": 0}}
2022/01/16 - 23:54:20   RX  http    SETACK  Appliance.Control.Light {"light": {"onoff": 0, "capacity": 5, "rgb": 4783990, "channel": 0, "luminance": 100, "transform": -1}}
2022/01/16 - 23:54:22   TX  http    GET Appliance.Digest.TriggerX   {"digest": []}
2022/01/16 - 23:54:22   RX  http    GETACK  Appliance.Digest.TriggerX   {"digest": []}
2022/01/16 - 23:54:25   TX  http    GET Appliance.System.All    {"all": {}}
2022/01/16 - 23:54:25   RX  http    GETACK  Appliance.System.All    {"all": {"system": {"hardware": {"type": "msxh0", "subType": "us", "version": "3.0.0", "chipType": "mt7682", "uuid": "################################", "macAddress": "#################"}, "firmware": {"version": "3.1.5", "compileTime": "2020/11/13 11:02:51 GMT +08:00", "wifiMac": "#################", "innerIp": "#############", "server": "##################", "port": "###", "userId": "######"}, "time": {"timestamp": 1642373664, "timezone": "Europe/Rome", "timeRule": [[1616889600, 7200, 1], [1635634800, 3600, 0]]}, "online": {"status": 1}}, "digest": {"spray": [{"channel": 0, "mode": 0, "lmTime": 1642290187, "lastMode": 1, "onoffTime": 1642290187}], "triggerx": [], "timerx": [], "light": {"onoff": 0, "capacity": 5, "channel": 0, "rgb": 4783990, "luminance": 100, "transform": 0}}}}
2022/01/16 - 23:54:27   TX  http    SET Appliance.Control.Light {"light": {"onoff": 1, "capacity": 4, "channel": 0, "rgb": 4783990, "luminance": 100, "transform": 0}}
2022/01/16 - 23:54:27   RX  http    SETACK  Appliance.Control.Light {"light": {"onoff": 1, "capacity": 4, "rgb": 4783990, "channel": 0, "luminance": 100, "transform": 0}}
2022/01/16 - 23:54:27   TX  http    GET Appliance.Digest.TimerX {"digest": []}
2022/01/16 - 23:54:27   RX  http    GETACK  Appliance.Digest.TimerX {"digest": []}
2022/01/16 - 23:54:29   TX  http    SET Appliance.Control.Light {"light": {"onoff": 1, "capacity": 5, "rgb": 4210943, "channel": 0, "luminance": 100, "transform": 0}}
2022/01/16 - 23:54:29   RX  http    SETACK  Appliance.Control.Light {"light": {"onoff": 1, "capacity": 5, "rgb": 4210943, "channel": 0, "luminance": 100, "transform": 0}}
2022/01/16 - 23:54:32   TX  http    SET Appliance.Control.Light {"light": {"onoff": 1, "capacity": 5, "rgb": 510, "channel": 0, "luminance": 100, "transform": 0}}
2022/01/16 - 23:54:32   RX  http    SETACK  Appliance.Control.Light {"light": {"onoff": 1, "capacity": 5, "rgb": 510, "channel": 0, "luminance": 100, "transform": 0}}
2022/01/16 - 23:54:48   TX  http    SET Appliance.Control.Light {"light": {"channel": 0, "onoff": 0}}
2022/01/16 - 23:54:49   RX  http    SETACK  Appliance.Control.Light {"light": {"onoff": 0, "capacity": 5, "rgb": 510, "channel": 0, "luminance": 100, "transform": -1}}
2022/01/16 - 23:54:55   TX  http    GET Appliance.System.All    {"all": {}}
2022/01/16 - 23:54:55   RX  http    GETACK  Appliance.System.All    {"all": {"system": {"hardware": {"type": "msxh0", "subType": "us", "version": "3.0.0", "chipType": "mt7682", "uuid": "################################", "macAddress": "#################"}, "firmware": {"version": "3.1.5", "compileTime": "2020/11/13 11:02:51 GMT +08:00", "wifiMac": "#################", "innerIp": "#############", "server": "##################", "port": "###", "userId": "######"}, "time": {"timestamp": 1642373694, "timezone": "Europe/Rome", "timeRule": [[1616889600, 7200, 1], [1635634800, 3600, 0]]}, "online": {"status": 1}}, "digest": {"spray": [{"channel": 0, "mode": 0, "lmTime": 1642290187, "lastMode": 1, "onoffTime": 1642290187}], "triggerx": [], "timerx": [], "light": {"onoff": 0, "capacity": 5, "channel": 0, "rgb": 510, "luminance": 100, "transform": 0}}}}
2022/01/16 - 23:55:25   TX  http    GET Appliance.System.All    {"all": {}}
2022/01/16 - 23:55:25   RX  http    GETACK  Appliance.System.All    {"all": {"system": {"hardware": {"type": "msxh0", "subType": "us", "version": "3.0.0", "chipType": "mt7682", "uuid": "################################", "macAddress": "#################"}, "firmware": {"version": "3.1.5", "compileTime": "2020/11/13 11:02:51 GMT +08:00", "wifiMac": "#################", "innerIp": "#############", "server": "##################", "port": "###", "userId": "######"}, "time": {"timestamp": 1642373724, "timezone": "Europe/Rome", "timeRule": [[1616889600, 7200, 1], [1635634800, 3600, 0]]}, "online": {"status": 1}}, "digest": {"spray": [{"channel": 0, "mode": 0, "lmTime": 1642290187, "lastMode": 1, "onoffTime": 1642290187}], "triggerx": [], "timerx": [], "light": {"onoff": 0, "capacity": 5, "channel": 0, "rgb": 510, "luminance": 100, "transform": 0}}}}
krahabb commented 2 years ago

Yeah you're right. The 'spray' capability is already supported but due to the way the devices are implemented in code this is not available when the device presents itself as a 'light' entity :( That should be an easy fix even though I'm a bit busy at the moment. I hope to be able to get back at meross_lan by the end of the month right in time before the new HA release