ChirpStack and TTN acting differently

I have a node that joins TTN and then forwards message.
image
I then change global_conf.json to chirpstack and run and I continually get the following:
image

The node never joins. I absolutely haven’t changed anything other than the conf.json file pointing to localhost. The node never accepts the JoinAccept from Chirpstack but does from TTN. Can someone tell me what I am missing here?

1 Like

This join-accept looping typically happens when Chirpstack tells the device to use the wrong sub-band in the join response, this can happen when:

  • The device profile is configured wrong
  • Your region isn’t enabled in the Chirpstack.toml
  • Your Gateway Bridge / MQTT Forwarder is sending the wrong topic-prefixes

It also looks like you have some issues with your time configuration, as the dates are reading 1999.

Thanks Liam.
I will further try and diagnose these 3 pts.
As far as the timestamp. I have a GPS connected but haven’t figured this one out yet. I believe it has something to do with the WM1302 (seeed gateway) connection to the rpi5. I have measured with a scope a 1pps but I believe (have to retrace it out again) that the mini-PCIe pins this to a non compatible pi pin.

For your current issue, I’d recommend making sure all of your bands are aligned. When I first started using Chirpstack I had an issue where I set my Gateway and Chirpstack to US915_1 and my devices were all join-looping. Turns out my Multitech gateway’s subband list starts at 1 and Chirpstacks list starts at 0, so they were one band off and that caused the issues you are seeing here.

If its not a subband mismatch, and you see no errors in the Chirpstacks logs, it may be that the end device is simply not receiving the accept for whatever reason.

I might be able to help a bit more if you tell me your region, gateway model and end device.

On TTN I was using FSB2 which seems to correspond to US915_1 for Chirpstack toml file. I have seen the node work before.

To answer your questions.
Gateway is Seeed WM1302.
Region is US
end device is custom pcb I built.

Gateway log looks good with downlink

Chirpstack log looks good too:

Well…I have NO CLUE as to what I did other than bring down docker containers and look at logs but now it is up and running…

I have exactly the same problem, two different base stations (Ebyte and Raspberry Pi3B+Waveshare HAT with Semtech Basic Station) work fine with TTN, data from three Dragino end devices comes, but as soon as I connect to Chirpstack, I see a “Join request” stream every 30 seconds and the connection does not happen, the data is not being received.
I use Docker-compose and do everything according to this instruction Docker - ChirpStack open-source LoRaWAN® Network Server documentation
What could be the reason? I checked all 3 points in the advice from Liam, there are no problems in them. What is the difference between Chirpstack and TTN? Maybe Chirpstack needs a certificate?
Here is the Chirpstack logging:

Until you configure TLS on the MQTT broker no certificates are required, Chirpstack is clearly receiving the events so it is not an issue with it connecting to the Broker.

The main reason I see for these issues is a band mismatch somewhere in the chain of device->gateway->Chirpstack.

I know nothing about ru864 but from the logs it seems your MQTT topic is correct, if it worked with TTN that means your devices and gateway are likely on the right band, so the device profile: LoRaWAN, MAC, and regional parameters would be the next place you should verify if you haven’t.

Otherwise I’d say some greater digging is necessary to debug this.

Set your logging section in your chirpstack.toml to trace:

# Logging.
[logging]

  # Log level.
  #
  # Options are: trace, debug, info, warn error.
  level="trace"

Reboot everything and check the logs again.

Do your gateways have logging capabilities? If you can confirm whether the join-accept messages are being sent from the gateway it would go a long way to determine where in the chain this is failing.

Hi Liam, thank you very much for your answer. I deleted Chirpstack installed with Docker and install it again, without Docker. And this is was the solution. Now all works fine!
Sincerely, Victor

1 Like

Interesting debugging approach but I’m glad you got it working!