-
-
Notifications
You must be signed in to change notification settings - Fork 75
MQTT API
Erinome edited this page Dec 24, 2020
·
5 revisions
This is an attempt to create a description for MQTT API used in Valetudo RE. Note that it probably won't change over time.
Currently this list matches RE release 0.10.0.
These are the simple commands, which you send directly as a plain text.
Payload | Description |
---|---|
start | Starts full cleaning or resumes paused cleaning of any type |
stop | Stops cleaning, note that in older firmware may require may need to pause first |
pause | Pauses running cleaning, as well as returning to base phase. Also cancels some other actions like gotos and spot cleanings |
return_to_base | Makes the device returning to charging station |
clean_spot | Runs cleaning around the current device location with high fan power |
locate | Makes the device loudly cry "I'm here!" to be easily located |
This allows to switch between different fan power options, just send the wanted payload.
Payload | Description |
---|---|
whisper | Most silent of possible fan speeds, supported only on Gen1 devices and Gen2 w/ firmware version before 2008 |
min | Slow fan speed |
medium | Default and recommended fan speed |
high | Higher max speed |
max | The maximum possible fan speed, not recommended due to risks of damaging the fan engine |
mop | Special mode for mopping, some devices don't have it |
Here are more advanced commands that have additional parameters and should be send as a JSON object. Please see Example payload column for.. er.. illustrative examples, true.
Command | Parameters | Description | Example payload |
---|---|---|---|
zoned_cleanup | zone_ids (array of strings or objects) | Sends the device to zone cleaning. This parameter specifies the zones to be cleaned, may include both strings with plain zone names and objects like {"id":"name","repeats":2}, where id is zone name and repeats is number of iterations |
{ "command": "zoned_cleanup", "zone_ids": [ "Foo", { "id": "Bar", "repeats": 2 } ], "afterCleaning": "Stop" } |
afterCleaning (string) | Defines where the device should go when finishes, possible values Base, Stop or any pre-saved Goto Point name. This is optional | ||
segmented_cleanup | segment_ids (array of strings or ints) | Sends the device to room cleaning. This parameter specifies the room to be cleaned, may include both strings with plain room names and ints of room numeric ids. Requires Gen2 devices or Gen2 with firmware version 2008+ |
{ "command": "segmented_cleanup", "segment_ids": [ 16, "Room Name 1", 18 ], "repeats": 2, "afterCleaning": "Base" } |
repeats (int) | Number of iterations for these rooms | ||
afterCleaning (string) | Defines where the device should go when finishes, possible values Base, Stop or any pre-saved Goto Point name. This is optional | ||
go_to | spot_id (string) | Sends the device to the specified pre-saved spot location |
{ "command": "go_to", "spot_id": "Somewhere" } |
reset_consumable | consumable (string) | Reset specified consumable, which can be one of main_brush_work_time, side_brush_work_time, filter_work_time or sensor_dirty_time |
{ "command": "reset_consumable", "consumable": "main_brush_work_time" } |
store_map | name (string) | Saves current map with the specified name into valetudo local map archive |
{ "command": "store_map", "name": "Floor1" } |
load_map | name (string) | Loads map with the specified name from valetudo local map archive |
{ "command": "load_map", "name": "Floor2" } |
get_destinations | Publishes available zones, spots and rooms to valetudo/rockrobo/destinations topic | ||
play_sound | file (string) | Plays local file using default sound player, which supports only wav files |
{ "command": "play_sound", "location": "http://192.168.1.10/audio.mp3", "volume": 0.75 } |
location (string) | Plays either local or remote file. Requires preinstalled sox player | ||
volume (float) | Changes the volume for current playback. This is optional. Requires preinstalled sox player |
This is a special read-only topic, where the device will post logs about how successive the requested commands were run, and may as well post errors occurred while doing MQTT operations.