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
A set of postprocessing scripts and macro to accelerate the gyroid infill print speed with Klipper

A set of postprocessing scripts and macro to accelerate the gyroid infill print speed with Klipper

Jérôme W. 75 Jan 07, 2023
iot-dashboard: Fully integrated architecture platform with a dashboard for Logistics Monitoring, Internet of Things.

Fully integrated architecture platform with a dashboard for Logistics Monitoring, Internet of Things. Written in Python. Flask applicati

2 Jul 29, 2022
Testing out some (stolen) DMA code for RP2040 Micropython

RP2040_micropython_dma testing out some (stolen) DMA code for RP2040 Micropython. Heavy inspiration and some code from https://iosoft.blog/2021/10/26/

2 Dec 29, 2022
Python para microcontroladores com MicroPyhton

MicroPython - PyBR2021 Python para microcontroladores com MicroPyhton Repositório de exemplos para tutorial "Python para microcontroladores com MicroP

gabriel aragão 1 Oct 18, 2021
Monorepo for my Raspberry Pi dashboard and GPS satellite listener.

🥧 pi dashboard My blog post: Listening to Satellites with my Raspberry Pi This is the monorepo for my Raspberry Pi dashboard!

Andrew Healey 27 Jun 08, 2022
This Home Assistant custom component adds support for controlling Midea dehumidiferes on local network.

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

Nenad Bogojevic 97 Jan 08, 2023
Micropython-wifimanager-esp8266 - Simple Wifi Manager for ESP8266 using MicroPython

micropython-wifimanager-esp8266 Simple Wifi Manager for ESP8266 using MicroPytho

Abhinuv Nitin Pitale 1 Jan 04, 2022
BMP180 sensor driver for Home Assistant used in Raspberry Pi

BMP180 sensor driver for Home Assistant used in Raspberry Pi Custom component BMP180 sensor for Home Assistant. Copy the content of this directory to

747Developments 1 Dec 17, 2021
AERO 421: Spacecraft Attitude, Dynamics, and Control Final Project.

AERO - 421 Final Project Redevelopment Spacecraft Attitude, Dynamics, and Control: Simulation to determine and control a satellite's attitude in LEO.

Gagandeep Thapar 3 Dec 16, 2022
A Home Assistant integration for Solaredge inverters

A Home Assistant integration for Solaredge inverters. Supports multiple inverters chained through RS485.

Seth 50 Dec 23, 2022
Add filters (background blur, etc) to your webcam on Linux.

webcam-filters Add filters (background blur, etc) to your webcam on Linux. Video conferencing applications tend to either lack video effects altogethe

Jashandeep Sohi 480 Dec 14, 2022
A refreshed Python toolbox for building complex digital hardware

A refreshed Python toolbox for building complex digital hardware

nMigen 1k Jan 05, 2023
Easyeda2kicad.py - Convert any LCSC components (including EasyEDA) to KiCad library

easyeda2kicad.py A Python script that convert any electronic components from LCSC or EasyEDA to a Kicad library Installation git clone https://github.

uPesy Electronics 150 Jan 06, 2023
A simple portable USB MIDI controller based on Raspberry-PI Pico and a 16-button keypad, written in Circuit Python

RPI-Pico-16-BTn-MIDI-Controller-using-CircuitPython A simple portable USB MIDI controller based on Raspberry-PI Pico, written in Circuit Python. Link

Rounak Dutta 3 Dec 04, 2022
New armachat based on Raspberry Pi PICO an Circuitpython code

Armachat-circuitpython New Armachat based on Raspberry Pi PICO an Circuitpython code Software working features: send message with header and store to

Peter Misenko 44 Dec 24, 2022
A DUCO (Duino-Coin) miner for GigaDevice ARM boards.

GD32 Duino-Coin Miner Description Contains the firmware and miner software for mining DUCO (Duino-Coin) on GigaDevice GD32 chips. Supported boards GD3

Maximilian Gerhardt 2 Feb 20, 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
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 an incredible led matrix simulation using the ultimate mosaik co-simulation framework.

This project uses the mosaik co-simulation framework, developed by the brilliant developers at the high-ranked Offis institue for computer science, Oldenburg, Germany, to simulate multidimensional LE

Felix 1 Jan 28, 2022
Cascade Drone Swarm Physical Demonstration Project

Cascade Drone Swarm Physical Demonstration Project Table of Contents About The Project Built With Getting Started Prerequisites Installation About The

3 Aug 24, 2022