前幾天,在HACKDAY上看到一個德國工程師發帖,對小米手環10進行逆向工程。
小米手環10搭載的是Soc是BES2700iMP,在制造商 Bestechnic 內部代號為 BEST1503,但這顆Soc并沒有公開SDK,應該是定制的芯片。

但同系列芯片BEST1306 (BES2700IHC),實際上與小米手環 10 的Soc相似,其 SDK 卻通過一些音頻開發套件泄露了出來,因此,通過交叉對比兩顆芯片的寄存器和外設,德國小哥硬是構建了一個與 BEST1503 兼容的 SDK。


唯一的一點是顯示屏只能在單比特SPI模式下工作,顯示屏本身是四比特(Quad SPI)的,所以色彩深度有限,其它大部分功能都能正常運行,最終將Doom移植成功了。

212×520 AMOLED 手環屏上不僅能流暢運行Doom,還支持觸屏操控移動和射擊。開發者從零構建了一套完整 SDK,讓小米手環 9 和 10 搖身一變,成為可自由開發的嵌入式平臺。
刷寫過程通過 UART 接口完成,使用 Python 刷寫工具(flasher/)和從泄露的刷寫工具中恢復的 SecondStage 引導加載程序 blob。整個項目中最難的部分是找到刷寫協議和小米手環的測試焊盤/引腳圖。


詳細的代碼SDK工具鏈等,可以通過作者的Github了解:https://github.com/atc1441/MiBand10-BES2700iMP-BEST1503-Hacking
