User Tools

Site Tools


nblocks:n-pro-40

n-PRO-40

n-PRO-40

n-pro-40-09.jpg

n-PRO-40

License GPL 2.0
Status Tested
Buy at:
Categories
Hardware repo Bitbucket
Firmware repo

n-PRO-40 has been designed to offer cost effective solution for users seeking to add LoRa connectivity to their projects with minimal previous experience in networking. This board from the n-Blocks family is based on n-Blocks PRO form factor.

Overview

n-PRO-40 board is a low-cost and easy-to-use development kit for quick evaluation and to start some development with LoRaWAN protocol. It uses an ARM® 32-bit Cortex™-M and is totally compatible with n-Blocks ecosystem. It is based on Murata CMWX1ZZABZ LoRa module and also features STM32L082 microcontroller. The exclusive combination of an Arm® Cortex®-M0+ core and STM32 ultra-low-power features, makes the STM32L082 the best fit for applications operating on batteries or supplied by energy harvesting. It is the ideal solution for the users having no or little experience of networking to design Ultra Low-power IoT projects.

Communication with the module can be achieved via UART, SPI, or I2C peripheral interfaces. GPIOs provide plenty of flexibility for connecting sensors, switches and status LEDs, and the module is powered from a 1.6 to 3.6 VDC supply.


Murata CMWX1ZZABZ Features

  • Integrated TCXO with robust low-drift thermal characteristics provides an accurate clock source for the RF transceiver
  • Pre-certified radio regulatory approvals for operating in the 868 and 915MHz industrial, scientific and medical (ISM) spectrum in most geographical regions of the world
  • MCU includes 192kB Flash and 20kB RAM
  • Normal output power is +14dBm but a PA boost function can be selected to increase RF output to + 20dBm for long-range applications
  • Operating temperature: -40 + 85°C
  • Typical applications: smart metering, wearables, tracking, M2M and internet of things (IoT) edge nodes


STM32L082 MCU Features

  • Up to 192 KB Flash, 20KB RAM
  • Low voltage 1.65 to 3.6 V
  • Dynamic Voltage Scaling
  • 5 clock sources
  • Advanced RTC w/ calibration
  • Multiple USART, SPI, I2C
  • Multiple 16-bit timers
  • 2 watchdogs
  • Program Voltage Detector
  • Reset circuitry POR/PDR
  • 16-bit ADC (hardware oversampling)
  • Ultra-safe, low-power BOR (brownout reset) with 5 selectable thresholds
  • LCD interface, comparator, DAC
  • Hardware Encryption Engine AES 128-bit


SX1276 Features

  • LoRa Modem
  • 168dB maximum link budget
  • +20dBm - 100 mW constant RF output vs. V supply
  • +14dBm high efficiency PA
  • Programmable bit rate up to 300kbps
  • High sensitivity: down to -148dBm
  • Excellent blocking immunity
  • Low RX current of 9.9mA, 200nA register retention
  • Fully integrated synthesizer with a resolution of 61Hz
  • FSK, GFSK, MSK, GMSK, LoRa and OOK modulation
  • Built-in bit synchronizer for clock recovery
  • Preamble detection
  • 127dB Dynamic Range RSSI
  • Automatic RF Sense and CAD with ultra-fast AFC
  • Packet engine up to 256 bytes with CRC
  • Built-in temperature sensor and low battery indicator


n-PRO-40 Features

  • CMWX1ZZABZ Murata LoRaWAN module with Semtech (SX1276) + STM (STM32L0)
  • 2 user LEDs
  • 1 user and 1 reset push-buttons
  • Board expansion connectors:
    • 15 GPIOs with alternative functionality
    • 4 ADC channels
    • NFC antenna capability.
    • SPI capability
    • I2C capability
    • UART capability
    • Power supply and JTAG connections
  • Different LoRaWAN antenna choices
  • M24LR64E-R STM dynamic NFC/RFID tag IC with a dual-interface
  • Electrically erasable programmable memory (EEPROM) with I2C Interface
  • Support of a wide choice of Integrated Development Environments (IDEs) including IAR™, Keil®, GCC-based IDEs, Arm® Mbed™
  • Full compatibility with n-Best Studio
  • Dimensions: 25x38mm



Board Pinout

n-PRO-40 is a HOST board with four Hirose DF30-series 60-pin low profile connectors at bottom side, following the n-Blocks PRO form factor.







Getting started

LoRaWAN Setup

To configure all the necessary tools to start working with the n-PRO-40 board, two main elements need to be downloaded by the user.

  • An Integrated development environment (IDE). Although the n-PRO-40 board can support a wide variety of IDEs to work with, KEIL environment can be chosen for two main reasons:
    1. STM provides all the necessary LoRaWAN protocol drivers for the microcontroller embedded in the n-PRO-40 board for this IDE.
    2. KEIL IDE (MDK Version 5) is free for STM32F0 and STM32L0 microcontrollers and due to the n-PRO-40 board has an STM32L0 microcontroller, we are allowed to activate the license for this software environment (follow the instructions here).
  • The Nimbus SDK which contains the minimum files to start working with the n-PRO-40 board as well as some basic examples that the user can use as templates (Nimbus SDK is based on STM32CubeExpansion_LRWAN_V1.1.4 and can be found in the next repository: https://bitbucket.org/nimbus_it/pn_lora_node).
  • After installing KEIL (MDK) IDE(and the license activated) and downloading the Nimbus SDK, there are several basics examples (using LoRaWAN technology) which the user can start working with. The examples can be found following the path: LoRaWAN_Examples / STM32CubeExpansion_LRWAN_V1.1.4 / Projects / Multi / Applications / LoRa /.
  • Open Any Example folder (Temperature_Humidity folder for this example) and open MDK-ARM folder.

n-pro-40-sc1.jpg

  • Open N-PN folder.

n-pro-40-sc2.jpg

  • Open Temperature_Humidity project (Double click on Temperature_Humidity.uvprojx).

n-pro-40-sc3.jpg

  • The project is ready to be tested.

n-pro-40-sc4.jpg

NOTES:

  1. KEIL IDE (MDK) may not have the libraries installed for the microcontroller embedded in the n-PRO-40 board, so a pop-up window will appear asking us to install those libraries. Just follow the instructions to install them up. You may reset your computer after the installation.
  2. If we double click on Button.uvprojx (a project file) and Windows does not recognise the extension file, just choose KEIL (MDK).

Integrated Development Environment (IDE)

As stated, KEIL IDE (MDK) was chosen, this section explains the minimum configuration to improve our work flow.

  • Click on Options for Target…
  • In Debug tab, make sure to use the right programmer (mostly ST-Link Debugger).

  • In Debug tab, Click on Settings
  • Make sure under Reset is chosen in Connect (Debug tab).

  • In Flash Download tab, make sure that Program, Verify and Reset and Run are selected.


Firmware Structure

  • In Keil a project is structured as shown below:

  • The main folders are explained below:
    • n-PN_Board: The b-l072z-lrwan1.c file defines all the pinout of the n-PN board.
    • Projects/Application: The main.c file for the application is placed into this folder.
    • N-PN/Sensors: The drivers for the external sensors embedded on n-PN board are placed in this folder.
  • Keil IDE does not show the header files until the project is compiled, once the project is compiled, the header files can be found under the function files (clicking on the cross sign next to the function file).
  • Another important file is the header file called Commissioning.h which can be found under the main.c file. This header file contains the necessary parameters to configure your own LoRaWAN network: LORAWAN_DEVICE_EUI, LORAWAN_APPLICATION_EUI and LORAWAN_APPLICATION_KEY.



nblocks/n-pro-40.txt · Last modified: 2020/06/02 12:33 by engineer