Docs

You are here:
Getting started with the RCM-05-KIT

Introduction

RCM-05-KIT is a convenient development platform to get started with the RCM-05 radio module.

Overview of hardware

The RCM-05-KIT consists of 3 boards:

  • the battery and sensors base board
  • the ST NUCLEO-L479RG board with the STM32L4 family microcontroller (application MCU)
  • the RCM-05 module board

In addition, the kit may be equipped with an e-paper display board.

rcm-05-kit_block_diagram.png

Power supply

The RCM-05-KIT can be powered from the mini-USB connector, available on the middle NUCLEO-L479RG board or from 3 AA batteries, available on the bottom base board. The power supply can be selected (or switched off) using the 3-way switch mounted on the bottom base board.

The bottom base board is equipped with 3 possible voltage converters:

  • LDO
  • buck-boost converter
  • buck converter

They output 3.3 volts to the middle (NUCLEO) and upper (RCM-05) boards. The voltage conveters are selectable through on-board jumpers.

On-board sensors

The bottom board includes two additional sensors, connected to the STM32L479RG microcontroller via the I2C (I2C1) bus:

  • the SHT32 temperature and humidity sensors
  • the LIS2DH12 accelerometer

Demo software

This chapter documents the demo software shipped with the RCM-05-KIT.

Downloading the software

The software is available for the NUCLEO-L479RG board and PC in the form of a C/C++ source code as well as a pre-build binaries. The software can be built using free GNU build tools. We support Windows and Linux (Debian/Ubuntu).

The details on how to download the software are available on demand.

Essential information about the demo software

The job of the demo software is to demonstrate how to develop applications for the RCM-05 module using the RCM Hub API library . The demo software presents a simple application, in which several field devices connect to the gateway and send temperature and humidity values.

Picture below illustrates this application:

rcmhub_topology.png

Now you have two options. You can run the application code:

  • directly on the STM32L479RG MCU on the NUCLEO-L479RG
  • on the PC

If you run the code on the MCU, you just build the application code, flash it using ST-Link programming feature on-board of NUCLEO-L479RG and you're done.

If you run the code on PC, you have to allow the PC to talk directly to the RCM module. This can be achieved by programming the STM32L479RG MCU with a special 'transparent' code. This code simply forwards all data from one serial port to another (USART1 <-> USART2).

Picture below illustrates these concepts:

rcm-05-kit_code_run_options.png

Building the software

In order to build the software for the NUCLEO-L479RG board you need an arm-none-eabi-gcc toolchain. For the PC software you need a basic GCC compiler. You will also need GNU Make (version 4.1 or higher) and a couple of standard linux utilities.

Preparing the tools for Windows

The easiest way to build the software is to download this package containing the compilers for PC and ARM Cortex platforms and all required utilities:

Unpack the contents of the zip file into a folder of your choice. Please note that the destination folder name shall not contain white characters. It is alse recommended to keep the folder path reasonably short.

Preparing the tools for Debian/Ubuntu

To build the software for PC all you need is the build essentials package. You can install it by issuing a command in terminal:

sudo apt-get install build-essentials

Source package contents

The software package you've downloaded should contain at least these folders:

  • components - this contains all the necessary software components (libraries) required to build the demo applications
  • examples - contains the RCM API examples for C (rcm) and C++ (rcmpp) illustrating each of the functionalities of the library in isolation
  • rcm-05-kit-demo - the demo project demonstrating a simple application, in which several sensors communicate with a gateway
  • rcm-05-kit-transparent - the code for the STM32L4 MCU to make it a transparent USART connection (see above)

Configuring the rcm-05-kit-demo project

To configure the project, open the Makefile. On top you will see two definitions:

TARGET_DEVICE

Setting this to stm32l476rgt6 will build the code for the STM32L479RG MCU

TARGET_DEVICE = stm32l476rgt6

Setting this to x86 will build the code for the PC

TARGET_DEVICE = x86

RCM_ROLE

Set this to choose the role of the device:

  • 0 - gateway
  • 1 - field device that can route packets (router)
  • 2 - field device that can't route packets but can sleep (end-device)

If you don't want to change these definitions in the file, you can always override them during the build process.

Building the software on Windows

Let's assume that the embeshell build tools are located in c: folder and the contents of the source package were unpacked to c:-05-kit-getting-started folder.

To build the rcm-05-kit-demo project run the system console (cmd.exe) and navigate to the rcm-05-kit-demo folder. Next run the embeshell.bat file located in the tools folder:

cd c:\embetech\rcm-05-kit-getting-started
call c:\embetech\tools\embeshell.bat

This will set up all the necessary paths in a local environment variables (these changes will vanish when you close the console window).

Now all you have to do is give the command to build

make all

This will produce:

  • rcm-05-kit-demo.exe if you build for PC/Windows
  • rcm-05-kit-demo.elf if you build for PC/Linux
  • rcm-05-kit-demo.elf rcm-05-kit-demo.bin rcm-05-kit-demo.hex if you build for STM32L4 MCU

To clean up the build outputs use:

make clean

On rare occasions, if your build process fails for unknown reasons, use this to start everything from scratch

make rebuild-cache

Running the software

Running the software on STM32L4 MCU

To run the previously built software on the STM32L479 MCU you have to flash it using ST-Link. You can do that typing in the console:

make flash

Running the software on STM32L4 MCU

To run the demo code on PC, you have to first build the rcm-05-kit-transparent application and flash the STM32L479 MCU it using ST-Link. You can do that typing in the console (in the rcm-05-kit-transparent folder):

make all
make flash

After that go to the rcm-05-kit-demo folder and run the produced executable.

Go to Top