Git Product home page Git Product logo

valetudo_vacuum_camera's Introduction

MQTT Vacuum's Camera

logo@2x

Current Release: GitHub Latest Release

Screenshot 2023-12-27 at 13 37 57

Valetudo Vacuums maps in Home Assistant was never so easy.

About: Extract the maps of Vacuum Cleaners connected via MQTT to Home Assistant such as Valetudo Hypfer or RE(rand256) firmwares, easy setup thanks to HACS and guided Home Assistant GUI configuration.

What it is:

❗This is an unofficial repo and is not created, maintained, or in any sense linked to valetudo.cloud

This custom component is simple to install and setup, decode and render the vacuum maps to Home Assistant in few clicks. 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.

Limitations and Compatibility:

Please Read the "Limitations and Compatibility" before to install the camera.

I kindly ask for your understanding regarding any limitations you may encounter with this custom component (please read also our notice). While it's been extensively tested on a PI4 8GB and now also on ProxMox VE, hardware below PI4 8GB may face issues. Your feedback on such platforms is invaluable; please report any problems you encounter. As a team of one, I'm diligently working to address compatibility across all environments, but this process takes time. In the interim, you can utilize ValetudoPNG as an alternative on unsupported platforms. Your support in making this component compatible with all environments is greatly appreciated. If you'd like to contribute, whether through code or time, please consider joining our efforts. For further details on how the camera operates and how you can contribute, refer to the Wiki section of this project. Your patience and assistance are crucial as we strive toward our goal of universal compatibility.

  • PI3 4GB: The camera is working on PI3 4GB, anyhow no chance there to run two vacuums cameras at the same time.
  • PI4 4GB: The camera is working on PI4 4GB, anyhow run two vacuums cameras at the same time isn't advised even if possible.

Known Supported Vacuums:

We here list, thanks to our users and tests done, the known working vacuums.
  • Dreame D9
  • Dreame Z10 Pro
  • Dreame L10s Ultra
  • Mi Robot Vacuum-Mop P
  • Roborock.S5 / S50 / S55 (Gen.2)
  • Roborock.S6
  • Roborock.S7
  • Roborock.S8
  • Roborock.V1 (Gen.1)
  • Xiaomi C1
  • In general, it works with all flashed Valetudo Hypfer or RE(rand256) vacuums.

How to install:

Open HACS repository in Home Assistant

The instructions in here show detailed steps and will help to set up the camera also without HACS (manual setup). Our setup guide also includes important informations on how to setup the lovelace-xiaomi-vacuum-map-card (recommended).

Features:

We here List what this camera offers as futures.
  1. All Valetudo vacuums are supported.
  2. Automatically Generate the calibration points for the lovelace-xiaomi-vacuum-map-card to ensure full compatibility to this user-friendly card.
  3. Automatically Generate rooms based configuration when vacuum support this functionality, this will allow you to configure the rooms quickly on the lovelace-xiaomi-vacuum-map-card.
  4. The camera take automatically snapshots (when the vacuum idle/ error / docked). It is also possible to save a snapshot using a service call from Home Assistant with the file name and location you want to use. By the default the snapshot is saved in the www folder of Home Assistant. If the snapshot is disabled from Image Options the png will be deleted automatically.
    service: camera.snapshot
    target:
      entity_id: camera.valetudo_your_vacuum_camera
    data:
      filename: /config/www/REPLACE_ME.png
    
  5. Change the image options directly form the Home Assistant integration UI with a simple click on the integration configuration.
    • Image Rotation: 0, 90, 180, 270 (default is 0).
    • Trim automatically the images. The standard Valetudo images size 5210x5210 or more, are resized automatically (At boot the camera trims and reduces the images sizes). Default margins are 150 pixels, you can customize this value from the image options.
    • Base colors are the colors for robot, charger, walls, background, zones etc.
    • Rooms colors, Room 1 is actually also the Floor color (for vacuum that do not support rooms).
    • Transparency level for all elements and rooms colours can be also customize.
    • It is possible to display on the image the vacuum status, this option add a vacuum status text at the top left of the image. Status and room where the vacuum is will be display on the text filed.
  6. This integration make possible to render multiple vacuums as per each camera will be named with the vacuum name (example: vacuum.robot1 = camera.robot1_camera.. vacuum.robotx = camera.robotx_camera)
  7. The camera as all cameras in HA supports the ON/OFF service, it is possible to suspend and resume the camera streem as desired.
  8. In the attributes is possible to get on what room the vacuum is.
  9. No Go, Virtual Walls, Zone Clean, Active Segments and Obstacles are draw on the map when available.
  10. Auto Zooming the room (segment) when the vacuum is cleaning it.

Notes:

  • This integration 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 ProxMox and Docker Supervised "production" enviroment (fully setup home installation).

Tanks to:

  • @PiotrMachowski inspiring this integration and his amazing work.
  • @billyourself for providing us the data and motivation to evolve this project.
  • @Skeletorjus that using this integration gave us several ideas to improve it.
  • @rohankapoorcom autor of the v1.4.0 that make really easy to set up this integration.
  • @gunjambi that found a solution to re-draw the robot and also implemented the snapshots png to be enabled or disabled from the options.
  • @T0ytoy for the amazing cooperation in testing our Camera that improved using the threading.
  • And to all of you using this integration and reporting any issues, improvements and vacuums used with it.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.