Skip to content

Python-roborock/local_roborock_server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Roborock Local Server

The best way to support this project is the next time you are buying a Roborock device come back here and use one of my affiliate links where I will receive a commission.

Amazon Affiliate Roborock Affiliate Roborock 5 Off

You can also support via BMAC or paypal:

Buy Me a Coffee PayPal

NOTE: if you have not already setup this project, i would recommend waiting a few days. i will be pushing a number of changes that are partially backwards incompatible and the new version should be a bit easier to use!

Roborock Local Server is a private Roborock HTTPS and MQTT stack you run on your own system.

This service is meant to stay private. Point your own DNS at your server's LAN IP and do NOT expose it directly to the public internet. In its current state it does not handle internet exposure safely enough. For now, keep it on your LAN only. In the future, I plan to reuse Roborock's auth natively which should make everything secure enough.

This project is in VERY EARLY BETA!!! Do not use this repository unless you are sure you know what you are doing and are rather technical.

Contributing

If you would like to contribute there are a few ways that would be great!

  1. Code is always welcome that you have fully tested.
  2. Video walkthroughs of how to actually set this up would be great.
  3. Documentation. I hate documentation and it's something I find myself often pushing off to AI so that I can focus more on the harder problems. But I find that human written documentation always 'feels' better.

Requirements

  • a domain you control
  • a place to run the stack on your LAN
  • either Docker Compose or a Home Assistant installation that supports add-ons
  • a second machine for onboarding later
  • a Cloudflare API token with DNS edit access for the zone if you want automatic certificate renewal

Getting Started

Start here if this is your first time setting up the stack:

  1. Installation for the shared requirements, network setup, and Docker Compose install path.
  2. Home Assistant if you want to install the stack as a Home Assistant add-on instead of Docker Compose.
  3. Cloudflare setup if you want Cloudflare DNS-01 auto-renew for certificates.
  4. Onboarding to pair a vacuum from a second machine after the server is running.

Before choosing a certificate path, check Tested vacuums. Different models do not all accept the same certificate chains. For most users, start with ZeroSSL. Use Actalis mainly for older vacuums or models that are already known to trust that chain more reliably.

Additional docs:

Acknowledgements

  • Dennis Giese (@dgiese) whose research and papers inspired much of the work on reverse-engineering Roborock vacuums
  • Sören Beye (@Hypfer) creator of Valetudo, whose work on cloud-free vacuum control has been foundational for this whole space.
  • @rovo89 who has been VERY helpful through this process, giving lots of tips and advice.
  • python-miio - Their repo was the basis for a lot of python-roborock's logic.
  • @humbertogontijo who first created the python-roborock repo.
  • @allenporter who has taken up a significant role in the maintenance of the python-roborock library as well as the Roborock integration. The improvements Allen has made to the repository cannot be overstated.
  • @rccoleman who was the first beta tester and helped work out some kinks!

Disclaimer

This software is provided "as is", without warranty of any kind. Running this stack involves modifying how your Roborock vacuum communicates with the network. You are solely responsible for any damage to your hardware, data loss, network exposure, or other consequences. Use at your own risk. This project is not affiliated with, endorsed by, or sponsored by Roborock.

License

This project is licensed under the MIT License — see LICENSE for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors