Difference between revisions of "LoRaWAN / Riot-OS Setup"

From Embedded Lab Vienna for IoT & Security
Jump to navigation Jump to search
Line 44: Line 44:
=== Step 3 ===
=== Step 3 ===


Download Riot-OS and run Hello World on native
Download Riot-OS  


  git clone https://github.com/RIOT-OS/RIOT.git myRIOT
  git clone https://github.com/RIOT-OS/RIOT.git myRIOT
Build and run "Hello World" on native
cd myRIOT/examples/hello-world
make
make term


=== Step 4 ===
=== Step 4 ===

Revision as of 13:04, 16 October 2019

Summary

Setting up a LoRaWAN application with Riot-OS on a STM32 LoRa and Sigfox Discovery Kit

Requirements

  • Operating system: Ubuntu 18.04 bionic amd64
  • Packages: git


Description

Step 1

Install the following packages


sudo apt-get update
sudo apt-get install git 
                     openocd
                     gcc-multilib
                     build-essential
                     python-serial
                     libudev-dev
                     moserial

Step 2

Install the toolchain

Goto https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm and download

gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2

Move it to your home directory.

Uninstall old packages

sudo apt remove binutils-arm-none-eabi gcc-arm-none-eabi libnewlib-arm-none-eabi

Unzip the downloaded file

tar -xjvf gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2

Add the toolchain to your path

export PATH=$PATH:/home/(your user)/gcc-arm-none-eabi-7-2018-q2-update/bin/

Step 3

Download Riot-OS

git clone https://github.com/RIOT-OS/RIOT.git myRIOT

Step 4

Build and run "Hello World" on the STM32 LoRa and Sigfox kit.

First of attach the antenna to the board - never use it without the antenna! Connect the board to your computer via micro USB cable.

Stm32loraBoardUSBconn.jpg

make BOARD=b-l072z-lrwan1
make BOARD=b-l072z-lrwan1 flash term

You may also set the BOARD in the Makefile of the application.

Step 5

Create an application at the TTN (The Things Network).

Register at https://www.thethingsnetwork.org/ and login. Click on your user name and select "Console", and then click on "Applications" and then on "add application".

TTNaddApp.jpg

After filling in the name and description for your application click on "Add Application" (bottom right).

Register the board for your application by clicking on "Register device".

RegDevice.jpg

Enter a unique ID for your device and generate a device EUI. Then click on "Register".

The Device Overview shows all keys you need for your code.

DevOverview.jpg

Now you can copy each key and paste it in your Makefile (cf. Step 6).

Step 6

Build and run LoRaWAN Riot application.

cd myRIOT/examples/lorawan

Now edit the Makefile: insert device EUI, application EUI, and application key.

Makefile.jpg

Build the applictation and flash it to the board.

make BOARD=b-l072z-lrwan1
make BOARD=b-l072z-lrwan1 flash term

Goto to your TTN account and click on "Data" - there you can see the incoming data.

Used Hardware

STM32 LoRa and Sigfox Discovery kit

Courses

References