能否获取CanMV IDE关于烧录部分功能的支持?

Viewed 36

问题描述


我们现在希望对几十台~几百台机器(含庐山派、01科技K230开发板、01科技K230核心板),通过USB口批量复制不同文件到指定文件夹/根目录。

但是现在的MTP传输不稳定,因为要对不同设备拷贝不同文件,我们还希望有设备响应功能。

希望获得官方支持,调用部分Canmv功能或者有指定dll可以实现链接+传输。我们可以尝试实现多设备按顺序传输和屏显测试,达到更好的快速测试和批量测试的目的。

https://github.com/thonny/thonny-pyboard 这个貌似是一个插件?我们希望使用串口或者是否有其他更好的方案开发。要用于生产环境调参。

我们希望做一个独立的程序,使用USBDBG打断当前运行的程序,然后执行一些指定内容,并且实现批量化,我们每次要设置5-10台设备,希望自动化。

实际上就是向SDCARD里面拷贝一些独立文件,每个设备的文件都不一样。

我们希望得到如何使用USBDBG,或者如何打断当前程序或者使用串口的方案。能得到跟CanMV类似的效果。

复现步骤


调试过程中主要遇到四类问题:

协议帧参数错误:最初将 USBDBG 帧的 4 字节参数误填为数据长度,实际应根据命令含义填入读取长度或状态 ID,导致设备无法识别并返回乱码。

缺少响应读取:发送命令后未及时读取设备回复,残留数据污染后续通信,造成状态机混乱。

时序与复位问题:打开/关闭串口时 DTR 拉低触发硬件复位,且中断后未及时发送调试模式锁定命令 0x0D,设备软复位后仍执行 main.py,导致停止后又重启。

消息未排空:中断后的 traceback、软复位输出、版本信息等残留在设备缓冲区,未用 0x8E/0x8F/0x81 循环取净就进入下一步,进一步干扰状态查询。

实际上我们希望知道CanMV IDE与设备通讯的标准串口文档。还有如何debug的整个流程

硬件板卡


庐山派,01科技k230开发板,01科技k230核心板

软件版本


自己使用官方github编译2.9.0版本无问题

1 Answers

你好,我们还支持cdc + adb,可以将其切换成adb,然后使用工具来进行文件读写,或者可以参考thonny的文件读写实现。

不能使用官方的调试模式吗?因为我们想实现多台设备指定某台设备亮灯或者蜂鸣器或者亮屏,这个最好要进入调试,希望获得支持。

因为每台设备拷贝的文件不一样,所以必须有这个方便区分

adb我们用过了,覆盖文件的时候需要手动点击确定,很麻烦,我们大概三四十个文件要手动点击,我们希望每次十台设备的话,一次就要鼠标点击几百次。

可以,这样的话,可以参考IDE的实现,https://github.com/kendryte/canmv_ide_qt_creator/tree/k230/src/plugins/openmv , 目前ide中的写文件Chunk只有256,比较小,可以改大一些。