你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32的LoRa OTA系统固件升级

[复制链接]
freeelectron 发布时间:2018-8-24 16:52
本帖最后由 freeelectron 于 2018-8-24 16:51 编辑

       随着阿里,腾讯,铁塔加入LoRa阵营,可见LoRa物联网的前景,已经越来越光明了

方案:目前采用LoRaWAN升级,可操作性不高,尤其是A类设备;但是采用LoRa点对点升级还是可以的。

理论计算我们知道SX1276/8FIFO最大是255字节,速率设置为SF7最快,同时将带宽设置为500K,编码率设置为4/5,且打开硬件CRC,那么传输一帧255字节的数据理论需要135.23ms,参见下图:

1.png

硬件设备:STM32+SX1278

程序设置如下:
  1. Radio.SetMaxPayloadLength( MODEM_LORA, 0xFF );
  2. Radio.SetTxConfig( MODEM_LORA, 10, 0, 2, 7, 3, 8, false, true, false,     0, false, 3000);//10dbm,SF7,500K
  3. Radio.SetRxConfig( MODEM_LORA, 2, 7, 3, 0, 8, 5, false,    0,  true, false,     0, false, true );
复制代码
考虑到无线丢包,以及电磁波影响:发送一个包,需要得到回复,才能发送下一个包,如果丢包则重传。

目标设备端:使目标设备进入bootloader程序,考虑到功耗,设备端不能一直处于bootloader程序,因此需要设置一个超时机制,两桢数据间隔超过5s,则退出bootloader,进入app。


PC端:准备一个USB转串口的LoRa板子通过上位机将APP文件分包,由串口发送到PC端的LoRa板,由PC端的LoRa板发送出去,同时,在发送完成之后处于接收状态,接收目标设备的回复,接收到回复之后,再通过串口发送到PC端,PC端接收到之后,再发送下一包。在没有收到目标设备的升级请求之前,PC端的LoRa板一直处于接收状态,在收到之后请求升级后,PC端的LoRa板将数据传给PC上位机,PC端的上位机处理后,上位机开始发送数据,其中PC端的LoRa板处于透明传输的状态,只做数据转发,不做逻辑处理

数据交互模型:

2.png

升级效率:升级50K左右的bin文件,大约需要5-6分钟,成功基本上可以达到99%



最后欢迎大家加入,stm32/LoRa物联网:304350312

收藏 1 评论7 发布时间:2018-8-24 16:52

举报

7个回答
STM1024 回答时间:2018-8-25 08:15:38
ST也推出了相应的评估板和开发工具了呢?
freeelectron 回答时间:2018-8-25 16:55:16
stm1024 发表于 2018-8-25 08:15
ST也推出了相应的评估板和开发工具了呢?

ST有,但是不是CN470频段的
zero99 回答时间:2018-8-29 09:47:11
学习下,跟上楼主的节奏
sujido 回答时间:2018-9-26 21:23:16
好好学习,看好LORA
Beatle 回答时间:2018-10-22 18:59:41
最新也在研究lora升级但是刚接触Lora还不太懂,我想问的是既然Lora模式下速度慢,那能不能升级时切换到fsk模式传输数据呢?貌似fsk模式速度会快些???
mmuuss586 回答时间:2018-12-5 15:23:35

可以选个LORA+MCU的芯片
freeelectron 回答时间:2018-12-5 16:24:08
mmuuss586 发表于 2018-12-5 15:23
可以选个LORA+MCU的芯片

目前已经有这种芯片了,像阿里的asr6501,台湾也有类似的,说白了就是sip封装

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版