获取MaixPy系列开发板机器码——MaixHub 模型下载机器码获取方法
1、机器码的用途
本文介绍获取 MaixPy 系列开发板机器码, 在下载 MaixHub 加密模型(smodel)时需要,每个开发板都需要使用这个机器码下载的加密的模型才能正常运行。(不加密的模型不需要使用机器码下载)
2、如何查看开发板的机器码
下载 key_gen.bin,链接如果失效了就去下载站 手动搜索下载 key_gen.bin
使用 kflash_gui 将固件 ken_gen.bin 烧录到开发板中 0×00000 地址(烧录该固件会覆盖 MaixPy 固件,之后使用 MaixPy 时需要重新烧录 MaixPy 固件)。
警告: 由于需要进行模型加密,运行 key_gen.bin 将永远关闭 JTAG 端口,并写入一次性 AES
KEY,请确认对自己的开发没有影响再进行烧录。(如果不使用 JTAG 调试开发或者仅使用 MaixPy 则开发不受影响)
注意:这里一定要选择FLASH,并且通过别人机器码下载的模型,
也会报错:ValueError:[MAIXPY]kpu: load error:2002, ERR_KMODEL_VERSION: onlysupport kmodel V3/V4 now
打开串口助手,选择开发板的串口设备(有多个设备不知道哪个就都试一遍),波特率为 115200,其它参数为8,N,1,点击打开串口,然后按下开发板的复位键,即可在串口助手上看到机器码。正点原子的XCOM V2.0.exe 就可以!
比如机器码为 96c7031ecc54a525c583cb4cb1394c36 是一个长度为 32 的字符串 ,复制保存以供使用
3、常见问题
ValueError:[MAIXPY]kpu: load error:2002, ERR_KMODEL_VERSION: onlysupport kmodel V3/V4 now:
1、更新固件,更新固件,更新到最新版本支持v3/v4的MaixPy固件,具体更新方法看前面的文档
2、检查存放模型的位置是否与读取的位置是否一致,如果将模型放到sd上,然后读取的位置为flash的0x300000时就会出现这样的错误
3、如果是使用以 smodel 为后缀模型,必需使用自己开发板上的机器码 (从 MaixHub) 来获取模型。