Custom Shield Model - Chirpstack Gateway OS 4.9.0

Viewed 5

Is it possible to define a custom shield model that can be selected via the "Chirpstack Concentratord"? Specifically I am looking for the file within Chirpstack's firmware where pin definitions are stored for each shield. Ultimately I would like to be able to define a custom pinout that would allow me to re-map pins such as the SX1302 Reset and SX1302 Chip Select pins on the Pi and save them as a custom "Shield Model Profile". If anyone could point me in the right direction for how to get started with this, or if it's not possible to do so, I would appreciate some feedback/advice.

Background information:
I have been working with Chirpstack for a few weeks now, testing primarily with various Raspberry Pi configurations (the CM5, and 3B+) as well as a few different shields (the Seeed WM1302, and the RAK5146). All my testing has been conducted in North America on the US915 channel plan.

My company has been trying to get our hands on a Semtech CoreCell (SX1302C915GW1) unit to do some further testing, but in the meantime they have asked me to experiment with trying to build our own custom shield.

Before committing to the hardware design challenge of fabricating our own custom shield (using Semtech SX1302 concentrators) I have been trying to gain a deeper understanding of what is happening under the hood with Chirpstack as far as pin definitions for the Raspberry Pi when a particular shield model is selected.

Thanks,
Patrick

1 Answers

Please note that the shield configuration is a bit more than PIN configuration only, it also includes calibration values to make sure that the output TX power is correct. These values are embedded in the Concentratord binary. For an example see:

https://github.com/chirpstack/chirpstack-concentratord/blob/master/chirpstack-concentratord-sx1302/src/config/vendor/rak/rak2287.rs

If you would like to use an existing shield, but change the pins, please see these fields that you can overide in the concentratord.toml configuration:

https://github.com/chirpstack/chirpstack-concentratord/blob/master/chirpstack-concentratord-sx1302/src/config/mod.rs#L103