当前位置: 首页 > news >正文

基于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_0470.3、470.5、470.7、470.9、471.1、471.3、471.5、471.7
cn470_1471.9、472.1、472.3、472.5、472.7、472.9、473.1、473.3
cn470_2473.5、473.7、473.9、474.1、474.3、474.5、474.7、474.9
cn470_3475.1、475.3、475.5、475.7、475.9、476.1、476.3、476.5
cn470_4476.7、476.9、477.1、477.3、477.5、477.7、477.9、478.1
cn470_5478.3、478.5、478.7、478.9、479.1、479.3、479.5、479.7
cn470_6479.9、480.1、480.3、180.5、480.7、480.9、481.1、481.3
cn470_7481.5、481.7、481.9、482.1、482.3、482.5、482.7、482.9
cn470_8483.1、483.3、483.5、483.7、483.9、484.1、484.3、484.5
cn470_9484.7、484.9、485.1、485.3、485.5、485.7、485.9、486.1
cn470_10486.3、486.5、486.7、486.9、487.1、487.3、487.5、487.7
cn470_11487.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文档&#xff0c;在此记录一下 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的延续&#xff0c;将CondConv中一个维度上的动态特性进行了扩展&#xff0c;同时了考虑了空域、输入通道、输出通道等维度上的动态性&#xff0c;故称之为全维度动态卷积。ODConv通过并行策略采用多维注意力机制沿核空间的四个维度…...

动态规划:子序列问题(C++)

动态规划&#xff1a;子序列问题 前言子序列问题1.最长递增子序列&#xff08;中等&#xff09;2.摆动序列&#xff08;中等&#xff09;3.最长递增子序列的个数&#xff08;中等&#xff09;4.最长数对链&#xff08;中等&#xff09;5.最长定差子序列&#xff08;中等&#x…...

ORACLE的分区(一)

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

【数据结构】C++实现二叉搜索树

二叉搜索树的概念 二叉搜索树又称为二叉排序树&#xff0c;它或者是一棵空树&#xff0c;或者是具有以下性质的二叉树&#xff1a; 若它的左子树不为空&#xff0c;则左子树上所有结点的值都小于根结点的值。若它的右子树不为空&#xff0c;则右子树上所有结点的值都大于根结…...

Python中Mock和Patch的区别

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

sql server 查询某个字段是否有值 返回bool类型

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

紫光展锐5G芯T820 解锁全新应用场景,让机器人更智能

数字经济的持续发展正推动机器人产业成为风口赛道。工信部数据显示&#xff0c;2023年上半年&#xff0c;我国工业机器人产量达22.2万套&#xff0c;同比增长5.4%&#xff1b;服务机器人产量为353万套&#xff0c;同比增长9.6%。 作为国内商用服务机器人领先企业&#xff0c;云…...

秋招前端面试题总结

1、this指向问题&#xff0c;以前总是迷糊&#xff0c;现在总算是一知半解了。应当遵循以下原则&#xff0c;应该就能做对题目了。 如果一个标准函数&#xff0c;也就是非箭头函数&#xff0c;作为某个对象的方法被调用时&#xff0c;那么这个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数据分析,这里有一条高效的学习路径

无处不在的数据分析 谷歌的数据分析可以预测一个地区即将爆发的流感&#xff0c;从而进行针对性的预防&#xff1b;淘宝可以根据你浏览和消费的数据进行分析&#xff0c;为你精准推荐商品&#xff1b;口碑极好的网易云音乐&#xff0c;通过其相似性算法&#xff0c;为不同的人…...

基于 json-server 工具,模拟实现后端接口服务环境

文章目录 本地配置后端接口一、安装json-server1、安装 JSON 服务器 安装 JSON 服务器2、创建一个db.json包含一些数据的文件&#xff08;重点&#xff09;3、启动 JSON 服务器 启动 JSON 服务器4、现在如果你访问http://localhost:3000/posts/1&#xff0c;你会得到 本地配置后…...

想要精通算法和SQL的成长之路 - 课程表II

想要精通算法和SQL的成长之路 - 课程表 前言一. 课程表II &#xff08;拓扑排序&#xff09;1.1 拓扑排序1.2 题解 前言 想要精通算法和SQL的成长之路 - 系列导航 一. 课程表II &#xff08;拓扑排序&#xff09; 原题链接 1.1 拓扑排序 核心知识&#xff1a; 拓扑排序是专…...

【sgGoogleTranslate】自定义组件:基于Vue.js用谷歌Google Translate翻译插件实现网站多国语言开发

sgGoogleTranslate源码 <template><div :id"$options.name"> </div> </template> <script> export default {name: "sgGoogleTranslate",props: ["languages", "currentLanguage"],data() {return {//…...

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站&#xff0c;会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后&#xff0c;网站没有变化的情况。 不熟悉siteground主机的新手&#xff0c;遇到这个问题&#xff0c;就很抓狂&#xff0c;明明是哪都没操作错误&#x…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

可靠性+灵活性:电力载波技术在楼宇自控中的核心价值

可靠性灵活性&#xff1a;电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中&#xff0c;电力载波技术&#xff08;PLC&#xff09;凭借其独特的优势&#xff0c;正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据&#xff0c;无需额外布…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

&#x1f680; C extern 关键字深度解析&#xff1a;跨文件编程的终极指南 &#x1f4c5; 更新时间&#xff1a;2025年6月5日 &#x1f3f7;️ 标签&#xff1a;C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言&#x1f525;一、extern 是什么&#xff1f;&…...

是否存在路径(FIFOBB算法)

题目描述 一个具有 n 个顶点e条边的无向图&#xff0c;该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序&#xff0c;确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数&#xff0c;分别表示n 和 e 的值&#xff08;1…...

C++使用 new 来创建动态数组

问题&#xff1a; 不能使用变量定义数组大小 原因&#xff1a; 这是因为数组在内存中是连续存储的&#xff0c;编译器需要在编译阶段就确定数组的大小&#xff0c;以便正确地分配内存空间。如果允许使用变量来定义数组的大小&#xff0c;那么编译器就无法在编译时确定数组的大…...

快刀集(1): 一刀斩断视频片头广告

一刀流&#xff1a;用一个简单脚本&#xff0c;秒杀视频片头广告&#xff0c;还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农&#xff0c;平时写代码之余看看电影、补补片&#xff0c;是再正常不过的事。 电影嘛&#xff0c;要沉浸&#xff0c;…...

MySQL 索引底层结构揭秘:B-Tree 与 B+Tree 的区别与应用

文章目录 一、背景知识&#xff1a;什么是 B-Tree 和 BTree&#xff1f; B-Tree&#xff08;平衡多路查找树&#xff09; BTree&#xff08;B-Tree 的变种&#xff09; 二、结构对比&#xff1a;一张图看懂 三、为什么 MySQL InnoDB 选择 BTree&#xff1f; 1. 范围查询更快 2…...

人工智能--安全大模型训练计划:基于Fine-tuning + LLM Agent

安全大模型训练计划&#xff1a;基于Fine-tuning LLM Agent 1. 构建高质量安全数据集 目标&#xff1a;为安全大模型创建高质量、去偏、符合伦理的训练数据集&#xff0c;涵盖安全相关任务&#xff08;如有害内容检测、隐私保护、道德推理等&#xff09;。 1.1 数据收集 描…...

数学建模-滑翔伞伞翼面积的设计,运动状态计算和优化 !

我们考虑滑翔伞的伞翼面积设计问题以及运动状态描述。滑翔伞的性能主要取决于伞翼面积、气动特性以及飞行员的重量。我们的目标是建立数学模型来描述滑翔伞的运动状态,并优化伞翼面积的设计。 一、问题分析 滑翔伞在飞行过程中受到重力、升力和阻力的作用。升力和阻力与伞翼面…...