nrf9160开机测试(做主控)——连接nrfcloud云
由于作者水平有限,如有披漏欢迎指正。
测试流程:
1、前期开发准备(硬件)
2、开发环境准备(软件)
3、连接云
4、GPS测试
一、前期开发准备:
- nrf9160-DK版
- nRF Connect for Desktop(桌面版)
- NCS(官方最新开发SDK,笔者写这篇博客时更新到NCS1.9)
- 一张新的移动物联网卡(特别注意这一点,如果你使用电信的物联网卡无法联网,走不通,那么就换为移动的,笔者在测试时电信的没有成功,后采用移动物联网卡。还一点是要是激活的物联网卡,购买时让移动公司进行激活,因为设备会进行绑定,如果需要迁移到其余设备,需要去找移动客服进行解绑)。
特别注意:用官方DK开发板进行前期开发,nrf9160-DK版的版本不要太老,至少0.9版本以上。否则是连接不上的。如何查看版本:在DK板上有这样一张标签,如左图红色框柱的就是DK版版本为0.8.5,低于0.9的都不建议用。本次笔者选择的进行DK版为1.0.1版本。
二、开发环境准备
相关开发环境搭建在哔哩哔哩上、优酷有官方视频可以进行学习,直接搜索nordic半导体,但是对于连接云的官方教学视频比较老,有些地方存在变动。更加详细的也可以参看官方指导文档进行,下面是官方的文档连接:
有了DK板后,先去官网下载nRF Connect for Desktop(桌面版),进行安装,下载链接如下:nRF Connect for Desktop - nordicsemi.com,(或者输入www.nordicsemi.com官网地址,在搜索选项中输入nRF Connect for Desktop进行跳转),下拉网页后选择Downloads,选择最新版然后点击.exe文件进行下载,下载后直接点击安装即可。(如下图)
安装好后,打开nrf connect桌面版,安装下图两个软件(由于我已经安装过,所以为Open选项)
2.2、IDE安装
在这用到两种开发环境,一是SES IDE、二是VS code,下面分开来讲解,值得注意的是在V2.0开始的NCS已经不在支持使用SES IDE,所以请优先选择VS code
2.2.1、SES IDE
在新版的NCS中已经放入了SES的可执行文件,不用单独去安装SES,我们直接就可以用,使用方式直接打开NCS在其目录下:v1.6.1\toolchain 有 SEGGER Embedded Studio.cmd直接就可以打开进行工程编辑
打开后即可选择工程进行开发了,那这如何选择我们工程,请看下图:
会打开如下界面,然后选择工程与板子(芯片);即可进行编译下载,或者进行开发了(在中文官方博客中也有相关刚更多的教程)
注:当然如果有需要使用的是SDK开发包,且要用到SES,可以接着看下面内容。否则请跳到2.2.3继续
在官方的中文博客中有关于SES IDE的讲解与安装,连接如下:Nordic nRF51/nRF52开发环境搭建 - iini - 博客园 (cnblogs.com),可以进行参考,直接下载链接为:https://www.segger.com/downloads/embedded-studio,在安装后需要进行激活(这是Segger公司为Nordic芯片量身打造的,对Nordic用户来说,永久免费,所以激活很有必要),步骤如下:
第一步:cmd命令窗口输入: Ipconfig /all 回车( ——>获取IP)获取你电脑的物理地址IP:
第二步:获取了这个IP后,浏览器打开:https://license.segger.com/Nordic.cgi,把其放在MAC中,填写相关内容,后获取注册码(会收到一封邮件)
第三步:打开ses IDE,选择tool
在选择License Manager
然后点击:
填入秘钥:
激活完毕,关闭重启即可使用了。
2.2.2、VS cold安装nrf开发插件
这个要注意版本,笔者使用的为1.66.1版本,或者在nordic官方网站上去下载,怎么下载和使用可以到哔哩哔哩或者优酷上搜索nordic半导体,有许多的官方关于VS code的讲解视频,可以去观看,下面进行简单操作讲解。
打开VS code然后直接搜索安装插件即可:
安装完成后重启,如果在平时开发过程在右下角弹出警告提示,一般不要管或者直接点击关闭,否则有些操作肯能导致NCS版本出错,如果你不知道如何修改回来,那就麻烦了。
1.3、下载NCS
可以直接参考这篇官方博客,进行下载
开发你的第一个nRF Connect SDK(NCS)/Zephyr应用程序 - iini - 博客园 (cnblogs.com)
截图如下:
还可以在VS code中进行下:但是可能超级慢(这种方式前面提到的VS code教学视频中也有讲解,不了解的可以去观看视频)
到此开发准备已经完毕。
三、连接云(nrf cloud)
3.1、modem固件下载
第一步先去官网上下载mfw_nrf9160的固件(这注意一下版本,固件版本和NCS版本是有对应的,官网下载固件处,点击向下的箭头直接查看适用于那个NCS版本),下载链接如下:
Compatible Downloads - nordicsemi.com,
(或者在官网,搜索9160进入9160 DK,然后下拉网页同样找到如图界面进行下载)。
3.2、下载mfw_nrf9160固件到nrf9160
打开nrf connect 下的programmer软件,进行固件下载:
第一步链接开发板和PC端,然后打开programmer软件,链接开发板,然后擦除,在解压刚刚下载的nrf9160dk_fw_2022-02-17_ec486dab.zip其中有一个mfw_nrf9160_1.3.1.zip固件直接拖到文件添加区,然后点击write,进行烧写。
等待烧写完成:
这一步完成后我们就可以,打开SES或者VS code编译NCS中的官方程序进行程序下载。
因为nordic会不间断的更行nrf connect中的工具,有些时候更新后更改某些操作方式,如下是我更新版本后新的下载modem的方式,如果你发现和我的界面不一样了了,你可以多点击试试看,看能不能调出write:
3.3、APP编译下载
3.3.1、工程创建编译下载
利用SES或者VS code进行程序下载,打开VS code,按照如图所示操作,选择好先前下载NCS文件。
如下为选择的NCS和编译工具链,1为下载好的NCS目录,2为目录中的工具链目录toolchain,选择好有如图显示即可,笔者使用了NCS1.9,其余版本同样的选择。选择完毕不用其余操作。
然后建立镜像工程:流程如图,
在弹出的窗口中选择如下工程:asset_tracker_v2并创建工程。
建立后 有如图所示项目:
然后选择板子:
从而得到一个nrf9160的项目
打开该项目的prj.conf文件加入一个宏定义,然后保存编译下载,宏定义如下:
CONFIG_LTE_NETWORK_MODE_NBIOT_GPS=y
这里特别注意的是,如果有对配置文件(如prj.conf)进行更改,那么添加或者删除,并保存后要选择全编译,否则工程配置时不会覆盖的,如今进行修改了代码那么普通编译即可。
如图在buil后有一个更新图标,点击它既进行全编译。
3.3.2、下载出错
有是后在下载时会出现如下的下载报错,提示说west查错失败,要用west去复位擦除
这时请点击flash后面的双箭头进行下载,会进行复位擦除操作,也是在芯片有擦除保护时的解决办法。
3.4、nrf code证书获取
nordic云的证书获取,在浏览器输入一下网址:nRF Cloud,注册一个nordic的云,登录后第一个界面为下图所示,如果不是,请单击右上角的三条横杆选项,user account选项,进入
然后点击:provision devices
进入界面点击右上角设置图标
进入如下界面:输入IMEI码(要加上nrf-)和PIN码(DK板白色标签纸上可查看)
然后既可以得到一个证书文件:以.cert.json为后缀。
3.5、云证书上传
给9160提供访问云的CA证书,打开LTE Link,然后连接设备,插入SIM物联网卡,输入AT指令AT+CFUN=4点击发送让设备进入到离线模式,并用AT+CFUN?确认进入到离线模式(返回4)。
然后点开如下的界面加载证书,等待正式上传完毕,
确定上传完毕:
然后可以断电重启一下。
3.6、nrf9160设备上网
1、经过上面步骤后:你会发现LED3有规律的闪烁,闪烁一样看下图,也可以直接查看官方文档介绍(如果有APP更新,可能某些状态进行了改变,需要直接去看对应版本的文档),链接如下:
查看你的开发板LED3是否有双脉冲闪烁现象,如果有那就可以在nrfcloud 上添加设备了。
3.7、设备上网问题解决:
(关于AT指令集,请在官网进行下载,在9160目录下)
1.1、如果LED3没有双脉冲闪烁现象:那请注意输入下列语句,并确认返回正确:
AT+CFUN=4 进入离线模式
AT%XSYSTEMMODE=0,1,0,0 //选择NB网络
AT+CEREG=5 //打开调整解调器
AT+CFUN=1 //开始联网
1.2、如果还不行请查看你的网络连接状态:
AT+CGATT?
//确定是否连接运营商网络 0为没连接 1为连接,如果没连接需要和运营商确定SIM卡的网络状态。
1.3、其余情况可以根据报错,到 Nordic DevZone (nordicsemi.com) 进行搜索
3.8、nrf cloud云设备添加
打开nrf cloud点击加号进行设备添加
在点击LTE Device后进入带SIM卡号添加界面,如果你是在国内,那你不能使用和DK一起配套的SIM卡,因为该卡的网络在国内没有,只适合与欧洲或有相同网络覆盖的地区,因此也不需要添加激活官方的SIM卡,所以我们直接跳过,这一步已经在你购买移动物联网卡并且激活SIM卡时代替了。
在上报添加界面输入对应的IMEI和PIN号
点击添加设备会有一下界面,如果你的LED灯正确闪烁,那么你添加后等待一会会提示你添加设备成功。如果添加设备成功,但是没有设备显示,请从新刷新界面
这个过程中,如下报错,说明你的设备并没有连接到云,需要从新确定前面步骤是否有错。
添加成功并 找到设备可以找到如下界面
这时在LTE端也可以看到数据在上传:
3.9、数据显示
在完成以上步骤后,云端数据显示如下:在右上角配置按钮处可以配置你需要显示哪些界面,如果没有刷新出下面页面你可能要翻一下墙。
四、GPS测试
如果需要测试GPS定位,请去到室外进行测试。
注意事项: