STMicroelectronics STM32Cube Quick Start Manual

Page 1
Version 1.3 (May 27, 2019)
Quick Start Guide
STM32Cube function pack for IoT tracker node with LoRa connectivity, GNSS and sensors
(FP-ATR-LORA1)
Page 2
Quick Start Guide Contents
2
Hardware and Software overview
Setup & Demo Examples Documents & Related Resources
STM32 Open Development Environment: Overview
Page 3
3
Hardware Overview
FP-ATR-LORA1: STM32Cube function pack for IoT tracker node with LoRa connectivity, GNSS and sensors is available for two platforms: modular and integrated.
X-NUCLEO-IKS01A2
LSM6DSL
LPS22HB
HTS221
X-NUCLEO-GNSS1A1
LIV-3F (TESEO III)
Page 4
B-L072Z-LRWAN1 discovery kit
Hardware overview
B-L072Z-LRWAN1 hardware description
The B-L072Z-LRWAN1 Discovery kit embeds the CMWX1ZZABZ-091
LoRa®/Sigfox™ module (Murata). This Discovery kit allows users to develop easily applications with the STM32L072CZ and the LoRa®/Sigfox™ RF
connectivity in one single module.
The B-L072Z-LRWAN1 Discovery kit has the full set of features available in the
STM32L0 series and offers ultra-low-power and LoRa®/Sigfox™ RF features. The B-L072Z-LRWAN1
Discovery kit is a low-cost and easy-to-use development kit to quickly evaluate
and start a development with an STM32L072CZ microcontroller.
The B-L072Z-LRWAN1 Discovery kit includes LoRa®/Sigfox™ RF interface,
LEDs, pushbuttons, antenna, Arduino™ Uno V3 connectors, USB 2.0 FS
connector in Micro-B format.
The integrated ST-LINK/V2-1 provides an embedded in-circuit debugger and
programmer for the STM32L0 MCUs.
The LoRaWAN™ stack is certified class A and C compliant. It is available inside
the I-CUBE-LRWAN firmware package.The Sigfox™ stack is RCZ1, RCZ2, and RCZ4 certified.
It is available inside the X-CUBE-SFOX expansion package.
To help users setting up a complete node (LoRaWAN™, Sigfox™, or both), the
B-L072Z-LRWAN1 Discovery kit comes with the STM32 comprehensive free software libraries and examples available with the STM32Cube package, as well as a direct access to the Arm® Mbed Enabled™ resources at the http://mbed.org website.
4
Latest info available
at www.st.com
B-L072Z-LRWAN1
Page 5
Tee
GNSS expansion board
Hardware Overview
5
X-NUCLEO-GNSS1A1 Hardware Description
The X-NUCLEO-GNSS1A1 expansion board is based on the Teseo-
LIV3F tiny GNSS module.
It represents an affordable, easy-to-use, global navigation satellite
system (GNSS) module, embedding a Teseo III single die standalone positioning receiver IC, usable in different configurations in your STM32 Nucleo project.
The Teseo-LIV3F is a compact (9.7x10.1 mm) module that provides
superior accuracy thanks to the on-board 26 MHz temperature compensated crystal oscillator (TCXO) and a reduced time-to-first fix (TTFF) with its dedicated 32 KHz real-time clock (RTC) oscillator.
The Teseo-LIV3F module runs complete GNSS firmware (X-CUBE-
GNSS1) to perform all GNSS operations including acquisition, tracking, navigation and data output without external memory support.
The X-NUCLEO-GNSS1A1 expansion board is compatible with the
Arduino™ UNO R3 connector and the ST morpho connector, so it
can be plugged to the STM32 Nucleo development board and stacked with additional STM32 Nucleo expansion boards.
Key Products on board
Teseo-LIV3F: Single die standalone positioning receiver IC
working on multiple constellations, 10x10mm compact size. 26MHz Temperature Compensated Crystal Oscillator (TCXO)
and reduced Time To First Fix (TTFF) relying to a 32KHz Real Time Clock (RTC) oscillator for superior accuracy.
Latest info available at www.st.com
X-NUCLEO-GNSS1A1
Teseo-LIV3F
Battery holder
Antenna connector
Arduino UNO R3 Connectors
Page 6
LPS22HB
HTS221
Key Product on board
LSM6DSL
MEMS 3D accelerometer (±2/±4/±8/±16 g) + 3D gyroscope (±125/±245/±500/±1000/±2000 dps)
LSM303AGR
MEMS 3D magnetometer (±50 gauss) + MEMS 3D accelerometer (±2/±4/±8/±16 g)
LPS22HB
MEMS pressure sensor, 260-1260 hPa absolute digital output barometer
HTS221
Capacitive digital relative humidity and temperature
DIL 24-pin
Socket available for additional MEMS adapters and other sensors (UV index)
DIL 24-pin
Motion MEMS and environmental sensors expansion board
Hardware Overview
6
X-NUCLEO-IKS01A2 Hardware Description
The X-NUCLEO-IKS01A2 is a motion MEMS and
environmental sensor evaluation board system.
It is compatible with the Arduino UNO R3 connector
layout, and is designed around ST’s latest sensors.
Arduino UNO R3 connector
ST morpho connector**
** Connector for the STM32 Nucleo Board
LSM6DSL LSM303AGR
Latest info available at www.st.com
X-NUCLEO-IKS01A2
Page 7
STEVAL-STRKT01 evaluation board
Hardware Overview
7
STEVAL-STRKT01 Hardware Description
The STEVAL-STRKT01 LoRa® IoT tracker is
designed and optimized to implement the latest technologies in IoTtracker applications such as asset, people and animal tracking as well as fleet management. Thanks to the STM32L072CZ embedded in the CMWX1ZZABZ-091 LoRa® module (by Murata), it allows acquiring position from Teseo­LIV3F GNSS module and monitoring motion (LIS2DW12) and environmental (HTS221 and LPS22HB) sensors. The board also transmits and receives data to and from the cloud over a LoRaWAN™ network. The STEVAL-STRKT01 is a LiPo battery operated solution and implements low power strategies thanks to an enhanced power/battery management design, based on the STBC02 battery charger and the ST1PS01 step-down converter, to ensure long battery autonomy. The STUSB1600A addresses 5 V USB Type-C port management and implements high voltage protection features against short-circuits to VBUS up to 28 V.
Latest info available at www.st.com
STEVAL-STRKT01
http://www.st.com/IoTLoraTracker
Page 8
Key Products on board
CMWX1ZZABZ
LoRaTM module based on high-performance and
low power ARM® Cortex®-M0 32-bit STM32L072 and SX1276 Semtech LoRa transceiver
TESEO-LIV3F
GNSS standalone module based on TESEO III
STBC02
Li-Ion linear battery charger with LDO, load
switches and reset generator
ST1PS01EJR
400mA Nano-Quiescent™ Synchronous step-down
converter with voltage selection and power good
STUSB1600A
USB Type-C controller
LIS2DW12, HTS221, LPS22HB
Motion and environmental sensors
M95M02-DR
EEPROM
STEVAL-STRKT01 evaluation board
Hardware Overview
8
Page 9
FP-ATR-LORA1
Software Overview
9
FP-ATR-LORA1 Software Description
FP-ATR-LORA1 is an STM32Cube function pack which lets you read data from environmental and motion sensors, retrieve geo­position from GNSS and send collected data via LoRaWAN
connectivity.
The package implements low power profiles and related transitions to ensure long battery autonomy. This software together with the suggested combination of STM32 and ST devices can be used, for example, to develop asset tracking, fleet management and pet/child tracking applications. The software runs on the STM32 microcontroller and includes drivers for the LoRa radio, Teseo-LIV3F GNSS module, the motion and environmental sensors, and the power management.
Key features
Complete firmware to connect an IoT node to a LoRaWAN network, sending geo-position coming from GNSS and environmental and sensor data.
Middleware library supporting LoRaWAN specification
1.0.2 class A and USB 2.0.
Teseo-LIV3F based GNSS positioning and geofencing
LoRaWAN keys provisioning via USB
Power/Battery Management with low-power operating
modes
Datalogging on external EEPROM for STEVAL-STRKT01 and on internal RAM for B-L072Z-LRWAN1, with data download over-the-air or off-line via USB
Sample implementation available for STEVAL-STRKT01
evaluation board and for X-NUCLEO-GNSS1A1 and X­NUCLEO-IKS01A2 expansion boards connected to a B­L072Z-LRWAN1 development board
Overall Software Architecture
FP-ATR-LORA1
Latest info available at www.st.com
Page 10
Quick Start Guide Contents
10
Setup & Application Examples Documents & Related Resources
STM32 Open Development Environment: Overview
Page 11
Setup & Applications Examples
HW prerequisites for STM32 Nucleo (1/2)
11
When using the LoRa IoT Tracker:
1 x LoRa IoT Tracker (STEVAL-STRKT01)
1 x Type-C cable
1 x ST-LINK/NUCLEO BOARD
Alternatively, when using the Discovery Kit LoRa:
1x GNSS STM32 Nucleo expansion board based on
Teseo-LIV3F module (X-NUCLEO-GNSS1A1) with GPS antenna
1x motion mems and environmental sensors expansion board (X-NUCLEO-IKS01A2)
1x STM32L0 Discovery kit LoRa (B-L072Z-LRWAN1)
LoRa gateway (Multitech Conduit)
Laptop/PC with Windows 7, 8 or 10
1 x micro USB cable, one Type-C USB cable and a Type-A
to Type-C USB adapter is included in the box
B-L072Z-LRWAN1
(STM32L0 Discovery Kit
LoRa)
MicroUSB Cable
X-NUCLEO-GNSS1A1
X-NUCLEO-IKS01A2
Multitech Conduit
LoRa gateway
STEVAL-STRKT01
(LoRa IoT Tracker)
ST-LINK/NUCLEO BOARD
Page 12
FP-ATR-LORA1 hardware setup
on STM32 discovery and Expansion boards
12
X-NUCLEO-GNSS1A1
X-NUCLEO-IKS01A2
B-L072Z-LRWAN1
GNSS
MEMS
+
+
Page 13
FP-ATR-LORA1 hardware setup
on STM32 discovery and Expansion boards
On the X-NUCLEO-GNSS1A1 expansion board
the following jumpers must be open: J3, J5, J6, J7, J8 and J10.
the following jumpers must be closed: J2, J4, J9, J11, J12, J13, J14 and J15.
On the X-NUCLEO-IKS01A2 expansion board, the solder bridge
SB25 must be unsoldered.
On the B-L072Z-LRWAN1 discovery board, the solder bridges SB32
and SB35 must be unsoldered.
13
Important hardware setup information
Page 14
FP-ATR-LORA1 hardware setup
on STEVAL-STRKT01
14
STEVAL-STRKT01 system start up
Connect LoRaAntenna into J101 and assembly the board as follow
Power on
Push SW400 (more than 1.25s)
Or plug USB cable
SW400
Page 15
FP-ATR-LORA1 hardware setup
on STEVAL-STRKT01
15
STEVAL-STRKT01 system start-up
Programming procedure:
Use Nucleo board (e.g. NUCLEO-F401RE)
Connect CN4(SWD) to CN501 of STEVAL-STRKT01
(by 5 poles cable or by plugging directly on the STlink connector. (Pin1 CON4 of ST-LINKV2 has to be connected to Pin5 CON 501 of STEVAL-STRKT01).
Connect a USB A-to-TypeC adapter to the PC. Connect the typeC cable to the adapter.
Remove NUCLEO-F401RE CN2 jumpers
Connect the NUCLEO-F401RE BOARD to the PC
through a USB A-to-miniB cable.
Download the firmware (see next slide for details).
PIN1
Page 16
Setup & Application Examples
Software and Other prerequisites
16
STM32 ST-Link Utility
Download and install STSW-LINK004 from www.st.com
FP-ATR-LORA1
Download FP-ATR-LORA1 package from www.st.com
copy the .zip file content into a folder on your PC.
The package contains binaries and source code with project files for several IDEs (Keil,
IAR, System Workbench) for B-L072Z-LRWAN1 discovery kit or STEVAL-STRKT01
evaluation board
Serial line monitor, e.g. TeraTerm (https://ttssh2.osdn.jp/)
Free accounts on Loriot (https://www.loriot.io/) and Cayenne
(https://cayenne.mydevices.com) service providers
Page 17
FP-ATR-LORA1. Sample applications
Start coding in just a few minutes
17
Download & unpack
www.st.com
1
FP-ATR-LORA1
Select part number:
2
3
4
5
6
Visualize results on serial interface
www.st.com/stm32ode-fp
Register on Loriot to obtain AppEUI and AppKey,
copy them in source code and recompile the
project according to the selected IDE
FP-ATR-LORA1 package structure
LoRa ,GNSS and USB 2.0 libs Asset_Tracker sample application;
pre-compiled binaries
Docs BSP, HAL and drivers
Select the project related to your hardware:
- B-L072Z-LRWAN1
Projects\B-L072Z-LRWAN1\Applications\LoRa\Asset_Tracker
- STEVAL-STRKT01
Projects\STEVAL-STRKT01\Applications\LoRa\Asset_Tracker
Page 18
18
Pre-compiled binary can be found at
B-L072Z-LRWAN1 discovery kit
Projects\B-L072Z-LRWAN1\Applications\LoRa\Asset_Tracker\Binary\mlm32l07x01.bin
STEVAL-STRKT01 evaluation board
Entire application FP-ATR-LORA1 for EU region (868MHz)
Projects\STEVAL-STRKT01\Applications\LoRa\Asset_Tracker\Binary\STEVAL_STRKT01_868.bin
Entire application FP-ATR-LORA1 for US region (915MHz) Projects\STEVAL-STRKT01\Applications\LoRa\Asset_Tracker\Binary\STEVAL_STRKT01_915.bin
To start the application, simply connect the board to your PC and drag&drop the binary on the folder dedicated to the STM32 device.
FP-ATR-LORA1: Step by step setup
Launch sample application. Use pre-compiled binaries
B-L072Z-LRWAN1 STEVAL-STRKT01
Page 19
19
FP-ATR-LORA1: Step by step setup
Launch sample application. Configure Serial Terminal
Open serial terminal then configure baud rate speed to 115200 (Setup Serial port in
TeraTerm).
Also set transmit delays to a value bigger than zero, like 10.
Page 20
20
FP-ATR-LORA1: Step by step setup
Launch sample application. Configure Serial Terminal
In Terminal configuration (Setup Terminal in TeraTerm) enable Local Echo and set
newlines to AUTO for Receive and CR+LF for Transmit.
Page 21
FP-ATR-LORA1: Step by step setup
Launch sample application
On first run, take note of the unique DevEUI string, which will be used
later.
AppEui and AppKey strings will be set later.
21
Page 22
FP-ATR-LORA1: Step by step setup
Launch sample application
Connect to the LoRa gateway by either serial interface (with settings 115200
N81) or web interface and take note of the device MAC address, which will be used later.
22
Page 23
FP-ATR-LORA1: Step by step setup
Create Loriot account
Register a free account on one of the Loriot servers at https://www.loriot.io
23
Page 24
FP-ATR-LORA1: Step by step setup
Loriot dashboard
24
Gateways
widget
Applications
widget
Page 25
FP-ATR-LORA1: Step by step setup
LoRa gateway setup (1/4)
From the dashboard, create a new network (see slide #26).
Enroll a new gateway by clicking on “Add gateway to Network” (see slide #27).
Select your gateway model from the list (suggested: Multitech Conduit).
Provide your gateway MAC address.
After gateway registration, a specific firmware needs to be installed on the
gateway.
To download and install the firmware, SSH connection to the gateway is
required and the gateway needs Internet access.
Follow the setup guide to understand how to install the firmware (see next
slide).
25
Page 26
FP-ATR-LORA1: Step by step setup
LoRa gateway setup (2/4)
26
Page 27
FP-ATR-LORA1: Step by step setup
LoRa gateway setup (3/4)
27
Page 28
FP-ATR-LORA1: Step by step setup
LoRa gateway setup (4/4)
Detailed installation instructions for each gateway model are provided by
clicking the “Documentation” button in the dashboard, and then under the “Setup guides” link.
28
Page 29
FP-ATR-LORA1: Step by step setup
Application and device setup
Create an application by clicking on the plus sign in the Applications
widget in the Loriot dashboard.
Locate the “Application ID” string and take note, this is the
“Application EUI” string.
Click on “output” and then select Cayenne from the list
(see slide #30).
Then click on “Manage devices” to enter the devices page.
Click on the “Enroll new device” button.
Enter the DevEUI string (see slide #21) to identify the device.
Click on the device name to open the “Device details” window
Click on “LoRaWAN parameters” in the left column and locate the
AppKey”.
29
Page 30
FP-ATR-LORA1: Step by step setup
Application output setup
30
Page 31
FP-ATR-LORA1: Step by step setup
Device page
31
Page 32
FP-ATR-LORA1: Step by step setup
Select B-L072-LRWAN1 or STEVAL-STRKT01 project
Set LoRa keys at runtime, avoiding project rebuild; the keys are stored
in the board’s EEPROM for subsequent use.
To do this, use the following commands on serial interface:
!deviceeui-xxxxxxxxxxxxxxxx to set Device EUI
!joineui-xxxxxxxxxxxxxxxx to set Application EUI
!appkey-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx to set Application Key
!ntwkkey-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx to set Network Key (usually
same as Application Key).
After that, restart the board with command !sysreset
32
IMPORTANT NOTE: All the above serial commands MUST be
called
Page 33
FP-ATR-LORA1: Step by step setup
Select B-L072-LRWAN1 or STEVAL-STRKT01 project
As an alternative, edit the project file to add the keys manually
Lorawan/App/inc/Commissioning.h in the project related to your hardware (B-L072Z-LRWAN1 or STEVAL-STRKT01)
Copy the AppEUI key after the #define LORAWAN_JOIN_EUI
Copy the AppKey after the #define LORAWAN_APP_KEY and #define
LORAWAN_NWK_KEY
Recompile the project and flash it.
33
Page 34
FP-ATR-LORA1: Step by step setup
Cayenne sign in
Create a new free account on Cayenne website at
https://cayenne.mydevices.com/cayenne/signup
34
Page 35
FP-ATR-LORA1: Step by step setup
Add new LoRa device (1/2)
Create a new device by clicking on “Add new…” and “Device”
Select device class LoRa / Loriot.
Browse the devices list and select “STM32 B-L072Z-LRWAN1”.
35
Page 36
FP-ATR-LORA1: Step by step setup
Add new LoRa device (2/2)
Enter DevEUI string
Select the Loriot server used for registration
Add Loriot AppID from “Application ID” in Loriot
dashboard
Add Loriot token which can be found by clicking
on “Access tokens” in Loriot dashboard
(see next slide)
The following video provides detailed instructions:
https://www.youtube.com/watch?v=AwFwQ4cVpIg
36
Page 37
FP-ATR-LORA1: Step by step setup
Add new LoRa device (2/2)
37
Page 38
FP-ATR-LORA1: Step by step setup
Run application
Trigger a LoRa message
send by either MEMS event
(shake the boards), by pushing user button or by timer.
Send environmental sensors
data, accelerometer axes and geo-position to LoRaWAN network.
Leave the board static to
switch to Low Power and Ultra Low Power states.
38
Page 39
FP-ATR-LORA1: Step by step setup
Display data on Cayenne dashboard
39
Page 40
Quick Start Guide Contents
40
Setup & Demo Examples Documents & Related Resources
STM32 Open Development Environment: Overview
Page 41
Documents & Related Resources
FP-ATR-LORA1:
DB3715: STM32Cube function pack for IoT tracker node with LoRa connectivity, GNSS and sensors – data brief
UM2487: Getting started with STM32Cube function pack for IoT tracker node with LoRa connectivity, GNSS and
sensors user manual
Software setup file
X-NUCLEO-GNSS1A1:
Gerber files, BOM, Schematic
DB3458: GNSS expansion board based on Teseo-LIV3F module for STM32 Nucleo – data brief
UM2327: Getting started with the X-NUCLEO-GNSS1A1 expansion board based on Teseo-LIV3F tiny GNSS module
for STM32 Nucleo – user manual
X-NUCLEO-IKS01A2:
Gerber files, BOM, Schematic
DB3009: Motion MEMS and environmental sensor expansion board for STM32 Nucleo data brief
UM2121: Getting started with the X-NUCLEO-IKS01A2 motion MEMS and environmental sensor expansion board for
STM32 Nucleo – user manual
41
All documents are available in the DESIGN tab of the related products webpage
Consult www.st.com for the complete list
Page 42
STM32 Open Development Environment
Fast, affordable Prototyping and Development
42
The STM32 Open Development Environment (ODE) consists of a set of stackable boards
and a modular open SW environment designed around the STM32 microcontroller family.
www.st.com/stm32ode
Function Packs
(FP)
STM32Cube
development software
STM32 Nucleo
expansion boards
(X-NUCLEO)
STM32 Nucleo
development boards
STM32Cube
expansion software
(X-CUBE)
Page 43
Power supply through USB or external source
Integrated debugging
and programming
ST-LINK probe
STM32 microcontroller
Complete product range
from ultra-low power to high-performance
ST morpho extension header
STM32 Nucleo
Development Boards (NUCLEO)
A comprehensive range of affordable development boards for all the STM32
microcontroller series, with unlimited unified expansion capabilities and integrated debugger/programmer functionality.
43
www.st.com/stm32nucleo
Arduino™ UNO R3 extension headers
Page 44
Move/ActuatePower InteractConnect
Sense
STM32 Nucleo
Expansion Boards (X-NUCLEO)
Boards with additional functionality that can be plugged directly on top of the STM32
Nucleo development board directly or stacked on another expansion board.
44
DIL24 support for
new devices
Motion MEMS sensors
Environmental sensors
www.st.com/x-nucleo
Example of STM32 expansion board (X-NUCLEO-IKS01A1)
Page 45
STM32 Open Development Environment
Software components
STM32Cube software (CUBE) - Aset
of free tools and embedded software bricks to enable fast and easy development on the STM32, including a Hardware Abstraction Layer and middleware bricks.
STM32Cube expansion software
(X-CUBE) - Expansion software provided
free for use with the STM32 Nucleo expansion board and fully compatible with the STM32Cube software framework. It provides abstracted access to expansion board functionality through high-level APIs and sample applications.
45
www.st.com/x-cube
Compatibility with multiple Development Environments - The STM32 Open Development
Environment is compatible with a number of IDEs including IAR EWARM, Keil MDK, and GCC-based environments. Users can choose from three IDEs from leading vendors, which are free of charge and deployed in close cooperation with ST. These include Eclipse-based IDEs such as Ac6 System Workbench for STM32 and the MDK-ARM environment.
Tools&IDEs
Applicationexamples
(e.g.basedonST OpenSoftwareX)
Hardware
SampleapplicationsApplications
IAREWARM,KeilMDK-ARM,GCC-basedIDEs
(e.g.Ac6System Workbenchfor STM32)
STM32CubeHardwareAbstractionLayer(HAL)
STM32Cube
middleware
Upperlevelmiddleware
(e.g.ST OpenSoftwareX)
Middleware
Hardware Abstraction
STM32Cubeexpansionmiddleware
STM32 Nucleo expansion boards (X-NUCLEO)
STM32 Nucleo developer boards
OPEN LICENSE MODELS: STM32Cube software and sample applications are covered by a
mix of fully open source BSD license and ST licenses with very permissive terms.
www.st.com/stm32cube
Page 46
STM32 Open Development Environment
Building block approach
46
The building blocks Your need Our answer
Move / Actuate
Connect
Power
Sense
Process
Inertial modules, magnetometer
Proximity, microphone
Pressure, temperature, humidity
Bluetooth LE, Sub-GHz radio
NFC, Wi-Fi, GNSS
Energy management & battery
General-purpose microcontrollers
Stepper motor driver
DC & BLDC motor driver
Audio amplifier
COLLECT
TRANSMIT
ACCESS
CREATE
POWER
PROCESS
Software
Secure microcontrollers
Touch controller
Operation Amplifier
Accelerometer, gyroscope
Translate
Industrial input / output
www.st.com/stm32ode
Loading...