viomi.vacuum.v7 ?

Can you add the viomi.vacuum.v7?

Please test the GitHub #master branch:
sudo su -
npm install -g nicoh88/homebridge-xiaomi-roborock-vacuum#master

Ich hab gerade mal gesehen das du ja aus good Old Germany kommst. :)
Also ich hab diesen Fehler Output nachdem ich deine Version installiert hab:

Started Homebridge.
pam_unix(sudo:session): session closed for user root
[2020-2-3 14:40:02] Loaded config.json with 3 accessories and 2 platforms.
[2020-2-3 14:40:02] ---
[2020-2-3 14:40:02] Loaded plugin: homebridge-config-ui-x
[2020-2-3 14:40:02] Registering platform 'homebridge-config-ui-x.config'
[2020-2-3 14:40:02] ---
[2020-2-3 14:40:03] Loaded plugin: homebridge-eveatmo
[2020-2-3 14:40:03] Registering platform 'homebridge-eveatmo.eveatmo'
[2020-2-3 14:40:03] ---
[2020-2-3 14:40:03] Plugin /usr/lib/node_modules/homebridge-hue requires Node version of ^12.14.1 which does not satisfy the current Node version of v12.14.0. You may need to upgrade your installation of Node.
[2020-2-3 14:40:05] Loaded plugin: homebridge-hue
[2020-2-3 14:40:05] Registering platform 'homebridge-hue.Hue'
[2020-2-3 14:40:05] ---
[2020-2-3 14:40:05] Loaded plugin: homebridge-philipstv-enhanced-x
[2020-2-3 14:40:05] Registering accessory 'homebridge-philipstv-enhanced-x.PhilipsTV'
[2020-2-3 14:40:05] ---
[2020-2-3 14:40:06] Loaded plugin: homebridge-sonos
[2020-2-3 14:40:06] Registering accessory 'homebridge-sonos.Sonos'
[2020-2-3 14:40:06] ---
[2020-2-3 14:40:06] Loaded plugin: homebridge-xiaomi-roborock-vacuum
[2020-2-3 14:40:06] Registering accessory 'homebridge-xiaomi-roborock-vacuum.XiaomiRoborockVacuum'
[2020-2-3 14:40:06] ---
[2020-2-3 14:40:06] Loading 2 platforms...
[2020-2-3 14:40:06] [Config] Initializing config platform...
[2020-2-3 14:40:07] [Config] Spawning homebridge-config-ui-x with PID 26639
[2020-2-3 14:40:07] [eveatmo platform] Initializing eveatmo platform...
[2020-2-3 14:40:09] [eveatmo platform] Loading new data from API for: weatherstation
[2020-2-3 14:40:09] Loading 3 accessories...
[2020-2-3 14:40:09] [Boxen Sonos] Initializing Sonos accessory...
[2020-2-3 14:40:09] [TV] Initializing PhilipsTV accessory...
[2020-2-3 14:40:09] [TV] Model year: 2018
[2020-2-3 14:40:09] [TV] API version: 6
[2020-2-3 14:40:09] [TV] done setting up menu item:<PHONE_NUMBER>
[2020-2-3 14:40:09] [Xiaomi Mi Robot Vaccum 1st Generation] Initializing XiaomiRoborockVacuum accessory...

[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | No vacuum cleaner is discovered yet.
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getSpeed | No vacuum cleaner is discovered yet.
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getBattery | No vacuum cleaner is discovered yet.
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCharging | No vacuum cleaner is discovered yet.
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getBatteryLow | No vacuum cleaner is discovered yet.
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getPauseState | No vacuum cleaner is discovered yet.
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getDocked | No vacuum cleaner is discovered yet.
[2020-2-3 14:40:20] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
[2020-2-3 14:40:20] [Boxen Sonos] Current volume: 7
[2020-2-3 14:40:20] [Boxen Sonos] Current state for Sonos: stopped
[2020-2-3 14:40:21] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Connected to: <IP_ADDRESS>
[2020-2-3 14:40:21] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Model: viomi.vacuum.v7
[2020-2-3 14:40:21] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | State: undefined
[2020-2-3 14:40:21] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | FanSpeed: undefined
[2020-2-3 14:40:21] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | BatteryLevel: undefined
[2020-2-3 14:40:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v7 | Cleaning is false
[2020-2-3 14:40:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[2020-2-3 14:40:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBattery | viomi.vacuum.v7 | Batterylevel is undefined%
[2020-2-3 14:40:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCharging | viomi.vacuum.v7 | Charging is false (Status is undefined)
[2020-2-3 14:40:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v7 | Batterylevel is undefined%
[2020-2-3 14:40:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getPauseState | viomi.vacuum.v7 | Pause possible is false
[2020-2-3 14:40:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getDocked | viomi.vacuum.v7 | Robot Docked is false (Status is undefined)
[2020-2-3 14:40:23] [Boxen Sonos] Current state for Sonos: stopped
[2020-2-3 14:40:23] [Boxen Sonos] Current volume: 7
[2020-2-3 14:40:33] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getSerialNumber | Failed getting the firmware version. Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio/lib/network.js:493:18)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
code: 'timeout'
}
[2020-2-3 14:40:33] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getDevice | get_serial_number | Error: Call to device timed out
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF getFirmware | viomi.vacuum.v7 | Firmwareversion is 3.5.3_0045
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Firmwareversion: 3.5.3_0045
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF changedCleaning | viomi.vacuum.v7 | Cleaning is OFF.
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] MON changedCharging | viomi.vacuum.v7 | ChargingState is now false
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF changedCharging | viomi.vacuum.v7 | Charging is cancelled
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF changedCharging | viomi.vacuum.v7 | Robot not anymore in dock.
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF changedPause | viomi.vacuum.v7 | Paused not possible, no cleaning
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v7 | Cleaning is false
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBattery | viomi.vacuum.v7 | Batterylevel is undefined%
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCharging | viomi.vacuum.v7 | Charging is false (Status is undefined)
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v7 | Batterylevel is undefined%
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF getPauseState | viomi.vacuum.v7 | Pause possible is false
[2020-2-3 14:40:35] [Xiaomi Mi Robot Vaccum 1st Generation] INF getDocked | viomi.vacuum.v7 | Robot Docked is false (Status is undefined)

Wow! From https://github.com/rytilahti/python-miio/issues/550 I can see that model actually names methods and properties in a different way 🤯

I‘m also pretty interested to get the STYJ02YM Xiaomi into Homebridge.
If there is anything I can provide or test let me know! Would be cool if we can get this thing working.
Thanks for your great work!

@Bene2103 have you tried to run it as is? Some models don't require any update at all ;)

Oh! I see! It’s the viomi.vaccum.v7
Last time I checked it follows a different set of commands to retrieve the values.
Luckily we have the python library to use as a reference, so I think it’s doable to do a “translator” between the current set we are using that that one.
I’ll be away from my keyboard in the next few weeks, so can’t promise I’ll be able to jump on it anytime soon. But I’ll keep it in mind if I get any spare time.

Thank you for the logs, btw!

:-)
I've should have written the linkage between the Viomi and the Xiaomi in first place.
When you need any logs or other information let me know.
Here are the references from other topics on Github:
Python-miIO:
https://github.com/rytilahti/python-miio/issues/550#issuecomment-552780952
Home-Assistant:
https://github.com/home-assistant/home-assistant/issues/27268
@afharo
I hope its any kind of vacation :-) so have a good time

Well, I have a viomi.vacuum.v8 and it doesn't work with any plugins...
Any news about this? It would be great to have it in HomeKit!

There's a discussion going on in the linked issue (#150). If I find some time this weekend, I'll try to create a beta version with support to this model.

There's a discussion going on in the linked issue (#150). If I find some time this weekend, I'll try to create a beta version with support to this model.

Thank u very much! 😃

Can you try installing homebridge-xiaomi-roborock-vacuum@next? It should include the initial implementation of added support to ViomiVacuum :)

I installed it and it stop showing the "no response" error, it can connect to the vacuum and get the firmware version, but I'm unable to control it. But it is recognised, I suppose!
Here's the logs:
[18/05/2020, 12:38:51] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getPauseState | No vacuum cleaner is discovered yet.
[18/05/2020, 12:38:51] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
[18/05/2020, 12:38:51] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null
at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:766:32)
at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:772:31)
at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:49
at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26)
at On. (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:26)
at On.emit (events.js:209:13)
at On.EventEmitter.emit (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/EventEmitter.ts:42:22)
at On.Characteristic._this.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Characteristic.ts:451:12)
at /usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Accessory.ts:1219:22
at Array.forEach ()
[18/05/2020, 12:39:04] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Connected to: <IP_ADDRESS>
[18/05/2020, 12:39:04] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Model: viomi.vacuum.v8
[18/05/2020, 12:39:04] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | State: undefined
[18/05/2020, 12:39:04] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | FanSpeed: undefined
[18/05/2020, 12:39:04] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | BatteryLevel: undefined
[18/05/2020, 12:39:16] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getSerialNumber | Failed getting the firmware version. Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
code: 'timeout'
}
[18/05/2020, 12:39:16] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getDevice | get_serial_number | Error: Call to device timed out
[18/05/2020, 12:39:16] [Xiaomi Mi Robot Vaccum 1st Generation] INF getFirmware | viomi.vacuum.v8 | Firmwareversion is 3.5.8_0021
[18/05/2020, 12:39:16] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Firmwareversion: 3.5.8_0021
[18/05/2020, 12:39:24] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:39:24] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v8 | Cleaning is false
[18/05/2020, 12:39:24] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v8 | Batterylevel is undefined%
[18/05/2020, 12:39:24] [Xiaomi Mi Robot Vaccum 1st Generation] INF getDocked | viomi.vacuum.v8 | Robot Docked is false (Status is undefined)
[18/05/2020, 12:39:24] [Xiaomi Mi Robot Vaccum 1st Generation] INF getPauseState | viomi.vacuum.v8 | Pause possible is false
[18/05/2020, 12:39:25] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:39:25] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v8 | Cleaning is false
[18/05/2020, 12:39:25] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v8 | Batterylevel is undefined%
[18/05/2020, 12:39:25] [Xiaomi Mi Robot Vaccum 1st Generation] INF getDocked | viomi.vacuum.v8 | Robot Docked is false (Status is undefined)
[18/05/2020, 12:39:25] [Xiaomi Mi Robot Vaccum 1st Generation] INF getPauseState | viomi.vacuum.v8 | Pause possible is false
[18/05/2020, 12:39:26] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:39:28] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getState | {"code":"timeout"}
[18/05/2020, 12:39:28] [Xiaomi Mi Robot Vaccum 1st Generation] INF getPauseState | viomi.vacuum.v8 | Pause possible is false
[18/05/2020, 12:39:28] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:39:29] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:39:29] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:39:30] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:39:30] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:39:30] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:39:30] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:39:30] [Xiaomi Mi Robot Vaccum 1st Generation] ACT setSpeed | viomi.vacuum.v8 | FanSpeed set to 38 over miIO for "Quiet".
[18/05/2020, 12:39:30] [Xiaomi Mi Robot Vaccum 1st Generation] ACT setCleaning | viomi.vacuum.v8 | Start cleaning, not charging.
[18/05/2020, 12:39:42] [Xiaomi Mi Robot Vaccum 1st Generation] ERR changeFanSpeed | viomi.vacuum.v8 | Failed to set fan speed. Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
code: 'timeout'
}
[18/05/2020, 12:39:42] [Xiaomi Mi Robot Vaccum 1st Generation] ERR setCleaning | viomi.vacuum.v8 | Failed to start cleaning. Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
code: 'timeout'
}
[18/05/2020, 12:39:42] [Xiaomi Mi Robot Vaccum 1st Generation] ERR setCleaning | viomi.vacuum.v8 | Failed to set cleaning to true Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
code: 'timeout'
}
[18/05/2020, 12:40:10] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getState | {"code":"timeout"}
[18/05/2020, 12:40:36] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:40:36] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v8 | Cleaning is false
[18/05/2020, 12:40:36] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v8 | Batterylevel is undefined%
[18/05/2020, 12:40:36] [Xiaomi Mi Robot Vaccum 1st Generation] INF getDocked | viomi.vacuum.v8 | Robot Docked is false (Status is undefined)
[18/05/2020, 12:40:36] [Xiaomi Mi Robot Vaccum 1st Generation] INF getPauseState | viomi.vacuum.v8 | Pause possible is false
[18/05/2020, 12:40:37] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:40:37] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v8 | Cleaning is false
[18/05/2020, 12:40:37] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v8 | Batterylevel is undefined%
[18/05/2020, 12:40:37] [Xiaomi Mi Robot Vaccum 1st Generation] INF getDocked | viomi.vacuum.v8 | Robot Docked is false (Status is undefined)
[18/05/2020, 12:40:37] [Xiaomi Mi Robot Vaccum 1st Generation] INF getPauseState | viomi.vacuum.v8 | Pause possible is false
[18/05/2020, 12:40:37] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:40:37] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 12:40:40] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getState | {"code":"timeout"}

Oh! you've got the viomi.vacuum.v8! I missed that model! Sorry!

Try reinstalling now, please :)
And make sure the dependency miio-nicoh88 is in version 0.2.0-1 (by running npm list miio-nicoh88) :)

Hm, I tried the npm list miio-nicoh88 and I got<EMAIL_ADDRESS>I searched and can't find how to update it, sorry!

You should update the homebridge-xiaomi-roborock-vacuum by running npm install homebridge-xiaomi-roborock-vacuum@next. It's published as a beta, so it might not show up as an update yet in the UI :)

Ok, I did it, uninstalled and installed again and now I can see the miio 0.2.0, but, when installing this time I had this:
JoaoEspadinhaGraca@iMac-de-Joao ~ % sudo npm install homebridge-xiaomi-roborock-vacuum@next
npm WARN saveError ENOENT: no such file or directory, open '/Users/JoaoEspadinhaGraca/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/Users/JoaoEspadinhaGraca/package.json'
npm WARN JoaoEspadinhaGraca No description
npm WARN JoaoEspadinhaGraca No repository field.
npm WARN JoaoEspadinhaGraca No README data
npm WARN JoaoEspadinhaGraca No license field.

<EMAIL_ADDRESS>updated 1 package and audited 384 packages in 1.939s

15 packages are looking for funding
run npm fund for details
found 21 low severity vulnerabilities
run npm audit fix to fix them, or npm audit for details
JoaoEspadinhaGraca@iMac-de-Joao ~ % npm audit fix
npm ERR! code EAUDITNOPJSON
npm ERR! audit No package.json found: Cannot audit a project without a package.json
npm ERR!      /Users/JoaoEspadinhaGraca/.npm/_logs/2020-05-18T13_01_51_835Z-debug.log
JoaoEspadinhaGraca@iMac-de-Joao ~ %

yeah, dismiss the audit issues. They are unrelated. We'll work on them on another issue :)

Ok thank u! I can't control the vacuum but at least its not with "no response", I'll be waiting for the next realese! Thank u very much!

did you restart homebridge after installing the updated module?

Yes I restarted, and I get this:
[18/05/2020, 18:58:31] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v8 | Cleaning is false
[18/05/2020, 18:58:31] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v8 | Batterylevel is undefined%
[18/05/2020, 18:58:31] [Xiaomi Mi Robot Vaccum 1st Generation] INF getDocked | viomi.vacuum.v8 | Robot Docked is false (Status is undefined)
[18/05/2020, 18:58:31] [Xiaomi Mi Robot Vaccum 1st Generation] INF getPauseState | viomi.vacuum.v8 | Pause possible is false
[18/05/2020, 18:58:31] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is undefined over miIO. Converting to HomeKit
[18/05/2020, 18:58:40] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getSerialNumber | Failed getting the firmware version. Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
code: 'timeout'
}
[18/05/2020, 18:58:40] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getDevice | get_serial_number | Error: Call to device timed out
[18/05/2020, 18:58:40] [Xiaomi Mi Robot Vaccum 1st Generation] INF getFirmware | viomi.vacuum.v8 | Firmwareversion is 3.5.8_0021
[18/05/2020, 18:58:40] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Firmwareversion: 3.5.8_0021
[18/05/2020, 18:58:52] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getState | {"code":"timeout"}

Thanks! I'll see if I can find out how to get the missing bits

Thank u very much!

I see you updated the plugin, any news about the viomi implementation? Do you think it will be possible to use?
If there's anything I can help, with logs or something, I will!
Thank u very much in advance!

Hi @ojoaosemtil
We've done some improvements to get closer to support it. We have already "translated" some method to the Viomi models, but it looks like it's not entirely working yet and we have a bit more of work to do.
I'll keep you posted because I'll def need some beta testers since I don't have that model. Thanks!

Great! Count me in!

…need some beta testers…
I‘m also in!
I wrote some super simple scripts to call the python-miio functions to start the robot and do some room cleaning. Maybe those are helpful? But I know you are not using python-miio

Can you please try again with<EMAIL_ADDRESS>

I tried it and when I installed this appeared:
/usr/local/bin/miio -> /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/miio/cli/index.js

<EMAIL_ADDRESS>install /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/deasync
node ./build.js

darwin-x64-node-12 exists; testing
Binary is fine; exiting
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.

<EMAIL_ADDRESS>added 124 packages from 102 contributors in 3.294s

Then, after restarting homebridge, this:
[22/05/2020, 18:09:39] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getPauseState | No vacuum cleaner is discovered yet.
[22/05/2020, 18:09:39] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
[22/05/2020, 18:09:39] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null
at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32)
at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31)
at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:49
at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26)
at On. (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:26)
at On.emit (events.js:209:13)
at On.EventEmitter.emit (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/EventEmitter.ts:42:22)
at On.Characteristic._this.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Characteristic.ts:462:12)
at /usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Accessory.ts:1215:22
at Array.forEach ()
[22/05/2020, 18:09:39] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getWaterSpeed | No vacuum cleaner is discovered yet.
[22/05/2020, 18:09:39] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
and this is happening in loop now

When I quit homebridge again, this appeared:
[22/05/2020, 18:16:20] Got SIGINT, shutting down Homebridge...
[22/05/2020, 18:16:21] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Connected to: <IP_ADDRESS>
[22/05/2020, 18:16:21] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Model: viomi.vacuum.v8
[22/05/2020, 18:16:21] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | State: unknown-undefined
[22/05/2020, 18:16:21] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | FanSpeed: undefined
[22/05/2020, 18:16:21] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | BatteryLevel: undefined
And, doing an "npm list homebridge-xiaomi-roborock-vacuum" it keeps telling me its<EMAIL_ADDRESS>wasn't supposed to be 0.11.0?

I uninstalled everything, now the npm list shows I'm with 0.10.1

but it keeps saying it's in 0.10.1
You need to make sure it's running the version 0.11.0-0. Otherwise, the test doesn't count.

There are multiple ways to install homebridge. If you tell me how you did it, I can try to point you in the right direction to update it to the beta (or wait until it's a final release)

Well, I did sudo npm install -g<EMAIL_ADDRESS>as you said in the first place, then, as I saw it didn't work I tried the same but @next just like we did in the last beta

how about homebridge? How are you running it? How did you install it? Understanding it, I'll know what command to suggest you to run to update to the beta

I installed homebridge just like it says in here.
I uninstalled and installed again the plugin and now, It says it's in 0.11.0 - I'm on a Mac.
This happens when I open the Home app:
[22/05/2020, 19:04:53] Homebridge is running on port 51826.
[22/05/2020, 19:04:53] [TV] getPowerState with : http://<IP_ADDRESS>:1925/6/powerstate
[22/05/2020, 19:04:53] [Soundbar] WebSocket client connected on endpoint ws://<IP_ADDRESS>:10000/sony/audio
[22/05/2020, 19:04:53] [Soundbar] WebSocket client connected on endpoint ws://<IP_ADDRESS>:10000/sony/avContent
[22/05/2020, 19:04:53] [Soundbar] Network standby is currently on
[22/05/2020, 19:05:10] [TV] getPowerState with : http://<IP_ADDRESS>:1925/6/powerstate
[22/05/2020, 19:05:10] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getPauseState | No vacuum cleaner is discovered yet.
[22/05/2020, 19:05:10] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device
[22/05/2020, 19:05:10] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null
at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32)
at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31)
at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:49
at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26)
at On. (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:26)
at On.emit (events.js:209:13)
at On.EventEmitter.emit (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/EventEmitter.ts:42:22)
at On.Characteristic._this.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Characteristic.ts:462:12)
at /usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/src/lib/Accessory.ts:1215:22
at Array.forEach ()

After a few reboots, this happens:
[22/05/2020, 19:10:01] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Connected to: <IP_ADDRESS>
[22/05/2020, 19:10:01] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Model: viomi.vacuum.v8
[22/05/2020, 19:10:01] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | State: unknown-undefined
[22/05/2020, 19:10:01] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | FanSpeed: undefined
[22/05/2020, 19:10:01] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | BatteryLevel: undefined
[22/05/2020, 19:10:13] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getSerialNumber | Failed getting the serial number. Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/miio/lib/network.js:519:23)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
code: 'timeout'
}
[22/05/2020, 19:10:13] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Serialnumber: Unknown
[22/05/2020, 19:10:13] [Xiaomi Mi Robot Vaccum 1st Generation] INF getFirmware | viomi.vacuum.v8 | Firmwareversion is 3.5.8_0021
[22/05/2020, 19:10:13] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Firmwareversion: 3.5.8_0021
[22/05/2020, 19:10:34] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v8 | Cleaning is false
[22/05/2020, 19:10:34] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v8 | Batterylevel is -1%
[22/05/2020, 19:10:34] [TV] getPowerState with : http://<IP_ADDRESS>:1925/6/powerstate
[22/05/2020, 19:10:34] [Xiaomi Mi Robot Vaccum 1st Generation] INF getDocked | viomi.vacuum.v8 | Robot Docked is false (Status is [object Object])
[22/05/2020, 19:10:34] [Xiaomi Mi Robot Vaccum 1st Generation] INF getPauseState | viomi.vacuum.v8 | Pause possible is false
[22/05/2020, 19:10:34] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:10:55] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v8 | Cleaning is false
[22/05/2020, 19:10:55] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:10:55] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v8 | Batterylevel is -1%

Yeah, from the first logs, it looks like it was failing to connect.
[22/05/2020, 19:05:10] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getPauseState | No vacuum cleaner is discovered yet.
[22/05/2020, 19:05:10] [Xiaomi Mi Robot Vaccum 1st Generation] INF ensureDevice | undefined | The socket was destroyed or not initialised, initialising the device

The second one looks more like it. Although these bits don't look right...
[22/05/2020, 19:10:55] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:10:55] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v8 | Batterylevel is -1%

Can you trigger a clean by sliding the fan speed up?

Also, do you mind updating to 0.11.0-2? I fixed a thing is the logs :)

Ok, updated to 0.11.0-2
I can trigger a clean with the fan yes!
[22/05/2020, 19:42:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v8 | Cleaning is false
[22/05/2020, 19:42:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getDocked | viomi.vacuum.v8 | Robot Docked is false (Status is unknown-undefined)
[22/05/2020, 19:42:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getPauseState | viomi.vacuum.v8 | Pause possible is false
[22/05/2020, 19:42:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:42:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v8 | Batterylevel is -1%
[22/05/2020, 19:42:23] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:42:28] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:42:29] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:42:30] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:42:30] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:42:30] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:42:30] [Xiaomi Mi Robot Vaccum 1st Generation] ACT setSpeed | viomi.vacuum.v8 | FanSpeed set to 0 over miIO for "Silent".
[22/05/2020, 19:42:30] [Xiaomi Mi Robot Vaccum 1st Generation] ACT setCleaning | viomi.vacuum.v8 | Start cleaning, not charging.
[22/05/2020, 19:42:32] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getSerialNumber | Failed getting the serial number. Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/miio/lib/network.js:519:23)
at listOnTimeout (internal/timers.js:531:17)
at processTimers (internal/timers.js:475:7) {
code: 'timeout'
}
[22/05/2020, 19:42:32] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Serialnumber: Unknown
[22/05/2020, 19:42:32] [Xiaomi Mi Robot Vaccum 1st Generation] INF getFirmware | viomi.vacuum.v8 | Firmwareversion is 3.5.8_0021
[22/05/2020, 19:42:32] [Xiaomi Mi Robot Vaccum 1st Generation] STA getDevice | Firmwareversion: 3.5.8_0021
[22/05/2020, 19:42:42] [Xiaomi Mi Robot Vaccum 1st Generation] INF getSpeed | viomi.vacuum.v8 | Fanspeed is null over miIO. Converting to HomeKit
[22/05/2020, 19:42:53] [Xiaomi Mi Robot Vaccum 1st Generation] INF getDocked | viomi.vacuum.v8 | Robot Docked is false (Status is unknown-undefined)
[22/05/2020, 19:42:53] [Xiaomi Mi Robot Vaccum 1st Generation] INF getCleaning | viomi.vacuum.v8 | Cleaning is false
[22/05/2020, 19:42:53] [Xiaomi Mi Robot Vaccum 1st Generation] INF getBatteryLow | viomi.vacuum.v8 | Batterylevel is -1%

Sorry I closed this... It was because I merged the changes that were meant to fix the issue 😅
Please, feel free to reopen it if the latest release is not working for your model.

Hello afharo, thanks for all your work, I'm following this thread since few weeks, and I'm happy to see that you are working on this enhancement.
I just try the last released version and still experiencing issues.

<EMAIL_ADDRESS>
Here are my logs :
[5/23/2020, 09:20:11] [Aspirateur] STA getDevice | Connected to: <IP_ADDRESS>
[5/23/2020, 09:20:11] [Aspirateur] STA getDevice | Model: viomi.vacuum.v7
[5/23/2020, 09:20:11] [Aspirateur] STA getDevice | State: undefined
[5/23/2020, 09:20:11] [Aspirateur] STA getDevice | FanSpeed: undefined
[5/23/2020, 09:20:11] [Aspirateur] STA getDevice | BatteryLevel: undefined
[5/23/2020, 09:20:23] [Aspirateur] ERR getSerialNumber | Failed getting the firmware version. Error: Call to device timed out
    at Timeout.retry [as _onTimeout] (/usr/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
    at listOnTimeout (internal/timers.js:549:17)
    at processTimers (internal/timers.js:492:7) {
  code: 'timeout'
}
[5/23/2020, 09:20:23] [Aspirateur] ERR getDevice | get_serial_number | Error: Call to device timed out
[5/23/2020, 09:20:24] [Aspirateur] INF getFirmware | viomi.vacuum.v7 | Firmwareversion is 3.5.3_0047
[5/23/2020, 09:20:24] [Aspirateur] STA getDevice | Firmwareversion: 3.5.3_0047
[5/23/2020, 09:20:24] [Aspirateur] INF changedCleaning | viomi.vacuum.v7 | Cleaning is OFF.
[5/23/2020, 09:20:24] [Aspirateur] MON changedCharging | viomi.vacuum.v7 | ChargingState is now false
[5/23/2020, 09:20:24] [Aspirateur] INF changedCharging | viomi.vacuum.v7 | Charging is cancelled
[5/23/2020, 09:20:24] [Aspirateur] INF changedCharging | viomi.vacuum.v7 | Robot not anymore in dock.
[5/23/2020, 09:20:26] [Aspirateur] ACT setCleaning | viomi.vacuum.v7 | Start cleaning, not charging.
[5/23/2020, 09:20:38] [Aspirateur] INF getCleaning | viomi.vacuum.v7 | Cleaning is false
[5/23/2020, 09:20:38] [Aspirateur] INF getDocked | viomi.vacuum.v7 | Robot Docked is false (Status is undefined)
[5/23/2020, 09:20:38] [Aspirateur] INF getBatteryLow | viomi.vacuum.v7 | Batterylevel is undefined%
[5/23/2020, 09:20:38] [Aspirateur] ERR setCleaning | viomi.vacuum.v7 | Failed to set cleaning to true Error: Call to device timed out
    at Timeout.retry [as _onTimeout] (/usr/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
    at listOnTimeout (internal/timers.js:549:17)
    at processTimers (internal/timers.js:492:7) {
  code: 'timeout'
}
[5/23/2020, 09:20:39] [Aspirateur] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[5/23/2020, 09:20:49] [Aspirateur] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[5/23/2020, 09:20:49] [Aspirateur] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[5/23/2020, 09:20:50] [Aspirateur] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[5/23/2020, 09:20:50] [Aspirateur] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[5/23/2020, 09:20:50] [Aspirateur] ACT setSpeed | viomi.vacuum.v7 | FanSpeed set to 60 over miIO for "Balanced".
[5/23/2020, 09:20:50] [Aspirateur] ACT setCleaning | viomi.vacuum.v7 | Start cleaning, not charging.
[5/23/2020, 09:21:02] [Aspirateur] ERR setCleaning | viomi.vacuum.v7 | Failed to set cleaning to true Error: Call to device timed out
    at Timeout.retry [as _onTimeout] (/usr/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493
    at listOnTimeout (internal/timers.js:549:17)
    at processTimers (internal/timers.js:492:7) {
  code: 'timeout'
}
[5/23/2020, 09:21:06] [Aspirateur] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[5/23/2020, 09:21:07] [Aspirateur] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[5/23/2020, 09:21:07] [Aspirateur] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[5/23/2020, 09:21:15] [Aspirateur] INF getSpeed | viomi.vacuum.v7 | Fanspeed is undefined over miIO. Converting to HomeKit
[5/23/2020, 09:21:15] [Aspirateur] ACT setSpeed | viomi.vacuum.v7 | FanSpeed set to 38 over miIO for "Quiet".
[5/23/2020, 09:21:15] [Aspirateur] ACT setCleaning | viomi.vacuum.v7 | Start cleaning, not charging.
[5/23/2020, 09:21:27] [Aspirateur] ERR setCleaning | viomi.vacuum.v7 | Failed to set cleaning to true Error: Call to device timed out
    at Timeout.retry [as _onTimeout] (/usr/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493
    at listOnTimeout (internal/timers.js:549:17)
    at processTimers (internal/timers.js:492:7) {
  code: 'timeout'
}

For your information I could not trigger a cleaning by sliding the fan speed.
Thanks again for your work ;)

 FanSpeed set to 38 over miIO for "Quiet"
It doesn't look like viomi speed. Should have been 1 or 2

Sorry for the delay
I've tried 0.11.0-2 and the following happens:
May 23 13:05:51 raspberrypi homebridge[2660]: [5/23/2020, 13:05:51] [Xiaomi Mi Robot Vaccum 1st Generation] Initializing XiaomiRoborockVacuum accessory... May 23 13:05:51 raspberrypi homebridge[2660]: [5/23/2020, 13:05:51] [Xiaomi Mi Robot Vaccum 1st Generation] INF createRoom | undefined | Room Livingroom (16) May 23 13:05:51 raspberrypi homebridge[2660]: [5/23/2020, 13:05:51] [Xiaomi Mi Robot Vaccum 1st Generation] INF createRoom | undefined | Room Kitchen (17) May 23 13:05:51 raspberrypi homebridge[2660]: HAP Warning: Characteristic 000000AC-0000-1000-8000-0026BB765291 not in required or optional characteristics for service 00000040-0000-1000-8000-0026BB765291. Adding anyway. May 23 13:05:51 raspberrypi homebridge[2660]: HAP Warning: Characteristic 000000AB-0000-1000-8000-0026BB765291 not in required or optional characteristics for service 00000040-0000-1000-8000-0026BB765291. Adding anyway.
The Robot shows in HomeKit but as "not responding" and I cannot activate any of the switches.
Heres the Log output:
May 23 13:06:13 raspberrypi homebridge[2660]: [5/23/2020, 13:06:13] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:13 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:13 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:13 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:49 May 23 13:06:13 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:13 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:26) May 23 13:06:13 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:13 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:13 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:13 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:13 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:13 raspberrypi homebridge[2660]: [5/23/2020, 13:06:13] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:13 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:13 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:13 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:49 May 23 13:06:13 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:13 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:26) May 23 13:06:13 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:13 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:13 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:13 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:13 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:13 raspberrypi homebridge[2660]: [5/23/2020, 13:06:13] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:13 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:13 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:13 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:49 May 23 13:06:13 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:13 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:26) May 23 13:06:13 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:13 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:13 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:13 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:13 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:15 raspberrypi homebridge[2660]: [5/23/2020, 13:06:15] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:15 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:15 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:15 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:49 May 23 13:06:15 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:15 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:26) May 23 13:06:15 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:15 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:15 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:15 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:15 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:15 raspberrypi homebridge[2660]: [5/23/2020, 13:06:15] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:15 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:15 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:15 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:49 May 23 13:06:15 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:15 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:26) May 23 13:06:15 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:15 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:15 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:15 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:15 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:15 raspberrypi homebridge[2660]: [5/23/2020, 13:06:15] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:15 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:15 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:15 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:49 May 23 13:06:15 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:15 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:26) May 23 13:06:15 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:15 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:15 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:15 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:15 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:17 raspberrypi homebridge[2660]: [5/23/2020, 13:06:17] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:17 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:17 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:17 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:49 May 23 13:06:17 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:17 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:26) May 23 13:06:17 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:17 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:17 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:17 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:17 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:17 raspberrypi homebridge[2660]: [5/23/2020, 13:06:17] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:17 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:17 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:17 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:49 May 23 13:06:17 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:17 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:26) May 23 13:06:17 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:17 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:17 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:17 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:17 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:17 raspberrypi homebridge[2660]: [5/23/2020, 13:06:17] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:17 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:17 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:17 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:49 May 23 13:06:17 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:17 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:26) May 23 13:06:17 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:17 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:17 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:17 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:17 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:18 raspberrypi homebridge[2660]: [5/23/2020, 13:06:18] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:18 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:18 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:18 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:49 May 23 13:06:18 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:18 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:26) May 23 13:06:18 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:18 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:18 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:18 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:18 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:18 raspberrypi homebridge[2660]: [5/23/2020, 13:06:18] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:18 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:18 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:18 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:49 May 23 13:06:18 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:18 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:26) May 23 13:06:18 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:18 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:18 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:18 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:18 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:18 raspberrypi homebridge[2660]: [5/23/2020, 13:06:18] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:18 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:18 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:18 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:49 May 23 13:06:18 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:18 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:26) May 23 13:06:18 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:18 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:18 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:18 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:18 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:47 raspberrypi homebridge[2660]: [5/23/2020, 13:06:47] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:47 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:47 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:47 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:49 May 23 13:06:47 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:47 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:26) May 23 13:06:47 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:47 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:47 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:47 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:47 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:47 raspberrypi homebridge[2660]: [5/23/2020, 13:06:47] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:47 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:47 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:47 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:49 May 23 13:06:47 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:47 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:149:26) May 23 13:06:47 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:47 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:47 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:47 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:47 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8) May 23 13:06:47 raspberrypi homebridge[2660]: [5/23/2020, 13:06:47] [Xiaomi Mi Robot Vaccum 1st Generation] ERR getCleaning | Failed getting the cleaning status. TypeError: Cannot read property 'property' of null May 23 13:06:47 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.get isCleaning [as isCleaning] (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:791:32) May 23 13:06:47 raspberrypi homebridge[2660]:     at XiaomiRoborockVacuum.getCleaning (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:797:31) May 23 13:06:47 raspberrypi homebridge[2660]:     at /usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:49 May 23 13:06:47 raspberrypi homebridge[2660]:     at module.exports (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/lib/callbackify.js:5:26) May 23 13:06:47 raspberrypi homebridge[2660]:     at Characteristic.On.<anonymous> (/usr/local/lib/node_modules/homebridge-xiaomi-roborock-vacuum/index.js:970:26) May 23 13:06:47 raspberrypi homebridge[2660]:     at Characteristic.On.emit (events.js:311:20) May 23 13:06:47 raspberrypi homebridge[2660]:     at Characteristic.On.Characteristic.getValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) May 23 13:06:47 raspberrypi homebridge[2660]:     at Bridge.<anonymous> (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:771:20) May 23 13:06:47 raspberrypi homebridge[2660]:     at Array.forEach (<anonymous>) May 23 13:06:47 raspberrypi homebridge[2660]:     at Bridge.Accessory._handleGetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:735:8)

 FanSpeed set to 38 over miIO for "Quiet"
It doesn't look like viomi speed. Should have been 1 or 2

Hello,
The slider in home app on iPhone is graduated from 0 to 100, I  tried to put a different speed but he seems to only send 38 as speed in logs. Oo
Have a good day

Hi @obouteleux and @Bene2103 can you try with the latest version? 0.11.2? Some folks are reporting it works fine for them (although missing the sensors and battery statuses)

Thank you very much for your awesome work!
I've tried 0.11.2 and yes it works kinda. I saw some strange behaviour, when i startet a room cleaning per Room-ID and the robot leaves the dock and on Mi-Home App i see "Standby". A few moments later the robot goes back to Dock. A second room cleaning was then a success.
I've set up two rooms via your plugin, one room switch says "not responding" in the app and the other works as it should be.
I'm going to test this afternoon and i hope i can give you feedback tomorrow.

Thank you @Bene2103
With the help of @ojoaosemtil we found a couple of improvements that could be made and worked around them (still some more to come). If you can follow up on #216 so we can have 1 thread to follow up, that'd be amazing :)

hello @afharo, sorry for the delay I wasn't at home for few days because of work, I just tried the 0.11.2 and the last one the 0.11.9 and in both case I got the same error than before :
[5/28/2020, 22:43:49] [Aspirateur] STA getDevice | Connected to: <IP_ADDRESS>
[5/28/2020, 22:43:49] [Aspirateur] STA getDevice | Model: viomi.vacuum.v7
[5/28/2020, 22:43:49] [Aspirateur] STA getDevice | State: undefined
[5/28/2020, 22:43:49] [Aspirateur] STA getDevice | FanSpeed: undefined
[5/28/2020, 22:43:49] [Aspirateur] STA getDevice | BatteryLevel: undefined
[5/28/2020, 22:43:57] [Aspirateur] ACT setCleaning | viomi.vacuum.v7 | Start cleaning, not charging.
[5/28/2020, 22:44:01] [Aspirateur] ERR getSerialNumber | Failed getting the firmware version. Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
at listOnTimeout (internal/timers.js:549:17)
at processTimers (internal/timers.js:492:7) {
code: 'timeout'
}
[5/28/2020, 22:44:01] [Aspirateur] ERR getDevice | get_serial_number | Error: Call to device timed out
[5/28/2020, 22:44:01] [Aspirateur] INF getFirmware | viomi.vacuum.v7 | Firmwareversion is 3.5.3_0047
[5/28/2020, 22:44:01] [Aspirateur] STA getDevice | Firmwareversion: 3.5.3_0047
[5/28/2020, 22:44:01] [Aspirateur] INF changedCleaning | viomi.vacuum.v7 | Cleaning is OFF.
[5/28/2020, 22:44:01] [Aspirateur] MON changedCharging | viomi.vacuum.v7 | ChargingState is now false
[5/28/2020, 22:44:01] [Aspirateur] INF changedCharging | viomi.vacuum.v7 | Charging is cancelled
[5/28/2020, 22:44:01] [Aspirateur] INF changedCharging | viomi.vacuum.v7 | Robot not anymore in dock.
[5/28/2020, 22:44:10] [Aspirateur] ERR setCleaning | viomi.vacuum.v7 | Failed to set cleaning to true Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
at listOnTimeout (internal/timers.js:549:17)
at processTimers (internal/timers.js:492:7) {
code: 'timeout'
}
[5/28/2020, 22:44:22] [Aspirateur] ACT setSpeed | viomi.vacuum.v7 | FanSpeed set to 60 over miIO for "Balanced".
[5/28/2020, 22:44:22] [Aspirateur] ACT setCleaning | viomi.vacuum.v7 | Start cleaning, not charging.
[5/28/2020, 22:44:34] [Aspirateur] ERR setCleaning | viomi.vacuum.v7 | Failed to set cleaning to true Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
at listOnTimeout (internal/timers.js:549:17)
at processTimers (internal/timers.js:492:7) {
code: 'timeout'
}
[5/28/2020, 22:44:45] [Aspirateur] ACT setCleaning | viomi.vacuum.v7 | Start cleaning, not charging.
[5/28/2020, 22:44:57] [Aspirateur] ERR setCleaning | viomi.vacuum.v7 | Failed to set cleaning to true Error: Call to device timed out
at Timeout.retry [as _onTimeout] (/usr/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18)
at listOnTimeout (internal/timers.js:549:17)
at processTimers (internal/timers.js:492:7) {
code: 'timeout'
}`
Thanks again for all of your work.

@obouteleux this line in the logs proves the update is not right (or maybe you haven't restarted homebridge after the update?):
/usr/lib/node_modules/homebridge-xiaomi-roborock-vacuum/node_modules/miio-nicoh88/lib/network.js:493:18

We no longer use the library miio-nicoh88.

@afharo Thank you ! I don't understand why the update did not work last time, I just uninstalled and reinstalled the plugin and everything work fine :)
I'll switch to #216 to help you improve the integration ;)


Inconsistent position IMGT 21 in kappa chain

With the newest version of ANARCI, I'm getting weird behavior in the kappa chain (IGKV2-30*01).
Submitting without J region gives correct numbering:
anarci --scheme imgt -i DVVMTQSPLSLPVTLGQPASISCRSSQSLVYSDGNTYLNWFQQRPGQSPRRLIYKVSNRDSGVPDRFSGSGSGTDFTLKISRVEAEDVGVYYCMQGT
L 1       D
L 2       V
L 3       V
...
L 19      A
L 20      S
L 21      I   <----
L 22      S
L 23      C
...

Submitting with J region produces a gap at position 21:
anarci --scheme imgt -i DVVMTQSPLSLPVTLGQPASISCRSSQSLVYSDGNTYLNWFQQRPGQSPRRLIYKVSNRDSGVPDRFSGSGSGTDFTLKISRVEAEDVGVYYCMQGTFGQGTKVEIK
L 1       D
L 2       V
L 3       V
...
L 19      A
L 20      S
L 21      -   <----
L 22      I
L 23      S
L 24      C
...

Which shifts the whole remainder of the chain after position 21 by one position number.

This gap at IMGT position 21 is created by latest ANARCI version in all the following germlines:

IGKV1: IGKV1-12*01, IGKV1-12*02, IGKV1-13*01, IGKV1-13*02, IGKV1-16*01, IGKV1-16*02, IGKV1-17*01, IGKV1-17*02, IGKV1-17*03, IGKV1-27*01, IGKV1-33*01, IGKV1-37*01, IGKV1-39*01, IGKV1-39*02, IGKV1-5*01, IGKV1-5*02, IGKV1-5*03, IGKV1-6*01, IGKV1-6*02, IGKV1-9*01, IGKV1-NL1*01, IGKV1/OR-2*01, IGKV1/OR-3*01, IGKV1/OR-4*01, IGKV1/OR1-1*01, IGKV1/OR10-1*01, IGKV1/OR15-118*01, IGKV1/OR2-0*01, IGKV1/OR2-1*01, IGKV1/OR2-108*01, IGKV1/OR2-118*01, IGKV1/OR2-2*01, IGKV1/OR22-5*01, IGKV1/OR22-5*02, IGKV1/OR9-1*01, IGKV1/OR9-2*01, IGKV1/ORY-1*01, IGKV1D-12*01, IGKV1D-12*02, IGKV1D-13*01, IGKV1D-13*02, IGKV1D-16*01, IGKV1D-16*02, IGKV1D-33*01, IGKV1D-37*01, IGKV1D-39*01, IGKV1D-42*01, IGKV1D-42*02
IGKV2: IGKV2-24*01, IGKV2-28*01, IGKV2-30*01, IGKV2/OR2-7D*01, IGKV2D-24*01, IGKV2D-26*01, IGKV2D-26*02, IGKV2D-26*03, IGKV2D-28*01, IGKV2D-30*01
IGKV3: IGKV3-11*01, IGKV3-11*02, IGKV3-20*01, IGKV3-7*01, IGKV3-7*02, IGKV3-7*03, IGKV3-7*04, IGKV3/OR2-268*01, IGKV3/OR2-268*02, IGKV3D-11*01, IGKV3D-11*02, IGKV3D-11*03, IGKV3D-20*01, IGKV3D-20*02, IGKV3D-7*01, IGKV6D-41*01, IGKV7-3*01

With an older ANARCI version, it works as expected (commit https://github.com/oxpig/ANARCI/commit/19d9de50b2ab7ca80f4d2c45fd113139f4cad311)
The ANARCI webserver also seems to be unaffected, position 21 behaves as expected. Any thoughts @claire-marks?

I'm experiencing the same problem. Downgrading to the py27 version works, but ideally I'd like to use the newer version.
Is anybody working on this?

I've also discovered this issue. Did you find a fix.


DownloadOperation get 0x80072EF1 while minimize

I have a DownloadOperation in my UWP application , if it is minimize , get error 0x80072EF1(OperationCanceled)

The issue you are running into is not about a sample in this repo. You can open a support case with our Developer Support team who can further help with the specific problem you are experiencing. Please use these steps below for further help:

Visit http://aka.ms/storesupport and sign-in with your Microsoft account
Under the “App Development” section choose "Windows 10 universal app development", then choose the appropriate problem type and category to get engaged through a formal support channel.


[SPARK-19481][REPL][maven]Avoid to leak SparkContext in Signaling.cancelOnInterrupt

What changes were proposed in this pull request?
Signaling.cancelOnInterrupt leaks a SparkContext per call and it makes ReplSuite unstable.
This PR adds SparkContext.getActive to allow Signaling.cancelOnInterrupt to get the active SparkContext to avoid the leak.
How was this patch tested?
Jenkins

Test build #72472 has started for PR 16825 at commit 3554e33.

Test build #72472 has finished for PR 16825 at commit 3554e33.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/72472/
Test PASSed.

cc @davies

This PR doesn't fix all leaks though. I noticed that there are many Finalizers and it slows down GC. Most of them are JarFile and Inflater.

lgtm, merging this into master and 2.1 branch, thanks

Also cherry-picked to branch 2.0 as I saw ReplSuite failed several times on branch-2.0.


Ray-tracing Earth + H3 Hexagon edges...

A ray tracer is to ray trace earth, currently it works with a sphere, hopefully in future with an spheroid/ellipsoid.
The raytracer returns an x,y,z in 3d for the pixel be ray-traced and colliding with the sphere/ellipsoid.
This x,y,z is used to get H3 hexagon cells and edges/points.
Then an arc/great circle/great ellipse/line segment can be computed across these two edge points.
The distance towards these edges should be computed.
Basically a point to line segment distance, but on a sphere.
Basically closest distances to a line segment on a sphere.
This library seems very complex and an example of how to use this library to compute this would be nice.
Basically input data would be:
PointX,PointY, PointZ on sphere.
LineX1, LineY1, LineZ1 on sphere.
LineX2, LineY2, LineZ2 on sphere.
Line describes the line segment.
Point describes a point next to the line segment.
The closest distance from this point to the line segment should be computed (ofcoursr across the sphere).
Such an example code would be very usefull for UFO Alert Tool, in case the aliens come ! LOL. No Joke.

This is what I call the interception problem.  It is addressed in
Karney, Algorithms for geodesics, Section 8
https://doi.org/10.1007/s00190-012-0578-z
Baselga & Martinez-Llario, Intersection and point-to-line ..., Section 3
https://doi.org/10.1007/s11200-017-1020-z
I plan to address this problem in more detail in a future publication.
ETA = 18 months.


vector variable indices scrambled

High priority. Have found a bug where VectorVariable indices get scrambled in constraints involving separate models
MWE:
from gpkit import VectorVariable, Variable, Model

N = 15

class XgtRange(Model):
    def __init__(self, **kwargs):
        X = VectorVariable(N, "X", "m")
        X_min = VectorVariable(N, "X_{min}", range(1, N + 1), "m")
        constraints = [X >= X_min]

        Model.__init__(self, sum(X), constraints, **kwargs)

class Y(Model):
    def __init__(self, **kwargs):
        Y = VectorVariable(N, "Y", "m")
        xgtr = XgtRange()
        constraints = [xgtr,
                       Y >= xgtr["X"]]
        Model.__init__(self, sum(Y), constraints, **kwargs)

if __name__ == "__main__":
    print "-- just XgtRange --"
    xm = XgtRange()
    sol = xm.solve(verbosity=0)
    print "X is ", sol("X")

    print "-- now Y --"
    ym = Y()
    sol = ym.solve(verbosity=0)
    print "X is ", sol("X")
    print "Y is ", sol("Y")

Output from the above (note that Y is scrambled unexpectedly):
-- just XgtRange --
X is  [  1.00000003   2.00000624   3.00000734   4.00000675   5.00000571
   6.00000461   7.00000361   8.00000274   9.00000201  10.00000142
  11.00000095  12.0000006   13.00000033  14.00000015  15.00000005] meter
-- now Y --
X is  [  1.           2.00000031   3.00000035   4.0000003    5.00000023
   6.00000017   7.00000012   8.00000008   9.00000005  10.00000003
  11.00000002  12.00000001  13.00000001  14.          15.        ] meter
Y is  [  7.00000024  14.          10.00000007   3.0000007    6.00000034
   8.00000016   2.00000062   4.0000006   11.00000004  13.00000001
   9.00000011  15.           5.00000046  12.00000002   1.        ] meter

The underlying issue appears to be __getitem__ involving a VectorVariable. print xm["X"] returns:
[gpkit.Variable(X_XgtRange_(6,) [m]), gpkit.Variable(X_XgtRange_(9,) [m]), gpkit.Variable(X_XgtRange_(2,) [m]), gpkit.Variable(X_XgtRange_(5,) [m]), gpkit.Variable(X_XgtRange_(7,) [m]), gpkit.Variable(X_XgtRange_(1,) [m]), gpkit.Variable(X_XgtRange_(3,) [m]), gpkit.Variable(X_XgtRange_(8,) [m]), gpkit.Variable(X_XgtRange_(4,) [m]), gpkit.Variable(X_XgtRange_(0,) [m])]

patched by #725. Remaining issues to close this:

[ ] decide: is #725 the correct fix?
[ ] add unit test (the MWE above will do)

I think #725 seems like a fine fix, though I wonder if it works for higher-dimensional arrays.

Is there any value in considering a design where VectorVariables are keyed by a single varkey that has its own mechanism for storing all the indices for that VectorVariable? In other words, instead of separate varkeys for each index, does it make any sense to have a single varkey that has an array as its indices and can be sliced like a numpy array?
Seems perhaps more natural for indices to be in a (sorted) list than floating around as separate unsorted dict keys.
We can more this into a separate ticket if needed.

We do this in keydicts, and could potentially do so in keysets as well!
It's just a single line to do so. Some parts of substitution would need to
be updated as well.
On Jun 6, 2016 19:48, "Warren Hoburg"<EMAIL_ADDRESS>wrote:

Is there any value in considering a design where VectorVariables are keyed
by a single varkey that has its own mechanism for storing all the indices
for that VectorVariable? In other words, instead of separate varkeys for
each index, does it make any sense to have a single varkey that has an
array as its indices and can be sliced like a numpy array?
Seems perhaps more natural for indices to be in a (sorted) list than
floating around as separate unsorted dict keys.
We can more this into a separate ticket if needed.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/hoburg/gpkit/issues/724#issuecomment-224165344, or mute
the thread
https://github.com/notifications/unsubscribe/ABagGByx-cUySrbBqCNwbTc2OjqrL9LGks5qJOoOgaJpZM4IohLN
.

We have a better fix now.

(what was the better fix?)


Teacher and Student Role

the teacher and student should have different role, prevent students creating sessions, which is bad for the future use.

requires some customization.


Quick question about talking with native code

So the more I've become familiar with the example the only way I've seen that the C++ code talks back to the native code is with callbacks. Is there another way to talk from the C++ side of the code to the native side? Or do you just have to use the callback pattern that is being used to go from C++ to native?

First of all, what are you trying to accomplish? Maybe I can help.
Essentially for the same c++ code to interact with Java and ObjC code with no changes, you'll need some sort of polymorphism.  Now, I suppose you don't necessarily need runtime polymorphism, you could accomplish it at compile time, but djinni doesn't support this (its kind of a weird thing to support anyway).
So, given that we need polymorphism - we have to interact with the host-language code over pure virtual interfaces that get implemented in either Java or Objc.  So, you'll need a kind of dependency injection pattern (what you're calling callbacks)  to make that work.

Hey @skabbes,
Sorry I never got back to reply to this. I moved on to another part of the project that I am working on so I do not know that I will be getting back to exploring this.
Essentially though, I was wanting to setup something similar to Square's Otto. So we would need to be able to call from the C++ code to other parts (possible multiple) of the native code. I think this would be a useful thing for mx3, but I don't know if anyone else needs this or if there is another method to this issue that I am missing, such as some polymorphic approach as you had mentioned. Honestly, I do not see how to use polymorphism to tie the c++ code to the Java or ObjC. That might just be my own misunderstanding of something.

Well, otto seems to only be Java-based.  So, it would kind of only be single platform (therefore polymorphism wouldn't really get you anything).
However, if you wanted an "event bus" like thing.  You'd need to define that interface, and then implement it on android (with otto) and on iOS with something else.
EventBus = interface +o +j {
   publish(message: string);
}

Then in your code, you'd need to do one of the following:
#ifdef __android__
EventBus * e = new JavaEventBus();
#endif
#ifdef __APPLE__
EventBus * e = new ObjcEventBus();
#endif

Or, you could simply pass the EventBus * as a parameter to your application (which is what djinni forces you to do).  Does that make more sense?

Yes, Otto is for Java only. What you've explained makes sense, but I would actually be wanting to do the publishing of events and routing to the appropriate subscribers within the C++ code. I was basically looking to not use Otto but make some a cross-platform solution to use in place of Otto since it is Java only. However, due to some other dependencies the project has gone to strictly native code for iOS and Android.


There's no unsubscribe call for candles

Currently if I want to unsubscribe from candles I need to use send directly. But send is going to be deprecated.

@aminmarashi how about unsubscribeById?
in fact unsubscribe from ticks does not work too, you have to use unsubscribeById

I thought it's good to keep the forget_all calls working. In that case I have to refactor all my code to use the ids for unsubscription.

@aminmarashi oh, so you're saying about forget_all, sorry I thought you were talking about unsubscribe single stream.
In that case, yea, it's a feature that we would add if backend support out of the box

https://github.com/binary-com/binary-live-api/pull/86/commits/e6a36a03255f61d587a44577e9955ad9ca64d0fe
here you go

Published

This is solved, thanks 👍


The left panel is overlapping with the nav bar

The left side panel should be beneath the nav bar

this is already fixed


BottomSheet

Hi, how can I add transparency to a bottomsheet? I basically want to make the bottomsheet's background transparent.

You can wrap your widgets in an opacity widget. Please ask such questions on StackOverflow.

@rodrigosuhr did @cbenhagen 's suggestion work for you?

No, it's not working, I also tried this but not working.


Display the horizontal accuracy of locations in the subscriber example app

We send the horizontal accuracy of a location in the accuracyHorizontal field. This displays the accuracy of the location in meters. We should show this value in the subscriber app to let users know about the quality of location updates.
We can either display it as a circle that would have the radius set to the accuracy value or we can change the colour of the marker if the accuracy drops below certain values.
see https://github.com/ably/ably-asset-tracking-android/issues/533 for detail.
┆Issue is synchronized with this Jira Task by Unito

Do not show the accuracy circle if the accuracy is less than 5 m. Also do not show the circle on the zoomed out map.


(r16.09 backport of) opencv 3.1.0: add patch fixing python use of FlannBasedMatcher.add

This is essentially a backport/cherrypick of #21086/bcb1cf0db40541f63f0e478b9b2dbc60ec8a43b7, while master will presumably be moving to 3.2.0 it would be good to have this fix in stable.
Things done

[x] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[x] Linux

[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

(travis "no space left on device" again)


Support component mounting and unmounting in Turbolinks and PJAX

React components will be mounted and unmounted on events specific for:

Turbolinks 5
Turbolinks 2.4+
old, deprecated Turbolinks
PJAX
without any partial page loading technology present

This code is copied with modifications from https://github.com/reactjs/react-rails with modifications.
This resolves #13

TBH: I've tested it only on turbolinks 5 and native.

We need some test coverage for the new features

There are still some glitches when visiting page multiple times via turbolinks:
Warning: unmountComponentAtNode(): The node you're attempting to unmount was rendered by another copy of React.

React rails has the same issue https://github.com/reactjs/react-rails/issues/607

Can you fork https://github.com/renchap/webpacker-react-example and share a branch showing with this behaviour?
From https://github.com/facebook/react/pull/8928#issuecomment-277726453 I think Turbolinks reloads the pack file on visit, hence reloading React.

It's just when we use turbolinks5 and unmount components on turbolinks:before-render, then as described in the ticket above, the warning happens. A quick solution would be to use turbolinks:before-cache to unmount the component. I know, the component won't get cached in turbolinks that way, but if this gets rid of these warnings, I would be fine.

As gaeron said in the comment I linked, it does not explain why React is complaining about "another version of React". This seems to be the real issue to fix, rather than a workaround.
I will try to reproduce it and have a look.

To reproduce, you take your example app, you yarn link my branch of webpacker-react and launch everything. Then you run Turbolinks.visit(window.location.href) twice in the js console.

I think, I figured this out. I added few debugs and this is what I saw before the fix:

On subsequent navigation before-render is called twice: once for cached page (with orphaned components) and once for the content loaded from the server. The warning happens when we try to unmount components loaded from the cache.
With the changes, we ensure that components are mounted after loading from the cache. This will ensure that they are still functioning, even when connection breaks.
After the change:

Nice find!
Do you think you can add a test for Turbolinks support? I think the simplest way would be to create a new controller with a Turbolinks layout, create a new pack that load Turbolinks, create 2 views in this controller, and have a test running visit on the first view, clicking on a link to the second, then to the first, and ensure that components are correctly loaded (and does not appear multiple times).

Please note that I've had to make the init process explicit. IMHO it's better, importing a module should not have side effects.

I am done in this branch. Feel free to merge and lets discuss further API changes ;)

Merged 👍
@sevos do you think it would be ok to call initialize on the first call to register? I would really like it to be called automatically to avoid any problems when users load multiple packs on the same page, so we need to ensure it is only called once in this case ; I am not sure of the behaviour of this.eventsRegistered when using multiple packs). Maybe we should replace this check by looking at the event listeners on document instead?
Feel free to send another PR with this change.


Update auto-lineup and auto-score to use select commands

I meant to update the base on this, but accidentally made this not a draft anymore. Oops, sorry


Add feature to install and utilise PgBouncer

My Ansible-fu is rusty so happy to take suggestions.
Works on Debian, I haven't been able to test on RHEL but as far as I can tell there's no incompatible settings here.

Other than the one small nitpick about the hashing algorithm I think this is a great addition, thanks!

@ineffyble Could you rebase this PR in order to run the newer Ansible tests? I'm merging it afterwards

@ineffyble Still want to have this merged? Right now it’s incompatible with the current main branch

@ineffyble I'll close this one for now. Let me know if you wish to reopen or resubmit it :heart:


Patch for BR preservation

Pre-merge checklist

[ ] accompanying tests are written and passing
[x] npm run install passes with no errors
[x] npm run lint passes with no errors

Description of changes
BR is now preserved
Reason for changes or related GitHub issue
#21
@aem

Current coverage is 94.82% (diff: 100%)

Merging #22 into master will increase coverage by 0.64%

@@             master        #22   diff @@
==========================================
  Files             4          4
  Lines           172        174     +2
  Methods          11         11
  Messages          0          0
  Branches         27         28     +1
==========================================
+ Hits            162        165     +3
+ Misses           10          9     -1
  Partials          0          0

Powered by Codecov. Last update b57cebd...24658aa

When npm installing my fork currently, the gulp build does not run the gulp script to build the dist directory. Any idea why that would be?

I personally believe that build steps shouldn't slow down the installation process, so I don't run gulp as a part of a prepublish script, rather I just have a local alias for publishing to NPM that runs gulp; npm publish

Can you possibly write a unit test that accompanies this change? It's a good catch and something that I don't want to regress

We're good to go 👍  It's a simple test but it does fail before my patch

@thebritican looks solid! merging and will publish 0.1.6 in a bit


Release v0.0.24

Please review.

Coverage remained the same at 77.062% when pulling 8bb5cd80f211e629334b91f19f90320e0d4b7d97 on release-0.0.24 into 92294060bad956b4f718d073f0a2712116d14cfa on master.


Signed up with FCC using email address. When I signed back in under the email I signed up with, all my brownie points were gone and I was forced to start over twice.

Challenge Name

Issue Description

Browser Information

Browser Name, Version:
Operating System:
Mobile, Desktop, or Tablet:

Your Code

Screenshot

I'm using Google Chrome with macOSSierra version 10.12.3. Macbook pro

Hi @Chelsea-Pittman92 can you please drop an email to<EMAIL_ADDRESS>with the details of the email that you used, your username etc.
Thanks.
/cc @QuincyLarson

why the heck am i subscribed to this thread?

how can i unsubscribe? i have no idea how i even got on this. TAKE ME OFF.

@dolunaykiz you are subscribed most probably because you might have accidentally clicked the watch button on this page at the top.
To stop receiving notifications please visit the subscriptions page and select "Not watching".

Hi @Chelsea-Pittman92 if you are still stuck with this please email us back at<EMAIL_ADDRESS>


Parsing fails if Windows style CRLF line endings are used

First off: this is excellent and has saved me a lot of time. Thank you for making it and making it public.
I came across this issue when making the linux equivalent of an existing windows installer.
Works fine after converting the CRLF to LF. This is on Ubuntu 16.04.
My guess is that read only looks for LF and the trailing CR is causing it to fail the section regex test.
Example INI:
[smtp]
host=example.com
port=25
authentication=true
use_tls=true
<EMAIL_ADDRESS>username=ex
password=expass

Save it with CRLF line endings and read_ini setup.ini -p setup -b 0 will fail with

Error: Invalid line:
1: [smtp]

possible fix:
dos_ini_file=$ini_file
unset $ini_file
tr -d '\r' < $dos_ini_file > $ini_file


Move to k8s repo-infra

I've had a new repository created: https://github.com/kubernetes/repo-infra .  This is where stuff that I've previously copied in will live.  This issue is to move off the copies and onto the upstream stuff in repo-infra via subtree.  This is more of an epic to link back to than an issue that can be closed into a single PR.  Immediate scope:

boilerplate verification
gofmt verification
go build infrastructure

We moved boilerplate generation into repo-infra.  I think that's all we are using directly from k8s, so closing this.


Error Compiling

Downloaded current version (18/2/17) and getting following error when compiling on Arduino IDE 1.8.5
"sketch\Alexa_IR_Controller_3_new_code.ino.cpp.o: In function `rokuCommand(String, String)':
... Alexa_IR_Controller_3_new_code/Alexa_IR_Controller_3_new_code.ino:234: undefined reference to `strtoull'
collect2.exe: error: ld returned 1 exit status
exit status 1
Error compiling for board NodeMCU 1.0 (ESP-12E Module)."
Would appreciate any help (was working fine a few versions ago!)
Thanks for your great work on this exciting project!
James

Update to Arduino ESP8266 Core 2.4.0
From: inghaj
Sent: Sunday, February 18, 2018 12:38 PM
To: mdhiggins/ESP8266-HTTP-IR-Blaster
Cc: Subscribed
Subject: [mdhiggins/ESP8266-HTTP-IR-Blaster] Error Compiling (#149)
Downloaded current version (18/2/17) and getting following error when compiling on Arduino IDE 1.8.5
"sketch\Alexa_IR_Controller_3_new_code.ino.cpp.o: In function rokuCommand(String, String)': ... Alexa_IR_Controller_3_new_code/Alexa_IR_Controller_3_new_code.ino:234: undefined reference to strtoull'
collect2.exe: error: ld returned 1 exit status
exit status 1
Error compiling for board NodeMCU 1.0 (ESP-12E Module)."
Would appreciate any help (was working fine a few versions ago!)
Thanks for your great work on this exciting project!
James
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Great, problem solved. Thanks again for you great work on this  :-)
(I have a few questions (not issues) - Where is the best place to ask please?

You can just post them here


Restructuring the Guidelines

implements issue: https://github.com/zalando/restful-api-guidelines/issues/674

:+1:

:+1:

@vadeg Actually we need one additional section top level, like "REST API Basics" and sub sections "Metadata".
However, I wanted to avoid changing most rules (currently section level 2) as well as the toc layout, and having rules on different levels. So I flattened the new top section as prefix resulting in the redundancy you mentioned. It may look queer at first glance, but IMO looks ok and is a good compromise solution.

👍

:+1: