windows下Ra-08H接入自建chirpstack服务器,使用MQTT通信教程

本文主要是介绍windows下Ra-08H接入自建chirpstack服务器,使用MQTT通信教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 前言
  • 准备工作
  • Ra-08烧录
    • 开发板按键说明
    • 获取工具和固件
    • 烧录固件
    • 固件运行
  • chirp stack搭建
  • chirpstack添加网关
      • 第一步、点击添加服务器
      • 第二步、添加网关
      • 第三步、添加sevice-profiles
      • 第四步、添加device-profile
      • 第五步、添加节点设备
      • 第六步、节点入网
  • MQTT连接,数据收发
      • 第一步、我们打开mqttx连接服务器
      • 第二步、设置订阅发布的Topic
      • 第三步、节点上报数据
      • 第四步、服务器下发数据
      • 第五步、确认服务器内的log日志
  • 结束
  • 联系方式

前言

安信可开源团队相应网友号召,今天给大家带来了本地搭建chirp stack服务器并且成功连接的教程,给大家少走一些弯路,本章内容篇幅较长,有想要了解和测试的朋友耐心看完,本例程从模组获取,烧录,服务器搭建,到连接和数据收发,废话不多说,直接开始

准备工作

原理
在这里插入图片描述

  1. win10系统电脑一台
  2. Ra-08H开发板+数据线
  3. RG-02网关
  4. Docker Desktop工具
  5. 安信可串口调试助手
  6. chirp stack项目包
  7. MQTTX客户端

Ra-08烧录

本次测试采用开发板,若使用模块下载详细接线请参照

AT固件使用

开发板按键说明

在这里插入图片描述

获取工具和固件

在这里插入图片描述

烧录固件

在这里插入图片描述

固件运行

在这里插入图片描述

chirp stack搭建

说明:chirp stack在官网只有Linux版本,所以我们现在搭建在Windows下需要借助Docker
Desktop工具,如果你是在Linux下搭建则不需要考虑安装Docker Desktop,直接命令行安装即可

第一步、安装Docker Desktop前需要对电脑做如下操作
①打开控制面板

②点击程序

③点击启用或者关闭windows功能,弹出windows功能界面

④界面内找到Hyper-V,扩展开勾选Hyper-V管理工具和Hyper-V平台(如图所示)

⑤最后点击确认

注意:这里点击确认以后会自动更行系统内的一些设置,电脑会重启,属于正常现象

在这里插入图片描述

第二步、安装Docker Desktop工具,点击连接下载(建议加速器下载)
1、下载Docker Desktop
在这里插入图片描述

2、双击安装包安装
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、win+R打开命令行窗口,运行dockersversion,出现如下提示说明安装成功
在这里插入图片描述4、此时桌面双击运行Docker Desktop,部分用户可能出现如下提示kernel update: https://aka.ms/wsl2kernel表示Linux内核需要更新,点击连接前往更新即可

在这里插入图片描述

5、直接点击更新内核安装包
在这里插入图片描述

6、更新完成后再次运行Docker Desktop,成功运行截图如下
在这里插入图片描述

7、接下来就可以安装chirp stack了,安装包的地址如下
https://gitee.com/sheng_lyu/chirpstack-docker

也可以使用GIT拉取,指令如下

git clone https://github.com/chirpstack/chirpstack-docker.git

在这里插入图片描述
8、在解压的chirp stack文件下找到这个路径启用cmd命令,根目录运行docker-compose up****
在这里插入图片描述

注意:我这里是使用的EU868,无需对配置文件做更改,如果使用CN470请进入ChirpStack软件所在目录,更改配置文件【chirpstack-network-server.toml】后再来执行docker-compose
up启动chirpstack

在这里插入图片描述
9、等待命令窗口更新完成后我,我们回到Docker Desktop,可以看到我们的chirpstack启动完成
在这里插入图片描述
10、此时我们就可以在浏览器访问http://localhost:8080打开我们的chirpstack服务器了
在这里插入图片描述
在这里插入图片描述

  • 以上就是我们在本地搭建的chirpstack服务器了,下面我们在服务器上添加设备

chirpstack添加网关

第一步、点击添加服务器

chirpstack-network-server:8000
在这里插入图片描述

第二步、添加网关

网关我们使用的安信可的RG02的LoRaWAN网关,我们使用AP热点连接进入网关配置参数和连接网络
在这里插入图片描述

在这里插入图片描述
在服务器端写入网关的参数和配置信息

在这里插入图片描述

第三步、添加sevice-profiles

在这里插入图片描述

第四步、添加device-profile

在这里插入图片描述
选择入网方式
在这里插入图片描述

第五步、添加节点设备

在这里插入图片描述
创建设备名
在这里插入图片描述
添加设备参数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

第六步、节点入网

设备入网需要节点窗口写入设置好的指令参数,这里仅提供OTAA入网,上述已经在服务器写入了DEVICE EUI和app key,所以我们使用这两个参数配合Ra-08的参数进行入网操作

ABPOTAA
AT+CJOINMODE=0AT+CJOINMODE=0
AT+CDEVEUI=c91391b7dab03cbeAT+CDEVEUI=0123456789ABCDEF
AT+CDEVADDR=019e4313AT+CAPPEUI=1122334455667788
AT+CAPPSKEY=614fe5b44bd0c2e827eabae8d10d82aaAT+CAPPKEY=2B7E151628AED2A6ABF7158809CF4F3C
AT+CNWKSKEY=5cf07249a7b245b8c97fdcaae8f84babAT+CFREQBANDMASK=0003
AT+CULDLMODE=2AT+CULDLMODE=2
AT+CCLASS=0AT+CJOIN=1,1,10,3
AT+CFREQBANDMASK=0001AT+DTRX=0,2,6,123401
AT+CJOIN=1,1,10,3AT+DTRX=1,1,3,012
AT+DTRX=0,2,6,123401
AT+DTRX=1,1,3,012
  • 入网成功

在这里插入图片描述

  • 节点上线成功

在这里插入图片描述

MQTT连接,数据收发

说明,chirpstack自带MQTT服务,我们只需要找到他的topic即可进行收发,在开始之前我们寻找一个MQTT客户端,我是用的是emqx的mqttx

第一步、我们打开mqttx连接服务器

在这里插入图片描述

第二步、设置订阅发布的Topic

订阅:application/1/device/0123456789abcdef/event/up
发布:application/1/device/0123456789abcdef/command/down

参考资料https://www.chirpstack.io/application-server/integrations/mqtt/
在这里插入图片描述
接下来我们参照上述连接内的文档,发送JSON格式数据

{"confirmed": true,                      "fPort": 10,                             "data": "qrvM"                           
}

data部分为负载数据为base64格式,转换即后的参数是AABBC
格式转换器base64格式转换器

第三步、节点上报数据

好了上述已经准备完毕,接下来看我们从节点上报数据到chirpstack服务器再由客户端输出
在这里插入图片描述

第四步、服务器下发数据

  • 再来看下MQTT客户端下发数据模块是否收到

在这里插入图片描述

第五步、确认服务器内的log日志

在这里插入图片描述

结束

本次测试流程主要针对了高频的Ra-08H,流程相对复杂一些,本节在本地搭建服务器,我们总结如下几点注意事项

  1. 此次搭建是在局域网内完成,服务器,RG-02网关,MQTT客户端均在局域网内;

  2. chirp stack服务器Linux版本,如果使用Linux来搭建,直接命令行执行,如果是在windows下搭建,那则需要使用DockerDesktop工具来运载;

  3. Docker Desktop的安装需要在Windows10 专业版系统下运行,因为Docker Desktop的安装需要完全开启
    Hyper-v服务,此服务可能有些系统版本不支持,可以找对应解决办法。

  4. 在我们安装对应的服务或者拉取安装文件时候,建议开启加速器,以免网络波动造成安装失败;

联系方式

以上就是本期分享的内容,目的在于让大家快速适应新品方案的开发,更多资料可从我们官网上获取。

官方官网:https://www.ai-thinker.com
开发资料:https://docs.ai-thinker.com/
官方论坛:http://bbs.ai-thinker.com
技术支持:support@aithinker.com

这篇关于windows下Ra-08H接入自建chirpstack服务器,使用MQTT通信教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/216228

相关文章

DeepSeek模型本地部署的详细教程

《DeepSeek模型本地部署的详细教程》DeepSeek作为一款开源且性能强大的大语言模型,提供了灵活的本地部署方案,让用户能够在本地环境中高效运行模型,同时保护数据隐私,在本地成功部署DeepSe... 目录一、环境准备(一)硬件需求(二)软件依赖二、安装Ollama三、下载并部署DeepSeek模型选

mysqld_multi在Linux服务器上运行多个MySQL实例

《mysqld_multi在Linux服务器上运行多个MySQL实例》在Linux系统上使用mysqld_multi来启动和管理多个MySQL实例是一种常见的做法,这种方式允许你在同一台机器上运行多个... 目录1. 安装mysql2. 配置文件示例配置文件3. 创建数据目录4. 启动和管理实例启动所有实例

Java function函数式接口的使用方法与实例

《Javafunction函数式接口的使用方法与实例》:本文主要介绍Javafunction函数式接口的使用方法与实例,函数式接口如一支未完成的诗篇,用Lambda表达式作韵脚,将代码的机械美感... 目录引言-当代码遇见诗性一、函数式接口的生物学解构1.1 函数式接口的基因密码1.2 六大核心接口的形态学

使用DeepSeek API 结合VSCode提升开发效率

《使用DeepSeekAPI结合VSCode提升开发效率》:本文主要介绍DeepSeekAPI与VisualStudioCode(VSCode)结合使用,以提升软件开发效率,具有一定的参考价值... 目录引言准备工作安装必要的 VSCode 扩展配置 DeepSeek API1. 创建 API 请求文件2.

使用TomCat,service输出台出现乱码的解决

《使用TomCat,service输出台出现乱码的解决》本文介绍了解决Tomcat服务输出台中文乱码问题的两种方法,第一种方法是修改`logging.properties`文件中的`prefix`和`... 目录使用TomCat,service输出台出现乱码问题1解决方案问题2解决方案总结使用TomCat,

解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题

《解决IDEA使用springBoot创建项目,lombok标注实体类后编译无报错,但是运行时报错问题》文章详细描述了在使用lombok的@Data注解标注实体类时遇到编译无误但运行时报错的问题,分析... 目录问题分析问题解决方案步骤一步骤二步骤三总结问题使用lombok注解@Data标注实体类,编译时

电脑没有仿宋GB2312字体怎么办? 仿宋GB2312字体下载安装及调出来的教程

《电脑没有仿宋GB2312字体怎么办?仿宋GB2312字体下载安装及调出来的教程》仿宋字体gb2312作为一种经典且常用的字体,广泛应用于各种场合,如何在计算机中调出仿宋字体gb2312?本文将为您... 仿宋_GB2312是公文标准字体之一,仿China编程宋是字体名称,GB2312是字php符编码标准名称(简

VScode连接远程Linux服务器环境配置图文教程

《VScode连接远程Linux服务器环境配置图文教程》:本文主要介绍如何安装和配置VSCode,包括安装步骤、环境配置(如汉化包、远程SSH连接)、语言包安装(如C/C++插件)等,文中给出了详... 目录一、安装vscode二、环境配置1.中文汉化包2.安装remote-ssh,用于远程连接2.1安装2

vscode保存代码时自动eslint格式化图文教程

《vscode保存代码时自动eslint格式化图文教程》:本文主要介绍vscode保存代码时自动eslint格式化的相关资料,包括打开设置文件并复制特定内容,文中通过代码介绍的非常详细,需要的朋友... 目录1、点击设置2、选择远程--->点击右上角打开设置3、会弹出settings.json文件,将以下内

Java中使用Java Mail实现邮件服务功能示例

《Java中使用JavaMail实现邮件服务功能示例》:本文主要介绍Java中使用JavaMail实现邮件服务功能的相关资料,文章还提供了一个发送邮件的示例代码,包括创建参数类、邮件类和执行结... 目录前言一、历史背景二编程、pom依赖三、API说明(一)Session (会话)(二)Message编程客