hillaliy / homebridge-midea-air

Homebridge plugin for Midea units
MIT License
71 stars 23 forks source link

Inventor Air Conditioning Units - They work, I get characteristic errors, they do not show proper state constantly #105

Closed gbougiakas closed 1 year ago

gbougiakas commented 1 year ago

Hello and thanks for all your effort.

I have 2 inventor air conditioning units at home. They work fine through the Inventor InvMate II App.

Plugin detected them fine (it even picked up their names from the official app).

First I tried adding the device id but I cannot find it neither in the home bridge logs nor in the HomeKit app. Is it he serial number?

The warnings I get are like these:

12/2/2022, 9:24:49 PM] [homebridge-midea-air] This plugin generated a warning from the characteristic 'Current Heater-Cooler State': characteristic value expected valid finite number and received "undefined" (undefined). See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:24:54 PM] [homebridge-midea-air] This plugin generated a warning from the characteristic 'Current Heater-Cooler State': characteristic value expected valid finite number and received "undefined" (undefined). See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:24:59 PM] [homebridge-midea-air] This plugin generated a warning from the characteristic 'Current Heater-Cooler State': characteristic value expected valid finite number and received "undefined" (undefined). See https://homebridge.io/w/JtMGR for more info.

The weird thing is that commands get sent fine (mode, temperature, on-off) and sometimes correct temperature is reported (with yellow colour for heating, blue for cooling) and without touching anything it changes to black and 29, 30 or 0 degrees. Then after sometime it picks up the correct values again.

Have I misconfigured something? Do I need to find the deviceId somehow? Do you care for more detailed longer logs?

Best regards and again many thanks.

George

gbougiakas commented 1 year ago

I just figured out that the ids from the logs, added them to config. Restarted home bridge and this is when plugin initialises

[12/2/2022, 9:36:08 PM] [midea-air] Created device: office, with ID: 17592186075594, and type: 172 [12/2/2022, 9:36:08 PM] [midea-air] Created device: living room, with ID: 17592186075588, and type: 172 [12/2/2022, 9:36:08 PM] [midea-air] Created device: office, with ID: 17592186075594, and type: 172 [12/2/2022, 9:36:08 PM] [midea-air] Created device: living room, with ID: 17592186075588, and type: 172

and after that I get these errors

[12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Heating Threshold Temperature': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Cooling Threshold Temperature': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Target Heater-Cooler State': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Rotation Speed': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Temperature Display Units': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Swing Mode': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Current Temperature': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Current Heater-Cooler State': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Active': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Current Temperature': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Target Heater-Cooler State': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Temperature Display Units': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Active': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Heating Threshold Temperature': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Current Heater-Cooler State': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Swing Mode': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Cooling Threshold Temperature': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info. [12/2/2022, 9:36:17 PM] [homebridge-midea-air] This plugin threw an error from the characteristic 'Rotation Speed': Unhandled error thrown inside read handler for characteristic: This callback function has already been called by someone else; it can only be called one time.. See https://homebridge.io/w/JtMGR for more info.

hillaliy commented 1 year ago

Can you check the WiFi dongle version? And write the AC model.

gbougiakas commented 1 year ago

Will do as soon as I get home tomorrow. Thanks.

gbougiakas commented 1 year ago

Hello,

AC Unit Model is : Inventor Omnia O1MV1 WiFi Dongle is : OSK102

Again, thanks.

hillaliy commented 1 year ago

OSK102 is fully supported. According to your log, the plugin can't reach your devices. Check network, try to disconnect & reconnect the AC from electric.

gbougiakas commented 1 year ago

Hi,

It’s not network issues, I unplugged and replugged the AC units a couple of times. I can always ping them, I even left ping plotter pinging them non-stop overnight with zero packet loss.

I can operate the AC from HomeKit just fine, the only thing that is an issue is the inaccurate temperature reporting. Sometimes they show up fine (correct temperature, orange font because AC is in heating mode, then after a couple of seconds incorrect temperature is being reported with black font. These two states keep change every couple of seconds/minutes).

One more thing is that whatever command I sent I get a double beep feedback (while using the AC remote controller I get a single one).

Plugin is working fine for my basic needs. I can attach whatever information should you want to investigate/debug more.

Best Regards and once again, many thanks.

George

On 7 Dec 2022, at 10:06, Yossi Hillali @.***> wrote:

OSK102 is fully supported. According to your log, the plugin can't reach your devices. Check network, try to disconnect & reconnect the AC from electric.

— Reply to this email directly, view it on GitHub https://github.com/hillaliy/homebridge-midea-air/issues/105#issuecomment-1340552460, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA5RYHPTD6QLDOPABGTSWB3WMBAOZANCNFSM6AAAAAASSHJL6E. You are receiving this because you authored the thread.

hillaliy commented 1 year ago

Turn Homebridge debug mode and sand logs with AC status

gbougiakas commented 1 year ago

Hello again,

with HB in debug mode I fiddled around with my 2 AC units until the issue appeared. I hope the logs will be helpful.

https://1drv.ms/u/s!AjAW_PRLDc6xlTh7g7YwXG-fMDXH?e=Vozvfk

You need to copy paste the URL.

Regards and thanks.

hillaliy commented 1 year ago

The URL just take me to Microsoft OneDrive, just send a TXT file. and why do you need to fiddled around to make the issue appeared?

gbougiakas commented 1 year ago

Hi, it’s just a zipped text file in my OneDrive. Here is another link from my Dropbox.

https://www.dropbox.com/s/7t8vnxe1wk5ma4u/homebridge-log.zip?dl=0

I am fiddling around with the 2 AC units (meaning turning them on and off from HomeKit) in order to make the issue appear? It does appear even without fiddling.

Screenshot 2022-12-09 at 10 55 21

This is from right now. Both AC units are off. Temperature in the house should be around 18-20 degrees. One AC is showing up as zero degrees the other one as 25,5 both of them are incorrect.

Regards,

George

On 9 Dec 2022, at 07:21, Yossi Hillali @.***> wrote:

The URL just take me to Microsoft OneDrive, just send a TXT file. and why do you need to fiddled around to make the issue appeared?

— Reply to this email directly, view it on GitHub https://github.com/hillaliy/homebridge-midea-air/issues/105#issuecomment-1343866933, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA5RYHM3UGZWNQ3GCQWRD7LWMK6UPANCNFSM6AAAAAASSHJL6E. You are receiving this because you authored the thread.

hillaliy commented 1 year ago

Something with your system is not right.

gbougiakas commented 1 year ago

My homebridge setup is at the latest version, there are 7-8 plugins on it, for Lifx, for ewelink, for tuya, for broadlink, etc. All of them work perfectly fine for years now, exposing the accessories to HomeKit. Using them through HomeKit works fine, automation works fine.

The only plugin that reports errors is this one. I have done all you have asked from my side, it's okay if you don't want to furtherly debug. I am already thankful enough that you created this in the first place. Main functionality works, I am fine with incorrect/inconsistent temperatures reporting.

Thanks :)

gbougiakas commented 1 year ago

Just something that came into mind, some of the errors are like this:

This callback function has already been called by someone else; it can only be called one time.

Maybe the official Inventor app that I have on my iPhone is making calls as well and this is disallowed?

Or maybe these errors come up because I have 2 identical AC units?

I will log out from it and see how things are performing.

hillaliy commented 1 year ago

Try not to use the official app and Homebridge at the sametime. close the official app, restart homebridge and don't use the official app and see if it still happened.

gbougiakas commented 1 year ago

Hi,

I did since this morning. Same issue. If you look at the video below (screen capture) of my home app

https://www.dropbox.com/s/3gdl3ph654w6dur/Screen%20Recording%202022-12-09%20at%2016.07.24.mov?dl=0

You can see that when the app opens and queries homebridge and eventually the plugin it gets the correct status and temperatures (20 degrees) and after a couple of seconds one AC unit goes to 0 and the other one to 25. I think this is the moment the multiple requests are happening and the errors occur.

Something else that I need to mention is that in the config of the plugin I have added both AC units like this

"devices": [
        {
            "deviceId": "DeviceID1",
            "supportedSwingMode": "Both",
            "temperatureSteps": 1,
            "minTemp": 17,
            "maxTemp": 30,
            "fanOnlyMode": false,
            "OutdoorTemperature": false,
            "useFahrenheit": false,
            "audibleFeedback": false
        },
        {
            "deviceId": "DeviceID2",
            "supportedSwingMode": "Both",
            "temperatureSteps": 1,
            "minTemp": 17,
            "maxTemp": 30,
            "fanOnlyMode": false,
            "OutdoorTemperature": false,
            "useFahrenheit": false,
            "audibleFeedback": false
        }]

Should I have them like this? Or one entry is enough? Maybe this is causing the issues?

Regards

On 9 Dec 2022, at 15:58, Yossi Hillali @.***> wrote:

Try not to use the official app and Homebridge at the sametime. close the official app, restart homebridge and don't use the official app and see if it still happened.

— Reply to this email directly, view it on GitHub https://github.com/hillaliy/homebridge-midea-air/issues/105#issuecomment-1344340470, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA5RYHISTZF2PVPVOTZT5R3WMM3INANCNFSM6AAAAAASSHJL6E. You are receiving this because you authored the thread.

hillaliy commented 1 year ago

Your configuration is OK. Each device need his own parameters. I'm really don't know what is the problem.

gbougiakas commented 1 year ago

It's okay mate thanks for the help and your time.

I will try to unplug one AC from power and have a single entry in the config and see if I still get the errors.

hillaliy commented 1 year ago

If you want you can let me take control on your devices. I'll try to find the problem

hillaliy commented 1 year ago

There is a channel on discord. send me private message with the details

gbougiakas commented 1 year ago

The Homebridge Discord server from the home page of this plugin?

Just joined, what's your username there? Mine is snolly#4010

hillaliy commented 1 year ago

The problem was with the user account, after creating a user account the problem was solved