This guide will instruct you to create a DIY LoRaWAN nodes using RAK module.

Step 1: To purchase a RAK module.

  • In this guide, we focus on RAK3172 Evaluation Board.

Step 2: To install Arduino IDE

  • We assume you have basic knowledge how to use Arduino IDE.
  • Arduino IDE is free and well-known in IoT programming

Step 3: We will use the RAK module as a standalone device. We can do custom code in Arduino for a RAK module in standalone device mode.

  1. Open Arduino IDE and go to File > Preferences.

Arduino preferences

  1. To add the RAK3172-E to your Arduino Boards list, edit the Additional Board Manager URLs and click the icon, as shown in Figure 5.
Modifying Additional Board Manager URLs
  1. Copy the URL https://raw.githubusercontent.com/RAKWireless/RAKwireless-Arduino-BSP-Index/main/package_rakwireless.com_rui_index.json and paste it on the field, as shown in Figure 6. If there are other URLs already there, just add them on the next line. After adding the URL, click OK.
Add additional board manager URLs
  1. Restart the Arduino IDE.
  2. Open the Boards Manager from Tools Menu.
Opening Arduino boards manager
  1. Write RAK in the search bar, as shown in Figure 8. This will show the available RAKwireless module boards that you can add to your Arduino Board list. Select and install the latest version of the RAKwireless RUI STM32 Boards.

Installing RAKwireless RUI STM32 boards

  1. Once the BSP is installed, select Tools > Boards Manager > RAKWireless RUI STM32 Modules > WisDuo RAK3172 Evaluation Board. The RAK3172 Evaluation board uses RAK3172 WisDuo module.
Selecting RAK3172 Evaluation Board

Step 4: To compile and run an example code (LoRaWAN_OTAA) for LoRaWAN node

Step 5: You need to change the below information for your node

  • OTAA_BAND: This is the frequency plan for LoRaWAN in your country. The supported settings are
         RAK_REGION_EU433
         RAK_REGION_CN470
         RAK_REGION_RU864
         RAK_REGION_IN865
         RAK_REGION_EU868
         RAK_REGION_US915
         RAK_REGION_AU915
         RAK_REGION_KR920
         RAK_REGION_AS923
         RAK_REGION_AS923_2
         RAK_REGION_AS923_3
         RAK_REGION_AS923_4
  • OTAA_DEVEUI: This should be unique. You can copy on the label of the RAK module. This value will be used in later guide.
  • OTAA_APPEUI : You can leave this as all zeros. This is not used by Easy LoRaWAN Cloud
  • OTAA_APPKEY: You can put any value for this settings. This value will be used in later guide.

Step 6: Put in USB-C cable from your RAK module to your laptop, compile and run the board.

  • You should have CH340 driver installed in previous step.

Step 7: To configure your gateways and LoRaWAN server

Step 8: Open Serial Monitor in Arduino IDE to see the node joins LoRaWAN and send uplink packets.

Done.

5 1 vote
Article Rating
Subscribe
Notify of
guest
2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Kevin

Hi,
Do you have some guides to create a DIY LoRaWAN node using STM32 board?
Thanks a lot.

Want to explore LoRaWAN?

Subscribe Easy LoRaWAN Cloud to try all guides and visualize data from your LoRaWAN nodes.
Only 1 USD/month.