Vacuum Interactive Map Card

I know have these twonas entities in the list. Earlier I only had the cleaner. Am I right that I know have to locate where the map image are? I’m looking everywhere in the config folder.

Sorry for me being such a dumbass about this…

Obviously I’ve done something wrong but I don’t know what. I understand that this is not how it should look but how do I fix it? :sweat_smile:

If you have installed it using HACS you don’t have to add anything to custom_lovelace. Your problem is that URLs in resources are incorrect (both ones from #619) - they should be:
/hacsfiles/lovelace-xiaomi-vacuum-map-card/xiaomi-vacuum-map-card.js
not:
/hacsfiles/lovelace-xiaomi-vacuum-card/xiaomi-vacuum-card.js

Image from extractor is not available anywhere as a file, you have to use camera entity instead:

type: custom:xiaomi-vacuum-map-card
entity: vacuum.xiaomi_vacuum
map_camera: camera.xiaomi_cloud_map_extractor
map_calibration: true

It finally worked! Thank you so much for your support! Amazing. One last question. The image of the map? Will it change if I clean a different floor in my house? As I have one map for every floor in Mi home.

As far as I remember it will

1 Like

Hi, I also have the same issue with gen 1, nothing you can do I’m afraid, but look at my post there, it may help: Xiaomi Cloud Vacuum Map Extractor

Hi all,

First of all, amazing card, thank you very much!
It is mostly working for me, except for the script part. This might be a question for @3_14
I added this to the card

ignore_zones_limit: true
service: script.vacuum_send_command_multiple_zones

and then I created a script in HA, where I simply tried to paste the contents of this:
https://raw.githubusercontent.com/PiotrMachowski/lovelace-xiaomi-vacuum-map-card/master/examples/vacuum_send_command_multiple_zones.yaml

Sadly I get this error when trying to save:
Message malformed: extra keys not allowed @ data[‘vacuum_send_command_multiple_zones’]

I searched on this thread and it seems no one else had this problem yet, so I’m not sure what this could be.

Thanks so much in advance!

If you add it using UI you have to remove a first line and use vacuum_send_command_multiple_zones as entity id

HI. Thank you for this integration. No issues loaded through HACS, current HA: 2020.12.7. Able to load correct map through camera integration however will not accept commands from card interface.

Error:

2020-12-18 20:02:21 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140591194076688] not a valid value for dictionary value @ data['entity_id']
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 135, in handle_call_service
    await hass.services.async_call(
  File "/usr/src/homeassistant/homeassistant/core.py", line 1399, in async_call
    processed_data = handler.schema(service_data)
  File "/usr/local/lib/python3.8/site-packages/voluptuous/validators.py", line 218, in __call__
    return self._exec((Schema(val) for val in self.validators), v)
  File "/usr/local/lib/python3.8/site-packages/voluptuous/validators.py", line 340, in _exec
    raise e if self.msg is None else AllInvalid(self.msg, path=path)
  File "/usr/local/lib/python3.8/site-packages/voluptuous/validators.py", line 336, in _exec
    v = func(v)
  File "/usr/local/lib/python3.8/site-packages/voluptuous/schema_builder.py", line 272, in __call__
    return self._compiled([], data)
  File "/usr/local/lib/python3.8/site-packages/voluptuous/schema_builder.py", line 817, in validate_callable
    return schema(data)
  File "/usr/local/lib/python3.8/site-packages/voluptuous/schema_builder.py", line 272, in __call__
    return self._compiled([], data)
  File "/usr/local/lib/python3.8/site-packages/voluptuous/schema_builder.py", line 594, in validate_dict
    return base_validate(path, iteritems(data), out)
  File "/usr/local/lib/python3.8/site-packages/voluptuous/schema_builder.py", line 432, in validate_mapping
    raise er.MultipleInvalid(errors)
voluptuous.error.MultipleInvalid: not a valid value for dictionary value @ data['entity_id']

Can you show your config?

Is there any reason for the scan_interval being 5 seconds in the cloud map extractor? Could I set it to 1 second without hitting any API limit?

There is no official API, this integration pretends to be a Xiaomi Home app, so limits are unknown. You probably can set it to 1 second, but it takes some time for this map to update, as it requires a command to be sent to a vacuum, vacuum has to upload a map to the cloud and then integration downloads it from a cloud.

From Lovelace Card:

type: 'custom:xiaomi-vacuum-map-card'
entity: vacuum.xiaomi_vacuum_cleaner"
map_camera: camera.xiaomi_cloud_map_extractor
camera_calibration: true

You have to remove " from entity id

Of course, so simple…the yaml typos get me all the time. Thanks. Works like a charm!

I have been using this and live add-on and everything works great for my 2 roborock s50 & s55.
Now I have a firmware update to 3.5.8.002034.
Is it safe to do it? Will it break anything?
Thanks!

Don’t have it here, what are the improvements?

Can you share how exactly did you do the calibration? I am having problems with it.

hi there. first of all a big thanks to @3_14 for this great card!

I am trying to make this card work (in combination with another vacuum card) on my 3d floorplan; by aligning it with the calibrated map which i then make transparent. This seems to work but i can’t find a way to position the ‘START’ button since it is glued to the bottom of the card.

( I made card visible for this example but the idea is to have it completely transparent)

as you can see my is solution is far from ideal, also because there is a lot of stuff happening in the background that I don’t need. Is there maybe a way to apply the script of the action of the ‘start-button’ to a custom button? Or does anyone maybe have another suggestion? Thanks!

can samelone share syntax of cleaning script using zones parameters instead of rooms number?

EDIT: found here: Xiaomi Vacuum cleaner Card