Hi. I am using ST’s P-NUCLEO-LRWAN2 kit I connected it to The Things Network Europe server successfully. I want to connect my chirpstack server. I followed the steps of Connecting Gateway document from documentation. I will share my config but before I want to point out the connection. My gateway successfully connects here you can see it;
root@tunahan:~# tcpdump -AUq port 1700
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), snapshot length 262144 bytes
12:27:32.068591 IP 78.186.43.200.static.ttnet.com.tr.50000 > nigering.com.1700: UDP, length 12
E..(......6.N.+..._..P.....J..........M.......
12:27:32.069484 IP nigering.com.1700 > 78.186.43.200.static.ttnet.com.tr.50000: UDP, length 4
E.. ..@.@....._.N.+....P........
12:27:37.140048 IP 78.186.43.200.static.ttnet.com.tr.50000 > nigering.com.1700: UDP, length 12
E..(......6.N.+..._..P....B..c/.......M.......
12:27:37.141668 IP nigering.com.1700 > 78.186.43.200.static.ttnet.com.tr.50000: UDP, length 4
E.. ..@.@..N.._.N.+....P.....c/.
And it get to the mqtt server here you can see it;
root@tunahan:~# mosquitto_sub -t "+/gateway/#" -v
eu868/gateway/{EUI64 comes here}/state/conn {EUI64 comes here}
And if I look into the chirpstack logs I can see this
Jul 18 12:06:32 {My ip address comes here} chirpstack[1004984]: 2024-07-18T12:06:32.062991Z INFO chirpstack::gateway::backend::mqtt: Message received from gateway region_id="eu868" topic=eu868/gateway/{EUI64 comes here}/event/up qos=AtMostOnce json=false
Jul 18 12:17:16 {My ip address comes here} chirpstack[1004984]: 2024-07-18T12:17:16.044175Z INFO chirpstack::gateway::backend::mqtt: Message received from gateway region_id="eu868" topic=eu868/gateway/{EUI64 comes here}/event/up qos=AtMostOnce json=false
But it is never seen on GUI I just don’t understand why. I tried everything in the forum.
here is my config files
chirpstack.toml
# 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@localhost/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://localhost/",
]
# 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",
# "cn470_10",
# "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:8087"
# 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"
[integration]
enabled=["mqtt"]
[integration.mqtt]
server="tcp://localhost:1883/"
json=true
chirpstack-gateway-bridge.toml
# This configuration provides a Semtech UDP packet-forwarder backend and
# integrates with a MQTT broker. Many options and defaults have been omitted
# for simplicity.
#
# See https://www.chirpstack.io/gateway-bridge/install/config/ for a full
# configuration example and documentation.
# Gateway backend configuration.
[backend]
# Backend type.
type="semtech_udp"
# Semtech UDP packet-forwarder backend.
[backend.semtech_udp]
# ip:port to bind the UDP listener to
#
# Example: 0.0.0.0:1700 to listen on port 1700 for all network interfaces.
# This is the listener to which the packet-forwarder forwards its data
# so make sure the 'serv_port_up' and 'serv_port_down' from your
# packet-forwarder matches this port.
udp_bind = "[::]:1700"
# Integration configuration.
[integration]
# Payload marshaler.
#
# This defines how the MQTT payloads are encoded. Valid options are:
# * protobuf: Protobuf encoding
# * json: JSON encoding (easier for debugging, but less compact than 'protobuf')
marshaler="protobuf"
# MQTT integration configuration.
[integration.mqtt]
event_topic_template="eu868/gateway/{{ .GatewayID }}/event/{{ .EventType }}"
command_topic_template="eu868/gateway/{{ .GatewayID }}/command/#"
state_topic_template="eu868/gateway/{{ .GatewayID }}/state/{{ .StateType }}"
# MQTT authentication.
[integration.mqtt.auth]
# Type defines the MQTT authentication type to use.
#
# Set this to the name of one of the sections below.
type="generic"
# Generic MQTT authentication.
[integration.mqtt.auth.generic]
# MQTT server (e.g. scheme://host:port where scheme is tcp, ssl or ws)
server="tcp://localhost:1883"
# Connect with the given username (optional)
username=""
# Connect with the given password (optional)
password=""