About: Extract the maps for rooted Vacuum Cleaners with Valetudo Firmware to Home Assistant via MQTT.
What it is: This Integration decode the vacuum map and render it to Home Assistant, when you want also to control your vacuum you will need to also install the: lovelace-xiaomi-vacuum-map-card (recommended) from HACS as well.
Configuration of the card (thanks to @PiotrMachowski) once the camera is selected requires: calibration source to be set to camera: true
This will pass automatically the data to the card.
type: custom:xiaomi-vacuum-map-card
entity: vacuum.valetudo_yourvacuum
vacuum_platform: Hypfer/Valetudo
map_source:
camera: camera.valetudo_vacuum_camera
calibration_source:
camera: true
internal_variables:
topic: valetudo/your_topic
Supported Vacuums:
- Roborock.V1
- Roborock.S50
- Roborock.S5
- Dreame D9
Please foolow the instructions in here.
- Automatically Generate the calibration points for the lovelace-xiaomi-vacuum-map-card to ensure full compatibility to this user friendly card.
- Automatically Generate rooms based configuration when vaccum support this fucntionality, this will allow you to configure the rooms quickly on the lovelace-xiaomi-vacuum-map-card.
- The camera take automaticly a snapshot (vacuum idle/ error / docked) and sore it in the www folder of HA. It is thefore possible to create an automation to send the screenshot to your mobile in different conditions as per below example:
alias: Vacuum Error
description: ""
trigger:
- platform: state
entity_id:
- vacuum.valetudo_yor_vacuum
from: error
for:
hours: 0
minutes: 0
seconds: 30
condition: []
action:
- service: notify.mobile_app_your_phone
data:
message: Vacuum idle
data:
image: /local/your_vacuum_snapshot.png
mode: single
- Change the image options directly form the HA integratios UI with a click on the integration configuration.
- Image Rotation: 0, 90, 180, 270 (default is 0).
- Cropping function (default is 50% of the standard Valetudo size 5210x5210 = 2605x2605).
- Base colors are the colors for robot, charger, walls, background, zones etc.
- Rooms colors, Room 1 is acrually also the Floor color (for vacuum that do not supports rooms).
- From v1.3.2 is possible to Trim the images as desidered.
- It is possible to display on the image the vacuum staus.
- Possibilty to integrate multiple vacuums with this integration as per each camera will be named with the vacuum name (vacuum.robot1 = camera.robot1.. vacuum.robotx = camera.robotx)
- Improving the rooms zones export to the card (at current it requires manual adjustments).
- Adding image trimming to the options, in order to centre the map.
- This custom component is developed and tested using a PI4 with Home Assistant OS fully updated to the last version, this allows us to confirm that the component is working properly with Home Assistant. Tested also on Docker Supervised "production" enviroment (fully setup home installation).
- This camera isn't fast as ICantBelieveItsNotValetudo because it is develped using PIL (as per OpenCV is not supported on Home Assistant OS). Will consider, based also on your requests a platform based release of this integration.
- The test in Github is still not fully setup this is why there is an X instead of a V. We don't pass the 84% of test for this reason.
- @PiotrMachowski inspiring this integration and his amazing work.
- @Hypfer for freeing the vacuums from the clouds and contiunsly improvig our vacuums :)
- @billyourself for providing us the data to evolve this project.
- And to all of you using this integration and reporting any issues, improvemnts and vacuums used with it.