基于go版本的LoraWAN Server 的470MHz频段的设置
一、参考链接
如果您已经基于最新版本的LoraWAN Server(go 版本)的环境,搭建好了服务器的环境,但尚未进行参数设置(此处以470MHz频段设置为例),可以参考如下链接进行设置:
LoraWAN网关如何接入ChirpStack服务器?百度安全验证
此处做简要的归纳如下:
1.1 LoraWAN分配的CN470段频点
归纳之前,简单普及下CN470段,LoraWAN分配的96个频点,具体,可以参考 chirpstack-docker中的如下位置:
chirpstack-docker/configuration/chirpstack-gateway-bridge$ ls -ll chirpstack-gateway-bridge-basicstation-cn470_
chirpstack-gateway-bridge-basicstation-cn470_0.toml
chirpstack-gateway-bridge-basicstation-cn470_1.toml
chirpstack-gateway-bridge-basicstation-cn470_2.toml
chirpstack-gateway-bridge-basicstation-cn470_3.toml
chirpstack-gateway-bridge-basicstation-cn470_4.toml
chirpstack-gateway-bridge-basicstation-cn470_5.toml
chirpstack-gateway-bridge-basicstation-cn470_6.toml
chirpstack-gateway-bridge-basicstation-cn470_7.toml
chirpstack-gateway-bridge-basicstation-cn470_8.toml
chirpstack-gateway-bridge-basicstation-cn470_9.toml
chirpstack-gateway-bridge-basicstation-cn470_10.toml
chirpstack-gateway-bridge-basicstation-cn470_11.toml
每组对应的频率如下(在后面的ChirpStack频段地区设置时会用到,再次声明,此处与CN470 频段为示例说明)
CN470组 | 分配的频点(MHz) |
---|---|
cn470_0 | 470.3、470.5、470.7、470.9、471.1、471.3、471.5、471.7 |
cn470_1 | 471.9、472.1、472.3、472.5、472.7、472.9、473.1、473.3 |
cn470_2 | 473.5、473.7、473.9、474.1、474.3、474.5、474.7、474.9 |
cn470_3 | 475.1、475.3、475.5、475.7、475.9、476.1、476.3、476.5 |
cn470_4 | 476.7、476.9、477.1、477.3、477.5、477.7、477.9、478.1 |
cn470_5 | 478.3、478.5、478.7、478.9、479.1、479.3、479.5、479.7 |
cn470_6 | 479.9、480.1、480.3、180.5、480.7、480.9、481.1、481.3 |
cn470_7 | 481.5、481.7、481.9、482.1、482.3、482.5、482.7、482.9 |
cn470_8 | 483.1、483.3、483.5、483.7、483.9、484.1、484.3、484.5 |
cn470_9 | 484.7、484.9、485.1、485.3、485.5、485.7、485.9、486.1 |
cn470_10 | 486.3、486.5、486.7、486.9、487.1、487.3、487.5、487.7 |
cn470_11 | 487.9、488.1、488.3、488.5、488.7、488.9、489.1、489.3 |
1.2 ChirpStack频段地区配置
首先,使用以下命令进入chirpstack-docker文件夹:
#从github上下载的基于docker版本的chirpstack-server
#基于docker版本的chirpstack-server的下载地址链接:https://github.com/chirpstack/chirpstack-docker
#git clone https://github.com/chirpstack/chirpstack-docker.git
cd chirpstack-docker
然后,使用vim对一下文件中的 “chirpstack/configuration/chirpstack.toml” 进行编辑
vi configuration/chirpstack/chirpstack.toml
找到如下位置:
# Enabled regions.## Multiple regions can be enabled simultaneously. Each region must match# the 'name' parameter of the region configuration in '[[regions]]'.enabled_regions=["as923","as923_2","as923_3","as923_4","au915_0","cn470_10","cn779","eu433","eu868","in865","ism2400","kr920","ru864","us915_0","us915_1",]
您可以根据需求添加地区,这里我们将基本可能会使用到的地区全部添加,您也可以自行选择添加(此处以我们常用的470频段进行设置,增加CN470的所有频段):
# Enabled regions.## Multiple regions can be enabled simultaneously. Each region must match# the 'name' parameter of the region configuration in '[[regions]]'.enabled_regions=["as923","as923_2","as923_3","as923_4","au915_0","cn470_0","cn470_1","cn470_2","cn470_3","cn470_4","cn470_5","cn470_6","cn470_7","cn470_8","cn470_9", "cn470_10","cn470_11","cn779","eu433","eu868","in865","ism2400","kr920","ru864","us915_0","us915_1",]
保存当前的修改,并退出当前文件的修改;
接下来,修改 " configuration/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml "
vi configuration/chirpstack-gateway-bridge/chirpstack-gateway-bridge.toml#默认为 eu868 的配置参数,此处根据你的实际情况进行修改,
#将如下内容修改为CN470 你所需的频段,比如使用 cn470_0[integration.mqtt]
event_topic_template="eu868/gateway/{{ .GatewayID }}/event/{{ .EventType }}"
state_topic_template="eu88/gateway/{{ .GatewayID }}/state/{{ .StateType }}"
command_topic_template="eu868/gateway/{{ .GatewayID }}/command/#"
修改之后,如下所示(后续的射频通讯采用 cn470_0 组的频点,在终端,网关,以及服务器均设置为此参数):
[integration.mqtt]
event_topic_template="cn470_0/gateway/{{ .GatewayID }}/event/{{ .EventType }}"
state_topic_template="cn470_0/gateway/{{ .GatewayID }}/state/{{ .StateType }}"
command_topic_template="cn470_0/gateway/{{ .GatewayID }}/command/#"
保存当前的修改后,退出当前文件的编辑。
在docker-compose.yml文件中找到以下内容:
vi docker-compose.yml
#找到如下位置
chirpstack-gateway-bridge:image: chirpstack/chirpstack-gateway-bridge:4restart: unless-stoppedports:- 1700:1700/udpvolumes:- ./configuration/chirpstack-gateway-bridge:/etc/chirpstack-gateway-bridgeenvironment:- INTEGRATION__MQTT__EVENT_TOPIC_TEMPLATE=eu868/gateway/{{ .GatewayID }}/event/{{ .EventType }}- INTEGRATION__MQTT__STATE_TOPIC_TEMPLATE=eu868/gateway/{{ .GatewayID }}/state/{{ .StateType }}- INTEGRATION__MQTT__COMMAND_TOPIC_TEMPLATE=eu868/gateway/{{ .GatewayID }}/command/#depends_on:- mosquittochirpstack-gateway-bridge-basicstation:image: chirpstack/chirpstack-gateway-bridge:4restart: unless-stoppedcommand: -c /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge-basicstation-eu868.tomlports:- 3001:3001volumes:- ./configuration/chirpstack-gateway-bridge:/etc/chirpstack-gateway-bridge
将上面的eu868修改为前面设置的 cn470_0 ,如下所示:
chirpstack-gateway-bridge:image: chirpstack/chirpstack-gateway-bridge:4restart: unless-stoppedports:- 1700:1700/udpvolumes:- ./configuration/chirpstack-gateway-bridge:/etc/chirpstack-gateway-bridgeenvironment:- INTEGRATION__MQTT__EVENT_TOPIC_TEMPLATE=cn470_0/gateway/{{ .GatewayID }}/event/{{ .EventType }}- INTEGRATION__MQTT__STATE_TOPIC_TEMPLATE=cn470_0/gateway/{{ .GatewayID }}/state/{{ .StateType }}- INTEGRATION__MQTT__COMMAND_TOPIC_TEMPLATE=cn470_0/gateway/{{ .GatewayID }}/command/#depends_on:- mosquittochirpstack-gateway-bridge-basicstation:image: chirpstack/chirpstack-gateway-bridge:4restart: unless-stoppedcommand: -c /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge-basicstation-cn470_0.tomlports:- 3001:3001volumes:- ./configuration/chirpstack-gateway-bridge:/etc/chirpstack-gateway-bridge
完成后,需要重启ChirpStack服务或者重启服务器,如果是重启服务器,ChirpStack未设置自动启动,则需要手动开启ChirpStack服务。
cd chirpstack-dockerdocker-compose up
1.3 登录LoraWAN Server进行设置
接下来登录到 LoraWAN Server 进行相关的频段设置,具体的设置仍然以前面设置的 CN470_0 进行设置,这个可以自行进行设置 ,亦或**参考前面所提及的参考链接**。
浏览器访问 Lorawan Server 的格式 : IP:8080
(IP为你虚拟机所获取到的IP地址,通过ifconfig查看使用虚拟机的IP地址)
二、LoraWAN Server下载链接
此处提供已经搭建好的、基于go语言版本的LoraWAN Server的地址((建议使用VMware 15.5 及以上版本打开))
LoraWAN Server 百度网盘下载链接:
链接:https://pan.baidu.com/s/1V9H1YlyOA3ciS8_3CgmVcw
提取码:jq7n
(如遇到百度网盘链接失效的情况下,请通过本文最后提及的联系方式告知,谢谢!)
三、注意事项
如在搭建过程中,有遇到任何问题,可通过如下方式与我联系,我将尽己所能,帮助大家解决实际应用过程中遇到的问题;
E-mail: wokholic365@126.com
QQ: 1652893264
相关文章:
基于go版本的LoraWAN Server 的470MHz频段的设置
一、参考链接 如果您已经基于最新版本的LoraWAN Server(go 版本)的环境,搭建好了服务器的环境,但尚未进行参数设置(此处以470MHz频段设置为例),可以参考如下链接进行设置: LoraWAN…...
C与C++的函数相互调用
无法直接调用原因: C 和 C 的函数可以相互调用,但需要一些特殊的注意事项,因为它们有不同的编译和链接规则以及一些语法差异。 链接规则: C 语言的链接器通常使用 C 标准的函数命名和调用约定,而 C 链接器使用 C 的函数…...

MySQL架构介绍与说明
1、MySQL架构介绍 和其它数据库相比,MySQL有点与众不同,它的架构可以在多种不同场景中应用并发挥良好作用。主要体现在存储引擎的架构上, 插件式的存储引擎架构将查询处理和其它的系统任务以及数据的存储提取相分离。这种架构可以根据业务的…...

three3D的vite+vue版本基础代码
自己稍微处理一下目录结构 <script setup>// 导入three.js import * as THREE from three// 创建场景 const scene new THREE.Scene();// 创建相机 const camera new THREE.PerspectiveCamera(45, //视角window.innerWidth / window.innerHeight, //宽高比0.1, // 近平…...

实现按钮悬停动画
知识点与技巧 伪元素 使用伪元素来作为按钮悬停效果动画展示的元素 z-index 的使用技巧 使用z-index属性来控制按钮和伪元素的层次关系 transform、transition 复习 使用transform、transition两个属性来实现动画的展示 按钮边框动画 切换效果 核心代码 .btn.btn-border-…...

【C++】深拷贝和浅拷贝 ② ( 默认拷贝构造函数是浅拷贝 | 代码示例 - 浅拷贝造成的问题 )
文章目录 一、默认拷贝构造函数是浅拷贝1、默认拷贝构造函数2、默认拷贝构造函数是浅拷贝机制 二、代码示例 - 浅拷贝造成的问题 一、默认拷贝构造函数是浅拷贝 1、默认拷贝构造函数 如果 C 类中 没有定义拷贝构造函数 , C 编译器会自动为该类提供一个 " 默认的拷贝构造函…...

【Selenium】webdriver.ChromeOptions()官方文档参数
Google官方Chrome文档,在此记录一下 Chrome Flags for Tooling Many tools maintain a list of runtime flags for Chrome to configure the environment. This file is an attempt to document all chrome flags that are relevant to tools, automation, benchm…...

pytorch代码实现之动态卷积模块ODConv
ODConv动态卷积模块 ODConv可以视作CondConv的延续,将CondConv中一个维度上的动态特性进行了扩展,同时了考虑了空域、输入通道、输出通道等维度上的动态性,故称之为全维度动态卷积。ODConv通过并行策略采用多维注意力机制沿核空间的四个维度…...

动态规划:子序列问题(C++)
动态规划:子序列问题 前言子序列问题1.最长递增子序列(中等)2.摆动序列(中等)3.最长递增子序列的个数(中等)4.最长数对链(中等)5.最长定差子序列(中等&#x…...

ORACLE的分区(一)
目录 一、分区概念 二、表分区的优点 三、分区策略 一、分区概念 随着时间的发展,一个表的数据会越来越多,当数据量增大的时候我们一般采取建立索引优化索引的方式提高查询速度,但是数据量再次增大即使是索引也无法提高速度,这时…...

【数据结构】C++实现二叉搜索树
二叉搜索树的概念 二叉搜索树又称为二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树: 若它的左子树不为空,则左子树上所有结点的值都小于根结点的值。若它的右子树不为空,则右子树上所有结点的值都大于根结…...

Python中Mock和Patch的区别
前言: 嗨喽~大家好呀,这里是魔王呐 ❤ ~! python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取 在测试并行开发(TPD)中,代码开发是第一位的。 尽管如此,我们还是要写出开发的测试,…...

sql server 查询某个字段是否有值 返回bool类型
sql server 查询某个字段是否有值 返回bool类型,true 或 false SELECT ColumnCode,CONVERT(BIT,CASE WHEN LEN(ColumnCode) > 0 THEN 1 ELSE 0 END) AS HasValue FROM dbo.TF_LessonCatalog...

紫光展锐5G芯T820 解锁全新应用场景,让机器人更智能
数字经济的持续发展正推动机器人产业成为风口赛道。工信部数据显示,2023年上半年,我国工业机器人产量达22.2万套,同比增长5.4%;服务机器人产量为353万套,同比增长9.6%。 作为国内商用服务机器人领先企业,云…...
秋招前端面试题总结
1、this指向问题,以前总是迷糊,现在总算是一知半解了。应当遵循以下原则,应该就能做对题目了。 如果一个标准函数,也就是非箭头函数,作为某个对象的方法被调用时,那么这个this指向的就是这个对象。涉及到闭…...

【入门篇】ClickHouse 数据类型
文章目录 1. 引言2. ClickHouse 数据类型2.1 基本数据类型2.1.1 整型2.1.2 浮点型2.1.3 字符串型 2.2 复合数据类型2.2.1 数组2.2.2 枚举类型2.2.3 元组2.2.4 Map2.2.5 Nullable 2.3 特殊数据类型2.3.1 日期和时间类型2.3.2 UUID2.3.3 IP 地址2.3.4 AggregateFunction 2.4 数据…...

关于Python数据分析,这里有一条高效的学习路径
无处不在的数据分析 谷歌的数据分析可以预测一个地区即将爆发的流感,从而进行针对性的预防;淘宝可以根据你浏览和消费的数据进行分析,为你精准推荐商品;口碑极好的网易云音乐,通过其相似性算法,为不同的人…...
基于 json-server 工具,模拟实现后端接口服务环境
文章目录 本地配置后端接口一、安装json-server1、安装 JSON 服务器 安装 JSON 服务器2、创建一个db.json包含一些数据的文件(重点)3、启动 JSON 服务器 启动 JSON 服务器4、现在如果你访问http://localhost:3000/posts/1,你会得到 本地配置后…...

想要精通算法和SQL的成长之路 - 课程表II
想要精通算法和SQL的成长之路 - 课程表 前言一. 课程表II (拓扑排序)1.1 拓扑排序1.2 题解 前言 想要精通算法和SQL的成长之路 - 系列导航 一. 课程表II (拓扑排序) 原题链接 1.1 拓扑排序 核心知识: 拓扑排序是专…...
【sgGoogleTranslate】自定义组件:基于Vue.js用谷歌Google Translate翻译插件实现网站多国语言开发
sgGoogleTranslate源码 <template><div :id"$options.name"> </div> </template> <script> export default {name: "sgGoogleTranslate",props: ["languages", "currentLanguage"],data() {return {//…...

Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...

OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...

【分享】推荐一些办公小工具
1、PDF 在线转换 https://smallpdf.com/cn/pdf-tools 推荐理由:大部分的转换软件需要收费,要么功能不齐全,而开会员又用不了几次浪费钱,借用别人的又不安全。 这个网站它不需要登录或下载安装。而且提供的免费功能就能满足日常…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配
目录 一、C 内存的基本概念 1.1 内存的物理与逻辑结构 1.2 C 程序的内存区域划分 二、栈内存分配 2.1 栈内存的特点 2.2 栈内存分配示例 三、堆内存分配 3.1 new和delete操作符 4.2 内存泄漏与悬空指针问题 4.3 new和delete的重载 四、智能指针…...

代码规范和架构【立芯理论一】(2025.06.08)
1、代码规范的目标 代码简洁精炼、美观,可持续性好高效率高复用,可移植性好高内聚,低耦合没有冗余规范性,代码有规可循,可以看出自己当时的思考过程特殊排版,特殊语法,特殊指令,必须…...