乐于分享
好东西不私藏

没文档也能搞?小米手环 10 被逆向,在 212×520 AMOLED 屏上刷机运行Doom

没文档也能搞?小米手环 10 被逆向,在 212×520 AMOLED 屏上刷机运行Doom

前几天,在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

看完大神把小米手环玩成了开发板,不得不佩服逆向工程的魅力。
7月16日,在深圳科兴科学园有一场MCU与嵌入式技术论坛。欢迎工程师朋友一起来交流学习!识别图中二维码即可报名👇