Electrolux / AEG connected appliances integration anyone?

Integration works great for my washing machine and dryer, but it would be even better if the start button which is available in the app can also be used here to start the programs remotely

Hi, after integration installation I cannot find any entity related to electrolux integration. Is it normal behaviour? Should I create entity by my own?

@correct_horse , could You update HA integration to v1.11.0, and check Your fridge temp values?

I just got this connected very easily here in Australia
I only have a fridge

Im not sure if it’s possible to get water filter status and air filter status??

Upgraded to the latest version and now the buttons are added! Already tested and working. Cool!
Thanks for the great work!

Thank you Mauro,

My AEG its now integrated: model L9WEC163C . I will have to check sensors and functions, but looks well:

I tried to integrato my steam oven and microwave/oven combi appliance but its not working for me somehow, here is my logs.

2022-05-12 15:33:16 WARNING (MainThread) [homeassistant.config_entries] Config entry 'EMAIL' for electrolux_status integration not ready yet; Retrying in background
2022-05-12 15:33:23 DEBUG (MainThread) [custom_components.electrolux_status] Finished fetching electrolux_status data in 1.088 seconds (success: False)

Also added the pyelectroluxconnect libarry to my logger config to log in debug leve but i not see any new log

Thanks Mauro, Legend!

Confirm to have logged in to AEG washing machine Model Number: LF8C9412AC (AEG)

There are 14 entities found

My Washer
binary_sensor.aeg_my_washer_apl_status
Electrolux Care Integration
Laundry
—
—

My Washer Appliance State
sensor.aeg_my_washer_wm1_appliancestate
Electrolux Care Integration
Laundry
—
—

My Washer Cycle Phase
sensor.aeg_my_washer_wm1_cyclephase
Electrolux Care Integration
Laundry
—
—

My Washer Door
binary_sensor.aeg_my_washer_wm1_doorstate
Electrolux Care Integration
Laundry
—
—

My Washer Door Lock
binary_sensor.aeg_my_washer_wm1_doorlock
Electrolux Care Integration
Laundry
—
—

My Washer OFF
button.aeg_my_washer_wm1_executecommand_0
Electrolux Care Integration
Laundry
—
—

My Washer ON
button.aeg_my_washer_wm1_executecommand_1
Electrolux Care Integration
Laundry
—
—

My Washer Pause
button.aeg_my_washer_wm1_executecommand_4
Electrolux Care Integration
Laundry
—
—

My Washer Resume
button.aeg_my_washer_wm1_executecommand_5
Electrolux Care Integration
Laundry
—
—

My Washer Signal Strength
sensor.aeg_my_washer_niu_linkqualityindicator
Electrolux Care Integration
Laundry
—
—

My Washer SSID
sensor.aeg_my_washer_niu_ssid
Electrolux Care Integration
Laundry
—
—

My Washer Start
button.aeg_my_washer_wm1_executecommand_2
Electrolux Care Integration
Laundry
—
—

My Washer Stop
button.aeg_my_washer_wm1_executecommand_3
Electrolux Care Integration
Laundry
—
—

My Washer Time To End
sensor.aeg_my_washer_wm1_timetoend
Electrolux Care Integration
Laundry
—
—

You don’t have to install anything from GitHub. Just search for the integration in HACS via the “+” at the lower right and install from there. Then go to step 2 of the instruction

1 Like

Hey @tomeko12, can i get some help from you, or maybe anyone else.

I tried to use the custom component but it hangs up, so i added some debug statements and i found out that it hangs when calles the getApplianceState() function in the client libarary, so i trie to use the library in python repl and indeed it works when I called with the rawOutput=True parameter but when it is false i got this (also include an output with the raw response)

>>> for appliance in appllist:
...     print(ses.getApplianceState(appliance))
...
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
  File "/home/zolli/.local/lib/python3.8/site-packages/pyelectroluxconnect/Session.py", line 753, in getApplianceState
    return self._parseApplianceState(
  File "/home/zolli/.local/lib/python3.8/site-packages/pyelectroluxconnect/Session.py", line 477, in _parseApplianceState
    self._applianceProfiles[applianceId][_hexHacl]["container"],
KeyError: 'OV1:0x0431'


>>> for appliance in appllist:
...     print(ses.getApplianceState(appliance, rawOutput=True))
...
[{'spkTimestamp': 1653852463, 'description': 'Undefined', 'haclCode': '0470', 'source': 'OV1', 'containers': [{'propertyName': 'Number', 'tId': '0', 'group': 0, 'numberValue': 0, 'translation': 'Number'}]}, {'stringValue': '00', 'spkTimestamp': 1614373681000, 'description': 'Undefined', 'haclCode': '000A', 'source': 'OV1', 'containers': []}, {'stringValue': '944066643', 'spkTimestamp': 1613959720000, 'description': 'Undefined', 'haclCode': '0007', 'source': 'OV1', 'containers': []}, {'numberValue': 3, 'stringValue': 'ReadyToStart', 'spkTimestamp': 1653838140000, 'description': 'Undefined', 'haclCode': '0401', 'source': 'OV1', 'containers': []}, {'numberValue': 0, 'stringValue': 'Off', 'spkTimestamp': 1653841816000, 'description': 'Undefined', 'haclCode': '0490', 'source': 'OV1', 'containers': []}, {'spkTimestamp': 1653852463000, 'description': 'Undefined', 'haclCode': '0431', 'source': 'OV1', 'containers': [{'propertyName': 'Coefficient', 'tId': '1', 'group': 0, 'numberValue': 44, 'translation': 'Coefficient'}, {'propertyName': 'Exponent', 'tId': '3', 'group': 0, 'numberValue': 0, 'translation': 'Exponent'}, {'propertyName': 'Unit', 'tId': '0', 'group': 0, 'numberValue': 0, 'translation': 'Unit'}]}, {'numberValue': 0, 'stringValue': 'Closed', 'spkTimestamp': 1653834451000, 'description': 'Undefined', 'haclCode': '0460', 'source': 'OV1', 'containers': []}, {'numberValue': 3, 'stringValue': 'NoSafetyRelevantEnabled', 'spkTimestamp': 1653841817000, 'description': 'Undefined', 'haclCode': '0402', 'source': 'OV1', 'containers': []}, {'numberValue': 0, 'spkTimestamp': 1653838127000, 'description': 'Undefined', 'haclCode': '0410', 'source': 'OV1', 'containers': []}, {'stringValue': '94116367', 'spkTimestamp': 1614373683000, 'description': 'Undefined', 'haclCode': '0002', 'source': 'OV1', 'containers': []}, {'numberValue': -1, 'spkTimestamp': 1631874432000, 'description': 'Undefined', 'haclCode': '0412', 'source': 'OV1', 'containers': []}, {'numberValue': 0, 'spkTimestamp': 1653838264000, 'description': 'Undefined', 'haclCode': '0414', 'source': 'OV1', 'containers': []}, {'spkTimestamp': 1653834511000, 'description': 'Undefined', 'haclCode': '0432', 'source': 'OV1', 'containers': [{'propertyName': 'Coefficient', 'tId': '1', 'group': 0, 'numberValue': 90, 'translation': 'Coefficient'}, {'propertyName': 'Exponent', 'tId': '3', 'group': 0, 'numberValue': 0, 'translation': 'Exponent'}, {'propertyName': 'Unit', 'tId': '0', 'group': 0, 'numberValue': 0, 'translation': 'Unit'}]}, {'numberValue': -1, 'spkTimestamp': 1653838127000, 'description': 'Undefined', 'haclCode': '0411', 'source': 'OV1', 'containers': []}, {'spkTimestamp': 1653411749000, 'description': 'Undefined', 'haclCode': '1431', 'source': 'OV1', 'containers': [{'propertyName': 'Coefficient', 'tId': '1', 'group': 0, 'numberValue': 0, 'translation': 'Coefficient'}, {'propertyName': 'Exponent', 'tId': '3', 'group': 0, 'numberValue': 0, 'translation': 'Exponent'}, {'propertyName': 'Unit', 'tId': '0', 'group': 0, 'numberValue': 0, 'translation': 'Unit'}]}, {'numberValue': 0, 'stringValue': 'NotInserted', 'spkTimestamp': 1614854662000, 'description': 'Undefined', 'haclCode': '1433', 'source': 'OV1', 'containers': []}, {'stringValue': 'Program_TrueFan', 'spkTimestamp': 1653832804000, 'description': 'Undefined', 'haclCode': '1440', 'source': 'OV1', 'containers': []}, {'spkTimestamp': 1614854662000, 'description': 'Undefined', 'haclCode': '1432', 'source': 'OV1', 'containers': [{'propertyName': 'Coefficient', 'tId': '1', 'group': 0, 'numberValue': -1, 'translation': 'Coefficient'}, {'propertyName': 'Exponent', 'tId': '3', 'group': 0, 'numberValue': -1, 'translation': 'Exponent'}, {'propertyName': 'Unit', 'tId': '0', 'group': 0, 'numberValue': 255, 'translation': 'Unit'}]}, {'numberValue': 600, 'spkTimestamp': 1653812807000, 'description': 'Undefined', 'haclCode': '1448', 'source': 'OV1', 'containers': []}, {'numberValue': 0, 'stringValue': 'Idle', 'spkTimestamp': 1653411776000, 'description': 'Undefined', 'haclCode': '0060', 'source': 'NIU', 'containers': []}, {'numberValue': 3, 'stringValue': 'Good', 'spkTimestamp': 1653852063000, 'description': 'Undefined', 'haclCode': '0032', 'source': 'NIU', 'containers': []}, {'spkTimestamp': 1614373689000, 'description': 'Undefined', 'haclCode': '0473', 'source': 'NIU', 'containers': [{'propertyName': 'Number', 'tId': '0', 'group': 0, 'numberValue': 0, 'translation': 'Number'}]}, {'stringValue': 'Sun-IoT_2G', 'spkTimestamp': 1643106032000, 'description': 'Undefined', 'haclCode': '0070', 'source': 'NIU', 'containers': []}, {'stringValue': 'connect', 'spkTimestamp': 1653812571002, 'description': 'ConnectivityState', 'haclCode': '0000', 'source': 'APL', 'containers': []}]
[{'spkTimestamp': 1653852348, 'description': 'Undefined', 'haclCode': '0470', 'source': 'OV1', 'containers': [{'propertyName': 'Number', 'tId': '0', 'group': 0, 'numberValue': 0, 'translation': 'Number'}]}, {'stringValue': '00', 'spkTimestamp': 1614449584000, 'description': 'Undefined', 'haclCode': '000A', 'source': 'OV1', 'containers': []}, {'stringValue': '944184871', 'spkTimestamp': 1614449583000, 'description': 'Undefined', 'haclCode': '0007', 'source': 'OV1', 'containers': []}, {'numberValue': 3, 'stringValue': 'ReadyToStart', 'spkTimestamp': 1653839906000, 'description': 'Undefined', 'haclCode': '0401', 'source': 'OV1', 'containers': []}, {'numberValue': 0, 'stringValue': 'Off', 'spkTimestamp': 1653841807000, 'description': 'Undefined', 'haclCode': '0490', 'source': 'OV1', 'containers': []}, {'spkTimestamp': 1653852348000, 'description': 'Undefined', 'haclCode': '0431', 'source': 'OV1', 'containers': [{'propertyName': 'Coefficient', 'tId': '1', 'group': 0, 'numberValue': 41, 'translation': 'Coefficient'}, {'propertyName': 'Exponent', 'tId': '3', 'group': 0, 'numberValue': 0, 'translation': 'Exponent'}, {'propertyName': 'Unit', 'tId': '0', 'group': 0, 'numberValue': 0, 'translation': 'Unit'}]}, {'numberValue': 0, 'stringValue': 'Closed', 'spkTimestamp': 1653836280000, 'description': 'Undefined', 'haclCode': '0460', 'source': 'OV1', 'containers': []}, {'numberValue': 3, 'stringValue': 'NoSafetyRelevantEnabled', 'spkTimestamp': 1653841807000, 'description': 'Undefined', 'haclCode': '0402', 'source': 'OV1', 'containers': []}, {'numberValue': 0, 'spkTimestamp': 1653839905000, 'description': 'Undefined', 'haclCode': '0410', 'source': 'OV1', 'containers': []}, {'stringValue': '92347395', 'spkTimestamp': 1614515295000, 'description': 'Undefined', 'haclCode': '0002', 'source': 'OV1', 'containers': []}, {'numberValue': -1, 'spkTimestamp': 1635217766000, 'description': 'Undefined', 'haclCode': '0412', 'source': 'OV1', 'containers': []}, {'numberValue': 0, 'spkTimestamp': 1653839908000, 'description': 'Undefined', 'haclCode': '0414', 'source': 'OV1', 'containers': []}, {'spkTimestamp': 1653835695000, 'description': 'Undefined', 'haclCode': '0432', 'source': 'OV1', 'containers': [{'propertyName': 'Coefficient', 'tId': '1', 'group': 0, 'numberValue': 90, 'translation': 'Coefficient'}, {'propertyName': 'Exponent', 'tId': '3', 'group': 0, 'numberValue': 0, 'translation': 'Exponent'}, {'propertyName': 'Unit', 'tId': '0', 'group': 0, 'numberValue': 0, 'translation': 'Unit'}]}, {'numberValue': -1, 'spkTimestamp': 1653839905000, 'description': 'Undefined', 'haclCode': '0411', 'source': 'OV1', 'containers': []}, {'numberValue': 0, 'stringValue': 'SteamTankFull', 'spkTimestamp': 1649071045000, 'description': 'Undefined', 'haclCode': '04E3', 'source': 'OV1', 'containers': []}, {'numberValue': 1, 'stringValue': 'Inserted', 'spkTimestamp': 1649071045000, 'description': 'Undefined', 'haclCode': '04E4', 'source': 'OV1', 'containers': []}, {'spkTimestamp': 1652519020000, 'description': 'Undefined', 'haclCode': '1431', 'source': 'OV1', 'containers': [{'propertyName': 'Coefficient', 'tId': '1', 'group': 0, 'numberValue': 0, 'translation': 'Coefficient'}, {'propertyName': 'Exponent', 'tId': '3', 'group': 0, 'numberValue': 0, 'translation': 'Exponent'}, {'propertyName': 'Unit', 'tId': '0', 'group': 0, 'numberValue': 0, 'translation': 'Unit'}]}, {'numberValue': 0, 'stringValue': 'NotInserted', 'spkTimestamp': 1651920948000, 'description': 'Undefined', 'haclCode': '1433', 'source': 'OV1', 'containers': []}, {'stringValue': 'Program_TrueFan', 'spkTimestamp': 1653831173000, 'description': 'Undefined', 'haclCode': '1440', 'source': 'OV1', 'containers': []}, {'spkTimestamp': 1642859751000, 'description': 'Undefined', 'haclCode': '1432', 'source': 'OV1', 'containers': [{'propertyName': 'Coefficient', 'tId': '1', 'group': 0, 'numberValue': -1, 'translation': 'Coefficient'}, {'propertyName': 'Exponent', 'tId': '3', 'group': 0, 'numberValue': -1, 'translation': 'Exponent'}, {'propertyName': 'Unit', 'tId': '0', 'group': 0, 'numberValue': 255, 'translation': 'Unit'}]}, {'numberValue': 3, 'stringValue': 'DescriptionReady', 'spkTimestamp': 1653809010000, 'description': 'Undefined', 'haclCode': '0060', 'source': 'NIU', 'containers': []}, {'numberValue': 3, 'stringValue': 'Good', 'spkTimestamp': 1653850737000, 'description': 'Undefined', 'haclCode': '0032', 'source': 'NIU', 'containers': []}, {'spkTimestamp': 1614515300000, 'description': 'Undefined', 'haclCode': '0473', 'source': 'NIU', 'containers': [{'propertyName': 'Number', 'tId': '0', 'group': 0, 'numberValue': 0, 'translation': 'Number'}]}, {'stringValue': 'Sun-IoT_2G', 'spkTimestamp': 1643820315000, 'description': 'Undefined', 'haclCode': '0070', 'source': 'NIU', 'containers': []}, {'stringValue': 'connect', 'spkTimestamp': 1653808986926, 'description': 'ConnectivityState', 'haclCode': '0000', 'source': 'APL', 'containers': []}]
>>>

I have an oven which I am trying to integrate using the the integration created by @MauroM. I am using the ‘My Aeg Kitchen’ app on my phone. Does the credential I am using to login to the app supposed to work with this integration? Because it does not and I am bit a confused (I tried to change the region as well and I verified in the app that the credential I am using is the correct one).

Hi Rikkie80,

I’m very new to all this.
I went to ‘integrations’ in the HACS UI, and clicked ‘+ add integration’ in the lower right of the screen, and select ‘Electrolux Care Integration (Not Official)’, and then select ‘install this repository in HACS’.

When this is done, I restart Home Assistant, and I can see it in the integrations within HACS - but then what do I do?

I can’t see any other option to check status/control anything on my dryer. There’s no entities installed for it and I can’t see any mention of it in my regular HA integrations page either.

What am I doing wrong?

You need to go to the integration page settings > Devices and Services > Integrations and click add integration. Then add the electrolux integration and follow the prompts.

The HACS button actually says “Download” rather than install so it’s not yet configured.

Just acquired a AEG Series 9000 dryer (T9DEB969C). I have setup AEG Care and added the device fine. I have added the Integration into HA and signed in with my credentials, but the new dryer has not shown up as an entity. Any guidance?
Please ignore as it seems to have been a AEG cloud issue as eventually the dryer has shown up in HA as expected. Great integration!

Just installed this addon and it found both of my ovens. But there is something weird going on, it seems that there are some things mixed up. The door sensor of oven 1 is linked to oven 2?! Also the setting of the steam oven are linked to the oven that does not has steam options.

Will try to share some more details tonight.

I’m receiving following error…
How can I get a new token? Have been trying to remove and install integration, but didn’t help.
Using integration for AEG 9000 serie 3D Fiber Pro (T9DEN87CC).

Logger: pyelectroluxconnect.Session
Source: /usr/local/lib/python3.10/site-packages/pyelectroluxconnect/Session.py:687
First occurred: 09:25:46 (1 occurrences)
Last logged: 09:25:46

Token probably expired, trying to get new one.

Generally it breaks every time the mobile app updates. opening the app on your phone fixes it for me.

I do have the same issue.
I already downloaded the integration via HACS (where I only could find it after sorting in alphabetical order, not by searching).
After that I did restart Home Assistant and when I look in HACS/Intergrations and scroll down, I can see the integration together with the other integraions installed via HACS.
In Fileeditor I can see folder “custom_components/electrolux_status” which includes several files.

But going to “settings > Devices and Services > Integrations” and clicking “add integration” I can’t find the Electrolux integration. Even when I scroll down the alphabetically ordered list it’s not there!
So what’s wrong?

Try clearing your browser cache

You named it! Thanks a lot!