常见问题解答#
构建相关#
Q1:make 提示先执行 make xxx_defconfig,怎么办?#
现象:构建前直接执行 make,报错要求先选择配置。
解决:
make list-def
make <your_board>_defconfig
make
Q2:有的板卡只有 k230_canmv_*_defconfig,我想做 RTOS 镜像怎么办?#
解决:可以先选 CanMV defconfig,再通过 menuconfig 改成 RTOS 目标:
执行
make k230_canmv_xxx_defconfig执行
make menuconfig关闭
CanMV Components Configuration按需开启
RT-Smart Configuration > Enable build Rtsmart examples按需开启
MPP Configuration > Enable build MPP samples重新执行
time make log
Q3:提示工具链缺失,如何处理?#
现象:make 报工具链找不到。
解决:
make dl_toolchain
首次下载完成后再次编译即可。
Q4:修改了 src/rtsmart/mpp 后,重新 make 看不到效果?#
现象:镜像能编译,但改动未生效。
解决:先清理 RT-Smart 相关产物再编译:
make rtsmart-clean
make
烧录与启动#
Q5:*.img 和 *.kdimg 应该怎么选?#
建议:
USB 图形工具(K230BurningTool):优先使用
*.kdimgSD 卡写盘:使用
*.img命令行烧录(k230-flash):通常使用
*.img
Q6:执行 reboot_to_upgrade 后没进入烧录模式?#
解决:
确认烧录工具为较新版本
参考烧录指南中的 patch 说明,先补丁再重试
或改用硬件方式:按住 Boot 键上电进入烧录模式
Q7:烧录成功但设备没有正常启动?#
排查顺序:
检查镜像与板卡是否匹配(defconfig 是否对应)
检查启动介质是否正确(EMMC/SD)
检查串口日志,确认是否卡在引导阶段
重新烧录一次,避免文件损坏或中断
Q8:OTA 如何快速使用(简要)?#
可按下面最小流程上手:
在 PC 端构建得到
*.kdimg升级包(位于output/<defconfig>/images/)。将
*.kdimg传到设备文件系统(例如/data/update.kdimg)。在板端应用中调用 OTA 接口执行升级(示例测试命令):
test_ota /data/update.kdimg
看到升级成功日志后重启,确认是否正常进入新版本。
注意:
OTA 依赖
*.kdimg,不是*.img。生产场景建议在应用层增加升级包签名/来源校验、断电恢复与回滚策略。
完整机制与接口说明见:advanced_development_guide/how_to_use_k230_ota.md
示例与应用#
Q9:示例程序不在 /sdcard/app,是不是打包失败?#
不一定。RT-Smart 示例默认在:
/sdcard/app/examples/
可用如下命令检查:
cd /sdcard/app/examples
find . -name "*.elf" | head
Q10:如何设置开机自启动某个示例?#
分两种配置:
运行时自启动命令(Startup command)
在 menuconfig 中设置:
RT-Smart Configuration > Startup command
这里是运行时命令字符串(CONFIG_RTT_AUTO_EXEC_CMD),建议使用绝对路径,例如:
/sdcard/app/examples/integrated_poc/smart_ipc.elf
镜像打包时 Fast Boot 文件路径(可用变量)
若你要配置 Fast Boot 打包源文件路径,请在:
Fast Boot Configuration > Fast boot file path
该项支持绝对路径,或 tools/mkenv.mk 导出的 ${SDK_*} 变量(如 ${SDK_BUILD_IMAGES_DIR}),例如:
${SDK_BUILD_IMAGES_DIR}/sdcard/app/examples/integrated_poc/smart_ipc.elf
Q11:如何确认当前固件支持哪些 Sensor?#
在板端执行:
list_sensor
若看不到目标 sensor,需在 menuconfig 的 Sensor 相关选项中使能后重新编译烧录。
仍未解决?#
前往社区发帖求助
建议按下面顺序提供信息,定位会更快:
使用的 defconfig 名称
完整报错日志(包含前后 30 行)
烧录方式与镜像文件名
串口启动日志关键片段
并附上你已经尝试过的命令。
