Hướng dẫn root Roborock T6/S6 và cài đặt custom firmware - biến bản nội địa thành quốc tế

cuongnq01
11/10/2020 7:3Phản hồi: 3
Hướng dẫn root Roborock T6/S6 và cài đặt custom firmware - biến bản nội địa thành quốc tế
Ngày xưa vì ham rẻ (giá hiện tại trên taobao là 7.8Tr) nên mua con Roborock T6 nội địa tàu. Dùng cực kì khó chịu khi phải fake time zone GMT+8 để có thể sử dụng được app MiHome. Ngoài ra thì còn phải sử dụng stock firmware vì không dám update, nếu chẳng may có update thì server Xiaomi nó chơi Geo block luôn và không thể nào sử dụng được app và chỉ còn cách là factory reset hoặc kiếm cái sim Tàu để dùng. Từ bao bì đến hướng dẫn và cả bộ voice 100% tiếng tàu, chữ tiếng anh duy nhất trên con robot là từ thương hiệu Roborock. Nhưng may sao trên app vẫn dụng được tiếng anh.

Sau 1 thời gian chịu đựng mình đã quyết định root con robot của mình, biến nó thành bản S6 quốc tế, đầy đủ Voice pack tiếng Anh lẫn tiếng Ta, đủ các món ăn chơi, có thể cài được Valetudo, hơn nữa Roborock sử dụng Ubuntu 14.04 nên sau khi root còn có thể làm được nhiều trò hay ho nữa. Ví dụ như chơi nhạc, IOT, biến nó thành chó trông nhà....vân vân và mây mây.

Không giống các đời trước, con robot này của Xiaomi đã tăng cường bảo mật, vì vậy cách duy nhất để root nó là phải tháo vỏ lấy PCB để gắn kết nối UART.
Phương pháp này hoàn toàn có thể sử dụng được với các con đời trước như T5/S5, T4/S4... miễn là sử dụng Allwinner SoC.
Thế nên trước khi tiến tới root, ta đi mổ bụng nó, và quá trình chiếm đến 70% thời gian vì nó nhiều vít kinh khủng. Tổng cộng là 62 con vit để có thể lôi được mainboard ra.


Toàn bộ ảnh các con vít phải tháo ở đây: https://imgur.com/a/f1q7enm

Imgur

Discover the magic of the internet at Imgur, a community powered entertainment destination. Lift your spirits with funny jokes, trending memes, entertaining gifs, inspiring stories, viral videos, and so much more from users.
imgur.com

  • Vít bản lề nắp đựng rác: 6
  • Vít nắp tháp LSD Laser: 3+2
  • Vít tháp LSD Laser: 4
  • Vít nắp đáy: 7
  • Vít đáy: 26
  • Vít cảm biến va chạm: 8
  • Vít PCB nút điều khiển: 2
  • Vít PCB chính: 4
Sau khi lôi được PCB ra thì ta tiến hành root và cài custom FW:


Nhưng trước hết ở phần chuẩn bị.
-----------------------------
Để root được ta cần kết nối cáp UART-USB với mainboard, ở đây mình sử dụng phương pháp hàn, nhưng bạn hoàn có thể nhờ ai đó giữ hộ 3 chân này (Thực tế nếu bạn sử dụng cổng micro USB trên robot thì chỉ cần sử dụng TX và RX là đủ).


Sau đó thì cắm cáp vào PC, cài driver và kết nối theo đúng thứ tự.
Do Xiaomi sử dụng Allwinner SoC nhưng có patch 1 chút ở phần U-boot và vô tình 1 anh người Đức quốc xã phát hiện ra dòng code vi diệu đó nên đã khiến quá trình root trở lên dễ dàng hơn rất nhiều.

Chính vì điều này nên khi bấm nút ON ở robot 3s để vào U-Boot ta đồng thời giữ phím "s" ở bàn phím để vào Shell mode.
Và ở đây ta sử dụng các lệnh để dump root password ở file vinda và giải mã nó, sau đó tiến hành boot bình thường.
In U-Boot
----------

Quảng cáo


ext4load mmc 2:6 40008000 vinda
md 40008000
run setargs_mmc boot_normal

Xiaomi/Roborock/Rockrobo root password calculator (v1,s4,t4,s5,s6,t6)
-----------
https://builder.dontvacuum.me/password.php
Xiaomi/Roborock/Rockrobo root password calculator (v1,s4,t4,s5,s6,t6)
builder.dontvacuum.me

Nếu bạn nào quan tâm tới thuật toán giải mã root:
The root password is derived from this by XORing each character with 0x37. Calculate this with the language of your choice, for example Perl:

$ perl -e ‘print(join(“”, (map { chr(ord($_) ^ 0x37) } split(//, $ARGV[0]))), “\n”);’ ‘CDSQ[VBQ][VP[VPV’
tsdflaufjlaglaga​
Việc cần làm thêm là disable Firewall và chỉnh chọt lại 1 chút cho việc kết nối SSH sau này trở lên dễ dàng hơn.

Quảng cáo


In Linux
--------
iptables -F
(you can run the next commands over SSH)
- Make SSH access permannent
sed -i -e '/ iptables -I INPUT -j DROP -p tcp --dport 22/s/^/#/g' /opt/rockrobo/watchdog/rrwatchdoge.conf
sed -i -E 's/dport 22/dport 29/g' /opt/rockrobo/watchdog/WatchDoge
sed -i -E 's/dport 22/dport 29/g' /opt/rockrobo/rrlog/rrlogd

- Patch Recovery (so that SSH survies factory resets)
mkdir /mnt/recovery
mount /dev/mmcblk0p7 /mnt/recovery
sed -i -e '/ iptables -I INPUT -j DROP -p tcp --dport 22/s/^/#/g' /mnt/recovery/opt/rockrobo/watchdog/rrwatchdoge.conf
sed -i -E 's/dport 22/dport 29/g' /mnt/recovery/opt/rockrobo/watchdog/WatchDoge
sed -i -E 's/dport 22/dport 29/g' /mnt/recovery/opt/rockrobo/rrlog/rrlogd
umount /mnt/recovery
Sau quá trình này thì chúng ta đã hoàn thành quá trình root, có thể các bạn sẽ muốn change root password.
Giờ thì bạn có thể tắt robot, tháo mối hàn, lắp robot lại bình thường.
Khi đã root xong thì mọi thao tác cài đặt custom FW và chế cháo đều có thể thực hiện qua Wifi với SSH.
Phần còn lại là build custom fw và cài đặt. Vì cấu trúc của eMMC, nên khi cài đặt ta sẽ phải cài đặt trên System B sau đó là System A.
Install Custom Firmware:
The dustbuilder to build your own custom firmware (with Valetudo):
-----------
https://builder.dontvacuum.me/

DustBuilder

Dustbuilder is the tool to automatically build custom firmware to get root access to Xiaomi (v1) / Dreame / Roborock (S4,S5,S6) vacuum robot cleaners.
builder.dontvacuum.me


Extract FW
-----------
cd /mnt/data
tar -xzvf v11_001998.tar.gz

Patch System_B
-----------
cd /mnt/data
bash install_b.sh
reboot

Patch System_A
-----------
cd /mnt/data
bash install_a.sh
reboot
Để biến robot thành bản S6 quốc tế, chúng ta cần đánh lừa server Xiaomi rằng robot của chúng ta là bản S6. Để làm được điều đấy thì chỉ cần chỉnh sửa 2 file config là device.conf và roborock.conf
Do 2 file này ở chế độ readonly chúng ta cần vào SSH gõ lệnh mount lại thử mục default để có thể edit đc. Bước cuối cùng là reboot.
Remount to edit file conf
----------
mount -o remount,rw '/mnt/default'
Để test thử mình sẽ setup lại robot với region ở Germany.Cảm nhận đầu tiên là server ở Đức rất mượt và nhanh. Toàn bộ map và file log đều lưu ở 1 phần riêng nên sẽ không bao giờ bị mất. Check thử bộ voice, đã có tiếng anh và cả tiếng việt.
Nếu bạn thấy video này hữu ích hãy like, comment, share và quan trọng nhất là subcribes đăng ký bấm chuông để ủng hộ mình.
Cảm ơn các bạn và chúc các bạn may mắn.

Source:
https://blog.n621.de/2018/04/an-even-easier-way-of-rooting-the-xiaomi-vacuum-robot/
https://blog.n621.de/2018/01/some-notes-on-the-xiaomi-vacuum-robot/
https://www.roboter-forum.com/index.php?thread/45980-region-geo-blocking-entfernen-t6-t4/
3 bình luận
Chia sẻ

Xu hướng

cuongnq01
ĐẠI BÀNG
4 năm
Ngoài ra theo thông tin tìm hiểu được thì kể cả các con Roborock Gen1 của Xiaomi sản xuất sau tháng 9/2019 đều không thể root theo phương thức cũ (LAN/Token), như vậy cách root này sẽ được sử dụng rộng rãi hơn, và nó hiện tại đang là cách duy nhất.
Oscard
ĐẠI BÀNG
4 năm
chuyên thật
Như anh kỷ sư vậy , khó quá. Bạn giỏi ghê !

Xu hướng

Bài mới









  • Chịu trách nhiệm nội dung: Trần Mạnh Hiệp
  • © 2024 Công ty Cổ phần MXH Tinh Tế
  • Địa chỉ: Số 70 Bà Huyện Thanh Quan, P. Võ Thị Sáu, Quận 3, TPHCM
  • Số điện thoại: 02822460095
  • MST: 0313255119
  • Giấy phép thiết lập MXH số 11/GP-BTTTT, Ký ngày: 08/01/2019