core: Missing vacuum entity for Q Revo

The problem

We added a Q Revo to our house in addition to the S7 we had previously. All the sensor, select, and switch entities appear for the Q Revo, but the vacuum.roborock_q_revo entity is not there. I was attempting to get the room mappings, but I can’t send the vacuum any commands without the vacuum entity.

What version of Home Assistant Core has the issue?

core-2023.7.2

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant OS

Integration causing the issue

Roborock

Link to integration documentation on our website

https://www.home-assistant.io/integrations/roborock/

Diagnostics information

config_entry-roborock-10feebba66a9d06e77d4db23f3a0e8d7.json.txt

Example YAML snippet

No response

Anything in the logs that might be useful for us?

There is this log entry, that was noted in another bug:

Logger: roborock.code_mappings
Source: runner.py:179 
First occurred: July 16, 2023 at 8:23:30 AM (3064 occurrences) 
Last logged: 9:54:39 AM

Missing RoborockDockTypeCode code: 8 - defaulting to 'unknown'

Additional information

No response

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 15 (7 by maintainers)

Most upvoted comments

Source: components/roborock/vacuum.py:96
First occurred: 3:48:58 PM (1 occurrences)
Last logged: 3:48:58 PM

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 490, in async_add_entities
    tasks = [
            ^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 490, in <listcomp>
    tasks = [
            ^
  File "/usr/src/homeassistant/homeassistant/components/roborock/vacuum.py", line 63, in <genexpr>
    RoborockVacuum(slugify(device_id), coordinator)
  File "/usr/src/homeassistant/homeassistant/components/roborock/vacuum.py", line 96, in __init__
    self._attr_fan_speed_list = self._device_status.fan_power.keys()
                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'keys'

retrieved this from the log when reloading the integration