How to integrate LoRaWAN gateway

Revision as of 20:20, 24 April 2022 by Registered User

1. Article purpose[edit source]

The purpose of this article is to explain how to integrate the LoRa Concentrator Module with STM32MP157F-DK2, managed by Linux on Cortex®-A7. This will help to configure STM32MP1 discovery kit either as a loragateway or running the ChiprStack open source component for LoRaWAN networks.

2. Prerequisites[edit source]

2.1. Hardware prerequisites[edit source]

  • STM32MP157F-DK2
STM32MP157F-DK2

For more information about the STM32 discovery board and how to start it up, jump to this section
Getting_started/STM32MP1_boards/STM32MP157F-DK2


  • RAKMODULES

Below is the picture of RAK modules File:Lorascreenshot 1.jpg File:Lorascreenshot 1.jpg

  • RAK EXTENSION
  • NUCLEO-WL55JC1
NUCLEO-WL55JC1

For more information about the STM32WL nucleo kit and refer the webpage
NUCLEO-WL55JC

2.2. Software prerequisites[edit source]

3. Hardware setup[edit source]

The lora concentrator module should be connected to 40 pin connector

3.1. ST hardware[edit source]

3.2. Additional hardware[edit source]

4. Software setup[edit source]

5. Building the distribution package[edit source]

Step 1. Download and compile the STM32MP1 Distribution Package
Step 2. Follow the default Example_of_directory_structure_for_Packages suggested by ST wiki page to follow this document synchronously.
Step 3. Download and clone the layer "meta-st-loragateway" to "meta-st" layer.

 cd $HOME/STM32MPU_workspace/STM32MP15-Ecosystemv3.1.0/Distribution-Package/openstlinux-5.10-dunfell-mp1-21-11-17/layers/meta-st
git clone https://github.com/amitemrkumar/meta-st-loragateway

Step 4. Set up the build configuration.

 DISTRO=openstlinux-weston MACHINE=stm32mp1 source layers/meta-st/scripts/envsetup.sh

Step 5. Add the meta-st-loragateway layer to build configuration.

 bitbake-layers add-layer ../layers/meta-st/meta-st-loragateway/

Step 7. Build your layer separately and then build the complete Distribution Layer.

 bitbake st-image-weston

Note: Building the Distribution Package for the first time may take several hours. However, it takes only few minutes to build meta-nfc6 layer and install the executables in the final images. Once the build is complete, the images are present in the following directory: build-<distro>-<machine>/tmp-glibc/deploy/images/stm32mp1.

Step 8. Follow instructions on ST wiki page:Flashing the built image to program the new built images onto the Discovery kit

6. How to run the chirpstack components on STM32MP157F-DK2[edit source]

6.1. Steps to run the configuration script on the maching[edit source]

Step 1. Connect the minicom to the /dev/ttyACM0 device.

 minicom -D /dev/ttyACM0

Step 2. Read the ipaddress of the STM32MP157 discovery kit.

 ifconfig

Step 3. Connect the STM32MP157F-DK2 board using ssh connection.

 ssh root@xxx.xxx.xxx.xxx

Step 4. Run the stm32mp1-config.sh script to initiate the gateway configuration .

  cd /usr/local/lorawan-gateway
 ./stm32mp1-config.sh 
Loragatewayimage 1.png

6.2. ChirpstackConfiguration[edit source]

Step 1. Select chirpstack option and click ok to proceed further.

Loragatewayimage 2.png

6.2.1. Lora concentrator module configuration[edit source]

Step 1. Select concentrator selection option and click ok to proceed further.

Loragatewayimage 3.png

Step 2. Select RAK2287 SPI with GPS to configure the rak2287 module and click ok to proceed further.

Loragatewayimage 4.png

Step 3. Select EU868 ISM band and click ok to proceed further.

Loragatewayimage 5.png

Step 4. Select EU863_870_1 and and click ok to proceed further.

Loragatewayimage 6.png

Step 5. Wait to complete the frequency configuration.

Loragatewayimage 8.png

Step 6. Frequency channel details will be displayed . Click ok to proceed further.

Loragatewayimage 7.png

Step 7. If frequency configuration is correct then click Yes to proceed further else click No to redo the frequency configuration.

Loragatewayimage 9.png

Step 8. Please wait to complete the Frequency configuration. Once it completes then click to proceed with next step.

Loragatewayimage 10.png

6.2.2. Gateway ID configuration[edit source]

Step 1. Select Gateway ID Configuration from the menu and click to proceed with next step.

Loragatewayimage 11.png

Step 2. You have the option to enter the Gateway EUI either in auto or manual mode . In the auto configuration mode it will use mac id to generate the gateway eui . Please follow steps 3a-3b to select auto configuration mode and steps 4a-4d to configure the eui in manual mode

Step 3a. Select the auto configuration mode and click ok.

Loragatewayimage 12.png

Step 3b. Gateway eui will be displayed on the screen. Please store the gateway eui for later use . Click ok to move to next step.

Loragatewayimage 13.png

Step 4a. Select the Manual configuration mode and click ok .

Loragatewayimage 12a.png

Step 4b. Enter the gateway eui and click ok to continue further.

Loragatewayimage 13a.png

Step 4c. Message will be displayed to show the entered value of gateway eui. If it is correct then click yes to continue further. Otherwise click No to enter the new value.

Loragatewayimage 13b.png

Step 4d. Gateway id configured message will appear on the screen . Click ok to move to next configuration.

Loragatewayimage 13c.png


6.2.3. Server address and port configuration[edit source]

Step 1. Now we have to configure the server details. Select server configuration and Click ok to proceed further.

Loragatewayimage 14.png

Step 2. Server address for chirpstack is localhost and it uses port number 1700 for up/down. If the displayed values is matching then click back to move next step. Otherwise follow steps 3a-3m to modify the details of local host.

Loragatewayimage 15.png

Step 3a. To modify the server host name , please select hostname and click ok .

Loragatewayimage 15a.png

Step 3b. Enter the server address as local host and then click ok.

Loragatewayimage 15b.png

Step 3c. If the displayed value of hostname is correct then click ok else click back and re-enter the value.

Loragatewayimage 15c.png

Step 3d. confirmation message will be displayed. Click ok to proceed further.

Loragatewayimage 15d.png

Step 3e. To modify the port up value , please select server port up and click ok .

Loragatewayimage 15e.png

Step 3f. Enter the port up value as 1700 and then click ok.

Loragatewayimage 15f.png

Step 3g. If the displayed value of server port up is correct then click ok else click back and re-enter the value.

Loragatewayimage 15g.png

Step 3h. confirmation message will be displayed. Click ok to proceed further.

Loragatewayimage 15h.png

Step 3i.' To modify the port down value , please select server port down and click ok .

Loragatewayimage 15i.png

Step 3j. Enter the port down value as 1700 and then click ok.

Loragatewayimage 15j.png

Step 3k. If the displayed value of server port down is correct then click ok else click back and re-enter the value.

Loragatewayimage 15k.png

Step 3l. Confirmation message will be displayed. Click ok to proceed further.

Loragatewayimage 15l.png

Step 3m. Chirpstack hostname, port up/down is configured . Click back to proceed to move to next step

Loragatewayimage 15m.png


6.2.4. Communication mode configuration[edit source]

Step 1. Select Communication mode from the menu and click ok to proceed further.

Loragatewayimage 16.png

Step 2a. To use LAN , you have to select communication mode as lan from the menu and click ok to proceed further.

Loragatewayimage 17.png

Step 20b. To use wifi, you have to select communication mode as wifi from the menu and click ok to proceed further.

Loragatewayimage 18.png

6.2.5. Gateway ID configuration[edit source]

6.2.6. Save chirpstack configuration[edit source]

7. How to run the LoRaWAN gateway application on STM32MP157F-DK2[edit source]

Step 1. Read the ipaddress of the STM32MP157 discovery kit.

 minicom -D /dev/ttyACM0
root@stm32mp1:~#
root@stm32mp1:~# ifconfig