I am currently trying to build multi-channel gateway using a Raspberry Pi 3. I know there is a couple solutions for single channel gateway, but i would like a multi-channel one.
I have seen the Rak831 et Rak2245 HAT for the Raspberry Pi and i find them really interesting.
But! I would like to keep the Raspbian OS because i have installed my MQTT broker on it plus a couple of other things and from what i’ve seen, if i want to use one of the Rak HAT, I will have to install the OS too and doing so, wiping everything on the Pi.
So! My question is : Is there another way to program the HAT using python or shell scripts and if yes, is it possible that someone provide me with examples? I have found nothing or almost nothing on the web and it would help me
If your wiring is already fixed, you might have to change the assignment of the reset pin (and possibly even the chip select) in the software configuration to match your wiring. If the wiring is particularly poor you may need to reduce the SPI clock.
There are reasons why a pi is not a great choice for a field deployed gateway, but they have to do with the pi’s hardware reliance on an SD card, much more than the operating system. For something that you can get at for maintenance it’s a decent test / proof of concept platform.
Using a stock Raspbian image and adding software takes a bit more effort but is certainly doable. You can use these instructions to get started. You might/will need to change the configuration of the reset signal to suit the hardware.
If you want to you can compile the software from source as well, takes more time and requires moderate Linux knowledge.
So! According to what you wrote and the link. I could be able to keep the original Raspian OS with the graphical interface?
Its just that like I said I have installed my MQTT broker on the Raspberry and another thing is that i have a script that read the payload and subscribe to different topics according to what is in the payload plus a couple more things and i would like to keep this centralized on one device.
And right now, I have nothing wired or anything. I am only doing some research to find the best option.
It is definitely doable, but Jac Kersing is right that there can be quirks in pulling together a solution from various sources that benefit from some Linux installation, compilation, and scripting experience. I had little trouble, but doing this kind of thing is literally my job.
If you get stuck something you could do is install the LoRaServer system image on a different SD card (though that has a lot of things you wouldn’t want for TTN, including bringing along its own replacement for the TTN servers) and spend some time testing that. You could then go back to your ordinary install, put the alternate SD card in a reader, mount it, and look around to see how things differ from your attempt.
If you use the RAK2245 you will need to reduce the SPI speed to 2MHz.
RAK have release 3 products using the same base product. One is a RAK2245 Stamp Version, the second is the same with a header to suit “96 Boards” and the third is the same product mounted on a sub-board to suit the 40 pin header and layout of a Raspberry Pi. Pi’s work on 3.3 Volts, while the 96 Board standard is 1.8 volts. As a result RAK installed a level shifting circuit in the RAK2245 to accommodate the different voltage standards. It’s this level shifting circuit that’s reducing the SPI speed.
I’ve had one running for a few months without any problem.
As has been said before above, you can just use Raspbian for a LoRaWAN gateway. It is not required to use RAK Wireless’s OS image for RAK831.
You should be able to run the gateway software in addition to the MQTT broker (‘plus a couple of other things’) on your existing Raspberry Pi - assuming that the MQTT broker and ‘other things’ do not put a heavy load on your RPi.
How to install TTN Gateway software on Raspberry Pi without custom pre-configured OS image:
There are several gateway (packet forwarder) implementations and installation procedures available for Raspberry Pi.
For installing the gateway software onto an existing Raspberry Pi setup (without the need to first install some custom pre-configured OS image) I like the setup procedure described here: https://github.com/ch2i/LoraGW-Setup
This setup procedure supports multiple SX1301 concentrator boards RAK831 included and uses the multi-protocol packet forwarder (by @kersing) which is more secure than the basic packet forwarder used in some other setups (e.g. https://github.com/ttn-zh/ic880a-gateway).