Waveshare HAT SX1302 not working

Hi,
I would be very grateful for any advice or help on how to deal with the problem.
I am having trouble getting the Waveshare SX1302 on the Controlino HAT to work with my Raspberry Pi 3B+.

It is a nightmare. Sorry, but I spent 1 day on this issue.

The problem description – I have the abovementioned setup. I downloaded the base image for raspberry PI - GatewayOS v.4.7.0 and flashed it.

Totally fresh setup.

The raspberry is connected to the physical LAN. Therefore, I disabled the WIFI.

Step 1- updated the password

Step 2- Concentratord menu → SX1302/S1303 choose the Waveshare HAT and channel plan 868 → Save&apply

Step 3- Concentratord menu ->Global configuration – tick enabled → enabled chipset SX1302/SX1303

That’s all

The problem is - web-interface states “Could not read Gateway_id” even I refreshed the page many times.

In the system log I see that the concentratord is restarted periodically every 7-8 seconds.

Below is the log output of the cycle.

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Setting i2c device path, path: /dev/i2c-1

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Setting i2c temperature sensor address, address: 57

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Setting board configuration, lorawan_public: true, clock_source: 0, com_type: Spi, com_path: /dev/spidev0.0

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Setting up fine timestamp, enable: false

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Setting up concentrator channels

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring radio, radio: 0, enabled: true, center_freq: 867500000, type: SX1250

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring radio, radio: 1, enabled: true, center_freq: 868500000, type: SX1250

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Setting up concentrator channels

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring multi-SF LoRa channel, channel: 0, enabled: true, freq: 868100000, rf_chain: 1, if_freq: -400000

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring multi-SF LoRa channel, channel: 1, enabled: true, freq: 868300000, rf_chain: 1, if_freq: -200000

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring multi-SF LoRa channel, channel: 2, enabled: true, freq: 868500000, rf_chain: 1, if_freq: 0

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring multi-SF LoRa channel, channel: 3, enabled: true, freq: 867100000, rf_chain: 0, if_freq: -400000

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring multi-SF LoRa channel, channel: 4, enabled: true, freq: 867300000, rf_chain: 0, if_freq: -200000

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring multi-SF LoRa channel, channel: 5, enabled: true, freq: 867500000, rf_chain: 0, if_freq: 0

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring multi-SF LoRa channel, channel: 6, enabled: true, freq: 867700000, rf_chain: 0, if_freq: 200000

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring multi-SF LoRa channel, channel: 7, enabled: true, freq: 867900000, rf_chain: 0, if_freq: 400000

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring Std LoRa channel, enabled: true, freq: 868300000, rf_chain: 1, if_freq: -200000

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Configuring FSK channel, enabled: true, freq: 868800000, rf_chain: 1, if_freq: 300000

Thu Apr 17 16:07:46 2025 user.info chirpstack-concentratord-sx1302[4839]: Starting the concentrator
------------------------------------------------

When I login to the ssh and execute the command: chirpstack-concentratord-sx1302

The output is as follow:

:~# chirpstack-concentratord-sx1302

thread ‘main’ panicked at chirpstack-concentratord-sx1302/src/config/mod.rs:347:58:
called Result::unwrap() on an Err value: You must specify a region
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

Unfortunately, I am just exhausted reading everything in internet. Just for information – this solution with “pressing the PCI concentrator module hard “ doesn’t work here.

I will appreciate any help or advice how to deal with this problem.

Please help.

let me help you you got discord? log says that you need specify the region but you already did that.

Thank you. I am also confused because of this observation. Below is the related part of the chirpstack-concentratord file:

config sx1302
option model ‘dragino_pg1302’
option region ‘EU868’
option channel_plan ‘eu868’
option antenna_gain ‘10’

How do you think - do you have any idea how to fix this?
I tried with modifying the reset pin, different boards, etc… but every time the same output

Today I tried with very fresh installation - twice on different raspberry pi 3b+ - th first one with EMB-RasPI-130x-Cape and waveshare sx1302 and the second one with RAK2243 pi hat. The gateway OS is the latest one base installation. The output is the same.
When configured the concentratord to use 1302 and in 1302 menu selected the corresponding device and region frequency, I have the same periodically restarting concentrator and obviously missing region???



Any advise/help will be highly appreciated

When using the Waveshare concentrator module with the ChirpStack Gateway OS, it is expected that you are using the Waveshare HAT that connects the concentrator to the Raspberry Pi. This has been tested and works fine. If you are using any other module, then this will probably affect the wiring of concentrator (reset) pins.

chirpstack-concentratord-sx1302*

It is expected that executing the command without arguments is failing, you need to pass the paths to the configuration files using the -c argument (can be repeated).