Skip to content

ngfblog/Xiaomi-cloud-tokens-extractor

Repository files navigation

Xiaomi Cloud Tokens Extractor

GitHub Latest Release GitHub All Releases Buy me a coffee PayPal.Me

This tool/script retrieves tokens for all devices connected to Xiaomi cloud and encryption keys for BLE devices.

You will need to provide Xiaomi Home credentials (not ones from Roborock app):

  • username (e-mail or Xiaomi Cloud account ID)
  • password
  • Xiaomi's server region (cn - China, de - Germany etc.). Leave empty to check all available

In return all of your devices connected to account will be listed, together with their name and IP address.

Windows

Download and run token_extractor.exe.

Linux & Home Assistant (in SSH & Web Terminal)

Execute following command:

bash <(curl -L https://github.com/PiotrMachowski/Xiaomi-cloud-tokens-extractor/raw/master/run.sh)

If installation fails try Docker version

Docker & Home Assistant (in SSH & Web Terminal)

Execute following command:

bash <(curl -L https://github.com/PiotrMachowski/Xiaomi-cloud-tokens-extractor/raw/master/run_docker.sh)

To run this command in HA you have to disable protected mode in addon's settings and restart it

Manual run in python

Download and unpack archive:

wget https://github.com/PiotrMachowski/Xiaomi-cloud-tokens-extractor/releases/latest/download/token_extractor.zip
unzip token_extractor.zip
cd token_extractor

Install dependencies and run script:

pip3 install -r requirements.txt
python3 token_extractor.py

Troubleshooting

If you have problems with using this tool try following solutions:

  • Make yourself sure that you provide correct credentials (e.g. not ones from Roborock app!)
  • Remove Cloudflare DNS
  • Disable network ad blockers (AdGuard, PiHole, etc.)
  • Open 2FA link on the same device that runs Tokens Extractor

Home Assistant additional tools

Buy Me A Coffee