Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

device timeout #3

Open
matphillips opened this issue Sep 16, 2017 · 5 comments
Open

device timeout #3

matphillips opened this issue Sep 16, 2017 · 5 comments

Comments

@matphillips
Copy link

Tried this plugin without success, log shows:
[MiRobotVacuumPlatform][ERROR]RobotVacuumFanAccessory - On - getOn Error: Error: Call to device timed out

I have correct IP address and token via --discover -sync
Vacuum firmware is 3.3.9_003077
Node 7.10.1
npm 4.2.0

nmap of vacuum IP address finds only port 22 filtered, no other ports.

Anything I can try to get it working?

@adidoes
Copy link

adidoes commented Oct 8, 2017

There seems to be a general problem because of changes in the latest firmware, the miio library can't connect to the device.

@YinHangCode
Copy link
Owner

make sure token is right.

@ersan
Copy link

ersan commented Nov 14, 2017

This took me forever to fix, the new firmware doesn't expose the 32-character token any more. Most people who are using this app or the other plugins have the token from before the firmware was updated so they aren't aware of the issue.

http://forum.smartapfel.de/forum/thread/370-saugroboter-xiaomi-mi-robot-vacuum-token-auslesen/?postID=7021#post7021 explains how to get the token, but it is in german and the translation is kind of confusing.

Essentially you make a new iTunes backup of your iPhone after adding the vacuum to the mii app, you use iBackup Viewer to export the sqlite database from the xiaomi app in your iPhone backup, then find the 92-character key (which is actually the 32-character key encoded via AES with a stupid simple key - 32 0's) using an SQLite browser of some sort. Then you decode the key via AES with the key '00000000000000000000000000000000' (32 0's) and that will give you the token you need.

@linjunpop
Copy link

By following the steps provided by @ersan, it works for me. The token got by miio is wrong, the decrypted one works well.

@llyons92
Copy link

I'm a noob with this stuff, can someone provide further detail on extracting the sqlite database from the xiaomi app

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants