TuyaOpen开发OTA问题求解决方案
T5 模组,TuyaOpen 开发,由于模组本身FLASH只有8M
1、我想外扩一个256M的NOR Flash应该如何操作?有无demo资料?
2、外扩成功后,我要进行OTA升级,代码大小为20M,能否成功升级?
3、升级流程是怎样逻辑?是AB分区吗?升级的时候先下载到B区,然后再搬运到A区运行?
4、如果升级分区是AB分区,那B区起始地址该如何设置?
T5 模组,TuyaOpen 开发,由于模组本身FLASH只有8M
1、我想外扩一个256M的NOR Flash应该如何操作?有无demo资料?
2、外扩成功后,我要进行OTA升级,代码大小为20M,能否成功升级?
3、升级流程是怎样逻辑?是AB分区吗?升级的时候先下载到B区,然后再搬运到A区运行?
4、如果升级分区是AB分区,那B区起始地址该如何设置?
可以外扩 FLASH,T5 的升级是压缩升级的,不是 A,B 分区的。分区表信息是写死到 bootloader 中的,无法开源和修改。代码 20M 是不是包含了 图片或其他不是可执行指令的东西,导致这么大。还是说 20M 全是可执行指令?
是的,包含了图片视频之类的。
yangjie 2026年 Apr 30日 10:28可以外扩 FLASH,T5 的升级是压缩升级的,不是 A,B 分区的。分区表信息是写死到 bootloader 中的,无法开源和修改。代码 20M 是不是包含了 图片或其他不是可执行指令的东西,导致这么大。还是说 20M 全是可执行指令?
是的,包含了图片视频之类的,这个有什么好的解决方法吗?
你可以把图片视频之类的放到外扩的flash 中,然后上电的时候进行读取解码,然后再使用。
那如果我图片和视频、字库需要更新呢?要怎么更新?
你可以把外扩flash的东西打成一个 bin,然后使用一个专门的通道来更新
附属固件吗?
具体逻辑和这里一样,https://developer.tuya.com/cn/docs/iot- ... s93f0gmwwy
在 tuyaopen 上固件信息应该是从这个函数出来的:void user_upgrade_notify_on(tuya_iot_client_t *client, cJSON *upgrade)
yangjie 2026年 Apr 30日 10:28可以外扩 FLASH,T5 的升级是压缩升级的,不是 A,B 分区的。分区表信息是写死到 bootloader 中的,无法开源和修改。代码 20M 是不是包含了 图片或其他不是可执行指令的东西,导致这么大。还是说 20M 全是可执行指令?
我看了下文档,发现有个RTOS的移植教程。只需要做接口的适配。
我能不能用这种方法,就是我换一款我熟悉的芯片,然后重新开发,我跑RT-Thread系统,然后我接入TuyaOS,只要做接口的适配,然后OTA部分的话,我在做适配的时候其实是可以自定义升级写入的起始地址,同时BOOT也是我自己写的,我可以自定义跳转,这样的话,是不是只要我设计的硬件支持,那不论我升级包多大,哪怕30M也可以实现?