GithubHelp home page GithubHelp logo

georgezhao2010 / midea_ac_lan Goto Github PK

View Code? Open in Web Editor NEW
1.1K 15.0 175.0 1.23 MB

Auto-configure and then control your Midea M-Smart devices (Air conditioner, Fan, Water heater, Washer, etc) via local area network.

License: MIT License

Python 100.00%
home-assistant lan midea air-conditioner hacs washer water-heater dishwasher refrigerator fan

midea_ac_lan's Introduction

Midea AC LAN

hacs_badge Donate Stable

English | 简体中文

Control your Midea M-Smart appliances via local area network.

  • Automated device discover and configuration based Home Assistant config flow UI.
  • Extra sensors and switches.
  • Synchronize status with the appliance by long TCP connection in time.

This component inspired from the repository at @mac-zhou which provides similar functionality for Midea air conditioners. This component include verbatim or adapted portions of the code from his great projects.

Thanks also to @NeoAcheron.

⭐If this component is helpful for you, please star it, it encourages me a lot.

❗Note: Home Assistant 2022.5 or higher required for this integration

Supported brands

ariston beverly bugu carrier colmo comfee electrolux invertor littleswan midea netsu ProBreeze rotenso toshiba vandelo wahin

And more.

Supported appliances

Type Name Documents
13 Light 13.md
26 Bathroom Master 26.md
34 Sink Dishwasher 34.md
40 Integrated Ceiling Fan 40.md
A1 Dehumidifier A1.md
AC Air Conditioner AC.md
B0 Microwave Oven B0.md
B1 Electric Oven B1.md
B3 Dish Sterilizer B3.md
B4 Toaster B4.md
B6 Range Hood B6.md
BF Microwave Steam Oven BF.md
C2 Toilet C2.md
C3 Heat Pump Wi-Fi Controller C3.md
CA Refrigerator CA.md
CC MDV Wi-Fi Controller CC.md
CD Heat Pump Water Heater CC.md
CE Fresh Air Appliance CE.md
CF Heat Pump CF.md
DA Top Load Washer DA.md
DB Front Load Washer DB.md
DC Clothes Dryer DC.md
E1 Dishwasher E1.md
E2 Electric Water Heater E2.md
E3 Gas Water Heater E3.md
E6 Gas Stove E6.md
E8 Electric Slow Cooker E8.md
EA Electric Rice Cooker EA.md
EC Electric Pressure Cooker EC.md
ED Water Drinking Appliance ED.md
FA Fan FA.md
FB Electric Heater FB.md
FC Air Purifier FC.md
FD Humidifier FD.md

Installation

Search 'Midea AC LAN' in HACS and install, or copy all files in custom_components/midea_ac_lan from Latest Release to your /custom_components/midea_ac_lan in Home Assistant manually.

Restart Home Assistant.

Add device

❗Note: First, set a static IP address for your appliance in the router, in case the IP address of the appliance changes after set-up.

After installation, search and add component Midea AC LAN in Home Assistant integrations page.

Or click Configuration

❗Note: During the configuration process, you may be asked to enter your Midea account and password. It's necessary to retrieve appliance information (Token and Key) from Midea cloud server. After all appliances configured, you can remove the Midea account configuration without affecting the use of the appliance.

After the account is configured, Click 'ADD DEVICE' once more to add new device. You could repeat the above action to add multiple devices.

Discover automatically

Using this option, the component could auto-discover and list Midea M-Smart appliances in network or specified IP address, select one and add it in.

You can also use an IP address to search within a specified network, such as 192.168.1.255.

❗Note: Discovery automatically requires your appliances and your Home Assistant must be in the same sub-network. Otherwise, devices may not be auto-discovered. Check this by yourself.

Configure manually

If you already know following information, you could add the appliance manually.

  • Appliance code
  • Appliance type (one of Supported appliances)
  • IP address
  • Port (default 6444)
  • Protocol version
  • Token
  • Key

List all appliances only

Using this option, you can list all discoverable Midea M-Smart devices on the network, along with their IDs, types, SNs, and other information.

❗Note: For certain reasons, not all supported devices may be listed here.

Configure

Configure can be found in Settings -> Devices & Services -> Midea AC LAN -> Devices -> CONFIGURE. You can re-set the IP address when device IP changed. You can also add extra sensor and switch entities or customize your own device.

IP address

Set the IP address of device. You can reset this when your device IP is changed.

Refresh interval

Set the interval for actively refreshing the status of a single device (the unit is second) (30 by default and 0 means not refresh actively) Mostly the status update of Midea devices relies on the active information notification of the device, in which condition the status update in HA still works normally even if the refresh interval is set to be “0”. This component will also actively query the device status at regular intervals, and the default time is 30 seconds. Some devices do not have active information notifications when their status changed, so synchronization with the status in HA will be slower. If you are very concerned about the synchronization speed of the status, you can try to set a shorter status refresh interval.

❗Note: shorter refresh interval may mean more power consumption

Extra sensor and switch entities

After configuration, one of few main entity (e.g. climate entity) may be generated . If you want to make the attributes to extra sensor and switch entities, click CONFIGURE in Midea AC LAN integration card to choose (if your devices supported).

Customize

Some types of device have their own configuration items, if your device does not work properly, you may need to customize it. Refer to the device documentation for specific information.

The format of customizations must be JSON.

If multiple customization items need to be configured, the settings must comply with the JSON format.

Example

{"refresh_interval": 15, "fan_speed":  100}

Debug

Turn on the debug log out,config in configuration.yaml

logger:
  default: warn
  logs:
    custom_components.midea_ac_lan: debug

Support my works

If you like this integration, why do not you support my works by buying me a coffee?

Buy me a coffee

midea_ac_lan's People

Contributors

24mu13 avatar bokeylee avatar dedepete avatar doudou14 avatar drthanwho avatar ettingshausen avatar georgezhao2010 avatar imgbotapp avatar jdvmanen avatar lgtm-migrator avatar mattedbroadsky avatar micturkey avatar misa1515 avatar msmarks avatar olarodes avatar oopp1800 avatar pengfei00 avatar rokam avatar samjongenelen avatar szt0idw avatar v1k70rk4 avatar wasilukm avatar wrt54g avatar yingying77 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

midea_ac_lan's Issues

美的JSQ热水器无法调温

最新版本的Midea ac lan可以接入热水器了,立马下载安装了一下,发现了几个问题:
热水器调温后可以同步至ha,但是ha调温后无法同步至热水器,几秒钟后恢复为热水器之前的温度。
热水器型号为燃气热水器JSQ30-16HC4,可能是set_temperature方法的实现有些问题;
然后是Homekit接入的问题,由于本集成的模式选择为 "Shower Mode", "Kitchen Mode", "Bathtub Mode", "Temperature Mode", "Cloud Mode", "Energy Saving",并不能严格对应HA默认的模式(参考 https://developers.home-assistant.io/docs/core/entity/water-heater/ ),导致在Homekit中无法选择相应模式,这其实不影响什么,因为模式调节其实也无所谓。但是一个关键问题在于没有提供"STATE_OFF"模式,导致Homekit中会一直显示正在加热,不能显示关闭的状态
刚试了试,HA官方接入就没把这个弄明白,不管什么模式都会显示加热,没法关闭😂

Device unavailable every few seconds...

I just set this up after coming from your other Midea Integration. The device did not auto discover, so I added manually. Everything seems to go through, but the temps are reported incorrectly and then the device is available for about 10 seconds and then becomes unavailable for about 10 more seconds and the cycle completes. I've tried adding the device with model number unknown as well as the one that auto populates.

not able to retrieve token information for new AC integration

Hi,

I'm running the latest version of ha.io installed on a NAS which has been working fine so far with pretty much every integration working flawless but when I try to run midea_ac_lan, after trying to install midea-discover it keeps failing with

`Building wheels for collected packages: pycryptodome
Building wheel for pycryptodome (setup.py) ... error
error: subprocess-exited-with-error

× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> [333 lines of output]
Testing support for clang `

` gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fomit-frame-pointer -g -fomit-frame-pointer -g -fomit-frame-pointer -g -DTHREAD_STACK_SIZE=0x100000 -fPIC -DPYCRYPTO_LITTLE_ENDIAN -DSYS_BITS=64 -DLTC_NO_ASM -Isrc/ -I/usr/include/python3.10 -c src/MD2.c -o build/temp.linux-x86_64-3.10/src/MD2.o
error: command 'gcc' failed: No such file or directory
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for pycryptodome
Running setup.py clean for pycryptodome
Failed to build pycryptodome
Installing collected packages: pycryptodome, idna, click, charset-normalizer, certifi, requests, msmart
Running setup.py install for pycryptodome ... error
error: subprocess-exited-with-error

× Running setup.py install for pycryptodome did not run successfully.
│ exit code: 1
╰─> [335 lines of output]`

` gcc -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fomit-frame-pointer -g -fomit-frame-pointer -g -fomit-frame-pointer -g -DTHREAD_STACK_SIZE=0x100000 -fPIC -DPYCRYPTO_LITTLE_ENDIAN -DSYS_BITS=64 -DLTC_NO_ASM -Isrc/ -I/usr/include/python3.10 -c src/MD2.c -o build/temp.linux-x86_64-3.10/src/MD2.o
error: command 'gcc' failed: No such file or directory
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for pycryptodome
Running setup.py clean for pycryptodome
Failed to build pycryptodome
Installing collected packages: pycryptodome, idna, click, charset-normalizer, certifi, requests, msmart
Running setup.py install for pycryptodome ... error
error: subprocess-exited-with-error

× Running setup.py install for pycryptodome did not run successfully.
│ exit code: 1
╰─> [335 lines of output]`

Error on start rendering integration unavailable

This error happens even after a clean reboot. I never encountered it prior to the most recent release.


Logger: homeassistant.core
Source: custom_components/midea_ac_lan/midea/core/device.py:122 
Integration: Midea AC LAN (documentation, issues) 
First occurred: 19:15:29 (1 occurrences) 
Last logged: 19:15:29

Error executing service: <ServiceCall climate.set_temperature (c:01G963WJ6VJ18317SQASY7TBXF): hvac_mode=cool, temperature=23.5, entity_id=['climate.owners_suite_hvac']>
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/core.py", line 1731, in catch_exceptions
    await coro_or_task
  File "/usr/src/homeassistant/homeassistant/core.py", line 1750, in _execute_service
    await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
    await service.entity_service_call(
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 680, in entity_service_call
    future.result()  # pop exception if have
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 930, in async_request_call
    await coro
  File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 717, in _handle_entity_call
    await result
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 588, in async_service_temperature_set
    await entity.async_set_temperature(**kwargs)
  File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 446, in async_set_temperature
    await self.hass.async_add_executor_job(
  File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/midea_ac_lan/climate.py", line 127, in set_temperature
    self._device.set_target_temperature(
  File "/config/custom_components/midea_ac_lan/midea/devices/ac/device.py", line 162, in set_target_temperature
    self.build_send(message)
  File "/config/custom_components/midea_ac_lan/midea/core/device.py", line 132, in build_send
    self.send_message(msg)
  File "/config/custom_components/midea_ac_lan/midea/core/device.py", line 118, in send_message
    self.send_message_V2(data)
  File "/config/custom_components/midea_ac_lan/midea/core/device.py", line 122, in send_message_V2
    self._socket.send(data)
OSError: [Errno 9] Bad file descriptor

Device-specific features not working / not realised and some general features are not working as intended

Dear @georgezhao2010, thank you very much for your efforts - I am enjoying the automations made possible with your integration. I made a comment in another post about devices I use but to reiterate here, devices I have are:

2 x Inventor O3MVI32-09WiFiR
1 x Inventor O3MVI32-18WiFiR

With these devices, and currently available switches, some functions do not work as intended.

  1. Turbo (Cool/Warm) - not activating the actual feature but makes the unit beep.
  2. Horizontal Swing - not supported by the models, they have manual swing, although the remote control has the button for it (manual does state that function is not available). Not sure if the units respond with supported functions listing Horizontal Swing.
  3. ECO works great! Thank you!
  4. "LED" - as described in another post, this feature works half way via "Prompt Tone" but the display itself, unfortunately, is not dimming by the function.
  5. Aux heat - I do not believe these models support this feature, however, the units respond with a beep when the command is issued. The trigger for Aux heat DOES NOT stay ON when activated, though.
  6. Fan speed selection from the climate enitity property window works funny - the actual selections work as intended, but after selecting an option, a different option is highlighted in the box (feels like -1 in the index with a return to 0 at "full speed", i.e. full speed -> low, not auto).
  7. "Smart Eye" - I would think that corresponds to "Follow Me" mode on the remote control but it does nothing for my devices.
  8. The following options I have on my devices which are not realised in your integration yet: FRESH (very important!), SLEEP, SELF CLEAN. While I frankly don't care about SLEEP and SELF CLEAN modes, I would really love to have a working FRESH button in HA!

Do you think I can provide you some information from my devices to help and figure out fixes for the issues? Especially the FRESH button, please! :)

Edit:
I also constantly see "Comfort Mode" (does not exist in this A/C model) toggling ON and OFF on all the A/C's mentioned, like so without my action or automation doing it:

Inventor O3MVI32-09WiFiR | Bedroom Comfort Mode turned off
14:25:21 - 2 minutes ago
Inventor O3MVI32-18WiFiR | Living Room Comfort Mode turned off
14:24:11 - 3 minutes ago
Inventor O3MVI32-09WiFiR | Bedroom Comfort Mode turned on
14:23:17 - 4 minutes ago
Inventor O3MVI32-09WiFiR | Bedroom Comfort Mode turned off
14:22:16 - 5 minutes ago
Inventor O3MVI32-18WiFiR | Living Room Comfort Mode turned on
14:22:08 - 5 minutes ago

Cannot change from C to F in UI

I saw similar closed issues about not being able to get temp to show up in F and I have tried changing the actual device from F to C and back to F, made a temp change on the unit, but Lovelace and the entity for the AC and outside temp shows us in C. Is this a bug or is there a work around? Just installed latest version this morning.

能否在set_temperatue中加入设置havc mode

HA climate service的模板里set_temperature是可以设置havc mode的,经过实测和看了眼作者的代码,发现在climate.py文件中 set_temperature(self,**kwargs)函数里,只设置了温度,没有对havc_mode处理,不知道作者有空能否在set_temperature内加上设置havc mode。感谢

Changing setpoint changes units to C

I have three midea ACs and use this integration to monitor and control them. Any time I change the setpoint temp, the units switch from F to Celsius. Is there something I need to configure to prevent this?

Advantages

Hi,
Could you please elaborate on what the advantages are compared to the mac-zhou midea-ac-py repo?
I currently use that and am honestly curious as to what the advantages would be.

Can't change target temperature

Really like the integration the issue that started after the last update i can not change the target temperature it stays at 24th even with eco mode off
I tried to lower or raise temperature both are not working
Thanks

Problem for Protocol Version 2

Hi George,
For protocol version 2, it seems that the _token and _key are optional which will be empty while importing.
This will encounter a problem in function DeviceManager (state_manager.py) for following 2 codes:
self._token = bytearray.fromhex(token)
self._key = bytearray.fromhex(key)

Here is the log I have when importing one of the V2 AC:
Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/config_entries.py", line 339, in async_setup result = await component.async_setup_entry(hass, self) File "/config/custom_components/midea_ac_lan/__init__.py", line 27, in async_setup_entry dm = DeviceManager(device_id, host, port, token, key, protocol, model) File "/config/custom_components/midea_ac_lan/state_manager.py", line 45, in __init__ self._token = bytearray.fromhex(token) TypeError: fromhex() argument must be str, not None

Screen Display Switch always stays on but unit switches

I did notice that the Display Switch in Home Assistant turns back on after a few seconds even though the display stays off.

  1. Screen Display Switch is ON, Display on AC is on.
  2. I turn off the Screen Display Switch in HA
  3. Display on AC unit turns off
  4. 3 seconds later, the Screen Display Switch in HA turns back on.
  5. Display stays off.
    I noticed that the status update always shows "True" for screen display no matter if it is turned on or off on the device.

Not a big problem, I was just wondering if this is intentional.

2022-07-28 12:34:18 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Status update: {'power': True, 'mode': 2, 'target_temperature': 25.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'turbo_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 24.0, 'outdoor_temperature': 29.0, 'available': True}
2022-07-28 12:34:46 DEBUG (SyncWorker_1) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Sending: {'header': 'aa20ac8c000000000003', 'payload': '418100ff02ff0202000000000000000000000000e5', 'message type': '0x3', 'body type': '0x41'}
2022-07-28 12:34:46 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.devices.ac.device] [3**********3] Received: {'header': 'aa23ac00000000000303', 'payload': 'c00149667f7f0030000000636d0000000000000000000000', 'message type': '0x3', 'body type': '0xc0'}
2022-07-28 12:34:46 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Status update: {'power': True, 'mode': 2, 'target_temperature': 25.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'turbo_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 24.0, 'outdoor_temperature': 29.0, 'available': True}
2022-07-28 12:34:49 DEBUG (SyncWorker_1) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Sending: {'header': 'aa20ac8c000000000003', 'payload': '418100ff02ff0202000000000000000000000000e6', 'message type': '0x3', 'body type': '0x41'}
2022-07-28 12:34:50 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.devices.ac.device] [3**********3] Received: {'header': 'aa23ac00000000000303', 'payload': 'c00149667f7f0030000000636d0000000000000000000000', 'message type': '0x3', 'body type': '0xc0'}
2022-07-28 12:34:50 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Status update: {'power': True, 'mode': 2, 'target_temperature': 25.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'turbo_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 24.0, 'outdoor_temperature': 29.0, 'available': True}
2022-07-28 12:34:54 DEBUG (SyncWorker_3) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Sending: {'header': 'aa20ac8c000000000003', 'payload': '418100ff02ff0202000000000000000000000000e7', 'message type': '0x3', 'body type': '0x41'}
2022-07-28 12:34:55 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.devices.ac.device] [3**********3] Received: {'header': 'aa23ac00000000000303', 'payload': 'c00149667f7f0030000000636d0000000000000000000000', 'message type': '0x3', 'body type': '0xc0'}
2022-07-28 12:34:55 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Status update: {'power': True, 'mode': 2, 'target_temperature': 25.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'turbo_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 24.0, 'outdoor_temperature': 29.0, 'available': True}
2022-07-28 12:34:57 DEBUG (SyncWorker_9) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Sending: {'header': 'aa20ac8c000000000003', 'payload': '418100ff02ff0202000000000000000000000000e8', 'message type': '0x3', 'body type': '0x41'}
2022-07-28 12:34:58 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.devices.ac.device] [3**********3] Received: {'header': 'aa23ac00000000000303', 'payload': 'c00149667f7f0030000000636d0000000000000000000000', 'message type': '0x3', 'body type': '0xc0'}
2022-07-28 12:34:58 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Status update: {'power': True, 'mode': 2, 'target_temperature': 25.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'turbo_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 24.0, 'outdoor_temperature': 29.0, 'available': True}
2022-07-28 12:35:00 DEBUG (SyncWorker_11) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Sending: {'header': 'aa20ac8c000000000003', 'payload': '418100ff02ff0202000000000000000000000000e9', 'message type': '0x3', 'body type': '0x41'}
2022-07-28 12:35:01 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.devices.ac.device] [3**********3] Received: {'header': 'aa23ac00000000000303', 'payload': 'c00149667f7f0030000000636d0000000000000000000000', 'message type': '0x3', 'body type': '0xc0'}
2022-07-28 12:35:01 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Status update: {'power': True, 'mode': 2, 'target_temperature': 25.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'turbo_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 24.0, 'outdoor_temperature': 29.0, 'available': True}
2022-07-28 12:35:05 DEBUG (SyncWorker_4) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Sending: {'header': 'aa20ac8c000000000003', 'payload': '418100ff02ff0202000000000000000000000000ea', 'message type': '0x3', 'body type': '0x41'}
2022-07-28 12:35:06 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.devices.ac.device] [3**********3] Received: {'header': 'aa23ac00000000000303', 'payload': 'c00149667f7f0030000000636c0000000000000000000000', 'message type': '0x3', 'body type': '0xc0'}
2022-07-28 12:35:06 DEBUG (Thread-108) [custom_components.midea_ac_lan.midea.core.device] [3**********3] Status update: {'power': True, 'mode': 2, 'target_temperature': 25.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'turbo_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 24.0, 'outdoor_temperature': 29.0, 'available': True}

Still connection issues in 0.2.2

Unfortunately, I am still seeing the connection become available/unavailable all the time. My system is a V3 system ( 'version': 3)

Here is the debug log.

2022-07-26 18:33:45 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Connected
2022-07-26 18:33:45 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Handshaking
2022-07-26 18:33:45 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Connected
2022-07-26 18:33:45 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Handshaking
2022-07-26 18:33:46 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Authentication success
2022-07-26 18:33:46 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Status update: {'available': True}
2022-07-26 18:33:46 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Sending: {'header': 'aa23ac8f000000000003', 'payload': '418100ff03ff00020000000000000000000000000000005d', 'message type': '0x3', 'body type': '0x41'}
2022-07-26 18:33:46 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Authentication success
2022-07-26 18:33:46 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Status update: {'available': True}
2022-07-26 18:33:46 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Sending: {'header': 'aa23ac8f000000000003', 'payload': '418100ff03ff00020000000000000000000000000000005f', 'message type': '0x3', 'body type': '0x41'}
2022-07-26 18:33:56 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] does not supports the protocol MessageQuery, has been ignored
2022-07-26 18:33:56 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Sending: {'header': 'aa14acb8000000000003', 'payload': 'b1034200180015005e', 'message type': '0x3', 'body type': '0xb1'}
2022-07-26 18:33:56 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] does not supports the protocol MessageQuery, has been ignored
2022-07-26 18:33:56 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Sending: {'header': 'aa14acb8000000000003', 'payload': 'b10342001800150060', 'message type': '0x3', 'body type': '0xb1'}
2022-07-26 18:34:06 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] does not supports the protocol MessageNewProtocolQuery, has been ignored
2022-07-26 18:34:06 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Refresh status is all timed out
2022-07-26 18:34:06 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Status update: {'available': False}
2022-07-26 18:34:06 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] does not supports the protocol MessageNewProtocolQuery, has been ignored
2022-07-26 18:34:06 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Refresh status is all timed out
2022-07-26 18:34:06 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Status update: {'available': False}
2022-07-26 18:34:11 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Connected
2022-07-26 18:34:11 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Handshaking
2022-07-26 18:34:11 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Connected
2022-07-26 18:34:11 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Handshaking
2022-07-26 18:34:11 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Authentication success
2022-07-26 18:34:11 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Status update: {'available': True}
2022-07-26 18:34:11 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Sending: {'header': 'aa23ac8f000000000003', 'payload': '418100ff03ff000200000000000000000000000000000061', 'message type': '0x3', 'body type': '0x41'}
2022-07-26 18:34:11 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Authentication success
2022-07-26 18:34:11 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Status update: {'available': True}
2022-07-26 18:34:11 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Sending: {'header': 'aa23ac8f000000000003', 'payload': '418100ff03ff000200000000000000000000000000000063', 'message type': '0x3', 'body type': '0x41'}
2022-07-26 18:34:21 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] does not supports the protocol MessageQuery, has been ignored
2022-07-26 18:34:21 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Sending: {'header': 'aa14acb8000000000003', 'payload': 'b10342001800150062', 'message type': '0x3', 'body type': '0xb1'}
2022-07-26 18:34:21 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] does not supports the protocol MessageQuery, has been ignored
2022-07-26 18:34:21 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Sending: {'header': 'aa14acb8000000000003', 'payload': 'b10342001800150064', 'message type': '0x3', 'body type': '0xb1'}
2022-07-26 18:34:31 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] does not supports the protocol MessageNewProtocolQuery, has been ignored
2022-07-26 18:34:31 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Refresh status is all timed out
2022-07-26 18:34:31 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Status update: {'available': False}
2022-07-26 18:34:31 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] does not supports the protocol MessageNewProtocolQuery, has been ignored
2022-07-26 18:34:31 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Refresh status is all timed out
2022-07-26 18:34:31 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Status update: {'available': False}
2022-07-26 18:34:36 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Connected
2022-07-26 18:34:36 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Handshaking
2022-07-26 18:34:36 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Connected
2022-07-26 18:34:36 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Handshaking
2022-07-26 18:34:37 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Authentication success
2022-07-26 18:34:37 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Status update: {'available': True}
2022-07-26 18:34:37 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Sending: {'header': 'aa23ac8f000000000003', 'payload': '418100ff03ff000200000000000000000000000000000065', 'message type': '0x3', 'body type': '0x41'}
2022-07-26 18:34:37 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Authentication success
2022-07-26 18:34:37 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Status update: {'available': True}
2022-07-26 18:34:37 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Sending: {'header': 'aa23ac8f000000000003', 'payload': '418100ff03ff000200000000000000000000000000000067', 'message type': '0x3', 'body type': '0x41'}
2022-07-26 18:34:47 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] does not supports the protocol MessageQuery, has been ignored
2022-07-26 18:34:47 DEBUG (Thread-9) [custom_components.midea_ac_lan.midea.core.device] [3***************6] Sending: {'header': 'aa14acb8000000000003', 'payload': 'b10342001800150066', 'message type': '0x3', 'body type': '0xb1'}
2022-07-26 18:34:47 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] does not supports the protocol MessageQuery, has been ignored
2022-07-26 18:34:47 DEBUG (Thread-8) [custom_components.midea_ac_lan.midea.core.device] [3***************3] Sending: {'header': 'aa14acb8000000000003', 'payload': 'b10342001800150068', 'message type': '0x3', 'body type': '0xb1'}

Frequently unavailable BUG

Really appreciate the contusions support.
With the new update the device go unavailable frequently every 2-3 min and online again after refreshing entity config.
Logger: root
Source: helpers/entity.py:660
First occurred: 9:21:11 PM (1 occurrences)
Last logged: 9:21:11 PM

Uncaught thread exception
Traceback (most recent call last):
File "/usr/local/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
self.run()
File "/config/custom_components/midea_ac_lan/state_manager.py", line 71, in run
self.enable_devices(False)
File "/config/custom_components/midea_ac_lan/state_manager.py", line 133, in enable_devices
self.update_all({"available": enable})
File "/config/custom_components/midea_ac_lan/state_manager.py", line 139, in update_all
update(updates)
File "/config/custom_components/midea_ac_lan/midea_entity.py", line 136, in update_state
self.schedule_update_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 660, in schedule_update_ha_state
self.hass.add_job(self.async_update_ha_state(force_refresh))
AttributeError: 'NoneType' object has no attribute 'add_job'
This error i found in the logs
Regards

fahrenheit

Its showing the fahrenheit symbol, but temperature numbers are definitely celcius. Any ideas on how to correct?

更新后空调变得不可用

空调是华菱2p型号是KFR-51LW/N8HA3.
上个版本使用正常,这次更新成功的修复了我能正常使用的bug(狗头

更新:
删除后重新添加又变得可用了.

[功能请求] 是否可以添加无极风量调节的控制面板

首先感谢作者的付出和贡献~

目前使用该集成,发现有一个不太方便的地方,风量调节得依赖services设置固定值,如通过homekit桥接调节的方式,则只可选择固定档位的风量模式。从美的空调自带的遥控器的调节方式来看,目前我所使用的空调其实是支持以1%为调节级数的风量调节,不知作者是否后续可以更新支持相关功能。

以上

Preset modes "not sticky" to A/C modes

Thank you for the update.

My units support "ECO" function in Cooling mode only. The units also do not have "Comfort" function. However, now whenever the units are switched on, they choose "Comfort" preset. I activate "Eco" preset, but it switches to "Comfort" after 2 seconds, although ECO function on A/C gets activated.

When I change mode to anything else, it just chooses "Comfort", even if I put "None" - it still switches to "Comfort", like Dry - Comfort. It even changes to "Comfort" itself from "Eco" for some reason within the same A/C and mode.

I expect the preset to apply to specific A/C modes, for example, I have Cooling ON, I go to Presets and select ECO, from now on, this A/C will switch to ECO function every time the A/C is in Cooling mode, while other modes should have their own Preset. Or not switch away from "None" which applies to all modes. Impossible to have ECO on all modes, at least on my model.

[feature request]自动配置支持指定IP段

手动模式的一些参数不容易获得。
自动模式很棒,但是在docker容器里有时候不能用(网络不是host)。如果能在让自动模式在指定IP段扫描,就很完美了。

这个类似的项目 可以指定IP网段,但是很可惜国内的账号不能用。

Display on/off

Thank you very much for this great plugin.
Is it possible that the display can be turned on/off with a switch?

自动化部分能否实现温度设定?

请问自动化部分能否实现调节温度的功能?似乎只能通过手动来调节,而在自动化设置的动作里似乎没有温度控制的接口。
正在学习HA,可能是我还不会使用的缘故,如果有误还请见谅

面板插件版本2.2003.3009不支持

家里三个面板 同一款面板, 但是风管机的型号不同,有一款跟其他两款不同。

插件版本为3.2110.1310的可以支持。 2.2003.3009版本的一块可以通过midea-discover发现,另一款不能, 能发现那块集成后,也处于不可用状态。 通过指定ip地址,midea-discover都能发现了。

New sensor

Hello

Is it possible to implement a new sensor for the power compsuntion perhaps?
The factory app has got this feature, thus I think this data is retrievetable.
Thanks a lot for your hard work :)

Zoltán

it detect my AC on network but I can't control it

Hi, Awesome project! The detection find my device but once it's done, the temperature displayed stay at 20 and i can't control any function. So the AC is detected but don't communicate

I tried with different Token and Key without success but those works with another project (midea-ac-py)

the log file didn't shows error. I run Home Assistant 2021.8.8

一直显示室外0度

最早安装的时候还是0.1.x, 至今0.3.1仍然显示室外0度, 不知道要怎么办, 在app里是有室外温度的
型号是11979, MWOW(KFR-35GW/WOWN8A1@)

2022-08-01 17:30:14 DEBUG (Thread-3) [custom_components.midea_ac_lan.midea.core.device] [87960930234718] Status update: {'power': False, 'mode': 2, 'target_temperature': 29.0, 'fan_speed': 1, 'swing_vertical': False, 'swing_horizontal': False, 'turbo_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': False, 'comfort_mode': False, 'indoor_temperature': 30.3, 'outdoor_temperature': 0.0, 'indirect_wind': False, 'available': True}

Fails to recover from socket.timeout error

This integration is super helpful. Thanks for putting in the effort to create it!

I'm noticed that occasionally the custom_components/midea_ac_lan/state_manager.py:123 throws an socket.timeout exception and then fails to control the AC until it reloads.

Uncaught thread exception
Traceback (most recent call last):
  File "/config/custom_components/midea_ac_lan/state_manager.py", line 78, in run
    msg = self._socket.recv(1024)
socket.timeout: timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/threading.py", line 973, in _bootstrap_inner
    self.run()
  File "/config/custom_components/midea_ac_lan/state_manager.py", line 99, in run
    self.refresh_status()
  File "/config/custom_components/midea_ac_lan/state_manager.py", line 294, in refresh_status
    self.send_message(msg)
  File "/config/custom_components/midea_ac_lan/state_manager.py", line 117, in send_message
    self.send_message_V3(data, msg_type=MSGTYPE_ENCRYPTED_REQUEST)
  File "/config/custom_components/midea_ac_lan/state_manager.py", line 127, in send_message_V3
    self.send_message_V2(data)
  File "/config/custom_components/midea_ac_lan/state_manager.py", line 123, in send_message_V2
    self._socket.send(data)
BrokenPipeError: [Errno 32] Broken pipe

Error on HA Shutdown

This exception always gets thrown during graceful HA shutdown; if you could catch it so it doesn't fire off people's alerting around exceptions that would be lovely!

RuntimeError: Event loop is closed
  File "/config/custom_components/midea_ac_lan/state_manager.py", line 71, in run
    self.enable_devices(False)
  File "/config/custom_components/midea_ac_lan/state_manager.py", line 132, in enable_devices
    self.update_all({"available": enable})
  File "/config/custom_components/midea_ac_lan/state_manager.py", line 138, in update_all
    update(updates)
  File "/config/custom_components/midea_ac_lan/midea_entity.py", line 136, in update_state
    self.schedule_update_ha_state()
  File "homeassistant/helpers/entity.py", line 660, in schedule_update_ha_state
    self.hass.add_job(self.async_update_ha_state(force_refresh))
  File "homeassistant/core.py", line 365, in add_job
    self.loop.call_soon_threadsafe(self.async_add_job, target, *args)
  File "asyncio/base_events.py", line 795, in call_soon_threadsafe
    self._check_closed()
  File "asyncio/base_events.py", line 515, in _check_closed
    raise RuntimeError('Event loop is closed')

I'd also be happy to take a stab at fixing it if it's not a high priority for you!

Error Setting up V2 AC

I get the following error when I setup my QLIMA AC .
It uses the V2 protocol.
I set Token and Key to None

This error originated from a custom integration.

Logger: aiohttp.server
Source: custom_components/midea_ac_lan/state_manager.py:45
Integration: Midea AC LAN (documentation, issues)
First occurred: 18:08:02 (1 occurrences)
Last logged: 18:08:02

Error handling request
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/aiohttp/web_protocol.py", line 435, in _handle_request
resp = await request_handler(request)
File "/usr/local/lib/python3.9/site-packages/aiohttp/web_app.py", line 504, in _handle
resp = await handler(request)
File "/usr/local/lib/python3.9/site-packages/aiohttp/web_middlewares.py", line 117, in impl
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 60, in security_filter_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 100, in forwarded_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 28, in request_context_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 79, in ban_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 220, in auth_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 137, in handle
result = await result
File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 205, in post
return await super().post(request, flow_id)
File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 62, in wrapper
result = await method(view, request, *args, **kwargs)
File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 109, in post
result = await self._flow_mgr.async_configure(flow_id, data)
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 260, in async_configure
result = await self._async_handle_step(
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 335, in _async_handle_step
result: FlowResult = await getattr(flow, method)(user_input)
File "/config/custom_components/midea_ac_lan/config_flow.py", line 112, in async_step_manual
dm = DeviceManager(user_input[CONF_DEVICE_ID], user_input[CONF_HOST], user_input[CONF_PORT],
File "/config/custom_components/midea_ac_lan/state_manager.py", line 45, in init
self._token = bytearray.fromhex(token) if token else None
ValueError: non-hexadecimal number found in fromhex() arg at position 0

期待添加美的全直流变频**空调的支持(附带 msmart.cli 搜索结果)

空调型号(室外机):MDVH-V120W/N1-620LX
空调型号(室内机):MDVH-J36T2/BP3N1Y-LX(B) (以及其他几个同系列不同功率型号)

随机配有 86 面板式的美的 Wi-Fi 开关网关一只,该网关自带一路触摸开关功能。
通过“美的美居”App 可以搜索到该网关并通过 Wi-Fi 方式配置网络联网。

连网后,“美的美居”App 可以自动发现多台室内机(网关与空调通信使用三条线,不确定是 RS485 还是美的私有协议),并分别控制每台室内机的运行。

目前,通过 pip 安装的 midea-discover 命令并不能搜到该网关,反而能搜到我同一个网络里的美的洗碗机…

helixzz@home-ubuntu:~$ midea-discover
INFO:msmart.cli:msmart version: 0.2.3 Currently only supports ac devices, only support MSmartHome APP.
ERROR:msmart.security:authentication failed
ERROR:msmart.lan:Authentication failed for 172.16.29.254:44446 -> 172.16.29.56:6444 retries: 0 time: 0.03 
INFO:msmart.lan:Got TCP key for 172.16.29.254:44446 -> 172.16.29.56:6444 retries: 0 time: 0.93 tcp_key: ******
INFO:msmart.cli:*** Found a device: {'name': 'midea_e1_1346', 'ssid': 'midea_e1_1346', 'ip': '172.16.29.56', 'port': 6444, 'id': 160528699983452, 'version': 3, 'token': '******', 'key': '******', 'type': 'e1', 'sn': '0E1311760GX600091711013******', 'model': 'GX600', 'support': False, 'run_test': True}

Cannot retrieve key and token

I just got a couple ACs from Midea and I'm having a hard time putting them up in home assistant.
I ran midea-discover and got the following info:

INFO:msmart.cli:*** Found a device: {'name': 'net_ac_6F**', 'ssid': 'net_ac_6F**', 'ip': '192.168.21.241', 'port': 6444, 'id': 145***112, 'version': 3, 'token': None, 'key': None, 'type': 'ac', 'sn': '000P****000', 'model': '00Q1B', 'support': True, 'run_test': True}

As you can see, Key and Token are None. Also trying to integrate automatically from Home Assistant UI it stays forever loading.

How can I get the Key and Token? Or what other piece of info can I add so someone can help me?

Thanks!

Powering on the AC

Is it possible to add the ability to power on the device? I have the midea portable ac and would love to be able to have it turn on and off at a higher temperature then is max on my unit through home assistant. I know the app can do it but wanting to automate this if possible.

很有帮助!能否增加对美的领航者二代**空调的支持?

您好!最近装修遇到美的领航者二代**空调无法接入美的美居外的其他智能家居平台。
多方了解,HASS可以实现;但相关支持几乎没有。
室外机:MDVH-V140W/N1-E01LH(E1)II
室内机:MDVH-J71T2/BP3N1X-LHII
可以添加到HASS集成插件里面吗?
感谢大佬!

Screen Display not functioning as expected

I was posting in a different issue as I thought it was more relevant but it got closed by the OP.

The front panel on my units displays error codes / temperature / active modes etc, i.e. the LED display. It is switched on/off by LED button on the remote. This same LED button switches chime ("Prompt Tone") on and off with the LED display, so it's a 2-in-1 button.

Instead of a 2-in-1 function, this integration enables separate controls for tone and for display - great! Currently, the Prompt Tone function works great on all 3 of my A/C units, however, Screen Display function does not work on any.

Screen Display entity switch seems to be tracking the ON/OFF state of the unit instead of the LED screen, i.e. if I switch the unit on/off, the entity switch comes on/off accordingly on the card. However, if I try to toggle the switch - it has no effect and returns to the initial state after 2 seconds.

Presumably that was me trying to switch Screen Display OFF:

2022-08-05 09:26:23.872 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Sending: {'header': 'aa20ac8c000000000003', 'body': '418100ff03ff00020000000000000000000000008341', 'message type': '03', 'body type': '41'}
2022-08-05 09:26:24.727 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.devices.ac.device] [18691697749179] Received: {'header': 'aa22ac00000000000303', 'body': 'c00168667f7f0030000000636b0000000000000000001c47', 'message type': '03', 'body type': 'c0'}
2022-08-05 09:26:24.727 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Status update: {'power': True, 'mode': 3, 'target_temperature': 24.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'boost_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 24.0, 'outdoor_temperature': 28.0, 'available': True}
2022-08-05 09:27:10.380 DEBUG (SyncWorker_0) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Sending: {'header': 'aa20ac8c000000000003', 'body': '418100ff02ff02020000000000000000000000008716', 'message type': '03', 'body type': '41'}
2022-08-05 09:27:11.380 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.devices.ac.device] [18691697749179] Received: {'header': 'aa22ac00000000000303', 'body': 'c00168667f7f0030000000656b00000000000000000042ea', 'message type': '03', 'body type': 'c0'}
2022-08-05 09:27:11.380 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Status update: {'power': True, 'mode': 3, 'target_temperature': 24.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'boost_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 25.0, 'outdoor_temperature': 28.0, 'available': True}
2022-08-05 09:27:13.293 DEBUG (SyncWorker_8) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Sending: {'header': 'aa20ac8c000000000003', 'body': '418100ff02ff02020000000000000000000000008857', 'message type': '03', 'body type': '41'}
2022-08-05 09:27:14.780 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.devices.ac.device] [18691697749179] Received: {'header': 'aa22ac00000000000303', 'body': 'c00168667f7f0030000000656b0000000000000000000010', 'message type': '03', 'body type': 'c0'}
2022-08-05 09:27:14.780 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Status update: {'power': True, 'mode': 3, 'target_temperature': 24.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'boost_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 25.0, 'outdoor_temperature': 28.0, 'available': True}
2022-08-05 09:27:16.128 DEBUG (SyncWorker_4) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Sending: {'header': 'aa20ac8c000000000003', 'body': '418100ff02ff02020000000000000000000000008909', 'message type': '03', 'body type': '41'}
2022-08-05 09:27:17.036 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.devices.ac.device] [18691697749179] Received: {'header': 'aa22ac00000000000303', 'body': 'c00168667f7f0030000000656b0000000000000000004dab', 'message type': '03', 'body type': 'c0'}
2022-08-05 09:27:17.036 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Status update: {'power': True, 'mode': 3, 'target_temperature': 24.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'boost_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 25.0, 'outdoor_temperature': 28.0, 'available': True}
2022-08-05 09:27:19.046 DEBUG (SyncWorker_7) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Sending: {'header': 'aa20ac8c000000000003', 'body': '418100ff02ff02020000000000000000000000008c36', 'message type': '03', 'body type': '41'}
2022-08-05 09:27:20.035 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.devices.ac.device] [18691697749179] Received: {'header': 'aa22ac00000000000303', 'body': 'c00168667f7f0030000000656b0000000000000000001d70', 'message type': '03', 'body type': 'c0'}
2022-08-05 09:27:20.035 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Status update: {'power': True, 'mode': 3, 'target_temperature': 24.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'boost_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 25.0, 'outdoor_temperature': 28.0, 'available': True}
2022-08-05 09:27:21.774 DEBUG (SyncWorker_1) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Sending: {'header': 'aa20ac8c000000000003', 'body': '418100ff02ff02020000000000000000000000008d68', 'message type': '03', 'body type': '41'}
2022-08-05 09:27:22.564 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.devices.ac.device] [18691697749179] Received: {'header': 'aa22ac00000000000303', 'body': 'c00168667f7f0030000000656b000000000000000000ea87', 'message type': '03', 'body type': 'c0'}
2022-08-05 09:27:22.564 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Status update: {'power': True, 'mode': 3, 'target_temperature': 24.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'boost_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 25.0, 'outdoor_temperature': 28.0, 'available': True}
2022-08-05 09:27:24.312 DEBUG (SyncWorker_2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Sending: {'header': 'aa20ac8c000000000003', 'body': '418100ff02ff02020000000000000000000000008e8a', 'message type': '03', 'body type': '41'}
2022-08-05 09:27:25.282 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.devices.ac.device] [18691697749179] Received: {'header': 'aa22ac00000000000303', 'body': 'c00168667f7f0030000000656b000000000000000000c759', 'message type': '03', 'body type': 'c0'}
2022-08-05 09:27:25.283 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Status update: {'power': True, 'mode': 3, 'target_temperature': 24.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'boost_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 25.0, 'outdoor_temperature': 28.0, 'available': True}
2022-08-05 09:27:25.283 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Sending: {'header': 'aa20ac8c000000000003', 'body': '418100ff03ff00020000000000000000000000008fe2', 'message type': '03', 'body type': '41'}
2022-08-05 09:27:26.049 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.devices.ac.device] [18691697749179] Received: {'header': 'aa22ac00000000000303', 'body': 'c00168667f7f0030000000656b0000000000000000006f34', 'message type': '03', 'body type': 'c0'}
2022-08-05 09:27:26.050 DEBUG (Thread-2) [custom_components.midea_ac_lan.midea.core.device] [18691697749179] Status update: {'power': True, 'mode': 3, 'target_temperature': 24.0, 'fan_speed': 102, 'swing_vertical': False, 'swing_horizontal': False, 'boost_mode': False, 'smart_eye': False, 'dry': False, 'eco_mode': False, 'aux_heat': False, 'night_light': False, 'natural_wind': False, 'temp_fahrenheit': False, 'screen_display': True, 'comfort_mode': False, 'indoor_temperature': 25.0, 'outdoor_temperature': 28.0, 'available': True}

Stuck on Beta 0.2.0-B2

Hi there :-)

Somehow I'm stuck on 0.2.0-B2, HACS is promoting an update to 0.2.3, but it does nothing when I click it. When I try to open the Integration Page there is a "Unknown Error".

Tried a few things, including deleting the deps folder and poking around in .storage. Whilst doing that I recognized that

.storage/hacs/repository/396083412.hacs

is missing.

Can someone send me that file, maybe that solves my problem?

Best regards

Michael

在Hass上添加时出现意外

如题,显示“此集成不支持通过 UI 配置。如果您是从 Home Assistant 网站点击链接前来,请确保您运行的是最新版本的 Home Assistant。”可我就是最新版了,求解。

版本 | core-2022.7.7
安装类型 | Home Assistant Core
开发版 | false
Supervisor | false
Docker | false
用户 | root
虚拟环境 | true
Python 版本 | 3.9.2
操作系统系列 | Linux
操作系统版本 | 3.10.72+
CPU 架构 | aarch64
时区 | Asia/Shanghai

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.