MTrab/landroid_cloud

Adding a device creates a lawn_mower entity and vacuum entity

FlySmack opened this issue · 2 comments

Describe the issue

I'm not sure if this intended, or not. I could not find a remark about this behaviour in the documentation.
When I add my Landroid Worx account, my lawn mower is automatically detected and added as expected.
But it creates two entities. One of device type lawn_mower and one as vacuum in /homeassistant/.storage/core.entity_registry. It also creates duplicate entries for other entities like battery, etc. (_2 is automatically added at the end of these device entities).

I already uninstalled the Landroid Cloud installation and reinstalled to ensure, that I don't have any leftover from the old integration before the move to the lawn_mower device type (prior version 4).

When I delete the device, then also the vacuum device type is not longer existing in /homeassistant/.storage/core.entity_registry.

Is this intended, or not?
If yes, then a remark in the documentation would be helpful to understand the purpose of it.

Thanks a lot for your reply.

What version of Home Assistant Core has the issue?

core-2024.3.1

What was the last working version of Home Assistant Core?

No response

What version of the Landroid Cloud integration do you have installed

v4.0.3

What type of installation are you running?

Home Assistant OS

Which make and model is the mower used for this integration?

Landroid WR147E.1

Diagnostics information (NOT log entries!)

None

Relevant log entries

None

Additional information

Example entries from /homeassistant/.storage/core.entity_registry:

      {
        "aliases": [],
        "area_id": null,
        "capabilities": null,
        "config_entry_id": "af538ded34ea11d0cae654e03b662c93",
        "device_class": null,
        "device_id": "fb4cb56be25fc6e5dc2e8722bcad257f",
        "disabled_by": null,
        "entity_category": null,
        "entity_id": "lawn_mower.ameisenhugel",
        "hidden_by": null,
        "icon": null,
        "id": "9e96d2d42c41d0770ea286a3a519b64a",
        "has_entity_name": false,
        "labels": [],
        "name": null,
        "options": {
          "conversation": {
            "should_expose": false
          }
        },
        "original_device_class": "landroid_cloud__state",
        "original_icon": null,
        "original_name": "Ameisenhügel",
        "platform": "landroid_cloud",
        "supported_features": 7,
        "translation_key": "landroid_cloud",
        "unique_id": "202230267309002672E2_ameisenhugel",
        "previous_unique_id": null,
        "unit_of_measurement": null
      },
<SNIP>
      {
        "config_entry_id": null,
        "entity_id": "vacuum.ameisenhugel",
        "id": "e2051fe5d9a4d70670662ab5a2580044",
        "orphaned_timestamp": 1710568245.019245,
        "platform": "landroid_cloud",
        "unique_id": "202230267309002672E2_ameisenhugel"
      },
<SNIP>
      {
        "config_entry_id": null,
        "entity_id": "sensor.ameisenhugel_blades_reset_at_2",
        "id": "25eb9078d27df6f95a495aa1508139cc",
        "orphaned_timestamp": 1710568245.019245,
        "platform": "landroid_cloud",
        "unique_id": "blades_reset_at_06cf125eb1599ed2a8b43605ac61fbca_202230267309002672e2"
      },
<SNIP>
      {
        "config_entry_id": null,
        "entity_id": "sensor.ameisenhugel_blades_reset_at",
        "id": "c52ac2cde14d905fb42a2564aac2828e",
        "orphaned_timestamp": 1710572975.6722257,
        "platform": "landroid_cloud",
        "unique_id": "blades_reset_at_210078976d6ed3e08ea044a1bd03ed4f_202230267309002672e2"
      },

Isn't this caused after you updated from the old style, where vacuum was used, tot he new style?
It was mentioned in the release notes

Thanks for the hint. I checked the release notes and found this for 4.0.0:
Old vacuum entity will become unavailable and a new lawn_mower entity will be created - this is expected behaviour
Attributes are seperated into entities as pr. best practise for integration design

I also interpret it the way like you do: You will have lawn_mower and vacuum for the same device.
Maybe it makes sense to mention this also in the readme?