esp32官方的idf sdk已经有基于http方式的ota参考,不得不说esp32 example非常丰富, iot相关的sample都基本上能找到的参考实现,对新手来说可以很快入门。
看到esp32c3除了支持wifi也支持ble,想着看能不能直接利用siliconlabs 的蓝牙app efr connect手机软件来作为ota client 对esp32进行ble ota 升级(实现流程基本只要实现了siliconlabs定义的ota相关service以及char uuid功能后,就可以直接用siliconlabs efr connect app来进行蓝牙ota 固件升级)。
ota升级对mcu来说基本流程差不多,idf的bootloader部分已帮用户实现运行那部分applicaiton,因此留给用户的只要把要升级的固件写入flash对应地方就可以。
具体详细代码及流程都放到github上,使用上有疑问的可以直接提issue,
github 地址:https://github.com/iot-lorawan/esp32-ota-ble