seikan / homebridge-xiaomi-mi-robot-vacuum

XiaoMi Mi robot vacuum plugin for Homebridge.
Other
64 stars 8 forks source link

No response #21

Open robinfdx opened 6 years ago

robinfdx commented 6 years ago

Hello,

I have a issue with my xiaomi mi robot vaccum, i have test the readme 2 time, but never work :-(.

I have get the token and i have wrote like this in my config.json :

    {
        "accessory": "MiRobotVacuum",
        "name": "Vacuum Cleaner",
        "ip": "192.168.X.XXX",
        "token": "THEGOODTOKEN",
        "pause": false
    }

I don't have any trace with error, but in my Home app i have the message "no response".

Do you have any idea ?

seikan commented 6 years ago

Can you run homebridge in debug mode and check the log again?

robinfdx commented 6 years ago

Thanks for your reply @seikan, bellow my debug stdout when i have the config file with onyl the vaccum :

STDOUT :
  EventedHTTPServer [::ffff:192.168.1.18] New connection from client +2s
  EventedHTTPServer [::ffff:192.168.1.18] HTTP server listening on port 33081 +1ms
  EventedHTTPServer [::ffff:192.168.1.18] HTTP request: /pair-verify +7ms
  HAPServer [EA:89:3D:E3:CE:31] HAP Request: POST /pair-verify +1ms
  HAPServer [EA:89:3D:E3:CE:31] Pair verify step 1/2 +2ms
  EventedHTTPServer [::ffff:192.168.1.18] HTTP Response is finished +29ms
  EventedHTTPServer [::ffff:192.168.1.18] HTTP request: /pair-verify +25ms
  HAPServer [EA:89:3D:E3:CE:31] HAP Request: POST /pair-verify +1ms
  HAPServer [EA:89:3D:E3:CE:31] Pair verify step 2/2 +2ms
  HAPServer [EA:89:3D:E3:CE:31] Client 44881A5D-3B05-4E67-9E5B-5A46A4295206 verification complete +5ms
  EventedHTTPServer [::ffff:192.168.1.18] HTTP Response is finished +3ms
  EventedHTTPServer [::ffff:192.168.1.18] HTTP request: /accessories +6ms
  HAPServer [EA:89:3D:E3:CE:31] HAP Request: GET /accessories +0ms
  EventedHTTPServer [::ffff:192.168.1.18] HTTP Response is finished +9ms
  thing:miio:55408077 -> (3) {"method":"miIO.info","params":[],"id":201} +2s
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 03 4d 75 cd 5b 14 40 e8 ae 9e 7e c9 cb 9e ee 9a 0d 82 b6 4c d3 65 f7 af> +2s
  thing:miio:55408077 -> (2) {"method":"miIO.info","params":[],"id":301} +2s
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 03 4d 75 cd 5b 14 40 ea 3f 51 30 e3 a7 d4 c3 84 56 0b 80 6e 10 81 f4 7b> +2s
  EventedHTTPServer [::ffff:192.168.1.36] New connection from client +3s
  EventedHTTPServer [::ffff:192.168.1.36] HTTP server listening on port 37473 +2ms
  EventedHTTPServer [::ffff:192.168.1.36] HTTP request: /pair-verify +7ms
  HAPServer [EA:89:3D:E3:CE:31] HAP Request: POST /pair-verify +0ms
  HAPServer [EA:89:3D:E3:CE:31] Pair verify step 1/2 +2ms
  EventedHTTPServer [::ffff:192.168.1.36] HTTP Response is finished +30ms
  EventedHTTPServer [::ffff:192.168.1.36] HTTP request: /pair-verify +24ms
  HAPServer [EA:89:3D:E3:CE:31] HAP Request: POST /pair-verify +0ms
  HAPServer [EA:89:3D:E3:CE:31] Pair verify step 2/2 +3ms
  HAPServer [EA:89:3D:E3:CE:31] Client 44881A5D-3B05-4E67-9E5B-5A46A4295206 verification complete +6ms
  EventedHTTPServer [::ffff:192.168.1.36] HTTP Response is finished +4ms
  EventedHTTPServer [::ffff:192.168.1.36] HTTP request: /accessories +9ms
  HAPServer [EA:89:3D:E3:CE:31] HAP Request: GET /accessories +1ms
  EventedHTTPServer [::ffff:192.168.1.36] HTTP Response is finished +13ms
  thing:miio:55408077 -> (1) {"method":"miIO.info","params":[],"id":401} +2s
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 03 4d 75 cd 5b 14 40 ec f0 58 a8 fc c5 ca 2e df 43 79 4d 42 e7 ab 6b 4f> +2s
  thing:miio:55408077 -> (0) {"method":"miIO.info","params":[],"id":501} +2s
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 03 4d 75 cd 5b 14 40 ee 6f 5c 72 1d d8 9d ac ed e8 82 52 fc ad 1f a3 2d> +2s
  miio:network Releasing reference to network +12s
  miio:network Network no longer active, destroying socket +1ms
[2018-6-3 19:26:39] [Vacuum Cleaner] Failed to discover Mi Robot Vacuum at 192.168.X.XXX
[2018-6-3 19:26:39] [Vacuum Cleaner] Will retry after 30 seconds
  EventedHTTPServer [::ffff:192.168.1.101] New connection from client +18s
  EventedHTTPServer [::ffff:192.168.1.101] HTTP server listening on port 44741 +1ms
  EventedHTTPServer [::ffff:192.168.1.101] HTTP request: /pair-verify +6ms
  HAPServer [EA:89:3D:E3:CE:31] HAP Request: POST /pair-verify +1ms
  HAPServer [EA:89:3D:E3:CE:31] Pair verify step 1/2 +2ms
  EventedHTTPServer [::ffff:192.168.1.101] HTTP Response is finished +30ms
  EventedHTTPServer [::ffff:192.168.1.101] HTTP request: /pair-verify +46ms
  HAPServer [EA:89:3D:E3:CE:31] HAP Request: POST /pair-verify +0ms
  HAPServer [EA:89:3D:E3:CE:31] Pair verify step 2/2 +3ms
  HAPServer [EA:89:3D:E3:CE:31] Client 53B464B5-8F97-4CA8-9FE5-746717D5CE7B verification complete +6ms
  EventedHTTPServer [::ffff:192.168.1.101] HTTP Response is finished +4ms
  EventedHTTPServer [::ffff:192.168.1.101] HTTP request: /accessories +10ms
  HAPServer [EA:89:3D:E3:CE:31] HAP Request: GET /accessories +1ms
  EventedHTTPServer [::ffff:192.168.1.101] HTTP Response is finished +13ms
  miio:network Grabbing reference to network +30s
  miio:network Making network active, creating socket +1ms
  thing:miio:55408077 Using manual token: 646759694e4752614a4231424f6c7a74 +32s
  miio:network Network bound to port 57438 +5ms
  thing:miio:55408077 -> (5) {"method":"miIO.info","params":[],"id":502} +5ms
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 03 4d 75 cd 5b 14 41 0e 95 d0 b4 e4 ac ea 26 75 36 27 6b b8 6b e9 fc f1> +32s
  thing:miio:55408077 -> (4) {"method":"miIO.info","params":[],"id":602} +2s
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 03 4d 75 cd 5b 14 41 10 f2 97 7c 3e 67 2e 6b 28 2b 27 f8 82 c4 50 d3 dc> +2s
  thing:miio:55408077 -> (3) {"method":"miIO.info","params":[],"id":702} +2s
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 03 4d 75 cd 5b 14 41 12 bf 39 59 a4 4b b5 02 3b 09 c6 fa ce 01 df 37 d5> +2s
  thing:miio:55408077 -> (2) {"method":"miIO.info","params":[],"id":802} +2s
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 03 4d 75 cd 5b 14 41 14 88 9d b2 47 57 f8 41 a1 a1 78 34 9e 6d 4b 26 b2> +2s
  thing:miio:55408077 -> (1) {"method":"miIO.info","params":[],"id":902} +2s
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 03 4d 75 cd 5b 14 41 16 fd 43 a8 d6 ab e9 01 86 6f 6b 22 8e 8a 54 4e 2a> +2s
  thing:miio:55408077 -> (0) {"method":"miIO.info","params":[],"id":1002} +2s
  miio:packet -> <Buffer 21 31 00 50 00 00 00 00 03 4d 75 cd 5b 14 41 18 ac d1 b1 92 27 08 89 f7 7f 0e 61 90 4f 2c eb b8> +2s
  miio:network Releasing reference to network +12s
  miio:network Network no longer active, destroying socket +1ms
[2018-6-3 19:27:21] [Vacuum Cleaner] Failed to discover Mi Robot Vacuum at 192.168.X.XXX
[2018-6-3 19:27:21] [Vacuum Cleaner] Will retry after 30 seconds

Do you have need more information ?

J7mbo commented 6 years ago

I also have a 'No Response'.

I may have read something to do with Xiaomi's latest firmware update changing the token at a different time now or something, but I can't find the link. Maybe unrelated or not.

Ugmaxie commented 6 years ago

The same issue, unfortunately. But I'm not sure about the dynamic token, because I've got Xiaomi AC Partner device and to use it as AC remote I have to use token - and it works perfectly from day to day.

But after using homebridge-xiaomi-mi-robot-vacuum I've got Not Responding for whole devices including bridge itself. And of course, I'd removed accessories folder and restart and reconnect homebridge to Apple Home.

J7mbo commented 6 years ago

Great to see that it's not just me.

From my side, I did have two Xiaomi Yeelights working, then I added this this plugin, and it did not affect the Yeelights as they're still working :)

J7mbo commented 6 years ago

PS I've noticed in some other tutorials (there's a German one) that the token is not something like 19 characters it's 30 characters plus... what's the length of your token @Ugmaxie?

Ugmaxie commented 6 years ago

I've got token of 32 characters, @J7mbo ... It was obtained from iOS dump, seeking in Mi DB file via SQLViewer or smth like that, a certain string and transforming that data to a proper token. At the first time it worked perfectly, but after some time passed it became to fail (remotely via 3G network away of home) and at last it makes whole homebridge to fail. No ideas why it happens.

J7mbo commented 6 years ago

I started again from scratch, download an unencrypted iTunes backup, went into the sqlite file, ran: SELECT ZTOKEN FROM ZDEVICE which you'll note there's no FROM here, which only yielded on huge token anyway. Did the decryption thing for that, all worked :)

I followed this: https://forum.smartapfel.de/forum/thread/370-xiaomi-token-auslesen/?postID=7021#post7021.

Hope that helps someone :)

ageorgios commented 6 years ago

I followed this: https://forum.smartapfel.de/forum/thread/370-xiaomi-token-auslesen/?postID=7021#post7021.

and worked!

kalibannez commented 5 years ago

Approving that instruction at https://forum.smartapfel.de/forum/thread/370-xiaomi-token-auslesen/?postID=7021#post7021 is working! I used the variant 1 (google translator will help you).

GerLan commented 5 years ago

if you have a android tablet/phone lying around the following way to get the token is much easier (sorry, German forum again): https://www.loxwiki.eu/display/LOXBERRY/Token+extrahieren