Wi-SUN入门指导9:WSBRD使用OTA DFU升级Wi-SUN SoC Meter固件
本文主要介绍 WSBRD 使用 OTA DFU 升级 Wi-SUN SoC Meter 固件的方法。关于 Wi-SUN OTA DFU 的详细内容可以参考这个链接:https://docs.silabs.com/wisun/latest/wisun-ota-dfu/
1、我们在对 Meter 执行 OTA 的时候,需要使用 CoAP 来触发和监控固件升级。我们先参考 SILICON LABS 的 OTA DFU 说明文档,使用如下两条命令来安装 libcoap2 和 libcoap2-bin。
sudo apt-get install libcoap2
sudo apt-get install libcoap2-bin
此时,可能会报如下错误:
如果使用上面的方法安装 libcoap2 和 libcoap2-bin 失败,可以直接使用如下链接从 github 下载 v4.2.1 版本的 libcoap 源代码。
https://github.com/obgm/libcoap/releases/tag/v4.2.1
下载完成后,在电脑找到 libcoap-4.2.1.zip 文件所在的路径。
打开电脑的命令行页面,先进入到 libcoap-4.2.1.zip 文件所在路径,再使用如下命令将 libcoap-4.2.1.zip 文件发送到树莓派。
scp libcoap-4.2.1.zip pi@192.168.43.253:~/.
在树莓派输入 ls 命令,可以看到我们从电脑发送过来的 libcoap-4.2.1.zip 文件。
使用如下命令解压 libcoap-4.2.1.zip 文件。
unzip libcoap-4.2.1.zip
使用如下命令编译和安装 libcoap-4.2.1。
cd libcoap-4.2.1
./autogen.sh
./configure --disable-documentation --disable-shared --without-debug CFLAGS="-D COAP_DEBUG_FD=stderr"
make
sudo make install
2、使用如下命令安装 TFTP 服务器。
sudo apt-get install tftpd-hpa tftp-hpa
使用如下命令查看 TFTP 服务器的配置,如果您的 TFTP_USERNAME 和 TFTP_DIRECTORY 与默认配置不同,请根据您的配置进行修改。按下 Ctrl+X 按键关闭 TFTP 配置文件。
sudo nano /etc/default/tftpd-hpa
3、使用如下命令重启 TFTP 服务器,提示 Password 时输入密码 pi。
/etc/init.d/tftpd-hpa restart
4、在执行后面的操作之前,需要先运行 WSBRD。由于我们的树莓派使用了 CPCd 跟 Wi-SUN RCP 通信,所以在运行 WSBRD 之前,需要先使用如下命令运行 CPCd。
sudo cpcd
然后再打开第二个 SSH 终端页面,使用如下命令运行 WSBRD。
sudo wsbrd -F wisun-br-linux/examples/wsbrd.conf
5、我们再重新打开一个 SSH 终端页面,用来运行 CoAP Server。将已知的 IPv6 地址添加到 Border Router (充当CoAP server 和 Notification Server),使用如下命令以 IPv6 前缀为 “OTA DFU HOST” 角色向 “tun0” 接口添加第一个 IPv6 地址。
sudo ip -6 address add fd00:6172:6d00::1/64 dev tun0
使用如下命令以 “OTA DFU NOTIFY HOST” 角色向 “tun0” 接口添加第二个 IPv6 地址。
sudo ip -6 address add fd00:6172:6d00::2/64 dev tun0
6、使用如下命令检查现在 “tun0” 接口是否有两个 IPv6 地址。
ip address show tun0 | grep global
7、使用如下命令用 -d 10 启动 CoAP notification server,以允许动态资源创建。
coap-server -A fd00:6172:6d00::2 -p 5685 -d 10
8、等待 Meter 加入 WSBRD 网络。Meter 加入到 WSBRD 的网络后,会打印如下信息,可以看到 Meter 和 Border Router 的 IPv6 地址。
此时在运行 WSBRD 的 SSH 终端页面也能看到刚入网 Meter 设备的 IPv6 地址。
9、在电脑的命令行页面输入如下命令,并输入密码:pi,把 wisun_soc_meter_brd4270b_version_2_lzma.gbl 固件发送到树莓派的 /tmp/ 路径。
scp wisun_soc_meter_brd4270b_version_2_lzma.gbl pi@192.168.43.253:/tmp/
10、再打开一个 SSH 终端页面,使用如下命令可以看到 wisun_soc_meter_brd4270b_version_2_lzma.gbl 固件已经复制到树莓派的 /tmp/ 路径了。
ls /tmp
11、使用如下命令将 wisun_soc_meter_brd4270b_version_2_lzma.gbl 固件复制到 TFTP 服务器的文件路径。
sudo cp /tmp/*.gbl /srv/tftp/.
使用如下命令查看 /srv/tftp/ 路径是否有我们刚复制过来的 wisun_soc_meter_brd4270b_version_2_lzma.gbl 固件。
ls -l /srv/tftp/*.gbl
使用如下命令在 /srv/tftp/ 路径复制 wisun_soc_meter_brd4270b_version_2_lzma.gbl 固件,并把它另存为 wisun_firmware.gbl 固件,这个固件名称需要跟 Meter 工程 OTA DFU 组件的 Firmware image (gbl) file name on TFTP server 的名称一样。
sudo cp /srv/tftp/wisun_soc_meter_brd4270b_version_2_lzma.gbl /srv/tftp/wisun_firmware.gbl
使用如下命令查看 wisun_firmware.gbl 固件有没有正常生成,并且固件大小跟 wisun_soc_meter_brd4270b_version_2_lzma.gbl 固件一样。
ls -al /srv/tftp/*.gbl
12、为了方便测试,我们把 Border Router 和 Meter 的 IPv6 地址分别保存到 WISUN_BR_IPV6_ADDR 和 WISUN_NODE_IPV6_ADDR。在每一个需要调用 WISUN_BR_IPV6_ADDR 和 WISUN_NODE_IPV6_ADDR 的 SSH 终端页面都得重新保存一次。
使用如下命令将 Border Router 的 IPv6 地址保存在 WISUN_BR_IPV6_ADDR。
WISUN_BR_IPV6_ADDR=fd12:3456::da7a:3bff:fe3e:3474
使用如下命令将 Meter 的 IPv6 地址保存在 WISUN_NODE_IPV6_ADDR。
WISUN_NODE_IPV6_ADDR=fd12:3456::92fd:9fff:fe00:338c
13、可以使用如下命令测试能不能 ping 通 Border Router。
ping $WISUN_BR_IPV6_ADDR -c 1
使用如下命令测试能不能 ping 通 TFTP Server。
ping fd00:6172:6d00::1 -c 1
使用如下命令测试能不能 ping 通 Notification Server。
ping fd00:6172:6d00::2 -c 1
使用如下命令测试能不能 ping 通 Meter。
ping $WISUN_NODE_IPV6_ADDR -c 1
14、使用如下命令检查 Meter 是否在运行 CoAP。
coap-client -m get coap://[$WISUN_NODE_IPV6_ADDR]:5683/ota/dfu -v 6
WSBRD 打印如下信息,表示 Meter 有在运行 CoAP。
在 Meter 的串口也会打印如下信息。
15、使用如下命令开始对 Meter 执行 OTA 升级。
coap-client -m post -N -B 3 -t text coap://[$WISUN_NODE_IPV6_ADDR]:5683/ota/dfu -e "start" -v 6
Meter 收到开始升级命令后会打印如下信息:
等待 Meter 升级完成。Meter 升级完成后,如果校验升级固件没问题,Meter 会执行重启,并且运行新的固件,此时可以看到 Meter 的固件版本已经变成 Version 2。
适用无线SoC芯片:
- |
- +1 赞 0
- 收藏
- 评论 0
本文由潮汕小菜提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】多协议无线 SOC EFR32MG实现ZigBee的OTA操作指南
EFR32MG系列是Silicon Labs公司推出支持多协议无线 SOC,可以单芯片支持私有协议、BLE5.0、BLE MESH、ZigBee和Thread协议,并且可以单芯片支持Sub-GHz和2.4GHz的频段。由于其超低功耗、高射频性能以及高集成度等特点被广泛应用于智能家居、安防、智能工业等市场。在ZigBee的实际应用中,OTA是必不可少的功能,由于选择的型号不同,配置OT
【经验】使用Si4463或者Si4438无线收发芯片来解析其他无线设备通信速率的方法
本文使用EFR32FG23无线SoC芯片来模拟老产品,通过按键来触发EFR32FG23芯片发送无线数据包,然后使用Si4438芯片来捉取波形,并介绍使用Si4438无线收发芯片来解析其他无线设备通信速率的方法。
Wi-SUN入门指导1:安装Simplicity Studio v5集成开发环境和Simplicity SDK
本文主要介绍安装Wi-SUN开发所需的Simplicity Studio v5软件和Simplicity SDK的方法。
【IC】Silicon Labs的EFR32xG27无线SoC,外形小巧且低功耗,在物联网应用中具有极强的渗透力
EFR32xG27无线Gecko SoC是将76.8MHz的Arm Cortex-M33处理器内核与高性能2.4GHz无线电相结合的单芯片解决方案,外形小巧,同时具有丰富的功能和低功耗的特性,在物联网应用中具有极强的渗透力。
【经验】使用Simplicity Commander工具读写EFR32无线SoC芯片EUI和install code方法
本文以Silicon Labs EFR32FG23 Sub-G无线SoC芯片为例,介绍如何读写EFR32无线SoC芯片的EUI和install code的方法。
Wi-SUN入门指导8:生成Wi-SUN SoC Meter OTA DFU升级所需的固件
本文主要以BRD4270B开发板为例,介绍生成 Wi-SUN SoC Meter OTA DFU升级所需固件的方法。
【经验】基于Silicon Labs无线SoC芯片MG24开发套件的Matter入门指导文章汇总
本文主要介绍基于Silicon Labs MG24开发套件的Matter入门指导文章汇总。
【经验】使用串口来升级EFR32FG23无线SoC芯片固件的方法
本文主要介绍如何使用BootLoader——NCP UART XMODEM工程实现使用串口升级Silicon Labs EFR32FG23无线SoC芯片固件的方法。
SiWG917 SoC Single Chip Wi-Fi® and Bluetooth® LE Wireless Secure MCU Solutions
型号- SIWG917M100MGTBA,SIWG917M121XGTBA,SIWG917,SIWG917M111XGTBA,SIWG917M110LGTBA,SIWG917M111MGTBA,SIWG917M141XGTBA
【经验】配置迈斯威志WizPro200EFM烧录器实现脱机烧录无线SoC芯片EFR32MG21固件的方法
Silicon Labs的EFR32MG21无线SoC芯片,主要用于ZigBee和Matter设备。本文主要介绍如何配置迈斯威志WizPro200EFM烧录器,实现脱机烧录EFR32MG21无线SoC芯片固件的方法。
【经验】如何使用RAILTEST程序测试无线SoC芯片EFR32MG的蓝牙性能?
使用过Silicon Labs无线SoC芯片EFR32MG的Zigbee功能的工程师多数已经习惯使用Railtest软件对Zigbee性能做测试,而在Railtest软件下也可以对BLE性能做测试。本文将介绍具体的设置步骤与注意事项。
Wi-SUN入门指导4:使用树莓派和EFR32FG25 Wi-SUN Dongle搭建Border Router
树莓派4B安装好Linux操作系统后,就可以安装Silicon Labs的Wi-SUN Border Router程序了。本文主要介绍使用树莓派4B和无线SoC芯片EFR32FG25/EFR32FG28 Wi-SUN Dongle搭建Wi-SUN Border Router的方法。
【经验】EFR32FG23无线SoC使用I2C读写MSA311传感器寄存器的方法
本文以 Silicon Labs 的 EFR32FG23 无线SoC芯片的 rail_soc_simple_trx 工程为例,介绍如何使用EFR32FG23 芯片 I²C外设来读写敏芯微 MSA311三轴加速度传感器寄存器的方法。
【经验】使用Simplicity Commander工具对无线SoC芯片EFR32FG23执行recover的方法
在使用芯科科技EFR32FG23时,有时一些错误的操作会导致芯片烧录一次固件之后就不能重新烧录,或无法识别到芯片等问题,需要对芯片执行recover。本文主要介绍使用Simplicity Commander工具对EFR32FG23执行recover的方法。
Wi-SUN入门指导3:给Wi-SUN Border Router的树莓派4B安装Linux操作系统
为了方便演示,我们使用树莓派4B(Raspberry Pi 4 Model B)来作为Linux主控。本文主要介绍如何给无线SoC芯片EFR32FG25/EFR32FG28 Wi-SUN Border Router的树莓派4B安装Linux操作系统。
电子商城
品牌:SILICON LABS
品类:Flex Gecko Wireless SoC
价格:¥78.9741
现货: 2,495
品牌:SILICON LABS
品类:Wireless Gecko SoC
价格:¥8.1764
现货: 103,878
品牌:SILICON LABS
品类:Mighty Gecko Multi-Protocol Wireless SoC
价格:¥27.0929
现货: 90,767
现货市场
品牌:SILICON LABS
品类:Switch Hall Effect Magnetic Position Sensor
价格:¥2.2924
现货:126,000
服务
拥有IC烧录机20余款,100余台设备,可以烧录各种封装的IC;可烧录MCU、FLASH、EMMC、NAND FLASH、EPROM等各类型芯片,支持WIFI/BT模组PCBA烧录、测试。
最小起订量: 1 提交需求>
配备KEYSIGHT网络分析仪,可测量无线充电系统发射机/接收机线圈的阻抗,电感L、电阻R、电感C以及品质因数Q,仿真不同充电负载阻抗下的无线充电传输效率。支持到场/视频直播测试,资深专家全程指导。
实验室地址: 深圳 提交需求>
登录 | 立即注册
提交评论