我一直在尝试修改/添加到 Garmin Forerunner 35 手表的内部文件系统或操作系统。到目前为止,我没有运气,并且被卡住了。
因此,手表在插入 PC 时显示为驱动器(E),但是当我将软件更新二进制文件放入 IDA 时,您可以在字符串视图中看到 E 驱动器中不存在的路径。
我正在寻找一种查看/转储/编辑手表文件系统的方法,无论是通过特制的软件更新还是其他方式。
任何帮助,将不胜感激。
编辑:添加图片
E:
您看到的驱动器是Garmin 的内部文件系统。
您可以使用 -type 工具在可执行文件中看到的路径可以strings
是编译器放在那里的调试记录。在这种情况下,..\..\..\TSK\garmin-os\tsk_mem.c
似乎是对 Garmin 源代码的一部分的引用,您将无法在设备(或在线)上找到它。
修改系统行为的一种方法是将.FIT
文件放入\GARMIN\NEWFILES
Garmin 上的目录中;当它启动时,它会处理这些文件并可以进行修改。
例如,要仅在某些设备上启用心率变异性 (HRV) 跟踪,请参阅以下说明:
要启用 HRV 记录,您需要执行以下操作:
- 使用随附的 USB 数据线将手表连接到计算机
- 下载
enable_hrv_settings_file.fit
【原文链接】- 将该文件放入手表中的以下文件夹:\GARMIN\NEWFILES
- 将您的手表与 Garmin Express 同步并断开连接
最后,如果您想修改操作系统本身,您应该查看固件更新机制。
更新固件涉及获取.GCD
文件,然后:
- 将文件复制到
\GARMIN
目录中- 将其重命名为
GUPDATE.GCD
- 断开设备与计算机的连接
- 批准设备上的更新
- 等待更新完成
在gpspassion.com等在线论坛上有一些关于这些文件格式的讨论,例如在这篇文章中,它给出了:
[main header]
[descriptor]
080000FF
data block 0xFF00 sized ...*n times (data=RAMloader)
0800xxyy
last data block sized 0xyyxx.
[descriptor2]
BD0200FF
data block *n (data=fw_all)
BD02xxyy
last data block sized 0xyyxx.
+something last bytes...
您可以.GCD
在线查找文件存档。