aholstenson / miio

Control Mi Home devices, such as Mi Robot Vacuums, Mi Air Purifiers, Mi Smart Home Gateway (Aqara) and more
MIT License
1.86k stars 353 forks source link

Roborock Vacuum S50 responds randomly #196

Open vidalpascual opened 5 years ago

vidalpascual commented 5 years ago

Hi,

I have a Roborock S50 and miio commands work in a randomly way. Sometimes they work and other times they don't. Seems that the vacuum stops responding for some reason (firmware 3.3.9_001633). Any help with this, please?

Working command:

user@linux ~ $ DEBUG=thing* miio inspect 192.168.2.10 INFO Attempting to inspect 192.168.2.10 thing:miio:pending <- Handshake reply: +0ms thing:miio:96657237 Identifier of device updated +0ms thing:miio:96657237 Loading token from storage, device hides token and no token set via options +6ms thing:miio:96657237 Using manual token: +16ms thing:miio:96657237 -> (5) {"method":"miIO.info","params":[],"id":1} +6ms thing:miio:96657237 <- Message: {"partner_id":"","id":1,"code":0,"message":"ok","result":{"hw_ver":"Linux","fw_ver":"3.3.9_001633","ap":{"ssid":"Pitufos","bssid":"F8:1A:67:5A:6C:0C","rssi":-48},"netif":{"localIp":"192.168.2.10","mask":"255.255.255.0","gw":"192.168.2.1"},"model":"roborock.vacuum.s5","mac":"","token":"","life":22053}} +10ms thing:miio:96657237 -> (5) {"method":"get_status","params":[],"id":2} +33ms thing:miio:96657237 -> (5) {"method":"get_consumable","params":[],"id":3} +2ms thing:miio:96657237 <- Message: {"result":[{"msg_ver":2,"msg_seq":69,"state":5,"battery":92,"clean_time":1090,"clean_area":18475000,"error_code":0,"map_present":1,"in_cleaning":1,"in_returning":0,"in_fresh_state":0,"lab_status":1,"fan_power":60,"dnd_enabled":0}],"id":2} +5ms thing:miio:96657237 <- Message: {"result":[{"main_brush_work_time":145508,"side_brush_work_time":145508,"filter_work_time":145508,"sensor_dirty_time":36653}],"id":3} +2ms thing:miio:96657237 Property state changed from undefined to cleaning +0ms thing:miio:96657237 Property batteryLevel changed from undefined to 92 +4ms thing:miio:96657237 Property cleanTime changed from undefined to 1090 +2ms thing:miio:96657237 Property cleanArea changed from undefined to 18.475 +1ms thing:miio:96657237 Property fanSpeed changed from undefined to 60 +1ms thing:miio:96657237 Property in_cleaning changed from undefined to 1 +0ms thing:miio:96657237 Property mainBrushWorkTime changed from undefined to 145508 +1ms thing:miio:96657237 Property sideBrushWorkTime changed from undefined to 145508 +0ms thing:miio:96657237 -> (5) {"method":"miIO.info","params":[],"id":4} +18ms thing:miio:96657237 <- Message: {"partner_id":"","id":4,"code":0,"message":"ok","result":{"hw_ver":"Linux","fw_ver":"3.3.9_001633","ap":{"ssid":"Pitufos","bssid":"F8:1A:67:5A:6C:0C","rssi":-48},"netif":{"localIp":"192.168.2.10","mask":"255.255.255.0","gw":"192.168.2.1"},"model":"roborock.vacuum.s5","mac":"","token":"","life":22053}} +4ms

Device ID: 96657237 Model info: roborock.vacuum.s5 Address: 192.168.2.10 Token: via stored token Support: At least basic

Type info: miio:vacuum, miio, vaccuum Capabilities: adjustable-fan-speed, fan-speed, spot-cleaning, autonomous-cleaning, cleaning-state, error-state, charging-state, battery-level, state

Firmware version: 3.3.9_001633 Hardware version: Linux

WiFi: Pitufos (F8:1A:67:5A:6C:0C) RSSI: -48

Remote access (Mi Home App): Maybe

Properties:

Same command, minutes later, not working:

user@linux ~ $ DEBUG=thing* miio inspect 192.168.2.10 INFO Attempting to inspect 192.168.2.10 thing:miio:pending <- Handshake reply: +0ms thing:miio:96657237 Identifier of device updated +0ms thing:miio:96657237 Loading token from storage, device hides token and no token set via options +6ms thing:miio:96657237 Using manual token: +15ms thing:miio:96657237 -> (5) {"method":"miIO.info","params":[],"id":1} +7ms thing:miio:96657237 -> (4) {"method":"miIO.info","params":[],"id":101} +2s thing:miio:96657237 -> (3) {"method":"miIO.info","params":[],"id":201} +2s WARNING Could not find device

Thanks!

UPDATE: It's strange that if I run the 'miio discover' command before the inspect or control command, everything seems to work fine...

SebHeuze commented 5 years ago

Same problem here, Roborock S50 randomly respond to commands, and running miio discover don't fix it all the time on my side, I wait and it work again for few seconds/minutes miio discover command always work