Hello, I want to send all mqtt data received from My LoRa Gateways and Applications to my Cedalo MQTT Server.
However everytime i change the destination adress in chirpstack.toml and chirpstack-gateway-bridge.toml, it disconnects my LoRa devices with my Chirpstack server.
You only need to change the server= line in the [integration.mqtt] section of your chirpstack.toml
Changing the Chirpstack gateway bridge’s address means that it will no longer forward gateway events to Chirpstack. Besides the MQTT events coming out of the gateway-bridge are still encrypted and no use to external applications. The flow for an uplink looks like.
End device to Gateway using LoRa → Gateway sends to gateway bridge using UDP or Basicstation → Gateway Bridge sends encrypted packet to MQTT broker using MQTT → MQTT broker forwards encrypted packet to Chirpstack → Chirpstack decrypts the packet and re-posts it to the Broker in the [integration.mqtt] section
Never used Celado, looks neat though. I assume the “Cedalo Server” is just another MQTT node? In that case you could use mosquitto_sub -t "#" -h <celado-server-ip> -p 1883 -v , but I assume Celado has some logging of their own that you could use.
It’s also possible the broker is using encrypted MQTT on 8883 port.
Looks like there is also a “publish and subscribe” tools in the left navigation bar, try using that to subscribe to the wildcard topic “#” to see if events are being sent.
The publish and subscribe tools are only available in the cloud version of cedalo.
No matter what i do i get the message Error: Connection refused on the Cedalo server when i try to sub like this: mosquitto_sub -t “#” -h ChirpstackServer -v
My [integration] section in chirpstack.toml looks like this=
[integration]
enabled= [“mqtt”]
[integration.mqtt]
server = “tcp://CedaloServer:1883/”
json = true
I havent setup any security or certificates or anything like that myself
Ah I had assumed you were using the cloud product.
Glancing at the security docs it looks like you will need to create a profile in Celado for your connection. Then you will need to use those authentication measure in your integration section and use them aswell if you want to try to mosquitto_sub. If you look at the Chirpstack configuration options and scroll down to the integration.mqtt settings you can see what variables you will need to add to add authentication.
Frankly though this is not a Chirpstack problem but a Celado problem. You might have more luck on their forums or reading through their documentation
I created a Debian VM on a third server and tested if chirpstck is the problem. I get the same Connection refused message on the debian vm when i try to subscribe to chripstack. Maybe there are some security setting in chirpstack which have to be turned off.
Have you opened port 1883 on Chirpstack server? By default Chirpstack has no security measures on the MQTT broker so it’s likely a networking issue in that case.
Well thats a server thing not a Chirpstack thing, what are you running it on?
You can test this by running ping <chirpstack -server-ip>:1883, from a different machine than your Chirpstack server, if that fails it is likely a closed port.
Every server is running on Proxmox, the Chirpstack VM is on server 1 and the Cedalo MQTT Broker ist actually split into 3 VMs, one of them also on server 1 and the other two on server 2. They use ports 7000, 1883 and 1885 to communicate with each other. Proxmox shouldnt be the problem i guess.
Server 1: Chirpstack VM, Cedalo MQTT Broker 1, MQTT_Test (I created this to check if I can at least subscirbe to Chirpstack, which didnt work.
Server 2:Cedalo MQTT Broker2, Cedalo MQTT Broker 3
Alls Cedalo MQTT Brokers are connected with each other over ports 7000,1883 and 1885. Every machine can ping each other on every network.
It cant be a port or network issue.
Hm, so the MQTT is listening on port 1883 (assuming you have no other MQTT broker on the Chirpstack server).
try connecting to the port from both the Celado and Chirpstack server using:
nmap -p 1883 <CS_IP>
Have you made any changes to the mosquitto.conf at all?
Also check the Chirpstack logs for any errors. If the broker was getting the external connections but rejecting them for whatever reason you could tell that here.
Can you mosquitto_sub to the broker from the Chirpstack server using localhost?