ekutner / home-connect-hass

Alternative (and improved) Home Connect integration for Home Assistant
MIT License
554 stars 55 forks source link

Dishwasher not updating status since last firmware update #406

Open jfmiguel opened 1 month ago

jfmiguel commented 1 month ago

Device: Balay 3VF6330DA Dishwasher

For a couple of weeks the dishwasher information is not getting updated automatically on home assistant. A few days after it started happening I checked the Home Connect app and it had a notification mentioning a firmware update some days before.

The only way I'm getting updates on HA now is by doing manual refreshes through the Home Connect Refresh control

I'v notice these 2 errors on the logs... maybe they changed some message format...

2024-08-11 10:16:17.110 ERROR (MainThread) [custom_components.home_connect_alt.button] { "global": { "api_host": "https://api.home-connect.com" }, "f7072073f67a01783593903d1e08068b": { "language": "en-GB", "translation_mode": "local", "delayed_ops": "default", "name_template": "$brand $appliance - $name", "sse_timeout": 15, "appliance_settings": {}, "entity_settings": { "BSH.Common.Option.FinishInRelative": { "type": "DelayedOperation", "unit": null, "class": "home_connect_alttimespan" }, "BSH.Common.Option.StartInRelative": { "type": "DelayedOperation", "unit": null, "class": "home_connect_alttimespan" }, "BSH.Common.Option.ElapsedProgramTime": { "unit": null, "class": "home_connect_alttimespan" }, "BSH.Common.Option.EstimatedTotalProgramTime": { "unit": null, "class": "home_connect_alttimespan" }, "BSH.Common.Option.RemainingProgramTime": { "unit": null, "class": "timestamp" }, "BSH.Common.Status.DoorState": { "type": "Boolean", "class": "door", "icon": null, "on_state": "BSH.Common.EnumType.DoorState.Open" }, "Refrigeration.Common.Status.Door.Freezer": { "type": "Boolean", "class": "door", "icon": null, "on_state": "Refrigeration.Common.EnumType.Door.States.Open" }, "Refrigeration.Common.Status.Door.Refrigerator": { "type": "Boolean", "class": "door", "icon": null, "on_state": "Refrigeration.Common.EnumType.Door.States.Open" }, "Connected": { "class": "connectivity" } }, "log_mode": 0, "primary_config_entry": true, "homeconnect": "", "services": "", "auth": "" } } 2024-08-11 10:16:17.118 ERROR (MainThread) [custom_components.home_connect_alt.button] { "appliances": { "011100729721000660": { "name": "M\u00e1quina de lavar loi\u00e7a", "brand": "Balay", "vib": "3VF6330DA", "connected": true, "type": "Dishwasher", "enumber": "3VF6330DA/13", "haId": "011100729721000660", "uri": "/api/homeappliances/011100729721000660", "available_programs": { "Dishcare.Dishwasher.Program.Intensiv70": { "key": "Dishcare.Dishwasher.Program.Intensiv70", "name": "Intensive 70\u00b0C", "options": null, "execution": "selectandstart", "active": false }, "Dishcare.Dishwasher.Program.Auto2": { "key": "Dishcare.Dishwasher.Program.Auto2", "name": "Auto 45-65\u00b0", "options": { "BSH.Common.Option.StartInRelative": { "key": "BSH.Common.Option.StartInRelative", "value": null, "type": "Int", "name": "Start time", "unit": "seconds", "displayvalue": null, "min": 0, "max": 86400, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": null, "default": null, "access": null }, "Dishcare.Dishwasher.Option.ExtraDry": { "key": "Dishcare.Dishwasher.Option.ExtraDry", "value": null, "type": "Boolean", "name": "+seco", "unit": null, "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": true, "default": false, "access": null }, "Dishcare.Dishwasher.Option.HalfLoad": { "key": "Dishcare.Dishwasher.Option.HalfLoad", "value": null, "type": "Boolean", "name": "Media carga", "unit": null, "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": true, "default": false, "access": null }, "Dishcare.Dishwasher.Option.VarioSpeedPlus": { "key": "Dishcare.Dishwasher.Option.VarioSpeedPlus", "value": null, "type": "Boolean", "name": "varioSpeed Plus", "unit": null, "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": true, "default": false, "access": null } }, "execution": "selectandstart", "active": false }, "Dishcare.Dishwasher.Program.Eco50": { "key": "Dishcare.Dishwasher.Program.Eco50", "name": "Eco 50\u00b0", "options": null, "execution": "selectandstart", "active": false }, "Dishcare.Dishwasher.Program.Quick45": { "key": "Dishcare.Dishwasher.Program.Quick45", "name": "R\u00e1pido 45\u00b0", "options": null, "execution": "selectandstart", "active": false }, "Dishcare.Dishwasher.Program.PreRinse": { "key": "Dishcare.Dishwasher.Program.PreRinse", "name": "Pre-rinse", "options": null, "execution": "selectandstart", "active": false }, "Dishcare.Dishwasher.Program.Quick65": { "key": "Dishcare.Dishwasher.Program.Quick65", "name": "1 hora", "options": null, "execution": "selectandstart", "active": false }, "Dishcare.Dishwasher.Program.MachineCare": { "key": "Dishcare.Dishwasher.Program.MachineCare", "name": "Limpieza Limpeza", "options": null, "execution": "selectandstart", "active": false } }, "active_program": null, "selected_program": { "key": "Dishcare.Dishwasher.Program.Auto2", "name": "Auto 45-65\u00b0", "options": { "BSH.Common.Option.StartInRelative": { "key": "BSH.Common.Option.StartInRelative", "value": 0, "type": null, "name": "Start time", "unit": "seconds", "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": null, "default": null, "access": null }, "Dishcare.Dishwasher.Option.ExtraDry": { "key": "Dishcare.Dishwasher.Option.ExtraDry", "value": false, "type": null, "name": "+seco", "unit": null, "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": null, "default": null, "access": null }, "Dishcare.Dishwasher.Option.HalfLoad": { "key": "Dishcare.Dishwasher.Option.HalfLoad", "value": false, "type": null, "name": "Media carga", "unit": null, "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": null, "default": null, "access": null }, "Dishcare.Dishwasher.Option.VarioSpeedPlus": { "key": "Dishcare.Dishwasher.Option.VarioSpeedPlus", "value": false, "type": null, "name": "varioSpeed Plus", "unit": null, "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": null, "default": null, "access": null }, "Dishcare.Dishwasher.Option.SilenceOnDemand": { "key": "Dishcare.Dishwasher.Option.SilenceOnDemand", "value": false, "type": null, "name": "Quiet now", "unit": null, "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": null, "default": null, "access": null }, "BSH.Common.Option.RemainingProgramTime": { "key": "BSH.Common.Option.RemainingProgramTime", "value": 180, "type": null, "name": "Remaining programme running time", "unit": "seconds", "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": null, "default": null, "access": null }, "BSH.Common.Option.RemainingProgramTimeIsEstimated": { "key": "BSH.Common.Option.RemainingProgramTimeIsEstimated", "value": true, "type": null, "name": "Estimated remaining programme time", "unit": null, "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": null, "default": null, "access": null }, "BSH.Common.Option.EnergyForecast": { "key": "BSH.Common.Option.EnergyForecast", "value": 65, "type": null, "name": "Energy", "unit": "%", "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": null, "default": null, "access": null }, "BSH.Common.Option.WaterForecast": { "key": "BSH.Common.Option.WaterForecast", "value": 54, "type": null, "name": "Water", "unit": "%", "displayvalue": null, "min": null, "max": null, "stepsize": null, "allowedvalues": null, "allowedvaluesdisplay": null, "execution": null, "liveupdate": null, "default": null, "access": null } }, "execution": null, "active": false }, "status": { "BSH.Common.Status.RemoteControlStartAllowed": { "key": "BSH.Common.Status.RemoteControlStartAllowed", "value": true, "name": "Remote Start", "displayvalue": null, "unit": null }, "BSH.Common.Status.RemoteControlActive": { "key": "BSH.Common.Status.RemoteControlActive", "value": true, "name": "Remote Control", "displayvalue": null, "unit": null }, "BSH.Common.Status.DoorState": { "key": "BSH.Common.Status.DoorState", "value": "BSH.Common.EnumType.DoorState.Closed", "name": "Door", "displayvalue": "Closed", "unit": null }, "BSH.Common.Status.OperationState": { "key": "BSH.Common.Status.OperationState", "value": "BSH.Common.EnumType.OperationState.Ready", "name": "Operation state", "displayvalue": "Ready", "unit": null } }, "settings": { "BSH.Common.Setting.PowerState": { "key": "BSH.Common.Setting.PowerState", "value": "BSH.Common.EnumType.PowerState.Off", "type": "BSH.Common.EnumType.PowerState", "name": "Power status", "unit": null, "displayvalue": "Off", "min": null, "max": null, "stepsize": null, "allowedvalues": [ "BSH.Common.EnumType.PowerState.Off", "BSH.Common.EnumType.PowerState.On" ], "allowedvaluesdisplay": [ "Off", "On" ], "execution": null, "liveupdate": null, "default": null, "access": "readWrite" } }, "commands": { "BSH.Common.Command.AcknowledgeEvent": { "key": "BSH.Common.Command.AcknowledgeEvent", "name": "OK" } }, "startonly_options": null, "startonly_program": null, "_active_program_fail_count": 0 } }, "_disabled_appliances": [], "_sse_timeout": 15 }

JamesSnaps commented 1 month ago

Seeing this same thing. Mine became unavailable as of yesterday morning and I also noticed an “important” firmware update had been applied in the Home Connect app. Dishwasher still connected and responsive in the official app, but everything shows unavailable in Home Assistant. I’ve tried removing the integration and application credentials and signing back in but it only adds the service, not the dishwasher like it would do before. Having said that, I’m seeing the same thing in the Home Connect core integration too.

3bs1 commented 1 month ago

I only setup the integration today and can confirm the same behavior. After checking the notifications of my dishwasher in the official home connect app, there eas also a recent urgend firmware update, installed automatically.

If I do a reload of the integration it updates all the values correctly. But the it stays like this without an update of e.g. open/close door

ekutner commented 1 month ago

Please enable debug logging and attach the log file

3bs1 commented 4 weeks ago

error_log-3.log

Sorry forgot, here the log file, set the verbose of the integration to the highest level

NatnekNL commented 3 weeks ago

I've got the same issue, worked like a charm for months and suddenly my automations stopped working. After checking the Homeconnect app I noticed the firmware update installed. Disabled future updates for now.

ekutner commented 3 weeks ago

thanks @3bs1 I'm not sure what exactly is going on. You log starts at 10:00 but the first home_connect_alt entries are from 15:03. Was the integration not added to HA until that time? Then the integration is reloaded at 15:06, did you use the Reload action or changed any options? The last entry in the log is "Connecting to SSE stream", I need to see what happens after that.

Current suspicion is that you are not receiving events from Home Connect because I don't see the log entries I'm expecting between 15:03 and 15:06. It's worth trying to create a new app in the Home Connect developers portal and using that instead of your current app.

3bs1 commented 3 weeks ago

You are right, i have added the integration at 15:03 the first time. The reload I did manually, to see if it helps. I noticed after the reload it fetches the status of the entities once. E.g. open the door shows that it opens, when closing it again it remains as "open"

Now i have createed a new app in the BSH dev portal. Removed the old one. Removed also the old instance of the integration and created a new one.

Then i started the debug log, opened the door and turned on the dishwasher but it did not update the door status.

I realized that when i activate the power-on switch inside homeassistant, it turns on, but the button jumps to "off" mode, like it did not get a callback that it is turned on. But the dishwasher stays on error_log-4.log

https://github.com/user-attachments/assets/2bd6e5e3-690e-43ad-86c1-e5ce7275266f

matt0020190 commented 3 weeks ago

Seeing this same thing. Mine became unavailable as of yesterday morning and I also noticed an “important” firmware update had been applied in the Home Connect app. Dishwasher still connected and responsive in the official app, but everything shows unavailable in Home Assistant. I’ve tried removing the integration and application credentials and signing back in but it only adds the service, not the dishwasher like it would do before. Having said that, I’m seeing the same thing in the Home Connect core integration too.

Same issue my end too - both Home Connect app and this Home Connect alt app are affected. Dishwasher now become unavailable alongside my coffee machine.

ctournayre commented 3 weeks ago

Same here, all was working like a charm for my Dishwasher for months and now all became "anavailable" (still working in official app)

CptKalibak commented 1 week ago

Hi all, just wanted to add that i have the same issue. I actually forgot about the FW update and remered it when it was mentioned here. Here my Home Assistant Log in case it helps:

Logger: homeconnect.sseclient Source: /usr/local/lib/python3.12/site-packages/homeconnect/sseclient.py:90 First occurred: August 27, 2024 at 10:11:30 AM (19 occurrences) Last logged: 10:11:36 AM

Exception while reading event: Traceback (most recent call last): File "/usr/local/lib/python3.12/site-packages/homeconnect/sseclient.py", line 82, in next next_chunk = next(self.resp_iterator) ^^^^^^^^^^^^^^^^^^^^^^^^ StopIteration

gunarser commented 1 week ago

I also have the issue with my Bosch dishwasher - after update it cannot be accessed via HA.

ctournayre commented 1 week ago

For me all is working back till yesterday 🤷‍♂️. I didn't do something special.

Regards

gunarser commented 1 week ago

For some reason HomeConnect app today could not connect to the dishwasher. Removed the device, reset it and added again to the app. Now everything is back to normal also in HA. But it looks like the update has broken something as this is not the first time when I have to reset the dishwasher.

ekutner commented 3 days ago

If anyone still has these issues I suggest trying to disconnect and reconnect the appliances from the HC service, as @gunarser has done. The only log I see is from @3bs1 and that doesn't have all the required information. The debug log should be enabled and then HA should be restarted to capture the initialization process of the integration.