Skip to content

Partition Information

Sören Beye edited this page Apr 29, 2021 · 3 revisions

This page documents the partition layout of various vacuum robots

Roborock

The vendor roborock features different models that utilize different storage technologies.

V1, S5 (& S6?)

The V1, S5 and S6 come with a 4GB eMMC flash chip which is partitioned into the partitions listed here.

Note that this was generated by looking at an S5 running Firmware Version 2034

[root@rockrobo ~]# cat /proc/partitions
major minor  #blocks  name

 179        0    3866624 mmcblk0
 179        1    1609728 mmcblk0p1
 179        2       8192 mmcblk0p2
 179        3          1 mmcblk0p3
 179        5      16384 mmcblk0p5
 179        6      65536 mmcblk0p6
 179        7     524288 mmcblk0p7
 179        8     524288 mmcblk0p8
 179        9     524288 mmcblk0p9
 179       10     540672 mmcblk0p10
 179       11      16384 mmcblk0p11
 179       32       2048 mmcblk0boot1
 179       16       2048 mmcblk0boot0

Here's what we know about the partitions

Partition FS Mountpoint Meaning Notes
mmcblk0p1 ext4 /mnt/data Contains all user data (map, wifi credentials, etc)
mmcblk0p2 fat16 - Contains among other things bootloader soundfiles such as bl_recovery_updatefailed.wav
mmcblk0p3 - - extended partition
mmcblk0p5 u-boot env, flags etc Also contains the "broken" flags for the rootfs partitions
mmcblk0p6 ext4 /mnt/default Contains robot identity data such as the device.conf
mmcblk0p7 ext4 Contains the stock firmware This will be restored on factory reset by copying it onto rootfs1 and rootfs2
mmcblk0p8 ext4 / rootfs1 systemA
mmcblk0p9 ext4 / rootfs2 systemB
mmcblk0p10 ext4 /mnt/updatebuf
mmcblk0p11 ext4 /mnt/reserve

Please refer to the 34C3 talk to learn about the update process which should explain what systemA, systemB and /mnt/updatebuf mean.

S5 Max

The S5 Max and more models come with different sided nand flash chips depending on model and model year. Please refer to the vacuum robot overview to find more about that. Usually, the chip will either be 256mb or 512mb in size.

Note that this was generated by looking at an S5 Max running Firmware Version 1340

[root@rockrobo reserve]# cat /proc/partitions
major minor  #blocks  name

  93        0       1024 nanda
  93        8       1024 nandb
  93       16       5120 nandc
  93       24       5120 nandd
  93       32      25600 nande
  93       40      25600 nandf
  93       48       1536 nandg
  93       56       1536 nandh
  93       64       3584 nandi
  93       72       3584 nandj
  93       80       4096 nandk
  93       88     150528 nandl

Here's what we know about the partitions

Partition FS Mountpoint Meaning Notes
nanda uboot env and more
nandb ext4 /mnt/default Contains robot identity data such as the device.conf
nandc boot1
nandd boot2
nande squashfs / rootfs1
nandf squashfs / rootfs2
nandg
nandh squashfs /mnt/resources/audio_bit
nandi squashfs /mnt/resources/audio_default
nandj squashfs /mnt/resources/audio_custom
nandk ext4 /mnt/reserve
nandl ext4 /mnt/data Contains all user data (map, wifi credentials, etc)