Implement docker-compose file for ChirpStack v4.0.0-test.1.
This commit is contained in:
parent
5dcf5b2d9d
commit
19c7c53e38
35
README.md
35
README.md
@ -9,19 +9,22 @@ but keep in mind that for production usage it might need modifications.
|
|||||||
## Directory layout
|
## Directory layout
|
||||||
|
|
||||||
* `docker-compose.yml`: the docker-compose file containing the services
|
* `docker-compose.yml`: the docker-compose file containing the services
|
||||||
* `docker-compose-env.yml`: alternate docker-compose file using environment variables, can be run with the docker-compose `-f` flag
|
* `configuration/chirpstack`: directory containing the ChirpStack configuration files
|
||||||
* `configuration/chirpstack*`: directory containing the ChirpStack configuration files, see:
|
* `configuration/chirpstack-gateway-bridge`: directory containing the ChirpStack Gateway Bridge configuration
|
||||||
* https://www.chirpstack.io/gateway-bridge/install/config/
|
|
||||||
* https://www.chirpstack.io/network-server/install/config/
|
|
||||||
* https://www.chirpstack.io/application-server/install/config/
|
|
||||||
* `configuration/postgresql/initdb/`: directory containing PostgreSQL initialization scripts
|
* `configuration/postgresql/initdb/`: directory containing PostgreSQL initialization scripts
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
The ChirpStack stack components components are pre-configured to work with the provided
|
This setup is pre-configured for all regions. You can either connect a ChirpStack Gateway Bridge
|
||||||
`docker-compose.yml` file and defaults to the EU868 LoRaWAN band. Please refer
|
instance to the MQTT broker (port 1883). Please note that:
|
||||||
to the `configuration/chirpstack-network-server/examples` directory for more configuration
|
|
||||||
examples.
|
* You must prefix the MQTT topic with the region
|
||||||
|
Please see the region configuration files in the `configuration/chirpstack` for a list
|
||||||
|
of topic prefixes (e.g. eu868, us915_0, au915, as923_2, ...).
|
||||||
|
* The protobuf marshaler is configured.
|
||||||
|
|
||||||
|
This setup also comes with a ChirpStack Gateway Bridge instance which is configured to the
|
||||||
|
eu868 topic prefix. You can connect your UDP packet-forwarder based gateway to port 1700.
|
||||||
|
|
||||||
# Data persistence
|
# Data persistence
|
||||||
|
|
||||||
@ -35,23 +38,11 @@ installed.
|
|||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
To start the ChirpStack open-source LoRaWAN Network Server stack, simply run:
|
To start the ChirpStack simply run:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
$ docker-compose up
|
$ docker-compose up
|
||||||
```
|
```
|
||||||
|
|
||||||
**Note:** during the startup of services, it is normal to see the following errors:
|
|
||||||
|
|
||||||
* ping database error, will retry in 2s: dial tcp 172.20.0.4:5432: connect: connection refused
|
|
||||||
* ping database error, will retry in 2s: pq: the database system is starting up
|
|
||||||
|
|
||||||
|
|
||||||
After all the components have been initialized and started, you should be able
|
After all the components have been initialized and started, you should be able
|
||||||
to open http://localhost:8080/ in your browser.
|
to open http://localhost:8080/ in your browser.
|
||||||
|
|
||||||
### Add Network Server
|
|
||||||
|
|
||||||
When adding the Network Server in the ChirpStack Application Server web-interface
|
|
||||||
(see [Network Servers](https://www.chirpstack.io/application-server/use/network-servers/)),
|
|
||||||
you must enter `chirpstack-network-server:8000` as the Network Server `hostname:IP`.
|
|
||||||
|
@ -1,18 +0,0 @@
|
|||||||
# See https://www.chirpstack.io/application-server/install/config/ for a full
|
|
||||||
# configuration example and documentation.
|
|
||||||
|
|
||||||
[postgresql]
|
|
||||||
dsn="postgres://chirpstack_as:chirpstack_as@postgresql/chirpstack_as?sslmode=disable"
|
|
||||||
|
|
||||||
[redis]
|
|
||||||
url="redis://redis:6379"
|
|
||||||
|
|
||||||
[application_server.integration.mqtt]
|
|
||||||
server="tcp://mosquitto:1883"
|
|
||||||
|
|
||||||
[application_server.api]
|
|
||||||
public_host="chirpstack-application-server:8001"
|
|
||||||
|
|
||||||
[application_server.external_api]
|
|
||||||
bind="0.0.0.0:8080"
|
|
||||||
jwt_secret="verysecret"
|
|
@ -3,5 +3,8 @@
|
|||||||
|
|
||||||
[integration.mqtt.auth.generic]
|
[integration.mqtt.auth.generic]
|
||||||
servers=["tcp://mosquitto:1883"]
|
servers=["tcp://mosquitto:1883"]
|
||||||
|
event_topic_template="eu868/gateway/{{ .GatewayID }}/event/{{ .EventType }}"
|
||||||
|
state_topic_template="eu868/gateway/{{ .GatewayID }}/state/{{ .StateType }}"
|
||||||
|
command_topic_template="eu868/gateway/{{ .GatewayID }}/command/#"
|
||||||
username=""
|
username=""
|
||||||
password=""
|
password=""
|
||||||
|
@ -1,50 +0,0 @@
|
|||||||
# See https://www.chirpstack.io/network-server/install/config/ for a full
|
|
||||||
# configuration example and documentation.
|
|
||||||
#
|
|
||||||
# This file is for the EU868 band. See the examples/ folder for more
|
|
||||||
# configuration examples.
|
|
||||||
|
|
||||||
[postgresql]
|
|
||||||
dsn="postgres://chirpstack_ns:chirpstack_ns@postgresql/chirpstack_ns?sslmode=disable"
|
|
||||||
|
|
||||||
[redis]
|
|
||||||
url="redis://redis:6379"
|
|
||||||
|
|
||||||
[network_server]
|
|
||||||
net_id="000000"
|
|
||||||
|
|
||||||
[network_server.band]
|
|
||||||
name="EU868"
|
|
||||||
|
|
||||||
[network_server.network_settings]
|
|
||||||
|
|
||||||
[[network_server.network_settings.extra_channels]]
|
|
||||||
frequency=867100000
|
|
||||||
min_dr=0
|
|
||||||
max_dr=5
|
|
||||||
|
|
||||||
[[network_server.network_settings.extra_channels]]
|
|
||||||
frequency=867300000
|
|
||||||
min_dr=0
|
|
||||||
max_dr=5
|
|
||||||
|
|
||||||
[[network_server.network_settings.extra_channels]]
|
|
||||||
frequency=867500000
|
|
||||||
min_dr=0
|
|
||||||
max_dr=5
|
|
||||||
|
|
||||||
[[network_server.network_settings.extra_channels]]
|
|
||||||
frequency=867700000
|
|
||||||
min_dr=0
|
|
||||||
max_dr=5
|
|
||||||
|
|
||||||
[[network_server.network_settings.extra_channels]]
|
|
||||||
frequency=867900000
|
|
||||||
min_dr=0
|
|
||||||
max_dr=5
|
|
||||||
|
|
||||||
[network_server.gateway.backend.mqtt]
|
|
||||||
server="tcp://mosquitto:1883"
|
|
||||||
|
|
||||||
[join_server.default]
|
|
||||||
server="http://chirpstack-application-server:8003"
|
|
@ -1,50 +0,0 @@
|
|||||||
# See https://www.chirpstack.io/network-server/install/config/ for a full
|
|
||||||
# configuration example and documentation.
|
|
||||||
#
|
|
||||||
# This file is for the EU868 band. See the examples/ folder for more
|
|
||||||
# configuration examples.
|
|
||||||
|
|
||||||
[postgresql]
|
|
||||||
dsn="postgres://chirpstack_ns:chirpstack_ns@postgresql/chirpstack_ns?sslmode=disable"
|
|
||||||
|
|
||||||
[redis]
|
|
||||||
url="redis://redis:6379"
|
|
||||||
|
|
||||||
[network_server]
|
|
||||||
net_id="000000"
|
|
||||||
|
|
||||||
[network_server.band]
|
|
||||||
name="EU868"
|
|
||||||
|
|
||||||
[network_server.network_settings]
|
|
||||||
|
|
||||||
[[network_server.network_settings.extra_channels]]
|
|
||||||
frequency=867100000
|
|
||||||
min_dr=0
|
|
||||||
max_dr=5
|
|
||||||
|
|
||||||
[[network_server.network_settings.extra_channels]]
|
|
||||||
frequency=867300000
|
|
||||||
min_dr=0
|
|
||||||
max_dr=5
|
|
||||||
|
|
||||||
[[network_server.network_settings.extra_channels]]
|
|
||||||
frequency=867500000
|
|
||||||
min_dr=0
|
|
||||||
max_dr=5
|
|
||||||
|
|
||||||
[[network_server.network_settings.extra_channels]]
|
|
||||||
frequency=867700000
|
|
||||||
min_dr=0
|
|
||||||
max_dr=5
|
|
||||||
|
|
||||||
[[network_server.network_settings.extra_channels]]
|
|
||||||
frequency=867900000
|
|
||||||
min_dr=0
|
|
||||||
max_dr=5
|
|
||||||
|
|
||||||
[network_server.gateway.backend.mqtt]
|
|
||||||
server="tcp://mosquitto:1883"
|
|
||||||
|
|
||||||
[join_server.default]
|
|
||||||
server="http://chirpstack-application-server:8003"
|
|
@ -1,26 +0,0 @@
|
|||||||
# See https://www.chirpstack.io/network-server/install/config/ for a full
|
|
||||||
# configuration example and documentation.
|
|
||||||
#
|
|
||||||
# This file is for the US915 band (channels 0-7). See the examples/ folder for more
|
|
||||||
# configuration examples.
|
|
||||||
|
|
||||||
[postgresql]
|
|
||||||
dsn="postgres://chirpstack_ns:chirpstack_ns@postgresql/chirpstack_ns?sslmode=disable"
|
|
||||||
|
|
||||||
[redis]
|
|
||||||
url="redis://redis:6379"
|
|
||||||
|
|
||||||
[network_server]
|
|
||||||
net_id="000000"
|
|
||||||
|
|
||||||
[network_server.band]
|
|
||||||
name="US915"
|
|
||||||
|
|
||||||
[network_server.network_settings]
|
|
||||||
enabled_uplink_channels=[0, 1, 2, 3, 4, 5, 6, 7, 64]
|
|
||||||
|
|
||||||
[network_server.gateway.backend.mqtt]
|
|
||||||
server="tcp://mosquitto:1883"
|
|
||||||
|
|
||||||
[join_server.default]
|
|
||||||
server="http://chirpstack-application-server:8003"
|
|
@ -1,28 +0,0 @@
|
|||||||
# See https://www.chirpstack.io/network-server/install/config/ for a full
|
|
||||||
# configuration example and documentation.
|
|
||||||
#
|
|
||||||
# This file is for the US915 band (channels 8-15). See the examples/ folder for more
|
|
||||||
# configuration examples.
|
|
||||||
#
|
|
||||||
# Note: these channels are also used by TTN.
|
|
||||||
|
|
||||||
[postgresql]
|
|
||||||
dsn="postgres://chirpstack_ns:chirpstack_ns@postgresql/chirpstack_ns?sslmode=disable"
|
|
||||||
|
|
||||||
[redis]
|
|
||||||
url="redis://redis:6379"
|
|
||||||
|
|
||||||
[network_server]
|
|
||||||
net_id="000000"
|
|
||||||
|
|
||||||
[network_server.band]
|
|
||||||
name="US915"
|
|
||||||
|
|
||||||
[network_server.network_settings]
|
|
||||||
enabled_uplink_channels=[8, 9, 10, 11, 12, 13, 14, 15, 65]
|
|
||||||
|
|
||||||
[network_server.gateway.backend.mqtt]
|
|
||||||
server="tcp://mosquitto:1883"
|
|
||||||
|
|
||||||
[join_server.default]
|
|
||||||
server="http://chirpstack-application-server:8003"
|
|
194
configuration/chirpstack/as923.toml
Normal file
194
configuration/chirpstack/as923.toml
Normal file
@ -0,0 +1,194 @@
|
|||||||
|
# This file contains an example AS923 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="as923"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AS923"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="as923/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="as923/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=923200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=923400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=2
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923200000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
194
configuration/chirpstack/as923_2.toml
Normal file
194
configuration/chirpstack/as923_2.toml
Normal file
@ -0,0 +1,194 @@
|
|||||||
|
# This file contains an example AS923_2 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="as923_2"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AS923_2"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="as923_2/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="as923_2/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=921400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=921600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=0
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=921400000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
194
configuration/chirpstack/as923_3.toml
Normal file
194
configuration/chirpstack/as923_3.toml
Normal file
@ -0,0 +1,194 @@
|
|||||||
|
# This file contains an example AS923_3 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="as923_3"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AS923_3"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="as923_3/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="as923_3/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=916600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=916800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=2
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=916600000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
194
configuration/chirpstack/as923_4.toml
Normal file
194
configuration/chirpstack/as923_4.toml
Normal file
@ -0,0 +1,194 @@
|
|||||||
|
# This file contains an example AS923_4 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="as923_4"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AS923_4"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="as923_4/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="as923_4/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=917300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=917500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=2
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=917300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/au915_0.toml
Normal file
243
configuration/chirpstack/au915_0.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example AU915 example (channels 0-7 + 64).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="au915_0"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AU915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="au915_0/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="au915_0/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=915200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=915400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=915600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=915800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=916000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=916200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=916400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=916600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=915900000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[0, 1, 2, 3, 4, 5, 6, 7, 64]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/au915_1.toml
Normal file
243
configuration/chirpstack/au915_1.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example AU915 example (channels 8-15 + 65).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="au915_1"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AU915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="au915_1/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="au915_1/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=916800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=917000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=917200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=917400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=917600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=917800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=918000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=918200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=917500000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[8, 9, 10, 11, 12, 13, 14, 15, 65]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/au915_2.toml
Normal file
243
configuration/chirpstack/au915_2.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example AU915 example (channels 16-23 + 66).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="au915_2"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AU915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="au915_2/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="au915_2/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=918400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=918600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=918800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=919000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=919200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=919400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=919600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=919800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=919100000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[16, 17, 18, 19, 20, 21, 22, 23, 65]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/au915_3.toml
Normal file
243
configuration/chirpstack/au915_3.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example AU915 example (channels 24-31 + 67).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="au915_3"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AU915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="au915_3/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="au915_3/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=920000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=920200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=920400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=920600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=920800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=921000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=921200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=921400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=920700000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[24, 25, 26, 27, 28, 29, 30, 31, 67]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/au915_4.toml
Normal file
243
configuration/chirpstack/au915_4.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example AU915 example (channels 32-39 + 68).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="au915_4"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AU915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="au915_4/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="au915_4/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=921600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=921800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=922000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=922200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=922400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=922600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=922800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=923000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=922300000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[32, 33, 34, 35, 36, 37, 38, 39, 68]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/au915_5.toml
Normal file
243
configuration/chirpstack/au915_5.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example AU915 example (channels 40-47 + 69).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="au915_5"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AU915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="au915_5/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="au915_5/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=923200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=923400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=923600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=923800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=924000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=924200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=924400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=924600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=923900000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[40, 41, 42, 43, 44, 45, 46, 47, 69]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/au915_6.toml
Normal file
243
configuration/chirpstack/au915_6.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example AU915 example (channels 48-55 + 70).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="au915_6"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AU915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="au915_6/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="au915_6/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=924800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=925000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=925200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=925400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=925600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=925800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=926000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=926200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=925500000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[48, 49, 50, 51, 52, 53, 54, 55, 70]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/au915_7.toml
Normal file
243
configuration/chirpstack/au915_7.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example AU915 example (channels 56-63 + 71).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="au915_7"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="AU915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="au915_7/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="au915_7/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=926400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=926600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=926800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=927000000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=927200000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=927400000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=927600000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=927800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=927100000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[56, 57, 58, 59, 60, 61, 62, 63, 71]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
115
configuration/chirpstack/chirpstack.toml
Normal file
115
configuration/chirpstack/chirpstack.toml
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
# Logging.
|
||||||
|
[logging]
|
||||||
|
|
||||||
|
# Log level.
|
||||||
|
#
|
||||||
|
# Options are: trace, debug, info, warn error.
|
||||||
|
level="info"
|
||||||
|
|
||||||
|
|
||||||
|
# PostgreSQL configuration.
|
||||||
|
[postgresql]
|
||||||
|
|
||||||
|
# PostgreSQL DSN.
|
||||||
|
#
|
||||||
|
# Format example: postgres://<USERNAME>:<PASSWORD>@<HOSTNAME>/<DATABASE>?sslmode=<SSLMODE>.
|
||||||
|
#
|
||||||
|
# SSL mode options:
|
||||||
|
# * disable - no SSL
|
||||||
|
# * require - Always SSL (skip verification)
|
||||||
|
# * verify-ca - Always SSL (verify that the certificate presented by the server was signed by a trusted CA)
|
||||||
|
# * verify-full - Always SSL (verify that the certification presented by the server was signed by a trusted CA and the server host name matches the one in the certificate)
|
||||||
|
dsn="postgres://chirpstack:chirpstack@postgres/chirpstack?sslmode=disable"
|
||||||
|
|
||||||
|
# Max open connections.
|
||||||
|
#
|
||||||
|
# This sets the max. number of open connections that are allowed in the
|
||||||
|
# PostgreSQL connection pool.
|
||||||
|
max_open_connections=10
|
||||||
|
|
||||||
|
# Min idle connections.
|
||||||
|
#
|
||||||
|
# This sets the min. number of idle connections in the PostgreSQL connection
|
||||||
|
# pool (0 = equal to max_open_connections).
|
||||||
|
min_idle_connections=0
|
||||||
|
|
||||||
|
|
||||||
|
# Redis configuration.
|
||||||
|
[redis]
|
||||||
|
|
||||||
|
# Server address or addresses.
|
||||||
|
#
|
||||||
|
# Set multiple addresses when connecting to a cluster.
|
||||||
|
servers=[
|
||||||
|
"redis://redis/",
|
||||||
|
]
|
||||||
|
|
||||||
|
# TLS enabled.
|
||||||
|
tls_enabled=false
|
||||||
|
|
||||||
|
# Redis Cluster.
|
||||||
|
#
|
||||||
|
# Set this to true when the provided URLs are pointing to a Redis Cluster
|
||||||
|
# instance.
|
||||||
|
cluster=false
|
||||||
|
|
||||||
|
|
||||||
|
# Network related configuration.
|
||||||
|
[network]
|
||||||
|
|
||||||
|
# Network identifier (NetID, 3 bytes) encoded as HEX (e.g. 010203).
|
||||||
|
net_id="000000"
|
||||||
|
|
||||||
|
# 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",
|
||||||
|
"cn779",
|
||||||
|
"eu433",
|
||||||
|
"eu868",
|
||||||
|
"in865",
|
||||||
|
"ism2400",
|
||||||
|
"kr920",
|
||||||
|
"ru864",
|
||||||
|
"us915_0",
|
||||||
|
"us915_1",
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
# API interface configuration.
|
||||||
|
[api]
|
||||||
|
|
||||||
|
# interface:port to bind the API interface to.
|
||||||
|
bind="0.0.0.0:8080"
|
||||||
|
|
||||||
|
# Secret.
|
||||||
|
#
|
||||||
|
# This secret is used for generating login and API tokens, make sure this
|
||||||
|
# is never exposed. Changing this secret will invalidate all login and API
|
||||||
|
# tokens. The following command can be used to generate a random secret:
|
||||||
|
# openssl rand -base64 32
|
||||||
|
secret="you-must-replace-this"
|
||||||
|
|
||||||
|
|
||||||
|
[gateway]
|
||||||
|
client_cert_lifetime="365days"
|
||||||
|
ca_cert="configuration/certs/ca.crt"
|
||||||
|
ca_key="configuration/certs/ca.key"
|
||||||
|
|
||||||
|
[integration]
|
||||||
|
enabled=["mqtt"]
|
||||||
|
|
||||||
|
[integration.mqtt]
|
||||||
|
server="tcp://mosquitto:1883/"
|
||||||
|
json=true
|
||||||
|
|
||||||
|
[integration.mqtt.client]
|
||||||
|
client_cert_lifetime="365days"
|
||||||
|
ca_cert="configuration/certs/ca.crt"
|
||||||
|
ca_key="configuration/certs/ca.key"
|
200
configuration/chirpstack/cn779.toml
Normal file
200
configuration/chirpstack/cn779.toml
Normal file
@ -0,0 +1,200 @@
|
|||||||
|
# This file contains an example CN779 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="cn779"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="CN779"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="cn779/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="cn779/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=779500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=779700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=779900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=0
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=786000000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
200
configuration/chirpstack/eu433.toml
Normal file
200
configuration/chirpstack/eu433.toml
Normal file
@ -0,0 +1,200 @@
|
|||||||
|
# This file contains an example EU433 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="eu433"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="EU433"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="eu433/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="eu433/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=433175000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=433375000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=433575000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=0
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=434665000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
270
configuration/chirpstack/eu868.toml
Normal file
270
configuration/chirpstack/eu868.toml
Normal file
@ -0,0 +1,270 @@
|
|||||||
|
# This file contains an example EU868 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="eu868"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="EU868"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="eu868/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="eu868/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=868100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=868300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=868500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=867100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=867300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=867500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=867700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=867900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=868300000
|
||||||
|
bandwidth=250000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=868800000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="FSK"
|
||||||
|
datarate=50000
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=0
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=869525000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
||||||
|
|
||||||
|
|
||||||
|
# Below is the common set of extra channels. Please make sure that these
|
||||||
|
# channels are also supported by the gateways.
|
||||||
|
[[regions.network.extra_channels]]
|
||||||
|
frequency=867100000
|
||||||
|
min_dr=0
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
[[regions.network.extra_channels]]
|
||||||
|
frequency=867300000
|
||||||
|
min_dr=0
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
[[regions.network.extra_channels]]
|
||||||
|
frequency=867500000
|
||||||
|
min_dr=0
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
[[regions.network.extra_channels]]
|
||||||
|
frequency=867700000
|
||||||
|
min_dr=0
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
[[regions.network.extra_channels]]
|
||||||
|
frequency=867900000
|
||||||
|
min_dr=0
|
||||||
|
max_dr=5
|
200
configuration/chirpstack/in865.toml
Normal file
200
configuration/chirpstack/in865.toml
Normal file
@ -0,0 +1,200 @@
|
|||||||
|
# This file contains an example IN865 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="in865"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="IN865"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="in865/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="in865/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=865062500
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=865402500
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=865985000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=2
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=866550000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
200
configuration/chirpstack/ism2400.toml
Normal file
200
configuration/chirpstack/ism2400.toml
Normal file
@ -0,0 +1,200 @@
|
|||||||
|
# This file contains an example ISM2400 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="ism2400"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="ISM2400"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="ism2400/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="ism2400/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=2403000000
|
||||||
|
bandwidth=812000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=2479000000
|
||||||
|
bandwidth=812000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=2425000000
|
||||||
|
bandwidth=812000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[12]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=0
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=2423000000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=7
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
200
configuration/chirpstack/kr920.toml
Normal file
200
configuration/chirpstack/kr920.toml
Normal file
@ -0,0 +1,200 @@
|
|||||||
|
# This file contains an example KR920 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="kr920"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="KR920"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="kr920/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="kr920/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=922100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=922300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=922500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=0
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=921900000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
194
configuration/chirpstack/ru864.toml
Normal file
194
configuration/chirpstack/ru864.toml
Normal file
@ -0,0 +1,194 @@
|
|||||||
|
# This file contains an example RU864 configuration.
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an user-defined identifier for this region.
|
||||||
|
name="ru864"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="RU864"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="ru864/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="ru864/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=868900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=869100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10, 11, 12]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=0
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=869100000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=5
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=0
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/us915_0.toml
Normal file
243
configuration/chirpstack/us915_0.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example US915 example (channels 0-7 + 64).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="us915_0"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="US915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="us915_0/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="us915_0/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=902300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=902500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=902700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=902900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=903100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=903300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=903500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=903700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=903000000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=3
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[0, 1, 2, 3, 4, 5, 6, 7, 64]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/us915_1.toml
Normal file
243
configuration/chirpstack/us915_1.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example US915 example (channels 8-15 + 65).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="us915_1"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="US915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="us915_1/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="us915_1/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=903900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=904100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=904300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=904500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=904700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=904900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=905100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=905300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=904600000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=3
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[8, 9, 10, 11, 12, 13, 14, 15, 65]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/us915_2.toml
Normal file
243
configuration/chirpstack/us915_2.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example US915 example (channels 16-23 + 66).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="us915_2"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="US915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="us915_2/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="us915_2/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=905500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=905700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=905900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=906100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=906300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=906500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=906700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=906900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=906200000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=3
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[16, 17, 18, 19, 20, 21, 22, 23, 66]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/us915_3.toml
Normal file
243
configuration/chirpstack/us915_3.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example US915 example (channels 24-31 + 67).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="us915_3"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="US915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="us915_3/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="us915_3/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=907100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=907300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=907500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=907700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=907900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=908100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=908300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=908500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=907800000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=3
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[24, 25, 26, 27, 28, 29, 30, 31, 67]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/us915_4.toml
Normal file
243
configuration/chirpstack/us915_4.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example US915 example (channels 32-39 + 68).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="us915_4"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="US915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="us915_4/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="us915_4/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=908700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=908900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=909100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=909300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=909500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=909700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=909900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=910100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=909400000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=3
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[32, 33, 34, 35, 36, 37, 38, 39, 68]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/us915_5.toml
Normal file
243
configuration/chirpstack/us915_5.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example US915 example (channels 40-47 + 69).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="us915_5"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="US915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="us915_5/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="us915_5/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=910300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=910500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=910700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=910900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=911100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=911300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=911500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=911700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=911000000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=3
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[40, 41, 42, 43, 44, 45, 46, 47, 69]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/us915_6.toml
Normal file
243
configuration/chirpstack/us915_6.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example US915 example (channels 48-55 + 70).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="us915_6"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="US915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="us915_6/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="us915_6/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=911900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=912100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=912300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=912500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=912700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=912900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=913100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=913300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=912600000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=3
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[48, 49, 50, 51, 52, 53, 54, 55, 70]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
243
configuration/chirpstack/us915_7.toml
Normal file
243
configuration/chirpstack/us915_7.toml
Normal file
@ -0,0 +1,243 @@
|
|||||||
|
# This file contains an example US915 example (channels 56-63 + 71).
|
||||||
|
[[regions]]
|
||||||
|
|
||||||
|
# Name is an use-defined identifier for this region.
|
||||||
|
name="us915_7"
|
||||||
|
|
||||||
|
# Common-name refers to the common-name of this region as defined by
|
||||||
|
# the LoRa Alliance.
|
||||||
|
common_name="US915"
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway configuration.
|
||||||
|
[regions.gateway]
|
||||||
|
|
||||||
|
# Force gateways as private.
|
||||||
|
#
|
||||||
|
# If enabled, gateways can only be used by devices under the same tenant.
|
||||||
|
force_gws_private=false
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway backend configuration.
|
||||||
|
[regions.gateway.backend]
|
||||||
|
|
||||||
|
# The enabled backend type.
|
||||||
|
enabled="mqtt"
|
||||||
|
|
||||||
|
# MQTT configuration.
|
||||||
|
[regions.gateway.backend.mqtt]
|
||||||
|
|
||||||
|
# Event topic template.
|
||||||
|
event_topic="us915_7/gateway/+/event/+"
|
||||||
|
|
||||||
|
# Command topic template.
|
||||||
|
command_topic="us915_7/gateway/{{ gateway_id }}/command/{{ command }}"
|
||||||
|
|
||||||
|
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
|
||||||
|
server="tcp://mosquitto:1883"
|
||||||
|
|
||||||
|
# Connect with the given username (optional)
|
||||||
|
username=""
|
||||||
|
|
||||||
|
# Connect with the given password (optional)
|
||||||
|
password=""
|
||||||
|
|
||||||
|
# Quality of service level
|
||||||
|
#
|
||||||
|
# 0: at most once
|
||||||
|
# 1: at least once
|
||||||
|
# 2: exactly once
|
||||||
|
#
|
||||||
|
# Note: an increase of this value will decrease the performance.
|
||||||
|
# For more information: https://www.hivemq.com/blog/mqtt-essentials-part-6-mqtt-quality-of-service-levels
|
||||||
|
qos=0
|
||||||
|
|
||||||
|
# Clean session
|
||||||
|
#
|
||||||
|
# Set the "clean session" flag in the connect message when this client
|
||||||
|
# connects to an MQTT broker. By setting this flag you are indicating
|
||||||
|
# that no messages saved by the broker for this client should be delivered.
|
||||||
|
clean_session=true
|
||||||
|
|
||||||
|
# Client ID
|
||||||
|
#
|
||||||
|
# Set the client id to be used by this client when connecting to the MQTT
|
||||||
|
# broker. A client id must be no longer than 23 characters. When left blank,
|
||||||
|
# a random id will be generated. This requires clean_session=true.
|
||||||
|
client_id=""
|
||||||
|
|
||||||
|
# CA certificate file (optional)
|
||||||
|
#
|
||||||
|
# Use this when setting up a secure connection (when server uses ssl://...)
|
||||||
|
# but the certificate used by the server is not trusted by any CA certificate
|
||||||
|
# on the server (e.g. when self generated).
|
||||||
|
ca_cert=""
|
||||||
|
|
||||||
|
# TLS certificate file (optional)
|
||||||
|
tls_cert=""
|
||||||
|
|
||||||
|
# TLS key file (optional)
|
||||||
|
tls_key=""
|
||||||
|
|
||||||
|
|
||||||
|
# Gateway channel configuration.
|
||||||
|
#
|
||||||
|
# Note: this configuration is only used in case the gateway is using the
|
||||||
|
# ChirpStack Concentratord daemon. In any other case, this configuration
|
||||||
|
# is ignored.
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=913500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=913700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=913900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=914100000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=914300000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=914500000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=914700000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=914900000
|
||||||
|
bandwidth=125000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[7, 8, 9, 10]
|
||||||
|
|
||||||
|
[[regions.gateway.channels]]
|
||||||
|
frequency=914200000
|
||||||
|
bandwidth=500000
|
||||||
|
modulation="LORA"
|
||||||
|
spreading_factors=[8]
|
||||||
|
|
||||||
|
|
||||||
|
# Region specific network configuration.
|
||||||
|
[regions.network]
|
||||||
|
|
||||||
|
# Installation margin (dB) used by the ADR engine.
|
||||||
|
#
|
||||||
|
# A higher number means that the network-server will keep more margin,
|
||||||
|
# resulting in a lower data-rate but decreasing the chance that the
|
||||||
|
# device gets disconnected because it is unable to reach one of the
|
||||||
|
# surrounded gateways.
|
||||||
|
installation_margin=10
|
||||||
|
|
||||||
|
# RX window (Class-A).
|
||||||
|
#
|
||||||
|
# Set this to:
|
||||||
|
# 0: RX1 / RX2
|
||||||
|
# 1: RX1 only
|
||||||
|
# 2: RX2 only
|
||||||
|
rx_window=0
|
||||||
|
|
||||||
|
# RX1 delay (1 - 15 seconds).
|
||||||
|
rx1_delay=1
|
||||||
|
|
||||||
|
# RX1 data-rate offset
|
||||||
|
rx1_dr_offset=0
|
||||||
|
|
||||||
|
# RX2 data-rate
|
||||||
|
rx2_dr=8
|
||||||
|
|
||||||
|
# RX2 frequency (Hz)
|
||||||
|
rx2_frequency=923300000
|
||||||
|
|
||||||
|
# Prefer RX2 on RX1 data-rate less than.
|
||||||
|
#
|
||||||
|
# Prefer RX2 over RX1 based on the RX1 data-rate. When the RX1 data-rate
|
||||||
|
# is smaller than the configured value, then the Network Server will
|
||||||
|
# first try to schedule the downlink for RX2, failing that (e.g. the gateway
|
||||||
|
# has already a payload scheduled at the RX2 timing) it will try RX1.
|
||||||
|
rx2_prefer_on_rx1_dr_lt=0
|
||||||
|
|
||||||
|
# Prefer RX2 on link budget.
|
||||||
|
#
|
||||||
|
# When the link-budget is better for RX2 than for RX1, the Network Server will first
|
||||||
|
# try to schedule the downlink in RX2, failing that it will try RX1.
|
||||||
|
rx2_prefer_on_link_budget=false
|
||||||
|
|
||||||
|
# Downlink TX Power (dBm)
|
||||||
|
#
|
||||||
|
# When set to -1, the downlink TX Power from the configured band will
|
||||||
|
# be used.
|
||||||
|
#
|
||||||
|
# Please consult the LoRaWAN Regional Parameters and local regulations
|
||||||
|
# for valid and legal options. Note that the configured TX Power must be
|
||||||
|
# supported by your gateway(s).
|
||||||
|
downlink_tx_power=-1
|
||||||
|
|
||||||
|
# ADR is disabled.
|
||||||
|
adr_disabled=false
|
||||||
|
|
||||||
|
# Minimum data-rate.
|
||||||
|
min_dr=0
|
||||||
|
|
||||||
|
# Maximum data-rate.
|
||||||
|
max_dr=3
|
||||||
|
|
||||||
|
# Enabled uplink channels.
|
||||||
|
#
|
||||||
|
# Use this when ony a sub-set of the by default enabled channels are being
|
||||||
|
# used. For example when only using the first 8 channels of the US band.
|
||||||
|
# Note: when left blank / empty array, all channels will be enabled.
|
||||||
|
enabled_uplink_channels=[56, 57, 58, 59, 60, 61, 62, 63, 71]
|
||||||
|
|
||||||
|
|
||||||
|
# Rejoin-request configuration (LoRaWAN 1.1)
|
||||||
|
[regions.network.rejoin_request]
|
||||||
|
|
||||||
|
# Request devices to periodically send rejoin-requests.
|
||||||
|
enabled=false
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_count_n + 4)
|
||||||
|
# uplink messages. Valid values are 0 to 15.
|
||||||
|
max_count_n=0
|
||||||
|
|
||||||
|
# The device must send a rejoin-request type 0 at least every 2^(max_time_n + 10)
|
||||||
|
# seconds. Valid values are 0 to 15.
|
||||||
|
#
|
||||||
|
# 0 = roughly 17 minutes
|
||||||
|
# 15 = about 1 year
|
||||||
|
max_time_n=0
|
||||||
|
|
||||||
|
|
||||||
|
# Class-B configuration.
|
||||||
|
[regions.network.class_b]
|
||||||
|
|
||||||
|
# Ping-slot data-rate.
|
||||||
|
ping_slot_dr=8
|
||||||
|
|
||||||
|
# Ping-slot frequency (Hz)
|
||||||
|
#
|
||||||
|
# set this to 0 to use the default frequency plan for the configured region
|
||||||
|
# (which could be frequency hopping).
|
||||||
|
ping_slot_frequency=0
|
7
configuration/postgresql/initdb/001-init-chirpstack.sh
Normal file
7
configuration/postgresql/initdb/001-init-chirpstack.sh
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" <<-EOSQL
|
||||||
|
create role chirpstack with login password 'chirpstack';
|
||||||
|
create database chirpstack with owner chirpstack;
|
||||||
|
EOSQL
|
@ -1,7 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -e
|
|
||||||
|
|
||||||
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" <<-EOSQL
|
|
||||||
create role chirpstack_ns with login password 'chirpstack_ns';
|
|
||||||
create database chirpstack_ns with owner chirpstack_ns;
|
|
||||||
EOSQL
|
|
@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname="chirpstack_as" <<-EOSQL
|
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname="chirpstack" <<-EOSQL
|
||||||
create extension pg_trgm;
|
create extension pg_trgm;
|
||||||
create extension hstore;
|
create extension hstore;
|
||||||
EOSQL
|
EOSQL
|
@ -1,7 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -e
|
|
||||||
|
|
||||||
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" <<-EOSQL
|
|
||||||
create role chirpstack_as with login password 'chirpstack_as';
|
|
||||||
create database chirpstack_as with owner chirpstack_as;
|
|
||||||
EOSQL
|
|
@ -1,58 +0,0 @@
|
|||||||
version: "3"
|
|
||||||
|
|
||||||
services:
|
|
||||||
chirpstack-network-server:
|
|
||||||
image: chirpstack/chirpstack-network-server:3
|
|
||||||
environment:
|
|
||||||
- POSTGRESQL__DSN=postgres://chirpstack_ns:chirpstack_ns@postgresql/chirpstack_ns?sslmode=disable
|
|
||||||
- REDIS__URL=redis://redis:6379
|
|
||||||
- NETWORK_SERVER__BAND__NAME=EU868
|
|
||||||
- NETWORK_SERVER__GATEWAY__BACKEND__MQTT__SERVER=tcp://mosquitto:1883
|
|
||||||
- JOIN_SERVER__DEFAULT__SERVER=http://chirpstack-application-server:8003
|
|
||||||
depends_on:
|
|
||||||
- postgresql
|
|
||||||
- mosquitto
|
|
||||||
|
|
||||||
chirpstack-application-server:
|
|
||||||
image: chirpstack/chirpstack-application-server:3
|
|
||||||
ports:
|
|
||||||
- 8080:8080
|
|
||||||
environment:
|
|
||||||
- POSTGRESQL__DSN=postgres://chirpstack_as:chirpstack_as@postgresql/chirpstack_as?sslmode=disable
|
|
||||||
- REDIS__URL=redis://redis:6379
|
|
||||||
- APPLICATION_SERVER__INTEGRATION__MQTT__SERVER=tcp://mosquitto:1883
|
|
||||||
- APPLICATION_SERVER__API__PUBLIC_HOST=chirpstack-application-server:8001
|
|
||||||
- APPLICATION_SERVER__EXTERNAL_API__JWT_SECRET=verysecret
|
|
||||||
depends_on:
|
|
||||||
- chirpstack-network-server
|
|
||||||
|
|
||||||
chirpstack-gateway-bridge:
|
|
||||||
image: chirpstack/chirpstack-gateway-bridge:3
|
|
||||||
ports:
|
|
||||||
- 1700:1700/udp
|
|
||||||
environment:
|
|
||||||
- INTEGRATION__MQTT__AUTH__GENERIC__SERVERS=tcp://mosquitto:1883
|
|
||||||
depends_on:
|
|
||||||
- mosquitto
|
|
||||||
|
|
||||||
postgresql:
|
|
||||||
image: postgres:9.6-alpine
|
|
||||||
environment:
|
|
||||||
- POSTGRES_PASSWORD=root
|
|
||||||
volumes:
|
|
||||||
- ./configuration/postgresql/initdb:/docker-entrypoint-initdb.d
|
|
||||||
- postgresqldata:/var/lib/postgresql/data
|
|
||||||
|
|
||||||
redis:
|
|
||||||
image: redis:5-alpine
|
|
||||||
volumes:
|
|
||||||
- redisdata:/data
|
|
||||||
|
|
||||||
mosquitto:
|
|
||||||
image: eclipse-mosquitto:1.6
|
|
||||||
ports:
|
|
||||||
- 1883:1883
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
postgresqldata:
|
|
||||||
redisdata:
|
|
@ -1,24 +1,20 @@
|
|||||||
version: "3"
|
version: "3"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
chirpstack-network-server:
|
chirpstack:
|
||||||
image: chirpstack/chirpstack-network-server:3
|
image: chirpstack/chirpstack:4.0.0-test.1
|
||||||
|
command: -c /etc/chirpstack
|
||||||
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- ./configuration/chirpstack-network-server:/etc/chirpstack-network-server
|
- ./configuration/chirpstack:/etc/chirpstack
|
||||||
depends_on:
|
depends_on:
|
||||||
- postgresql
|
- postgres
|
||||||
- mosquitto
|
- mosquitto
|
||||||
|
- redis
|
||||||
chirpstack-application-server:
|
|
||||||
image: chirpstack/chirpstack-application-server:3
|
|
||||||
ports:
|
ports:
|
||||||
- 8080:8080
|
- 8080:8080
|
||||||
volumes:
|
|
||||||
- ./configuration/chirpstack-application-server:/etc/chirpstack-application-server
|
|
||||||
depends_on:
|
|
||||||
- chirpstack-network-server
|
|
||||||
|
|
||||||
chirpstack-gateway-bridge:
|
chirpstack-gateway-bridge-eu868:
|
||||||
image: chirpstack/chirpstack-gateway-bridge:3
|
image: chirpstack/chirpstack-gateway-bridge:3
|
||||||
ports:
|
ports:
|
||||||
- 1700:1700/udp
|
- 1700:1700/udp
|
||||||
@ -27,16 +23,16 @@ services:
|
|||||||
depends_on:
|
depends_on:
|
||||||
- mosquitto
|
- mosquitto
|
||||||
|
|
||||||
postgresql:
|
postgres:
|
||||||
image: postgres:9.6-alpine
|
image: postgres:11-alpine
|
||||||
environment:
|
|
||||||
- POSTGRES_PASSWORD=root
|
|
||||||
volumes:
|
volumes:
|
||||||
- ./configuration/postgresql/initdb:/docker-entrypoint-initdb.d
|
- ./configuration/postgresql/initdb:/docker-entrypoint-initdb.d
|
||||||
- postgresqldata:/var/lib/postgresql/data
|
- postgresqldata:/var/lib/postgresql/data
|
||||||
|
environment:
|
||||||
|
- POSTGRES_PASSWORD=root
|
||||||
|
|
||||||
redis:
|
redis:
|
||||||
image: redis:5-alpine
|
image: redis:6-alpine
|
||||||
volumes:
|
volumes:
|
||||||
- redisdata:/data
|
- redisdata:/data
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user