Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Support for Mi Robot S1 #517

Closed
Dielee opened this issue Jun 5, 2019 · 21 comments
Closed

Support for Mi Robot S1 #517

Dielee opened this issue Jun 5, 2019 · 21 comments

Comments

@Dielee
Copy link

Dielee commented Jun 5, 2019

Hello,
is it possible to add support for the new Mi Robot S1?

WARNING:miio.discovery:Found unsupported device roborock-vacuum-m1s_miio260223565._miio._udp.local. at 192.168.50.71, please report to developers

@syssi
Copy link
Collaborator

syssi commented Jun 6, 2019

Could you provide some details about this model? Does it work out of the box and should we add the device as supported?

@syssi syssi self-assigned this Jun 6, 2019
@Dielee
Copy link
Author

Dielee commented Jun 13, 2019

It does not work out off the box. As the log says: WARNING:miio.discovery:Found unsupported device roborock-vacuum-m1s_miio260223565._miio._udp.local. at 192.168.50.71, please report to developers

@Dielee
Copy link
Author

Dielee commented Jun 25, 2019

I have caputred the app data with charles. Does it help if I provide the data ?

@syssi
Copy link
Collaborator

syssi commented Jun 27, 2019

Thread with same network communication: https://community.home-assistant.io/t/xiaomi-vacuum-s1-s60-t60-s61-t61-room-cleaning-by-room-name/122315/5

Possible commands:

app_charge
app_get_init_status
app_get_locale
app_goto_target
app_pause
app_rc_end
app_rc_move
app_rc_start
app_segment_clean
app_spot
app_start
app_stop
app_wakeup_robot
app_zoned_clean
change_sound_volume
close_dnd_timer
del_clean_record
del_server_timer
del_timer
dnld_install_sound
enable_log_upload
end_edit_map
find_me
get_carpet_mode
get_clean_record
get_clean_record_map
get_clean_summary
get_consumable
get_current_sound
get_custom_mode
get_dnd_timer
get_fresh_map_v1
get_fw_features
get_log_upload_status
get_map_status
get_map_v1
get_persist_map_v1
get_recover_map
get_recover_maps
get_room_mapping
get_segment_status
get_serial_number
get_server_timer
get_sound_progress
get_sound_volume
get_status
get_timer
get_timezone
merge_segment
name_segment
recover_map
reset_consumable
reset_map
resume_segment_clean
resume_zoned_clean
save_map
set_carpet_mode
set_custom_mode
set_dnd_timer
set_lab_status
set_server_timer
set_timer
set_timezone
split_segment
start_edit_map
stop_segment_clean
stop_zoned_clean
test_sound_volume
upd_server_timer
upd_timer
use_new_map
use_old_map
user_upload_log

@syssi
Copy link
Collaborator

syssi commented Jun 29, 2019

Commands which aren't implemented yet:

app_segment_clean
get_room_mapping
get_segment_status
merge_segment
name_segment
stop_segment_clean
resume_segment_clean
split_segment

app_get_init_status
app_wakeup_robot
del_clean_record
del_server_timer
get_clean_record_map
get_fresh_map_v1
get_fw_features
get_map_status
get_persist_map_v1
get_recover_map
get_recover_maps
get_server_timer
recover_map
reset_map
set_server_timer
stop_zoned_clean
upd_server_timer
use_new_map
use_old_map
user_upload_log

@syssi
Copy link
Collaborator

syssi commented Jun 29, 2019

@Dielee Do you like to provide sample outputs of the following (hopefully harmless?) commands:

get_clean_record_map
get_fresh_map_v1
get_fw_features
get_map_status
get_persist_map_v1
get_recover_map
get_recover_maps
get_server_timer
get_room_mapping
get_segment_status

@Dielee
Copy link
Author

Dielee commented Jun 29, 2019

Sure, here it is:

get_clean_record_map:
No response from device

get_fresh_map_v1:

[
  "retry"
]

get_fw_features:

[
  110
]

get_map_status:

[
  1
]

get_persist_map_v1:
Method get_persist_map_v1 is not supported

get_recover_map:
Method get_recover_map is not supported

get_recover_maps:

[
  [
    1,
    1561713207
  ],
  [
    2,
    1561801286
  ],
  [
    3,
    1560953683
  ]
]

get_server_timer:
"unknown_method"

get_room_mapping:

[
  [
    16,
    "528001091142"
  ],
  [
    17,
    "528001091226"
  ],
  [
    18,
    "528001091228"
  ],
  [
    19,
    "528001091143"
  ],
  [
    21,
    "528001091256"
  ],
  [
    22,
    "528001091144"
  ]
]

get_segment_status:

[
  1
]

@syssi
Copy link
Collaborator

syssi commented Jun 29, 2019

Perfect! Do you know the meaning of get_segment_status? :-)

@Dielee
Copy link
Author

Dielee commented Jun 29, 2019

No, sorry, maybe if segments are used or not ?

@Dielee
Copy link
Author

Dielee commented Jul 16, 2019

Any updates for this ?

@maxic62
Copy link

maxic62 commented Jul 17, 2019

yes, any update for the 1S ? I have the same on my side

@rytilahti
Copy link
Owner

Are you looking for some specific functionality, or are the common functionalities (starting, stopping etc.) not working? #531 silences the warning from discovery.

@maxic62
Copy link

maxic62 commented Jul 18, 2019

@rytilahti Do you mean, at this time, m1s is already supported ? It was only a warning message ?
Because I tried to get the token and I was not able to know if this model was taken in account.
My goal is just to get robot status and have access to simple command like clean, return to the dock. The feature that can be very interesting is the cleaning for a specified room.
Thanks guys

@Dielee
Copy link
Author

Dielee commented Jul 18, 2019

m1s isn't supported. If segment cleanup would be implemented and status 18 = 'segment cleanup', it would be nice.

@syssi
Copy link
Collaborator

syssi commented Aug 14, 2019

TODO:

app_get_init_status []
app_wakeup_robot []
del_clean_record [] # plus delay
get_clean_record_map [int]
get_fresh_map_v1 []
get_fw_features []
get_map_status []
get_persist_map_v1 [0]
reset_map []
use_new_map []
use_old_map []
user_upload_log [] # debug feature to upload the log into the cloud

get_recover_map [int] # Load recover map name
get_recover_maps [] # Load recover map ids
recover_map [int] # map id to recover

Cloud features?

set_server_timer ??
del_server_timer ??
get_server_timer ??
upd_server_timer ??

@maxic62
Copy link

maxic62 commented Aug 19, 2019

Happy to see some news here ;)

@Markkuuss
Copy link

@syssi the new S5 max supports adjustable water output, which you can set similar to the fan_power with the values 200-205.
I suppose there is a separate method for this because it cannot be set using set_custom_mode. Do you perhaps know the method that could be used to do this?

@rezmus
Copy link

rezmus commented Dec 20, 2019

get_water_box_custom_mode
set_water_box_custom_mode [200-203] # strength

@Dielee
Copy link
Author

Dielee commented Oct 5, 2020

Any updates for this ? What do we have to do to support the S1 ?

@lucidyan
Copy link

Mi Robot Vacuum 1S (roborock.vacuum.m1s) is already in supported devices. Is this issue still relevant?

@Dielee
Copy link
Author

Dielee commented Mar 16, 2021

No, works for a while.

@Dielee Dielee closed this as completed Mar 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants