scottyphillips / echonetlite_homeassistant Goto Github PK
View Code? Open in Web Editor NEWA Home Assistant custom component for use with ECHONET enabled devices.
License: MIT License
A Home Assistant custom component for use with ECHONET enabled devices.
License: MIT License
Hi Everyone,
Ive spent the last few days rewriting the python library that powers this custom component. Basically i have refactored to to make it extensible to all sorts of ECHONET devices in the first step towards turning this into an official integration. The library has changed so much it has its own repo now 'pychonet'
But I need your help. I need to test the custom component that makes use of 'pychonet' - I need to validate all the functionality, setting temperature values, the sensors, the works. If you can update the custom component manually to use the 'pychonet-2.0' branch and let me know of any issues then that would be appreciated.
Eventually this branch will be promoted to master and I will stop referencing and maintaining 'mitsubishi_echonet' in this integration. So any bugs found now wont trip anyone up when the time comes to promote.
Thanks everyone.
Firstly, thank you for this Integration. I Installed 3 x Mitsubishi MSZ-AP20VGD split system air conditioners with MAC-568IF-E wifi controls.
2 of the units integrate perfectly with HA with full control & ambient room temp readings, the third unit has full control - on/off , temp adjust etc. However will not retrieve the ambient room temp.
I have 2 x errors in the log;
"Logger: homeassistant
Source: custom_components/echonetlite/climate.py:177
Integration: ECHONETLite (documentation, issues)
First occurred: February 17, 2022, 10:30:43 PM (178 occurrences)
Last logged: 1:27:43 AM
Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 735, in _update_entity_states
await asyncio.gather(*tasks)
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 526, in async_update_ha_state
self._async_write_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 574, in _async_write_ha_state
attr.update(self.state_attributes or {})
File "/usr/src/homeassistant/homeassistant/components/climate/init.py", line 298, in state_attributes
if self.hvac_action:
File "/config/custom_components/echonetlite/climate.py", line 177, in hvac_action
if self._connector._update_data[ENL_HVAC_SET_TEMP] < self._connector._update_data[ENL_HVAC_ROOM_TEMP]:
TypeError: '<' not supported between instances of 'float' and 'NoneType' "
"Logger: homeassistant
Source: custom_components/echonetlite/sensor.py:145
Integration: ECHONETLite (documentation, issues)
First occurred: 1:27:47 AM (341 occurrences)
Last logged: 4:17:44 AM
Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 735, in _update_entity_states
await asyncio.gather(*tasks)
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 526, in async_update_ha_state
self._async_write_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 572, in _async_write_ha_state
state = self._stringify_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 545, in _stringify_state
if (state := self.state) is None:
File "/usr/src/homeassistant/homeassistant/components/sensor/init.py", line 371, in state
value = self.native_value
File "/config/custom_components/echonetlite/sensor.py", line 145, in native_value
if self._instance._update_data[self._op_code] is None:
KeyError: 133"
Thanks
Hi,
first thanks for all the effort. Have been using the older mitsubishi echonet code for some time and also implemented the general lighting class. I made some pull request for those.
Testing the integration with home assistant I found that the code crashed (even brings down the whole Home Assistant). My guess is that the code does not properly handle multiple instances under one host. Even the async_example.py fails. When using the different API to specify the instance ID, everything is working. So the general code can handle multiple instance, just the iterator during setup seems to be off. I am not savvy in Homo Assistant (my previous implementation we very hacky) to see the issue.
Best
Martin
Is it possible to control the aircon by half a degree?
I can do it via the mitsubishi app however from home assistant when I try set it to a half degree it will just round down to the nearest degree.
Hi Scotty,
I get the following error since upgrading home assistant. Have updated to your latest version but no dice.
Platform error climate.mitsubishi - Integration 'mitsubishi' not found.
After adding this integration and restarting HA, I receive the following in my logs:-
homeassistant | 2019-10-30 20:44:32 INFO (MainThread) [homeassistant.components.climate] Setting up climate.mitsubishi
homeassistant | 2019-10-30 20:44:42 WARNING (MainThread) [homeassistant.components.climate] Setup of platform mitsubishi is taking over 10 seconds.
homeassistant | 2019-10-30 20:45:32 ERROR (MainThread) [homeassistant.components.climate] Setup of platform mitsubishi is taking longer than 60 seconds. Startup will proceed without waiting any longer.
HA: 0.100.3
Running in docker on Raspberry PI 4
I love this integration it is awesome, but the aforementioned version of HASS is reporting this in my log file:
No 'version' key in the manifest file for custom integration 'mitsubishi'. This will not be allowed in a future version of Home Assistant. Please report this to the maintainer of 'mitsubishi'
Hi,
I can see that it looks like the swing modes were implemented in the python code, but was this then pulled into the hass custom component? What would I need to do to get swing modes working in home assistant?
Hi,
The instructions state:
Using the tool of choice open the directory (folder) for your HA configuration (where you find configuration.yaml).
If you do not have a custom_components directory (folder) there, you need to create it.
In the custom_components directory (folder) create a new folder called blueprint.
Download all the files from the custom_components/mitsubishi/ directory (folder) in this repository.
Place the files you downloaded in the new directory (folder) you created.
Restart Home Assistant
Add mitsubishi: to your HA configuration.
I think step 3 is wrong - where it says "blueprint" it should say "mitsubishi"
Also I'm not 100% the mitsubishi: in step 7 is necessary or working? I get the following error on starting hass with it:
[homeassistant.setup] Setup failed for mitsubishi: No setup function defined.
My hass version is 0.101.3
I do however have the whole thing working perfectly, for which I'm very grateful!
Thanks again for your ongoing contributions!
I have a master and sub controller in a ducted configuration.
Temperature is available in both of the controllers which are in different rooms.
Is access to that available via Echonet and, if so, can it be added to the interface?
D
Hello,
Every now and then I get one of my Mitsubishi heapumps stuck in a weird mode and I the integration fails to send anything to the heatpump, and only manages to read the state only from time to time:
2022-02-21 10:08:26 DEBUG (MainThread) [custom_components.echonetlite] pychonet version in use is 2.1.1
2022-02-21 10:08:26 DEBUG (MainThread) [custom_components.echonetlite] 000006010458d50afffea7a149013001 is the UID..
2022-02-21 10:08:26 DEBUG (MainThread) [custom_components.echonetlite] Create new HomeAirConditioner instance at: 192.168.86.75
2022-02-21 10:08:26 DEBUG (MainThread) [custom_components.echonetlite] 000006010458d50afffea7a149013001 is the UID in ECHONET connector..
2022-02-21 10:08:26 DEBUG (MainThread) [custom_components.echonetlite] {'3047791cdc85358f02a45837ebbefa32': [], 'api': <pychonet.echonetapiclient.ECHONETAPIClient object at 0x7fef7c1ed940>} has already been setup..
2022-02-21 10:08:26 DEBUG (MainThread) [custom_components.echonetlite] pychonet version in use is 2.1.1
2022-02-21 10:08:26 DEBUG (MainThread) [custom_components.echonetlite] 000006010458d50afffe9124d4013001 is the UID..
2022-02-21 10:08:26 DEBUG (MainThread) [custom_components.echonetlite] Create new HomeAirConditioner instance at: 192.168.86.82
2022-02-21 10:08:26 DEBUG (MainThread) [custom_components.echonetlite] 000006010458d50afffe9124d4013001 is the UID in ECHONET connector..
2022-02-21 10:08:27 DEBUG (MainThread) [custom_components.echonetlite] ['Off', 'medium-high', 'non-auto', 'not-used', 'central', 'left', 'fan_only', 20, 19, 126, 234600]
2022-02-21 10:08:27 DEBUG (MainThread) [custom_components.echonetlite] Plaform entry data - {'instances': [{'host': '192.168.86.82', 'eojgc': 1, 'eojcc': 48, 'eojci': 1, 'getmap': [128, 160, 176, 129, 161, 130, 131, 163, 179, 164, 133, 165, 134, 136, 137, 138, 154, 139, 187, 157, 158, 190, 143, 159], 'setmap': [128, 129, 143, 147, 160, 161, 163, 164, 165, 176, 179, 208], 'uid': '000006010458d50afffe9124d4013001', 'manufacturer': 'Mitsubishi'}]}
2022-02-21 10:08:27 DEBUG (MainThread) [custom_components.echonetlite.light] Number of light devices to be added: 0
2022-02-21 10:08:33 DEBUG (MainThread) [custom_components.echonetlite.sensor] setting up sensor {'instance': {'host': '192.168.86.82', 'eojgc': 1, 'eojcc': 48, 'eojci': 1, 'getmap': [128, 160, 176, 129, 161, 130, 131, 163, 179, 164, 133, 165, 134, 136, 137, 138, 154, 139, 187, 157, 158, 190, 143, 159], 'setmap': [128, 129, 143, 147, 160, 161, 163, 164, 165, 176, 179, 208], 'uid': '000006010458d50afffe9124d4013001', 'manufacturer': 'Mitsubishi'}, 'echonetlite': <custom_components.echonetlite.ECHONETConnector object at 0x7fef7c1c89d0>}
2022-02-21 10:08:33 DEBUG (MainThread) [custom_components.echonetlite.sensor] update flags for this sensor are [128, 160, 161, 163, 164, 165, 176, 179, 187, 190, 133]
2022-02-21 10:08:33 DEBUG (MainThread) [custom_components.echonetlite.sensor] This is an ECHONET climate device so only a few sensors will be created
2022-02-21 10:08:39 DEBUG (MainThread) [custom_components.echonetlite] [False, False, False, False, False, False, False, False, False, False]
2022-02-21 10:08:39 DEBUG (MainThread) [custom_components.echonetlite] polling ECHONET Instance host 192.168.86.75 timed out - Retry 1 of 3
2022-02-21 10:08:39 DEBUG (MainThread) [custom_components.echonetlite] Number of missed ECHONETLite msssages since reboot is - 2
2022-02-21 10:08:46 DEBUG (MainThread) [custom_components.echonetlite] [False, False, False, False, False, False, False, False, False, False]
2022-02-21 10:08:46 DEBUG (MainThread) [custom_components.echonetlite] polling ECHONET Instance host 192.168.86.75 timed out - Retry 2 of 3
2022-02-21 10:08:46 DEBUG (MainThread) [custom_components.echonetlite] Number of missed ECHONETLite msssages since reboot is - 4
2022-02-21 10:08:52 DEBUG (MainThread) [custom_components.echonetlite] [False, False, False, False, False, False, False, False, False, False]
2022-02-21 10:08:52 DEBUG (MainThread) [custom_components.echonetlite] polling ECHONET Instance host 192.168.86.75 timed out - Retry 3 of 3
2022-02-21 10:08:52 DEBUG (MainThread) [custom_components.echonetlite] Number of missed ECHONETLite msssages since reboot is - 6
2022-02-21 10:08:52 DEBUG (MainThread) [custom_components.echonetlite] Plaform entry data - {'instances': [{'host': '192.168.86.75', 'eojgc': 1, 'eojcc': 48, 'eojci': 1, 'getmap': [128, 160, 176, 129, 161, 130, 131, 163, 179, 164, 133, 165, 134, 136, 137, 138, 154, 139, 187, 157, 158, 190, 143, 159], 'setmap': [128, 129, 143, 147, 160, 161, 163, 164, 165, 176, 179, 208], 'uid': '000006010458d50afffea7a149013001', 'manufacturer': 'Mitsubishi'}]}
2022-02-21 10:08:52 DEBUG (MainThread) [custom_components.echonetlite.sensor] setting up sensor {'instance': {'host': '192.168.86.75', 'eojgc': 1, 'eojcc': 48, 'eojci': 1, 'getmap': [128, 160, 176, 129, 161, 130, 131, 163, 179, 164, 133, 165, 134, 136, 137, 138, 154, 139, 187, 157, 158, 190, 143, 159], 'setmap': [128, 129, 143, 147, 160, 161, 163, 164, 165, 176, 179, 208], 'uid': '000006010458d50afffea7a149013001', 'manufacturer': 'Mitsubishi'}, 'echonetlite': <custom_components.echonetlite.ECHONETConnector object at 0x7fef7c1c86d0>}
2022-02-21 10:08:52 DEBUG (MainThread) [custom_components.echonetlite.sensor] update flags for this sensor are [128, 160, 161, 163, 164, 165, 176, 179, 187, 190, 133]
2022-02-21 10:08:52 DEBUG (MainThread) [custom_components.echonetlite.sensor] This is an ECHONET climate device so only a few sensors will be created
2022-02-21 10:08:52 DEBUG (MainThread) [custom_components.echonetlite.light] Number of light devices to be added: 0
2022-02-21 10:09:27 DEBUG (MainThread) [custom_components.echonetlite] ['Off', 'medium-high', 'non-auto', 'not-used', 'central', 'left', 'fan_only', 20, 19, 126, 234600]
2022-02-21 10:09:58 DEBUG (MainThread) [custom_components.echonetlite] [False, False, False, False, False, False, False, False, False, False]
2022-02-21 10:09:58 DEBUG (MainThread) [custom_components.echonetlite] polling ECHONET Instance host 192.168.86.75 timed out - Retry 1 of 3
2022-02-21 10:09:58 DEBUG (MainThread) [custom_components.echonetlite] Number of missed ECHONETLite msssages since reboot is - 8
2022-02-21 10:10:05 DEBUG (MainThread) [custom_components.echonetlite] [False, False, False, False, False, False, False, False, False, False]
2022-02-21 10:10:05 DEBUG (MainThread) [custom_components.echonetlite] polling ECHONET Instance host 192.168.86.75 timed out - Retry 2 of 3
2022-02-21 10:10:05 DEBUG (MainThread) [custom_components.echonetlite] Number of missed ECHONETLite msssages since reboot is - 10
2022-02-21 10:10:11 DEBUG (MainThread) [custom_components.echonetlite] [False, False, False, False, False, False, False, False, False, False]
2022-02-21 10:10:11 DEBUG (MainThread) [custom_components.echonetlite] polling ECHONET Instance host 192.168.86.75 timed out - Retry 3 of 3
2022-02-21 10:10:11 DEBUG (MainThread) [custom_components.echonetlite] Number of missed ECHONETLite msssages since reboot is - 12
2022-02-21 10:10:27 DEBUG (MainThread) [custom_components.echonetlite] ['Off', 'medium-high', 'non-auto', 'not-used', 'central', 'left', 'fan_only', 20, 19, 126, 234600]
*2022-02-21 10:13:55 DEBUG (MainThread) [custom_components.echonetlite] ['Off', 'auto', 'non-auto', 'not-used', 'upper', 'center', 'heat', 20, 19, 126]
2022-02-21 10:13:55 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity_platform.py", line 735, in _update_entity_states
await asyncio.gather(tasks)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 526, in async_update_ha_state
self._async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 572, in _async_write_ha_state
state = self._stringify_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 545, in _stringify_state
if (state := self.state) is None:
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/sensor/init.py", line 371, in state
value = self.native_value
File "/home/homeassistant/.homeassistant/custom_components/echonetlite/sensor.py", line 145, in native_value
if self._instance._update_data[self._op_code] is None:
KeyError: 133
Hi,
So I'm not really sure this is an Echonet problem...but I'm also not sure where else to begin....it has been working fine for a couple of months (since I last posted) but suddenly in the space of a week I've lost two heat pumps to the 'native' climate integration. Basically the heat pump becomes 'unavailable' in Lovelace and on investigation a second entity is created in HA. First it was my hallway heatpump, now my lounge has done the same.
The original entity was "climate.lounge_heat_pump" provided by "mitsubishi". A new one has now appeared called "climate.lounge_heat_pump_2" but in this case provided by "climate"....you can view it but it is not possible to make any changes to it (e.g. disable it) because of the usual "does not have a unique ID, therefore its settings cannot be managed from the UI".
I don't know why these 'additional' entities get created....but when they do the Mitsubishi Echonet integration can't function.... :-(
I wonder if it is because there is a bug in the integration, or in the newer version of HA (I'm running the latest version of HA Supervised). And, to be honest, I wouldn't have a clue as to where to start debugging this... :-(
In my case
sensor.daikin_living_air_measured_instantaneous_power_consumption
sensor.daikin_living_air_measured_value_of_room_relative_humidity
up two sensor read value is hex. humidity will get value of '2d'. It can not process of HA. So how can i change it to dec value.
While testing #12 when the system is turned off it cannot be turned on by the power button in Home Assistant as highlighted below. If I use the Mitsubishi app the system powers up nicely and its new status shows correctly in Home Assistant. The HA power button will shut down the system without problems so it seems like its only when turning the system on - maybe related to difference between off and standby?
There is a mode on my remote that sets the unit to "quiet" mode, which seems to be separate to low/high fan settings.
https://github.com/futomi/node-echonet-lite/blob/master/EDT-01.md
The above URL shows the following:
Normal/highspeed/silent operation setting
EPC: 0xB2 - Code "3" is "Silent Operation"
Do you have any thoughts on how we could expose "silent"/"quiet" mode to Home Assistant, other integrations like Sensibo already have this functionality.
Just upgraded to the latest release. Many thanks.
Questions:
Are any zone controls available for ducted units in the Echonet protocol?
If so, is there any possibility of adding those?
At some stage we should rewrite the custom_component using the more up to date asynchronous framework.
https://developers.home-assistant.io/docs/en/asyncio_working_with_async.html
I've noticed a few times that the Buy attribute goes very negative on my system for a short period. It doesn't happen very often, maybe once a week. For example today it went to over -5,000 KWh at around, but not exactly, 7am for a couple of minutes. Normally this value goes from 0 upwards.
This throws off the HA energy calculation, so my self consumes use today is 68,190 % Nice!
However, I'm guessing Buy should never really go negative :-), so any suggestions on the best way of filtering this out in some way appreciated.
Not sure how easy it is but could I ask if this is a possibility.
An example of the type of device Sharp KI-HS70
Thanks as always.
Thank you for developing echonetlite_homeassistant,
I am using it for my Panasonic CS-288CX2 and it's working fine.
But there are an isue that the target temp changes to -3 degrees while the air conditioner is off.
How does it be fiexed? This issue seems quite similar to #58.
Thank you.
Great, great, great and GREAT work on this!
Thank you so much.
Any chance you will get it added to HACS?
๐
I understand this was written specifically for the MAC-568IF-E module, and it works for really well for the 2 units I have already. I recently had a new heat pump installed, and it came with a MAC-578IF2-E module and I can't seem to add it to HA. I get an error when trying to add the device (I do struggle putting the details in as for some reason the fields when adding a new Echonet Lite integration have no headings etc so I am guessing what to put in, have tried IP address then description and vice versa), but I'm not sure what the error is as again it has no text.
I'd be more than happy to help troubleshoot this if this is something you would like to look at. I'm not a programmer by any means but if guided I can dig out logs, try things etc if that helps.
As suggested by @DickSwart, the custom component should be able to be imported through Hacs (Home Assistant Community Store). https://hacs.netlify.com
Hey Scott,
I have been getting really odd slow random slow loading across my HA instance for the past week or so where occasionally loading any HA page was very slow (a few seconds). This was happening on my local network and I discovered this seemed to be happening to ANY file/request served by HA (for example https://[LocalIP]/manifest.json which is a super basic manifest file)
I managed to isolate this to changes I made to add the sensor platform to get indoor/outdoor temperatures for my units (6 internal units connected x 2 calls for indoor and outdoor temp) which was on top of my existing 6 devices for climate - this was therefore potentially hitting the network 36 times for each update (every 1 minute I think).
That number of hits isn't too bad (but I think we can reduce it down to 6 by pulling back the outdoor temp on the update method and by sharing the api object between a climate and sensor object at initialization time - but that's a suggestion I'm happy to help with for a later date).
I've done a bit of digging and I think the async changes #7 you made aren't correct.. but I'm not an HA expert so before suggesting a PR thought I'd discuss that with you. From what I can tell, you've changed to use the async methods but the api calls inside update() are synchronous/blocking i/o calls - and I think HA just has the one main event thread between the web server and the calling of the aysnc update method. If you read the async docs I think they suggest you should either stick with the non async methods, or you need to wrap any synchronous methods inside update() with the following syntax:
result = await hass.async_add_executor_job(hub.update).
There is another forum question/answer along these lines here also
So in short, I think the HA instance was basically frozen for a few seconds every time the update call happened. You can see this by adding a few incorrect climate entries by ip address to your config then refresh https://[LocalIP]/manifest.json over and over again and you will see it slow down every minute for a couple of seconds.
HA seems to imply that the async methods are newer/better so without having to rewrite your econet library to be async as well I think this can be solved as simply as awaiting the api.update() call.
Let me know your thoughts and I'm happy to help with a PR if you agree!
IS there a way for the integration to provide energy usage to the new Energy Monitoring in HA?
Hey,
I constantly get
Logger: custom_components.mitsubishi.sensor
Source: custom_components/mitsubishi/sensor.py:89
Integration: mitsubishi (documentation)
First occurred: 6:26:02 PM (48 occurrences)
Last logged: 6:38:09 PM
HA requested an update from HVAC 192.168.178.41 but no data was received
I can hange the modes/temps by using the climate controls but it will never update on the climate card.
By running the python only script I get no such disconnections ever even if spammed
Group: Air conditioner-related device group
Code: Home air conditioner
Instance: 1
ECHONET lite node discovered at 192.168.178.41 - Home air conditioner class
{'status': 'On'}
19
heat
medium-high
19
{'identification_number': '000006010458d50afffeab687f013001'}
Also is there a way to change the min/max temps you can set? As my units minimum is 19c and the entity customization doesn't save since it doesn't have a unique id I believe
Heatpump model: PEAD - M71JAA(D) ducted ac
Wifi card: mac568
Echonetlite: On
I've managed to get my Solar System added, which include two entities - Solar power generation and power distribution, but all values are showing in hex.
I was wondering if this could be fixed to display the correct units.
I also wanted to say thank you so much for your continuing work on this project, I posted on the home assistant board asking you to continue the work, and I'm so thankful that you have developed this to encompass more than just air conditioners.
hey Scott- Long time Mitsubishi user, super happy with what you've done!
Just doing a re-install, and found there is an error somewhere in the minimum version required for HACS to maintain.
specific error:
You are running Home Assistant version '2021.9.2', but this repository requires minimum version 'core-2021.7.2' to be installed.
I'll do it manually but any chance you could update this so I can easily keep up with any changes?
Good morning,
I have renamed the repo this morning as it is no longer just Mitsubishi centric and can be used by all kinds of ECHONETLite devices. Unfortunately publishing to HACS has become more strict these days so I am just working through the various pull requests to get this sorted out
Hey @scottyphillips
FYI I'm planning to implement these small changes in a PR soonish to let the temperature sensors work for long term stats :)
https://developers.home-assistant.io/docs/core/entity/sensor/#long-term-statistics
Hi,
I'm getting no devices and the following logs on loading 2.1.5:
Logger: homeassistant.components.climate
Source: custom_components/mitsubishi/climate.py:68
Integration: Climate (documentation, issues)
First occurred: 8:26:33 PM (5 occurrences)
Last logged: 8:26:33 PM
Error while setting up mitsubishi platform for climate
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 250, in _async_setup_platform
await asyncio.shield(task)
File "/config/custom_components/mitsubishi/climate.py", line 47, in async_setup_platform
entities.append(MitsubishiClimate(config.get(CONF_NAME),
File "/config/custom_components/mitsubishi/climate.py", line 68, in __init__
self._uid = echonet_hvac.getIdentificationNumber()["identification_number"]
AttributeError: 'HomeAirConditioner' object has no attribute 'getIdentificationNumber'
I have AP series heat pumps.
Not sure if it's relevant, but if I look at my graphs I see occasional instances where all the values drop to 0:
No errors in the logs and "Measured value of room temperature" seems to retain the correct value. Seems extra odd that target temp is also going to 0.
This is on your previous test branch (2.2), updating to the latest now, didn't see any issues about this so thought i'd post this in case it's not something fixed already.
Aside from that I can report everything has been running well on a ducted unit PEAD-M125JAA(D). Would be nice to control the lossnay + bypass one day, I suspect that isn't possible, unless some other regions app can do it.
Integration is working as expected with Sharp AC
Only Issue is that the integration does not create additional sensors etc after first added devices. (Only first added device sensors are created)
Thanks for all your hard work!
Not sure where it grabs this from but the description that shows up when searching this in HACS is old:
ECHONETLite Platform
A Home Assistant custom component for use with ECHONET enabled Mitsubishi HVAC systems.
It should probably be something like
ECHONETLite Platform
A Home Assistant custom component for use with ECHONET enabled devices such as Mitsubishi HVAC systems and more.
Hi Scotty
Loving this, as I also could not get Jethro's docker implementation to work (doesn't detect my system/echonetlite).
Would you please be able to add support for Zone control? My home has three zones that I'd like to be able to control independently (as is currently possible through the mobile app).
Thanks
Aaron
Is it easy to support Air Purifiers? e.g Sharp KI-JS70 - Air Purifier.
No drama if not and Coffee is definitely coming your way!
Thanks again
I couldn't see any reference to zone control commands in the specification. Have you looked into this?
Edit: I looked through the Echolite specification for homeairconditioner ( https://echonet.jp/wp/wp-content/uploads/pdf/General/Standard/Release/Release_F_en/SpecAppendixF_e.pdf ) and there doesn't seem to be any setting for this. But it is implemented in the Mitsubishi app so that seems strange?
As a user, I want the aircon to return to the previous settings when I send a turn on request, because I usually don't change the settings during a season.
First up - great work and thanks for solving a big problem for me!
Note my primary use case is Siri voice control via HomeKit.
Prior to adding this to HA, my IR remote would be set at a particular temperature, and either in heating or cooling mode. This means every time I turn the split on it would go back to the same temperature, mode (auto/heat/cool/dry) and fan selection as it was before.
Currently when the command is sent to just turn the unit "on", temperature is remembered and so was the previous fan setting - but the mode goes to "auto" (when it was previously cooling or heating)
What I would like is an option where the unit powers back to its previous setting. For example if it was set to cooling when it was turned off, it would return to that when turned on.
Hi,
New version breaks my integration for outside temperature on my heat pumps (models SLZ-KF25VA3, SLZ-KF35VA3, and SLZ-KF50VA3). Inside temperature reading and controls still appear to function.
Will roll back to the previous version as that's my only outside temp sensor for now. Can re-test if on new release if that helps.
Kind regards,
CP.
Not really an issue, but wanted to let you know that it works with my new 10Kw ducted system beautifully.
I too am in Australia, and can't access MELCloud, so went on the hunt for something that would work with the wifi controller directly, and I found this.
Thanks for you work - it works really well, and in my opinion is better than the MELCloud integration anyway - this uses local control and is not cloud polling, so all the better.
We have an existing floor mounted MFZ-KJ60E which works very nicely. Recently added the MFZ-KW42 and whilst it works perfectly, the room temperature reported when its off is 126d C. Any clues as to how to fix this?
`/config/custom_components/mitsubishi/climate.py:85: SyntaxWarning: "is" with a literal. Did you mean "=="?
self._on = True if data['status'] is 'On' else False
/config/custom_components/mitsubishi/climate.py:89: SyntaxWarning: "is" with a literal. Did you mean "=="?
if data['status'] is 'On':
/config/custom_components/mitsubishi/climate.py:128: SyntaxWarning: "is" with a literal. Did you mean "=="?
self._hvac_mode = self._api.mode if self._api.status is 'On' else 'off'
/config/custom_components/mitsubishi/climate.py:134: SyntaxWarning: "is" with a literal. Did you mean "=="?
self._on = True if self._api.status is 'On' else False`
After updating HAS to 0.110 I now see the below warning in the log
2020-05-25 06:55:10 WARNING (MainThread) [homeassistant.components.climate] ClimateDevice is deprecated, modify MitsubishiClimate to extend ClimateEntity
I would like to resolve my heat pump by domain rather than having to know its ip. It works in HA with IP but not with the domain
Is this able to be supported?
I tried using the pychonet example to debug though did not get any useful output
Running home assistant in a docker container
Below are the pings from inside the container so it can communicate with both and resolve the office-heatpump.localdomain
bash-5.1# ping office-heatpump.localdomain
PING office-heatpump.localdomain (192.168.20.37): 56 data bytes
64 bytes from 192.168.20.37: seq=0 ttl=255 time=1.745 ms
64 bytes from 192.168.20.37: seq=1 ttl=255 time=6.058 ms
^C
--- office-heatpump.localdomain ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 1.745/3.901/6.058 ms
bash-5.1# ping 192.168.20.37
PING 192.168.20.37 (192.168.20.37): 56 data bytes
64 bytes from 192.168.20.37: seq=0 ttl=255 time=1.560 ms
64 bytes from 192.168.20.37: seq=1 ttl=255 time=10.060 ms
64 bytes from 192.168.20.37: seq=2 ttl=255 time=2.088 ms
^C
--- 192.168.20.37 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 1.560/4.569/10.060 ms
Hi,
Love the ability to set max/min temps! :-)
Is it possible to increase the scale range? Max for example is 25-35C...but I don't want anyone to set the heaters higher than 22C as 25C is already too hot in our house...let alone 35C...I can't even imagine that!
Could also swap sliders for explicit values?
Keep up the good work, your integration rocks!
CP.
Updated to latest HASS 2021.5.0 and now I cannot turn on my AirCon.
Have reinstalled the add on via HACS and now using version 2.0.1.
Here is the error log from HASS:
`
Logger: homeassistant.components.websocket_api.http.connection
Source: custom_components/mitsubishi/climate.py:232
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 11:24:11 AM (3 occurrences)
Last logged: 11:24:44 AM
[140540403953328] 'MitsubishiClimate' object has no attribute '_on'
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 167, in handle_call_service
await hass.services.async_call(
File "/usr/src/homeassistant/homeassistant/core.py", line 1481, in async_call
task.result()
File "/usr/src/homeassistant/homeassistant/core.py", line 1516, in _execute_service
await handler.job.target(service_call)
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 213, in handle_service
await self.hass.helpers.service.entity_service_call(
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 658, in entity_service_call
future.result() # pop exception if have
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 726, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 695, in _handle_entity_call
await result
File "/config/custom_components/mitsubishi/climate.py", line 232, in async_set_hvac_mode
if self._on == False:
AttributeError: 'MitsubishiClimate' object has no attribute '_on'
`
When my Mitsubishi PEA-M100HAA is in auto mode, the integration reports the operating mode as off.
I really appreciate the work you have done here - and I have it working nicely with the MSZ-FH50VE heat pump.
Just an observation:
When the heat pump is off the outside temperature sensor is also off but the integration is reporting 126C, would be good if you could incorporate some filtering and have it return NULL or Nothing instead.
I'm new to GitHub so hopefully this is the right place for my comment.
Cheers,
Francis
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.