安装ChirpStackV4版本
下载ChirpStack
master分支commit,版本为24ce6fa78e7b757bcb128ff36e5ef67cf579e6c6
下载Chiprstack代码,并切换为master版本
git clone https://github.com/brocaar/chirpstack-docker.git
cd chirpstack-docker
git checkout 24ce6fa78e7b757bcb128ff36e5ef67cf579e6c6
添加CN470频段
diff --git a/configuration/chirpstack/chirpstack.toml b/configuration/chirpstack/chirpstack.toml
index 54c3e5d..399f171 100644
--- a/configuration/chirpstack/chirpstack.toml
+++ b/configuration/chirpstack/chirpstack.toml
@@ -70,7 +70,18 @@
"as923_3",
"as923_4",
"au915_0",
"cn470_10",
+ "cn470_11",
"cn779",
"eu433",
"eu868",
配置频段为CN470_10
diff --git a/docker-compose.yml b/docker-compose.yml
index f15a6f7..49a643d 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -27,16 +27,16 @@ services:
volumes:
- ./configuration/chirpstack-gateway-bridge:/etc/chirpstack-gateway-bridge
environment:
- - 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/#
+ - INTEGRATION__MQTT__EVENT_TOPIC_TEMPLATE=cn470_10/gateway/{{ .GatewayID }}/event/{{ .EventType }}
+ - INTEGRATION__MQTT__STATE_TOPIC_TEMPLATE=cn470_10/gateway/{{ .GatewayID }}/state/{{ .StateType }}
+ - INTEGRATION__MQTT__COMMAND_TOPIC_TEMPLATE=cn470_10/gateway/{{ .GatewayID }}/command/#
depends_on:
- mosquitto
chirpstack-gateway-bridge-basicstation:
image: chirpstack/chirpstack-gateway-bridge:4
restart: unless-stopped
- command: -c /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge-basicstation-eu868.toml
+ command: -c /etc/chirpstack-gateway-bridge/chirpstack-gateway-bridge-basicstation-cn470_10.toml
ports:
- 3001:3001
volumes:
启动ChirpStack服务
$ docker-compose up -d
Chirpstack默认的用户名密码都是admin。
运行后,可以打开浏览器访问127.0.0.1:8080,使用用户名和密码来登录。
在 Device Profile 中除了 LoRaWAN 参数之外,还有一个 codec 模块。
这个模块默认是未启用的,它支持两种协议解析,我们在 AS 的 WEB 界面中可以看到。
Cayenne Low Power Payload。卡宴的这个协议要求传感器按其协议上报的话,它则会解析出相应的数据。不够灵活,一般做简单的DEMO应用。
Custom JavaScript codec functions。这就是我们今天重点介绍的 JS 编解码函数。可将设备的原始数据转换为可读性更强的 JSON 格式。
下面是一个温度示例,取第一字节来做温度。
function Decode(fPort, bytes) {
var data = {
"temperature": 0.0
};
data.temperature = bytes[0];
return data;
}
作者:SteveChen 创建时间:2024-09-14 17:14
最后编辑:SteveChen 更新时间:2024-10-11 23:22
最后编辑:SteveChen 更新时间:2024-10-11 23:22