修改步骤仅供研究学习,请严格遵守相关法律法规限制使用无线电设备

  1. Meshtastic 固件 Github 页面 下载最新 Stable 版的 Source Code.zip, 并解压成文件夹。

  2. 使用 Visual Studio Code 打开解压出的文件夹,确保已经安装好 PlatformIO 插件

  3. 定位并打开: \src\mesh\RadioInterface.cpp

  4. 找到行:RDEF(CN, 470.0f, 510.0f, 100, 0, 19, true, false, false), 其中 CN 意味着中国,19 就是 app 中可以输入最大的功率。

  5. 完成后,确认自己想要重新编译输出的版本,以 nrf52 系列为例,定位并打开:variants\diy\platformio.ini 并按照自己需求找到相应的输出版本。

  6. ; Promicro + E22(0)-xxxMM / RA-01SH modules board variant - DIY - without TCXO
    [env:nrf52_promicro_diy_tcxo]
    extends = nrf52840_base
    board = promicro-nrf52840
    board_level = extra
    build_flags = ${nrf52840_base.build_flags}
      -I variants/diy/nrf52_promicro_diy_xtal
      -D NRF52_PROMICRO_DIY
    build_src_filter = ${nrf52_base.build_src_filter} +<../variants/diy/nrf52_promicro_diy_xtal>
    lib_deps = 
      ${nrf52840_base.lib_deps}
    debug_tool = jlink
    
  7. env: 后面的就是版本名:nrf52_promicro_diy_tcxo ,复制好。

  8. Ctrl+Shift+P 打开 PlatformIO: New Terminal

  9. 输入命令:platformio run -e nrf52_promicro_diy_tcxo

  10. 此时会开始从 Github 下载依赖包,需要提前配置好科学环境或者修改 Host 文件,否则可能会出现下载失败。

  11. 编译完成后可以根据其输出的记录找到你需要的文件,一般在第 1 步你所解压的文件夹中,找到:.pio\build\nrf52_promicro_diy_tcxo

  12. 打开后找到两个文件:firmware_nrf52_promicro_diy_tcxo.uf2firmware.zip

  13. 后缀为 .uf2 的文件是线刷文件,USB 插入 Nrf52 连接电脑,直接把文件丢进去就行了。而 .zip 的压缩包是用于使用 Nrf Connect 这类 App 进行蓝牙远程更新 OTA 用的,按需使用。

  14. Nrf52 刷固件并不会覆写原有的密钥和 App 设置等,可以直接刷,但建议还是保个备份。