This Home Assistant custom component adds support for controlling Midea dehumidiferes on local network.

Overview

This is a custom component for Home assistant that adds support for Midea dehumidifier appliances via the local area network.

midea-dehumidifier-lan

Home Assistant custom component for controlling Midea dehumidiferes on local network

Installation instruction

HACS

Add this repository as custom integration repository to HACS.

Manual

  1. Update Home Assistant to version 2021.12 or newer
  2. Clone this repository
  3. Copy the custom_components/midea_dehumidifier_local folder into your Home Assistant's custom_components folder

Configuring

  1. Add Midea Dehumidifer (LAN) integration via UI
  2. Enter Midea cloud username and password. Those are the same used in Midea mobile application.
  3. The integration will discover dehumidifiers on local LAN network(s).
  4. If a dehumidifer is not automatically discovered, but is registered to the cloud account, user is prompted to enter IPv4 address of the dehumidifier.

Known issues

  • If IPv4 address of dehumidifer changes, new IPv4 address will not be used until Home Assistant's restart

Supported entities

This custom component creates following entites for each discovered dehumidifer:

  • humidifier/dehumidifer
  • fan
  • sensor with current humidity
  • binary sensor for full tank
  • switch for controlling ION mode (switch has no effect if dehumidifier doesn't support it)

See also

https://github.com/nbogojevic/midea-beautiful-dehumidifier

Comments
  • Temp changing doesn't work

    Temp changing doesn't work

    Version of the custom_component

    Configuration

    
    Add your logs here.
    
    

    Describe the bug

    A clear and concise description of what the bug is.

    Every option for the AC is working except changing the temperature. When I am changing it with HA, the new value isn't send to the AC. But when I change it with the app, Also when I am changing the temp value with the app (mssmarthome) it doesn't change on HA side.

    Debug log

    
    Add your logs here.
    
    
    opened by besiktas97 28
  • now ac devices are detected, but don't work well

    now ac devices are detected, but don't work well

    The ac devices now are detected perfectly, great work!!! but they don't work well, the dry and heat functions are inverted and the power on status is missing. I managed to get logs, the problem was tha I didn't have logger in configuration.yaml, now I have this:

    logger: default: critical logs: custom_components.midea_dehumidifier_lan: DEBUG midea_beautiful: DEBUG

    I'm using the last version 0.8.1

    I send you the log: 2022-04-21 16:44:47 DEBUG (SyncWorker_2) [midea_beautiful.lan] Sending to 192.168.*****:6445 b'ZZ\x01\x11H\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7fu\xbdk>O\x8bv.\x84\x9cnW\x8de\x90\x03n\x9dCB\xa5\x0f\x1fV\x9e\xb8\xec\x91\x8e\x92\xe5' 2022-04-21 16:44:47 DEBUG (SyncWorker_2) [midea_beautiful.lan] Received from 192.168.*****:6445 b'\x83p\x00\xb8 \x0f\x04[ZZ\x01\x11\xa8\x00z\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00;\x02\x00\x00\x00"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbd\xcb\xea\xf9\x04\xe6F\x92\xf2t\xbcR\xce\xdf\xa7\te\x8eH*W_\x9f\x14\x93\x08SN\xc9\x8a\xf6\xb0Zo_\xf9\x88\x82\xb7\x86\x19\xc6|\x82\r\x18a\xa8\'\xa6\xc8\x00v+\x80\x94\x95\xb0\x86)\xd7\xeeQ\x9e\xf7\x15\x98\xd9\xb8Jk\x9c\xbc\x02\x94o\xd7d\x1d:\x1f\xca\x94T\x13\x03\x88LR\xe8\x80\xdd\xef\xc01\x90\xf3\x14C\xd1|:\xac\x03\xa7ef\x14\xae\x1d\xcaD\x1b\xe6\xd7\xaeh\xe3\x13\xb7h\xaf\\\xf68.F\x0e\xbb\xa0\xfc\xda\xf6N\x80\xb7\xc0\xb8d\xd4\x7f\x9c~?' 2022-04-21 16:44:47 DEBUG (SyncWorker_2) [midea_beautiful.lan] From 192.168.***** decrypted reply=b'\x8f\x01\xa8\xc0,\x19\x00\x00000000P0000000Q1A8407D9C3BAD0000\x0bnet_ac_3BAD\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x00\xac\x00\x00\x00\x00\x00\x00\x00\xa8@}\x9c;\xad\x06\x9f\xcd\x03\x00\x08\x01\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' 2022-04-21 16:44:47 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Creating AirConditionerAppliance 3738339534**** 2022-04-21 16:44:47 DEBUG (SyncWorker_2) [midea_beautiful.lan] Descriptor data '{id=3738339534****, address=192.168.*****, port=6444, version=3, name=37383395344955, online=True, type=0xac, subtype=0, flags=0, extra=1, reserved=0, mac=a8407d9*****, ssid=net_ac_3BAD, udp_version=4000000, protocol=069fcd, version=3.0.8, sn=000000P0000000Q1A8407D9C********, state=[Air conditioner]{id=3738339534****, type=0xac mode=0, running=False, turbo=False, fan_speed=40, turbo_fan=False, purifier=False, dryer=False, target_temperature=0, indoor_temperature=2.2250738585072014e-308, outdoor_temperature=2.2250738585072014e-308, vertical_swing=False horizontal_swing=False comfort_sleep=False, error_code=0, prompt=False, supports={}}}' 2022-04-21 16:44:47 DEBUG (SyncWorker_2) [midea_beautiful.lan] Appliance sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 2022-04-21 16:44:47 DEBUG (SyncWorker_2) [midea_beautiful.lan] Attempting new connection to sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 2022-04-21 16:44:47 DEBUG (SyncWorker_2) [midea_beautiful.lan] Sending to sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00@ \x00\x00\x00\xdf\xd8\xdf(\xdb\xbfNqN8\xad\x10X\xb0r(\xb4\xf9\x92\xd8\xf1s2\xa0\x82k\x02\r\xce\x1d\xb9\xd9\xa2\xd7>\x9e\xf6=\xc8\xfe\xf0\xaa\x01!uQ\x8d\x14\xf6/p\xb8"\xe2\xa2\x96\xe56p\x03?\x11\xfb\x92' 2022-04-21 16:44:48 DEBUG (SyncWorker_2) [midea_beautiful.lan] From sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00@ \x01\x00\x00v\xcc\x18\xac\xd3\x13\xe9Q \x95\x98a\xfe\x17\xf0\x0b\xa1.\xa5\x9d>\x11\xed\xd1\x00<\x1aG7(6W\x8e\xdb\xb7|\x80\xbbU\xe7C\xa7\x9b\x9a\rn\xaf\xc3\x91\x05\xfcW\x99\xcfB TK\xb5 \xa1T\xc9\xfc' 2022-04-21 16:44:48 DEBUG (SyncWorker_2) [midea_beautiful.lan] Got TCP key for: sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 2022-04-21 16:44:48 DEBUG (SyncWorker_2) [midea_beautiful.lan] Getting more capabilities 2022-04-21 16:44:48 DEBUG (SyncWorker_2) [midea_beautiful.lan] Packet for: sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 data=b'ZZ\x01\x11H\x00 \x00\x00\x00\x00\x000,\x10\x15\x04\x16\x14;\x02\x00\x00\x00"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00<\xe2i}\x05P\xa3\xd6d\xfb~\xe1\xb1\xd2\xffd9/\xddu\x17\xff\x0cT\xd1\x88\xddf\x88AR\x1f' 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.lan] Sending to sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00n fP\xe8\x86\xa7\xe8[\xd0\x1e\xb3C\x14j\x18T!\xd2\xb4\x19X\x19e\xea\x8a\xbf"+$\xc5Y\xcb3$&\x94\xa41\xc2\x9dk~\xd3Dl\xf0\xa8T\xeb\x9a\xea\xc8\x1d\x14u\xd9\xf1\xf2A\xfb\x7fS\xadw$'6\x81\xe0d\x7f\xfdL\xa9\x86\xc0p\xf2\x1a\xe7\x0c\xd1"R\x1b\x90\x9d\\\x03\x15\xcc5^\xa4mUu=\x90\xd3\xf7\xce\x83\xf1\x17\xd9\'\xc2uM\x96,\x00' 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.lan] From sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00\x8e c\ty\xdc+\x0c\xce\xae<\xc3\xcff\xcf\x16e\xb7\xfc\xbe%g\x0c^+\xb0y9\xa0R\x08\x18Y\r\xc3\x93\xda\xaa\x1e\x0c\x81E\xff2N_\x8f;l\x98r,\xa0\x1b\xac*\xaa\x19\xed\x1c4|{\x02\x7f*\x169\x878\xc2\x96.h\xdf\xa4-J\x8b\xa5\xbd\xa3\x16Z\x97\xd7\xf1\xfd\x92N\x9d%\xa2Db\x18\xb0\x10_\x1d\xb9\r\xa5\xd9W\xec\xcf\xad\x08\x19\xddQ=\x8b\xd0\xfb\xd5\xd1\x17\x0f*\xcd\xae\xed\x15#a\x11\xa8\x94%t\xe2)\xb9\xc5\xcd\n7%\xa3A?C\xab\xc7' 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.lan] Got 1 response(s) from: sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x12\x02' 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x13\x02' 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x14\x02' 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x15\x02' 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x16\x02' 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x17\x02' 2022-04-21 16:44:49 WARNING (SyncWorker_2) [midea_beautiful.appliance] Midea B5 unknown property=b'\x1a\x02' 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.lan] Getting more capabilities 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.lan] Packet for: sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 data=b'ZZ\x01\x11H\x00 \x00\x00\x00\x00\x00:1,\x10\x15\x04\x16\x14;\x02\x00\x00\x00"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xeb7\xbbe\xdalO\xff\x96!\xa6\xad\x11\x1d|\x04\x828\xde\x9d\xb9\x85^\x9d\x98\x13\xa2\x10\xd2\x8e\xac\x16' 2022-04-21 16:44:49 DEBUG (SyncWorker_2) [midea_beautiful.lan] Sending to sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00n f\x1dT\xa7[A\xc2\x88\xdaW\xd8\xabbm\x00\tt\x03\xfac\xa2QQ\xb5:\xfc\x067j\xc2\x9c\xb3\n2=95\xb0v\xc60\x9e\x83\x91E\t\x8b&\xe0\x81\t\xce\xe2\x9f<\xf7\xc6 \x04c[D&\xf8\x9e\xc3e!)\x80U\x89Dm\xbb\n\xf4n3<\xcb+(R\x9dLe\x06?\!\xaf\xc6lQP\x0f\xb6s2M\xac\xcf\x99.F\xa3\rd\x96w\xeb' 2022-04-21 16:44:51 DEBUG (SyncWorker_2) [midea_beautiful.lan] Timeout receiving from sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3: timed out 2022-04-21 16:44:53 DEBUG (SyncWorker_2) [midea_beautiful.lan] Sending to sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00n fy\xe5\xf4\xf5\x1a1FXGO\x86\x10U\x14\x9c\x7f\xb1\x95J\xb8\x98H{\x15\xa1\x1c;\x9c=o\x1aG\x1f<\x955\x1f.\x1e\xf8\xc13\xac\xfff\xce$\xfc&\xdaC\x82Wp\x7f\xf8+c-\x0e\xcf\xbc\x8d}\x8dE\xbaS\x11S\xda\xce\xa4\xf2\x06A\xfd\xda\xda{\x94p\xed-\xd7\x80.\xb9n\xacF\x0f~\xfe\xef\xec\xaa0\xb9z,H\xd7\x11\xd7\r\x9aR\x98\xac\xf1' 2022-04-21 16:44:54 DEBUG (SyncWorker_2) [midea_beautiful.lan] From sn=000000P0000000Q1A8407D9C******** id=3738339534*** address=192.168.***** version=3, message=b'\x83p\x00\x8e c\xf7\tF\xd6\xf8L\xd9B\xc7F\x85\xbck@\xc1\xa3-9c-\x8a,\xcfIH\x1e\x07\xec\xf9\xe2&\xe57\x9f\x12\xe55#\xb6tX\xe8\xfe\x96k\xd59\xd7\xcfpM\xbc\xe3P\xdf\x0cf\xf3\xde\xfc\xfa\x9a\xe5m\n\x8a\xfe\x95\x8bdl\x99N\xd4\xb6\xed\xb2\xf9.5\x00\xcb\\x9b\xe4\xa1t\x8c{\x82\xc9\xe2\xf9\x12\r\x1c\xe0v\x144\xd2\xa6\x89\xc9\n\x84\x02\xd4p\x81V-\x04\xc8\x01\x0e\x0e\x00\xd8\xe1\xc6^VV:\x1dd\xb0\x82\xe6\xce\xbf\xa41\xed\x1b\xac\xc7\x87\x81l\xc4J' 2022-04-21 16:44:54 DEBUG (SyncWorker_2) [midea_beautiful.lan] Got 1 response(s) from: sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 2022-04-21 16:44:54 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x12\x02' 2022-04-21 16:44:54 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x13\x02' 2022-04-21 16:44:54 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x14\x02' 2022-04-21 16:44:54 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x15\x02' 2022-04-21 16:44:54 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x16\x02' 2022-04-21 16:44:54 DEBUG (SyncWorker_2) [midea_beautiful.appliance] Got capability b'\x17\x02' 2022-04-21 16:44:54 WARNING (SyncWorker_2) [midea_beautiful.appliance] Midea B5 unknown property=b'\x1a\x02' 2022-04-21 16:44:54 DEBUG (SyncWorker_2) [midea_beautiful.lan] Packet for: sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 data=b'ZZ\x01\x11h\x00 \x00\x00\x00\x00\x00/6,\x10\x15\x04\x16\x14;\x02\x00\x00\x00"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00k\x00\nv\xe2~\xed,6G\xe5}\x86\x02\xdf\x8b\xd7V\xdf\x085\xcdDV\x0e\xda4\xb9\x89-\x877N\xc3\x92\x13\xbaALKqE\xc8< \xf0\x7f\x8d\xc9o\x87\x8f5\x1a\x90\xd4G\x8cd\xef,\x19\xf4' 2022-04-21 16:44:54 DEBUG (SyncWorker_2) [midea_beautiful.lan] Sending to sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00\x8e f\xd0\xabTh\xb9\x1e/d|\x80\x1e\xe5v\xf8\xf5\x8b\xb7c;\x89\xce/\xa6\xdeQ\xe8>\xe5\xba\xd7\xef\xa1#\xbe:!\x85MC5u\xb67\xa4$\xe5\x99\x1d\xd7\xe7\xf6\xae}b\x9e*\xa2\x07S\xae1by\x08c\xc0\xef\xff\xc7\xdb\r\xbcA\xdd\x12d\xe2<\x04"\x90~]8*\xce\xabDX6\xfc\xba\xa9\x87\xca\xb4u\x05\xb7\xcc\xaa\x9a\x12\xf0\xfc\xc8\xf5\x15|(\xe6\xff\x10\x81\xcf\xc1\xaa\x15\xa1\xcb'\xbe\x9cqd\x85\xc2\xbf?\x92\x9fW\x12D\xe8\xbdf+y=\x8d\xb4W' 2022-04-21 16:44:56 DEBUG (SyncWorker_2) [midea_beautiful.lan] Timeout receiving from sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3: timed out 2022-04-21 16:44:58 DEBUG (SyncWorker_2) [midea_beautiful.lan] Sending to sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00\x8e f[fR\xa9\t\xa48=\x82\xd0\x88\x93\xe7F\xae\xe2\x1c\x19\xd3~\x88\x11\xbe\xdeP\xac1U\xb5\x9b\xfe\xbb\x92\xea\x85\xc1\x12l\xe0\x9a\xd9*Aac7j\'\x8a\xb0r7c\x17\xd5\xf5\x90\xf8\xf9\xc1\t\xf6_\xf5\x0b\xa0\x88\xc8y\xaa\x82L\\\x899*7\x8b?\xd0\x14\xfev#H\xda\xc9j\xa9\xc2x\xff\x97 Q\x86\x9dY\x1b\xc7\xde\x11.\xf7\xb5\xb7\xf0\x10\xb7\x1a\x87\xc0\xcbiW\x1c\x80\xf6|\xd4\xad=;U\xbdxXB\r\x02\x04,\xf3\x1a\xde\xc0",\x98q?\x8d\xa9' 2022-04-21 16:44:59 DEBUG (SyncWorker_2) [midea_beautiful.lan] From sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00\x8e c\xe3W\xaa\x9a\xebm\xb8\[email protected]\xf9\xb5\xec\xa1\x12r\x14\xaa\x12\xa4\xf9^#Y\xa1\x893\x94\xf5\xc4\xd4\xdc\xba\x9f}\xfes\xe6\xea\x90(l\x84\x80\x93oe[a\xf3\x91\xa9\xc5\xaeT\x9f\x0c9?\xab\xa0\xcf$75\xb8b\xfeb\xd0\x08\x02\xc8v\xe4v_D\xac7\x97\x9dQ\xc5\xb9V"\xf5\x93\xdb\xa5\x08\x9a\xdd\xbe\x069\x8f\x06}\x0f\xb1\xc8\x85\x8b\xa08\xd0\x82*\x15jE\xb9\xb1~\xc8,\xea%\x04\xee\x1e\xb9\xc09\xb4\x07\xbe\x14\x9d!\xb8\x1b\xd7\xd2k\xc3\x91\xc7.\x17\xe0' 2022-04-21 16:44:59 DEBUG (SyncWorker_2) [midea_beautiful.lan] Got 1 response(s) from: sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 2022-04-21 16:44:59 DEBUG (SyncWorker_2) [midea_beautiful.lan] refresh sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 responses=[b'\xc0\x01\x86(\x7f\x7f\x000\x80\x00\x00^O\x00\x00\x00\x00\x00\x00\x00\x00\x00V\xd66'] 2022-04-21 16:44:59 DEBUG (SyncWorker_2) [midea_beautiful.appliance] AirConditionerResponse {'run_status': True, 'i_mode': False, 'timing_mode': False, 'quick_check': False, 'appliance_error': False, 'mode': 4, 'target_temperature': 22.0, 'fan_speed': 40, 'on_timer_set': False, 'on_timer_hours': 31, 'on_timer_minutes': 45, 'off_timer_set': False, 'off_timer_hours': 31, 'off_timer_minutes': 45, 'vertical_swing': 0, 'horizontal_swing': 0, 'comfort_sleep_value': 0, 'power_saving': False, 'low_frequency_fan': False, 'turbo_fan': False, 'feel_own': True, 'comfort_sleep': False, 'natural_wind': False, 'eco': False, 'purifier': False, 'dryer': False, 'ptc': 0, 'aux_heat': False, 'turbo': False, 'fahrenheit': False, 'prevent_freezing': False, 'pmv': -3.5, 'outdoor_temperature': 14.5, 'indoor_temperature': 22.0, 'err_code': 0, 'humidity': 0} 2022-04-21 16:44:59 DEBUG (SyncWorker_2) [midea_beautiful.lan] Identified appliance: {id=3738339534****, address=192.168.*****, port=6444, version=3, name=37383395344955, online=True, type=0xac, subtype=0, flags=0, extra=1, reserved=0, mac=a8407d9*****, ssid=net_ac_3BAD, udp_version=4000000, protocol=069fcd, version=3.0.8, sn=000000P0000000Q1A8407D9C********, state=[Air conditioner]{id=3738339534****, type=0xac mode=4, running=True, turbo=False, fan_speed=40, turbo_fan=False, purifier=False, dryer=False, target_temperature=22.0, indoor_temperature=22.0, outdoor_temperature=14.5, vertical_swing=False horizontal_swing=False comfort_sleep=False, error_code=0, prompt=False, supports={'eco': 1, 'heat_8': 1, 'mode': 1, 'fan_swing': 1, 'electricity': 1, 'filter_reminder': 0}}} 2022-04-21 16:44:59 DEBUG (MainThread) [custom_components.midea_dehumidifier_lan.hub] Created coordinator for {'api_version': 3, 'id': '3738339534****', 'ip_address': '192.168.1.143', 'name': 'Buhardilla', 'token_key': '****************************************************************', 'token': '********************************************************************************************************************************', 'type': '0xac', 'unique_id': '000000P0000000Q1A8407D9C********', 'discovery': 'LAN'} 2022-04-21 16:44:59 DEBUG (SyncWorker_0) [midea_beautiful.lan] Packet for: sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 data=b'ZZ\x01\x11h\x00 \x00\x00\x00\x00\x00\t;,\x10\x15\x04\x16\x14;\x02\x00\x00\x00"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00k\x00\nv\xe2~\xed,6G\xe5}\x86\x02\xdf\x8b\x9d\xf1\xee\xf7"\xcf\x96\xc5\x19\xff\x0f,\xb2U\x12\x03\xfe\xb6=\x0c\x9f\xcb\xd0y\xdf"\t\x1f\x8e\x81a<\xeb\xcd\xf0O\xcc\xa6\xe4r:66\xe7\x03nbO' 2022-04-21 16:44:59 DEBUG (SyncWorker_0) [midea_beautiful.lan] Sending to sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00\x8e f\x8d5g\x9e\xc2\xf0\x8a\xe1\xaeLJ\xcf\xaa\xf7\xb1GXNc\xf0\x03\x04$\xb3\x11\x9d\x8c\xb4\x85K\xe9W\xfc\xc2\x8d\x8e\xd4\x93\x970\xe6f#.\x8e\xb8C\xb5tp\x90\x08\xf4\xce\xb7\xfek~|,b\xc0\xa3\xe5\xc3I\xdb\x83\xe9\xe5\xfc\xf8k,+\x86C\xcb\xc0W \x91\xcc#A\xc8[\xc1\xf6\x04\x04\xed\x9a\xb8Y\x16\xcb\x9c\x1c\x9e\xe8\xd2N\xf6\xac_\x1c(\x86\x01\xf6SQ\xa4\x85=\\xe8m\x82AV\xb3\xb3\xe4DT\xba\xa5!\x08-\xa0|\n\xcbV\xe90\x93\x1c' 2022-04-21 16:45:01 DEBUG (SyncWorker_0) [midea_beautiful.lan] Timeout receiving from sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3: timed out 2022-04-21 16:45:03 DEBUG (SyncWorker_0) [midea_beautiful.lan] Sending to sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00\x8e f\x04C\xf8\xf0,\xdfV\rv\x9b\x06\xc4\x9f\xec\xfb\r5\xe7\xf6e\x8c\x97Y\xe9\t\rt\xb4>\xae\x0e=\xa4\xe1\x14S\xc3\xc9v\xa1\xf3\xcfHl\xe5\x1c~Q\xadz\xef\xd6\x9dt\xc9\x0b\xfbO4\xe0x\xc2\xaf%\xba\x7f\x7f\xce\xa5\x0f\x1fa\x98\x15ad\xb4\xc5\x04\xc3\x1dS\x02S\xbf\x80\x99B\xb8(<\xe6\xf6\x87\x1b\x8eD\xc2\x7f\x03\xf1\x81Qt\x1e\xaa\x83>\x93\x10\x17\x06\x9dH\xaf3\xb0\xa3\x12W\xa9\xb8\x9c~\xfb\xf7\xde\xf1BR\x85\xd1\xe7\x80\xd9\xbflM\xd4\x9d\x04\xcc' 2022-04-21 16:45:03 DEBUG (SyncWorker_0) [midea_beautiful.lan] From sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3, message=b'\x83p\x00\x8e c\x97\x9b\x9c0$v\x84\xd4V"\xb3\x0fd\x9e\xa5\x02\xa0\xe3\x1ajJ\xfb\xe6\xfa\xad\x18\x9e\x00c\x0cD\xfd\x15\x1a\xc1\x19/]\xe0\xed\xcc#\xa8\r16'\x98\xdb\x06\x1c9\xeb\x9c\x9c\xd0\xd9\x15\xad\xea\xa5\xd1\x15WT\r \xc4\x12\x1e\xdc\x9fO\xd0\xe66E\xc5X(\x9a\xbcYc\\x06\x11\x8c\x17@\xe7\xd0\xcb~\x04\xed\xd6\x84\xe7n@\xca\x00'}j)-9\xcdV\xb6p\xa4\x04\xd9 P\xc5\xa80\x9d\x9d{\x16\x01g~\x85\xee\xd9\xbaj\xf4|\xda\xdd\xbf\xf7\x03\xbd[\x11\xf4' 2022-04-21 16:45:03 DEBUG (SyncWorker_0) [midea_beautiful.lan] Got 1 response(s) from: sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 2022-04-21 16:45:03 DEBUG (SyncWorker_0) [midea_beautiful.lan] refresh sn=000000P0000000Q1A8407D9C******** id=3738339534**** address=192.168.***** version=3 responses=[b'\xc0\x01\x86(\x7f\x7f\x000\x80\x00\x00^O\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd7\x04\x87'] 2022-04-21 16:45:03 DEBUG (SyncWorker_0) [midea_beautiful.appliance] AirConditionerResponse {'run_status': True, 'i_mode': False, 'timing_mode': False, 'quick_check': False, 'appliance_error': False, 'mode': 4, 'target_temperature': 22.0, 'fan_speed': 40, 'on_timer_set': False, 'on_timer_hours': 31, 'on_timer_minutes': 45, 'off_timer_set': False, 'off_timer_hours': 31, 'off_timer_minutes': 45, 'vertical_swing': 0, 'horizontal_swing': 0, 'comfort_sleep_value': 0, 'power_saving': False, 'low_frequency_fan': False, 'turbo_fan': False, 'feel_own': True, 'comfort_sleep': False, 'natural_wind': False, 'eco': False, 'purifier': False, 'dryer': False, 'ptc': 0, 'aux_heat': False, 'turbo': False, 'fahrenheit': False, 'prevent_freezing': False, 'pmv': -3.5, 'outdoor_temperature': 14.5, 'indoor_temperature': 22.0, 'err_code': 0, 'humidity': 0} 2022-04-21 16:45:03 DEBUG (MainThread) [custom_components.midea_dehumidifier_lan.appliance_coordinator] Finished fetching Buhardilla data in 4.775 seconds (success: True) 2022-04-21 16:45:03 DEBUG (SyncWorker_9) [midea_beautiful.lan] Sending to 192.168.:6445 b'ZZ\x01\x11H\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7fu\xbdk>O\x8bv.\x84\x9cnW\x8de\x90\x03n\x9dCB\xa5\x0f\x1fV\x9e\xb8\xec\x91\x8e\x92\xe5' 2022-04-21 16:45:03 DEBUG (SyncWorker_9) [midea_beautiful.lan] Received from 192.168.:6445 b"\x83p\x00\xb8 \x0f\x04YZZ\x01\x11\xa8\x00z\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa6\r\x00\x00\x00'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa5lmB\xc6OF\x8bU/>y\xadJ\x1ch\x87\xeb\xb3\x86U\r\x89\xa3\xc2\x1a\xbc\xe6\xb5\x00\xaf\xc6?\xa8\xdc\xaa\xdc\xf6:$\xf9\x85D\xc7R\xd0\xa0\x19\xde\x97\x88\x14\xd8\xe9\xb6cn\x99\xcc\xc3\x8c\x1d\xd4\xd7\xd72\xc8\x05\xb4d\xd0D\x1e\xc4.\x9a2[8N\x1f\xca\x94T\x13\x03\x88LR\xe8\x80\xdd\xef\xc01\x90\xf3\x14C\xd1|:\xac\x03\xa7ef\x14\xae\x1d\xcaD\xbbzq\xbe\x05h8|\xf6f0\xe4A\xe3\xf9\xb6\x945p\x91d\xc4\x19\xfb\xb1fr\r\xf7\xb54\xd6" 2022-04-21 16:45:03 DEBUG (SyncWorker_9) [midea_beautiful.lan] From 192.168. decrypted reply=b'\x8e\x01\xa8\xc0,\x19\x00\x00000000P0000000Q1A8407D9EB8E10000\x0bnet_ac_B8E1\x00\x00\x00\x00\x01\x00\x00\x00\x04\x00\x00\x00\x00\x00\xac\x00\x00\x00\x00\x00\x00\x00\xa8@}\x9e\xb8\xe1\x06\x9f\xcd\x03\x00\x08\x01\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00' 2022-04-21 16:45:03 DEBUG (SyncWorker_9) [midea_beautiful.appliance] Creating AirConditionerAppliance 4288095348*** 2022-04-21 16:45:03 DEBUG (SyncWorker_9) [midea_beautiful.lan] Descriptor data '{id=4288095348****, address=192.168., port=6444, version=3, name=42880953486758, online=True, type=0xac, subtype=0, flags=0, extra=1, reserved=0, mac=a8407d9***, ssid=net_ac_B8E1, udp_version=4000000, protocol=069fcd, version=3.0.8, sn=000000P0000000Q1A8407D9E*****, state=[Air conditioner]{id=4288095348****, type=0xac mode=0, running=False, turbo=False, fan_speed=40, turbo_fan=False, purifier=False, dryer=False, target_temperature=0, indoor_temperature=2.2250738585072014e-308, outdoor_temperature=2.2250738585072014e-308, vertical_swing=False horizontal_swing=False comfort_sleep=False, error_code=0, prompt=False, supports={}}}' 2022-04-21 16:45:03 DEBUG (SyncWorker_9) [midea_beautiful.lan] Appliance sn=000000P0000000Q1A8407D9E******** id=4288095348**** address=192.168.***** version=3 2022-04-21 16:45:03 DEBUG (SyncWorker_9) [midea_beautiful.lan] Attempting new connection to sn=000000P0000000Q1A8407D9E******** id=4288095348**** address=192.168.***** version=3 2022-04-21 16:45:03 DEBUG (SyncWorker_9) [midea_beautiful.lan] Sending to sn=000000P0000000Q1A8407D9E******** id=4288095348**** address=192.168.***** version=3, message=b'\x83p\x00@ \x00\x00\x007W\rv\x7f\xb5\xca\xfc\xaa\xefxE\x03(\xf3\xc4\x16\x84\xabV@\xf5\x08\x90\xe0\xaeR\xce\xf2V\x01\xd5aoi\x04;\t\x7fP\xc5<\tF\xc9b\xd3\xd5\x8e\xba\xfb\x86\xfe\xf0\x01\x83\xb5,\xff\x83| %\xd0' 2022-04-21 16:45:04 DEBUG (SyncWorker_9) [midea_beautiful.lan] From sn=000000P0000000Q1A8407D9E******** id=4288095348**** address=192.168.***** version=3, message=b'\x83p\x00@ \x01\x00\x00\xfa\x03\xcas\x8a\x06<\xffZ;\xfa\n7\xd1\xae\x03\xfa\x11\xa9\xadB\xc6c\x0b\xb5\xdd2\xe4 \xfd\xf5W^\xf8\xe1\xfbH\xf0m\xb6\xf0\xaa\xe8\xb2\xf1\xfb\xc3\x88\xed\x1a\xe4x\xdf\x81\xbf\x0f\xb1\xd6\x95(\xc6t\xb5' 2022-04-21 16:45:04 DEBUG (SyncWorker_9) [midea_beautiful.lan] Got TCP key for: sn=000000P0000000Q1A8407D9E******** id=4288095348*** address=192.168.***** version=3 2022-04-21 16:45:04 DEBUG (SyncWorker_9) [midea_beautiful.lan] Getting more capabilities 2022-04-21 16:45:04 DEBUG (SyncWorker_9) [midea_beautiful.lan] Packet for: sn=000000P0000000Q1A8407D9E******** id=4288095348**** address=192.168.***** version=3 data=b"ZZ\x01\x11H\x00 \x00\x00\x00\x00\x008\x04-\x10\x15\x04\x16\x14\xa6\r\x00\x00\x00'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00<\xe2i}\x05P\xa3\xd6d\xfb~\xe1\xb1\xd2\xffd\xca\x0cqWQi\xf9\x03\x13\xec\n\xb7\xa5.\x1d." 2022-04-21 16:45:04 DEBUG (SyncWorker_9) [midea_beautiful.lan] Sending to sn=000000P0000000Q1A8407D9E******** id=4288095348**** address=192.168.***** version=3, message=b'\x83p\x00n fJ\xbb\xb3n\x91\xe7]\xadt+B\xc9#"\xbaE\xf84M\xbe\x0e\x02\xdf\x0e\x04\x8a\xf9-N\xb8\x97\xe9i\x80.\xc6\x02\x19\x19\x18\x858\xe4\xe6\x1d\x1d\x94\xf7\x15"\xbb\xc4\xbe\xce\xe4\xede\xc6\x9c6\x02\x87\x1eo\x99\n\t&#\xbb/\x08\xf6\xac9\x0c\xf1b\xaaVF\xfd\xda\xfd\xfb\xe7\x99\xa3VO\xd5H\x14\xb0p\xd9\x04X\r\xfd\x80:\x90jd\x9d\x89f\xe4\xb8[' 2022-04-21 16:45:05 DEBUG (SyncWorker_9) [midea_beautiful.lan] From sn=000000P0000000Q1A8407D9E******** id=4288095348*** address=192.168.***** version=3, message=b'\x83p\x00\x8e c\xe8\xb6.X\xde\x07(j\x03\x1b\xe9\xad\x14\xc0\xe8\xeda4\xa1\xda\x9djv\xad\xf3\x932\x9bi=\x90\x7f, \xa8\xa9\r@\x93\xea\xeb&0\x1d\x80\xec\xf0f\x19\xbf\xd9\xd7T#q=}\x8e\xe8\xe8\xc7\xf1\xdf\x1b\xf4\xf7\xd0\xed\xb0\xafF}\xeb\x19\xff\xae,h\x83\x86\xd7wR\x1eK\xd1\xc8\x9f\xc3\xcd)w\xd4\x8b\xe2\xb9\xbb\xe9\x95\xb0\x1fy\x1ax\xa3N\x86e pC\xf7\x01L\xa0\x1c \xe3\xfa\xb0\x18\x88\n+\xb8\xd9a\x88\x14\xef81X\xb6\xe7\xc1L\xf7:T\x8b\x8a\xd9\xe9' 2022-04-21 16:45:05 DEBUG (SyncWorker_9) [midea_beautiful.lan] Got 1 response(s) from: sn=000000P0000000Q1A8407D9E******** id=4288095348**** address=192.168.***** version=3 2022-04-21 16:45:05 DEBUG (SyncWorker_9) [midea_beautiful.appliance] Got capability b'\x12\x02' 2022-04-21 16:45:05 DEBUG (SyncWorker_9) [midea_beautiful.appliance] Got capability b'\x13\x02' 2022-04-21 16:45:05 DEBUG (SyncWorker_9) [midea_beautiful.appliance] Got capability b'\x14\x02' 2022-04-21 16:45:05 DEBUG (SyncWorker_9) [midea_beautiful.appliance] Got capability b'\x15\x02' 2022-04-21 16:45:05 DEBUG (SyncWorker_9) [midea_beautiful.appliance] Got capability b'\x16\x02' 2022-04-21 16:45:05 DEBUG (SyncWorker_9) [midea_beautiful.appliance] Got capability b'\x17\x02' 2022-04-21 16:45:05 WARNING (SyncWorker_9) [midea_beautiful.appliance] Midea B5 unknown property=b'\x1a\x02'`

    As you can see I get this error continuously: 2022-04-21 16:44:49 WARNING (SyncWorker_2) [midea_beautiful.appliance] Midea B5 unknown property=b'\x1a\x02'

    opened by marcoahp 21
  • "Beep" Sound and a nice card

    Τhe dehumidifier itself makes a sound every time you press on buttons as a confirmation so I think it would make sense to also have it make the sound when you control if via HA. So you know when you change an option from HA that it actually happened

    Also it would be nice if we can control the humidifier from a card that has all the control in it, toogle on/off, modes, fan speeds... all in one place.

    enhancement 
    opened by PskNorz 18
  • Issues adding new air conditioner

    Issues adding new air conditioner

    I keep getting the message below when I try and add the air conditioner.

    Unable to connect to appliance (Unable to send data after 5 retries, last error timed out for 000000P0000000Q130B23747******** (1539316299****)).

    How do I fix? I am on the latest updates and it works fine on the midea app.

    opened by Drreeves23 17
  • 0.6 beta errors after adding integration

    0.6 beta errors after adding integration

    Version of the custom_component:

    0.6 beta

    Configuration

    Describe the bug

    Updated to 0.6 beta, restarted HA. Then removed the integration and added it again. After another restart I get the two errors. If I open the Konfigration of this integration it looks like this: image

    Debug log

    Logger: homeassistant.config_entries Source: custom_components/midea_dehumidifier_lan/hub.py:345 Integration: Midea Air Appliances (LAN) (documentation, issues) First occurred: 22:29:44 (1 occurrences) Last logged: 22:29:44

    Error setting up entry Midea Air Appliance for midea_dehumidifier_lan Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/config_entries.py", line 313, in async_setup result = await component.async_setup_entry(hass, self) # type: ignore File "/config/custom_components/midea_dehumidifier_lan/init.py", line 63, in async_setup_entry await hub.async_setup() File "/config/custom_components/midea_dehumidifier_lan/hub.py", line 449, in async_setup await self._setup_discovery() File "/config/custom_components/midea_dehumidifier_lan/hub.py", line 400, in _setup_discovery self.discovery_helper.setup(self.data) File "/config/custom_components/midea_dehumidifier_lan/hub.py", line 345, in setup if device[CONF_DISCOVERY] != DISCOVERY_LAN: KeyError: 'discovery'

    Logger: custom_components.midea_dehumidifier_lan.hub Source: custom_components/midea_dehumidifier_lan/api.py:52 Integration: Midea Air Appliances (LAN) (documentation, issues) First occurred: 22:29:44 (1 occurrences) Last logged: 22:29:44

    Error while setting appliance id=18691697883547 sn=000000P0000000Q1A0681CAD4B810000 ip=192.168.0.106: Missing cloud credentials Traceback (most recent call last): File "/config/custom_components/midea_dehumidifier_lan/hub.py", line 514, in _process_appliance appliance = await self.hass.async_add_executor_job( File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run result = self.fn(*self.args, **self.kwargs) File "/config/custom_components/midea_dehumidifier_lan/api.py", line 52, in appliance_state return midea_beautiful_api.appliance_state( File "/usr/local/lib/python3.9/site-packages/midea_beautiful/init.py", line 130, in appliance_state return get_appliance_state( File "/usr/local/lib/python3.9/site-packages/midea_beautiful/lan.py", line 943, in get_appliance_state raise MideaError("Missing cloud credentials") midea_beautiful.exceptions.MideaError: Missing cloud credentials

    bug 
    opened by u20p17 17
  • Entity for Bucketless Mode

    Entity for Bucketless Mode

    If possible, please add an entity showing if in bucketless mode or not.

    I would say that it should be a read only binary sensor entity but I guess it carries the same risk as the pump entity. Neither are ones you'd want to really turn on without being at the unit and making sure it's physically setup correctly :)

    enhancement 
    opened by kramttocs 14
  • AC,  all devices go

    AC, all devices go "unavailable" when power off

    Version of the custom_component

    version = "0.8.2"

    Configuration

    used 192.168.1.0/24 to discover IP.

    Used the HACS install.

    Describe the bug

    I was able to add the integration, but when the AC is powered off, all the devices go unavailable. I have to completely remove, and then add back to get them functioning again. Screenshot from 2022-05-28 15-33-04

    Debug log

    log starts where I pressed the "power off" in the card.

    https://www.toptal.com/developers/hastebin/uwulagemuc.yaml

    opened by neuman1812 11
  • Air conditioner detected, no temperatue new settings accepted, on off switch is missing

    Air conditioner detected, no temperatue new settings accepted, on off switch is missing

    2x air conditioner recognized with 103 dongle, "shareed or split" air conditioners are not recognized, no new settings (temperature changeis not transmitted to air conditioning) are accepted, mode change is accepted, on/off switch is missing

    So far great work!

    at log: 2022-05-22 12:17:09 WARNING (SyncWorker_2) [midea_beautiful.appliance] Midea B5 unknown property=b'\x1a\x02' 2022-05-22 12:17:10 WARNING (SyncWorker_2) [midea_beautiful.appliance] Midea B5 unknown property=b'\x1a\x02'

    opened by HAUSER3 10
  • Integration issues not using cloud polling in v0.5.0

    Integration issues not using cloud polling in v0.5.0

    Just providing some feedback on the latest v0.5.0 update.

    After installing the v0.5.0 update, HA had some problems maintaining a connection to the Midea 22 Pint Smart Dehumidifier (MAD22S1WWT) using 'Midea Air' app, which was previously working under v0.4.x. It initially failed, and then came back for a short while for some unknown reason, then failed again, and never returned (after multiple restarts, etc).

    So I removed the integration, and started from scratch. The short version is that if 'Use cloud API to poll devices' was disabled, I was unable to pair device; if 'Use cloud API to poll devices' was enabled, it paired perfectly first time. The following is just more detail.

    Details:

    • I tried multiple times adding without using 'Use cloud API to poll devices', with no luck. I tried both 'basic' and 'advanced' , with every combination of options that I could think of, including with and without defining the IPV4 address, and with and without defining a name (in case it was looking for a name that did not exist). Each time I got the same error.
    Appliance IPv4 address is missing
    We were unable to discover an appliance called Dehumidifier with the id 30786325860938 on the local network.
    
    If you know appliance's IPv4 address, please enter it below to add it to Home Assistant.
    
    You can also provide token and key if you have them. If not, we will obtain them from Midea cloud.
    Invalid username or password (Unable to get valid token for id=30786325860938 ip=192.168.0.116:6444 version=3)
    
    • I did supply the reserved static IPV4 address, with no luck. I do not have a token or key (not sure where I would get this info). Also the IP in the error is not the defined IP on the network, and as far as I know, nothing is defined on that IPV4 address. Not sure where it is getting that address from, or the id.

    • Edit: One more detail. I noticed that it would kick me off the Midea Air app during this process, requiring me to log back in. Don't know if this is significant.

    • After trying many times I gave up and selected 'Use cloud API to poll devices'; it worked perfectly the first time. No issues!

    Just thought I would let you know. If you need any additional error codes, etc. Please let me know and I can replicate the experiment.

    Thanks again for all your hard work! Very much appreciated.

    opened by oadslug 10
  • Cant install integraton - finds name but not device

    Cant install integraton - finds name but not device

    Version of the custom_component

    0.3.0

    Configuration

    
    Add your logs here.
    
    

    Add your logs here.

    image

    Describe the bug

    I can install the custom component via HACS. I can choose the integration. But I cannot install it.

    Debug log

    
    Add your logs here.
    
    

    I have succesfully used "midea_dehumidfier" custom component for about 2 years but wanted to switch to yours because of the "tank full" sensor. But I have no luck with yours. This one I use: https://github.com/barban-dev/homeassistant-midea-dehumidifier

    duplicate enhancement 
    opened by sanderlv 10
  • MSmartHome Account Error

    MSmartHome Account Error

    There seems to be an issue with MSmartHome accounts. I migrated one of my devices as a test and created a new MSmartHome account, but logging in with the information leads to an error "Account does not exist".

    bug 
    opened by danbosketch 8
  • FP mode

    FP mode

    For the AC climate im missing mode: FP (Frost protection) I have this option in the nethome plus app and this is the option I mainly use.

    FP is used to keep the temperature as low as 8°C to keep it from freezing temperatures while saving energy, perfect for a garage at winter in my case

    opened by kakanbro 0
  • Integration is using deprecated `DEVICE_CLASS_*` constants

    Integration is using deprecated `DEVICE_CLASS_*` constants

    Version of the custom_component

    All

    Configuration

    
    n/a
    
    

    Describe the bug

    This custom integration uses deprecated DEVICE_CLASS_* constants in its codebase.

    The DEVICE_CLASS_* constants have been deprecated and replaced in Home Assistant Core 2021.12 (over a year ago). I would highly suggest updating/migrating this integration to the new enums.

    For example, for the device classes supported by the sensor platform, there is now a SensorDeviceClass enum. So if a sensor previously used the DEVICE_CLASS_ENERGY constant, it should now use SensorDeviceClass.ENERGY. Other platforms (like binary_sensor, and number) provide similar enumerations for their supported device classes.

    The migration thus only consists of replacing constants with an enumeration member and is, therefore, very low impact and should be fairly straightforward.

    If I can help resolve any questions regarding this change or migration, feel free to ask or respond to this issue. I'm happy to help!

    Kindest regards,

    ../Frenck

    Debug log

    
    n/a
    
    
    opened by frenck 0
  • Warning - Error fetching Dehumidifier data in logs when dehumidifier is off

    Warning - Error fetching Dehumidifier data in logs when dehumidifier is off

    Running v0.8.12 of the integration with a Inventor EVA ΙΟΝ Pro Wi-Fi 20L Dehumidifier

    While the dehumidifier is running there appear to be no issuses but once it has been turned off (via wifi or the button on the top of the Dehumidifier, not at the wall :) ) I start to get the occasional warning in the logs:

    2022-12-22 21:17:50.130 WARNING (MainThread) [custom_components.midea_dehumidifier_lan.appliance_coordinator] Error fetching Dehumidifier data: Unable to send data after 5 retries, last error timed out for ******** (), will be trying again. 2022-12-22 21:18:55.406 WARNING (MainThread) [custom_components.midea_dehumidifier_lan.appliance_coordinator] Error fetching Dehumidifier data: Unable to send data after 5 retries, last error [Errno 104] Connection reset by peer for ******** (), will be trying again. 2022-12-23 07:35:11.141 WARNING (MainThread) [custom_components.midea_dehumidifier_lan.appliance_coordinator] Error fetching Dehumidifier data: Unable to send data after 5 retries, last error timed out for ******** (), will be trying again. 2022-12-23 07:36:16.406 WARNING (MainThread) [custom_components.midea_dehumidifier_lan.appliance_coordinator] Error fetching Dehumidifier data: Unable to send data after 5 retries, last error [Errno 104] Connection reset by peer for ******** (), will be trying again.

    The Logbook doesn't show any periods of unavailable and control via HA works as I would expect.

    opened by LucidityCrash 0
  • Setup failed after Update of Home Assistant

    Setup failed after Update of Home Assistant

    Hello, i don't know which update let the integration failed. The log is

    Logger: homeassistant.setup Source: setup.py:210 First occurred: 13:04:27 (1 occurrences) Last logged: 13:04:27

    Setup failed for custom integration midea_dehumidifier_lan: Unable to import component: cannot import name 'MideaCloud' from 'midea_beautiful.cloud' (/usr/local/lib/python3.10/site-packages/midea_beautiful/cloud.py)

    opened by twelve-cgn 0
  • Screen toggle switch does not work for AC

    Screen toggle switch does not work for AC

    Version of the custom_component

    v0.8.12
    

    Configuration

    Configured via UI
    

    Describe the bug

    The switch for controlling the screen (I'm assuming that is what this does) does not appear to work. After I went in and enabled it, it does not fully initialize and actually become usable.

    image

    The "LED" button on my remote does correctly toggle the LED display on the front of the AC. image

    opened by poldim 0
  • State of Danby/Midea dehumifiers when on reflects target humidity instead of 'on'

    State of Danby/Midea dehumifiers when on reflects target humidity instead of 'on'

    Version of the custom_component

    .8.12

    Describe the bug

    I am using a Danby DDR050BCWDB-ME-6 which is as far as I can tell a clone of the Midea Cube 50 pint model.

    I have registered the dehumidifier with the Midea app rather than the Danby App.

    The humidifier is recognized by the integration and works as expected. However I've noticed that the state for the humidifier. entity appears to report the state as the current target humidity instead of "on" when on and when used in automations. Or that the "humidity" attribute is being treated as the "on" state.

    For instance if you go to create an automation that checks the state of the humidifier. entity from "off" to "on" there is no option for "on", only "off" and the target humidity.

    Yet if you look at the state while on in the Developer Tools or using a template the state is reported correctly as 'on'.

    This causes a problem when trying to create an automation with a state change or condition from "off" to "on". You can only set a "from" state of "off" but cannot set a "to" state of "on".

    opened by jayscovill 1
Releases(v0.8.12)
  • v0.8.12(Aug 24, 2022)

    • Add refresh after update for air conditioners
    • Support for MSmartHome app
    • Better detection of air conditioners
    • Fix horizontal/vertical swing for air conditioners
    • Fix air conditioner off mode
    • Bump library dependency version
    • Remove obsolete method
    • Fix capabilities regression from v0.8.10

    Breaking change

    • Configuration will be automatically migrated, but the process may fail in some cases. If that happens, it is advised to uninstall and re-install component.
    • Component no longer uses application key and id. Application name is used instead to identify cloud connectivity process.
    Source code(tar.gz)
    Source code(zip)
  • v0.8.11(Jul 13, 2022)

    • Support for MSmartHome app
    • Better detection of air conditioners
    • Fix horizontal/vertical swing for air conditioners
    • Fix air conditioner off mode
    • Bump library dependency version
    • Remove obsolete method
    • Fix capabilities regression from v0.8.10

    Breaking change

    • Configuration will be automatically migrated, but the process may fail in some cases. If that happens, it is advised to uninstall and re-install component.
    • Component no longer uses application key and id. Application name is used instead to identify cloud connectivity process.
    Source code(tar.gz)
    Source code(zip)
  • v0.8.2(May 23, 2022)

    • Support for MSmartHome app
    • Better detection of air conditioners
    • Fix horizontal/vertical swing for air conditioners
    • Fix air conditioner off mode
    • Bump library dependency version

    Breaking change

    • Configuration will be automatically migrated, but the process may fail in some cases. If that happens, it is advised to uninstall and re-install component.
    • Component no longer uses application key and id. Application name is used instead to identify cloud connectivity process.
    Source code(tar.gz)
    Source code(zip)
  • v0.6.4(Feb 23, 2022)

    • Fix switch on for fan for cube appliances

    Breaking Changes

    • Unique id of entities changed. Using serial number now instead of cloud API id.
    • Removed sleep switch.
    • Removed speed control for fan (preset control is still there).

    Major changes

    • Added support for air conditioners (beta)
    • Added periodic discovery of appliances.
    • Added support for appliance address change.
    • Enable integration configuration.
    • Enable discovery of appliances at later time (after integration set up)
    • Select appliance discovery behavior via dropdown
    • Add notification if appliance is discovered on the network, but was ignored or polled from the cloud
    • Added tank removed (bucket) binary sensor
    • Added fan enabled switch.
    • Support presets for fan.
    • Added capabilities attribute to humidifier and climate entities.
    • Added last_error_code and last_error_time attribute to humidifier and climate entities.
    • Removed error code sensor and added attribute to main entites.
    • Improved logging when coordinator fails to load device data.
    • Mask confidential information from logs.
    • Extended and made configurable time before device is considered unavailable.

    Bug fixes

    • If appliance doesn't load at start, integration will attempt again to set it up.
    • An error during startup doesn't prevent integration to load.
    • Fixed integration reload.
    • Fixed entity naming conflicts after an appliance with same id as another old appliance is added.

    Full Changelog: https://github.com/nbogojevic/homeassistant-midea-air-appliances-lan/compare/v0.5.0...v0.6.0

    Source code(tar.gz)
    Source code(zip)
  • v0.5.0(Dec 30, 2021)

    • Support for v2 appliance protocol
    • Support for beep prompt
    • Detecting available modes and services (like fan modes, dehumidifier modes, ion, pump)
    • Bug fixes
    Source code(tar.gz)
    Source code(zip)
  • v0.4.3(Dec 28, 2021)

  • v0.3.0(Dec 22, 2021)

    • Support for advanced options
      • custom app key/app id
      • specify network range for discovery
    • Added temperature sensor
    • More details in error messages
    • Improved UI messages
    Source code(tar.gz)
    Source code(zip)
  • v0.1.0(Dec 21, 2021)

Owner
Nenad Bogojevic
Architect & Expert @AmadeusITGroup
Nenad Bogojevic
Lenovo Legion 5 Pro 2021 Linux RGB Keyboard Light Controller

Lenovo Legion 5 Pro 2021 Linux RGB Keyboard Light Controller This util allows to drive RGB keyboard light on Lenovo Legion 5 Pro 2021 Laptop Requireme

36 Dec 16, 2022
DOS-like OS for RP2040 basic microcontroller boards

Micropython DOS-like OS for RP2040 microcontroller boards. Check out the demo video at https://www.youtube.com/watch?v=Az_oiq8GE4Y To start the OS typ

RetiredWizard 58 Dec 27, 2022
CO2Ampel - This RaspberryPi project uses weather data to estimate the share of renewable energy in the power grid

CO2Ampel This RaspberryPi project uses weather data to estimate the share of ren

Felix 4 Jan 19, 2022
Connect a TeslaMate instance to Home Assistant, using MQTT

TeslaBuddy Connect a TeslaMate instance to Home Assistant, using MQTT. It allows basic control of your Tesla vehicle via Home Assistant (currently, ju

4 May 23, 2022
Authentication provider using Synology DSM users for Home Assistant

Authentication provider using Synology DSM users for Home Assistant The Synology authentication provider lets you authenticate using the users in your

Sam Debruyn 5 Oct 06, 2022
Used python functional programming to make this Ai assistant

Python-based-AI-Assistant I have used python functional programming to make this Ai assistant. Inspiration of project : we have seen in our daily life

Durgesh Kumar 2 Dec 26, 2021
This is a Virtual Keyboard which is simple yet effective to use.

Virtual-Keyboard This is a Virtual KeyBoard which can track finger movements and lets you type anywhere ranging from notepad to even web browsers. It

Jehan Patel 3 Oct 01, 2021
A flexible data historian based on InfluxDB, Grafana, MQTT and more. Free, open, simple.

Kotori Telemetry data acquisition and sensor networks for humans. Documentation: https://getkotori.org/ Source Code: https://github.com/daq-tools/koto

83 Nov 26, 2022
Home-Assistant MQTT bridge for Panasonic Comfort Cloud

Panasonic Comfort Cloud MQTT Bridge Home-Assistant MQTT bridge for Panasonic Comfort Cloud. Note: Currently this brige is a one evening prototype proj

Santtu Järvi 2 Jan 04, 2023
Vvim - Keyboardless Vim interactions

This is done via a hardware glove that the user wears. The glove detects the finger's positions and translates them into key presses. It's currently a work in progress.

Boyd Kane 8 Nov 17, 2022
Segger Embedded Studio project for building & debugging Flipper Zero firmware.

Segger Embedded Studio project for Flipper Zero firmware Установка Добавить данный репозиторий в качестве сабмодуля в корень локальной копии репозитор

25 Dec 28, 2022
Switch predictor for Home Assistant with AppDeamon

Home Assistant AppDeamon - Event predictor WORK IN PROGRESS - CURRENTLY NOT COMPLETE AND NOT WORK This is an idea under development (when I have free

37 Dec 17, 2022
Simple Weather Check base on Hefeng api, Work on raspberry Pi

Simple Weather Check base on Hefeng api, Work on raspberry Pi

Retr0mous 28 Sep 17, 2022
A python module for interacting with rolimon's, a roblox value site.

rpi - rolimon's python interaction rpi is an open source python-based rolimon's api wrapper. It provides an end-to-end pipeline in which each componen

Acier 11 Nov 08, 2022
Trajectory optimization package for Mini-Pupper robot

Trajectory optimization package for Mini-Pupper robot Purpose of this repository is to provide low-torque and low-impact trajectory for Mini-Pupper qu

Sotaro Katayama 38 Aug 17, 2022
OpenStickFirmware is open source software designed to handle any and all tasks required in a custom Fight Stick

OpenStickFirmware is open source software designed to handle any and all tasks required in a custom Fight Stick. It can handle being the brains of your entire stick, or just handling the bells and wh

Sleep Unit 23 Nov 24, 2022
The project is an open-source and low-cost kit to get started with underactuated robotics.

Torque Limited Simple Pendulum Introduction The project is an open-source and low-cost kit to get started with underactuated robotics. The kit targets

34 Dec 14, 2022
Jarvis: a personal assistant which can help you to manage your system

Jarvis Jarvis is personal AI based assistant which can help you to manage stuff in your computer. This is demo but I decided to make it more better so

2 Jun 02, 2022
Component for deep integration LedFx from Home Assistant.

LedFX for Home Assistant Component for deep integration LedFx from Home Assistant. Table of Contents FAQ Install Config Performance FAQ Q. What versio

Dmitry Mamontov 28 Dec 13, 2022
Skykettle ha - Redmond SkyKettle integration for Home Assistant

Redmond SkyKettle integration for Home Assistant This integration allows to cont

Alexey 'Cluster' Avdyukhin 48 Jan 06, 2023