-
Introduction
-
Architecture
-
v3 documentation
-
v4 breaking changes
-
v3 to v4 migration
-
-
-
Getting started
-
Docker
-
Debian / Ubuntu
-
Raspberry Pi
-
Ansible and Vagrant
-
Guides
❱
-
-
Connecting a gateway
-
Connecting a device
-
Device repository and metrics
-
Mosquitto TLS configuration
-
Node-RED integration
-
ThingsBoard integration
-
Pilot Things integration
-
Auth0.com integration
-
Migrating from Semtech NS
-
Roaming with Helium
-
Gateway configuration
❱
-
-
Browan
-
Dragino
-
Kerlink
-
Multitech
-
RAK
-
Tektelic
-
-
ChirpStack
-
Changelog
-
Configuration
-
Downloads
-
Requirements
-
Features
❱
-
-
Adaptive data-rate (ADR)
-
Channel (re)configuration
-
Device activation
-
Device classes
-
Device metrics
-
Device status
-
Device time
-
End-to-end encryption
-
Frame logging
-
Gateway management
-
Geolocation
-
Join server
-
Multi-region
-
Multicast
-
Rejoin
-
RX parameters (re)configuration
-
Use
❱
-
-
Applications
-
Device profiles
-
Device-profile templates
-
Devices
-
Event log
-
Frame log
-
FUOTA
-
Gateways
-
Login
-
Multicast groups
-
Tenants
-
Users
-
Integrations
❱
-
-
Event types
-
AMQP / RabbitMQ
-
Apache Pulsar
-
AWS SNS
-
Azure Service-Bus
-
GCP Pub/Sub
-
HTTP
-
IFTTT
-
InfluxDB
-
LoRa Cloud
-
MQTT
-
myDevices
-
Pilot Things
-
PostgreSQL
-
ThingsBoard
-
Building new integrations
-
Streams
❱
-
-
API requests
-
Backend Interfaces API
-
Integration events
-
LoRaWAN frames
-
Uplink / downlink metadata
-
API
❱
-
-
gRPC
-
REST
-
Go examples
-
Python examples
-
JavaScript examples
-
C# examples
-
Protocol documentation
-
Backends
❱
-
-
MQTT
-
AMQP / RabbitMQ
-
Azure IoT Hub
-
GCP Pub/Sub
-
Contribute & source
-
-
ChirpStack MQTT Forwarder
-
Introduction
-
Changelog
-
Configuration
-
Downloads
-
Installation
❱
-
-
Dragino
-
Kerlink
-
Multitech
-
RAK
-
Tektelic
-
Contribute & source
-
-
ChirpStack Concentratord
-
Introduction
-
Changelog
-
Hardware support
-
Configuration
-
Downloads
-
Installation
❱
-
-
Kerlink
-
Multitech
-
API
❱
-
-
Commands
-
Events
-
Contribute & source
-
-
ChirpStack Gateway Bridge
-
Introduction
-
Changelog
-
Configuration
-
Downloads
-
Installation
❱
-
-
Debian / Ubuntu
-
Raspberry Pi
-
Cisco
-
Dragino
-
Kerlink
-
Laird
-
MatchX
-
Multitech
-
Tektelic
-
Wifx
-
Payload formats
❱
-
-
Events
-
States
-
Commands
-
Backends
❱
-
-
Basics Station
-
Concentratord
-
Semtech UDP
-
Integrations
❱
-
-
MQTT
-
Azure IoT Hub
-
GCP Cloud IoT Core
-
Metrics
-
Contribute & source
-
-
ChirpStack Gateway OS
-
Introduction
-
Changelog
-
Image types
-
Hardware support
-
Downloads
-
Installation
❱
-
-
Raspberry Pi
-
Getting started
-
Use
❱
-
-
Configuration
-
Subscribe to MQTT
-
Log files
-
Modifying files
-
Software update
-
Node-RED
-
Contribute & source
-
If configured, the InfluxDB integration will write device data into an
InfluxDB
database.
This makes it possible to directly visualize all device data using for example
Grafana
.
Getting started with InfluxDB
Getting started with Grafana
Before this integration is able to write data into InfluxDB, the uplink
payloads must be decoded. The payload codec can be configured per
device profile
. To validate that the uplink
payloads are decoded, you can use the
live device event-log
feature. Decoded payload data will be available under the
object
key in
the JSON object.
All measurements are using the field names from the
object
element,
joined by an underscore (
_
) in case the object element is nested.
Payload data is prefixed by
device_frmpayload_data
.
Example:
"object": {
"temperature_sensor": {
"1": 23.5
The above will translate to the measurement
device_frmpayload_data_temperature_sensor_1
.
Note:
When using the
CayenneLPP codec
camelCasing
is used when the data is presented as JSON. However, for the InfluxDB
naming,
snake_casing
is used. Thus
temperatureSensor
in JSON translates to
temperature_sensor
as measurement name in InfluxDB.
When both
latitude
and
longitude
keys are found (on the same level within
the
object
), both measurements are treated as a single geolocation measurement.
Example:
"object": {
"latitude": 1.123,
"longitude": 2.123
The above will translate to the measurement
device_frmpayload_data_location
with values
latitude
,
longitude
and
geohash
(see also
Geohash
).
For aggregation, each measurement will have the following tags (additional to
the device tags):
application_name
device_name
dev_eui
f_port
(LoRaWAN port used for uplink)
For analyzing and monitoring the usage of spreading-factors, channels, etc.
the InfluxDB integration will also write a measurement named
device_uplink
with as values a counter
value
1,
rssi
,
snr
and
f_cnt
. For Aggregation,
the following tags are available (additional to the device tags):
application_name
device_name
dev_eui
frequency
When this information is available, the device battery status will be written
to the measurement name
device_status_battery
. For aggregation, the following
tags are available (additional to the device tags):
application_name
device_name
dev_eui
When this information is available, the device battery level (percentage)
will be written to the measurement name
device_status_battery_level
. For
aggregation, the following tags are available (additional to the device tags):
application_name
device_name
dev_eui
When this information is available, the device margin status will be written
to the measurement name
device_status_margin
. For aggregation, the following
tags are available (additional to the device tags):
application_name
device_name
dev_eui