This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
nblocksstudio:n-pn [2019/06/21 12:12] faizan |
nblocksstudio:n-pn [2019/06/26 09:44] (current) |
||
---|---|---|---|
Line 2: | Line 2: | ||
**this page is work in progress** | **this page is work in progress** | ||
*<todo @Faizan #engineer:2019-06-19>create content to this board </todo> | *<todo @Faizan #engineer:2019-06-19>create content to this board </todo> | ||
- | *<todo >Update content to this board </todo> | + | *<todo #faizan:2019-06-24>Update content to this board </todo> |
*<todo >Use the published version photos </todo> | *<todo >Use the published version photos </todo> | ||
- | *<todo >Use n-LoRaWAN photo </todo | + | *<todo >Use n-LoRaWAN photo </todo> |
+ | *<todo @nikos>update pinout photo </todo> | ||
======n-PN LoRaWAN====== | ======n-PN LoRaWAN====== | ||
n-PN LoRaWAN has been designed to offer a practical and cost effective solution for users seeking to add LoRa connectivity to their projects with minimal previous experience in networking. The form factor is based on n-Blocks and is customized for [[http://www.nimbus.cit.ie/project/pervasive-nation/|Pervasive Nation]]. | n-PN LoRaWAN has been designed to offer a practical and cost effective solution for users seeking to add LoRa connectivity to their projects with minimal previous experience in networking. The form factor is based on n-Blocks and is customized for [[http://www.nimbus.cit.ie/project/pervasive-nation/|Pervasive Nation]]. | ||
Line 11: | Line 12: | ||
===== Overview===== | ===== Overview===== | ||
<poem> | <poem> | ||
- | [[nblocks:n-PN LoRaWAN|n-PN LoRaWAN]] board is a low-cost and easy-to-use development kit to quickly evaluate and start some development with LoRaWAN protocol using an ARM® 32-bit Cortex™-M and totally compatible with n-Best 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 STM32L0 the best fit for applications operating on batteries or supplied by energy harvesting. It is the ideal solution for users looking to design IoT projects with minimal previous experience in networking having a low power device. | + | [[nblocks:n-PN LoRaWAN|n-PN LoRaWAN]] board is a low-cost and easy-to-use development kit to quickly evaluate and start some development with LoRaWAN protocol using an ARM® 32-bit Cortex™-M and totally compatible with n-Best 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 users looking to design IoT projects with minimal previous experience in networking having a low power device. |
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. | 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. | ||
- | |||
</poem> | </poem> | ||
+ | \\ | ||
===== Murata CMWX1ZZABZ Features ===== | ===== Murata CMWX1ZZABZ Features ===== | ||
* Integrated TCXO with robust low-drift thermal characteristics provides an accurate clock source for the RF transceiver | * Integrated TCXO with robust low-drift thermal characteristics provides an accurate clock source for the RF transceiver | ||
Line 23: | Line 24: | ||
* Operating temperature: -40 + 85°C | * Operating temperature: -40 + 85°C | ||
* Typical applications: smart metering, wearables, tracking, M2M and internet of things (IoT) edge nodes | * Typical applications: smart metering, wearables, tracking, M2M and internet of things (IoT) edge nodes | ||
- | |||
- | |||
\\ | \\ | ||
===== STM32L082 MCU Features ==== | ===== STM32L082 MCU Features ==== | ||
<WRAP left 600px :en> | <WRAP left 600px :en> | ||
- | * 64 Kbytes of Flash, 8 Kbytes of RAM | + | * Up to 192 KB Flash, 20KB RAM |
* Low voltage 1.65 to 3.6 V | * Low voltage 1.65 to 3.6 V | ||
* Dynamic Voltage Scaling | * Dynamic Voltage Scaling | ||
Line 41: | Line 40: | ||
* Reset circuitry POR/PDR | * Reset circuitry POR/PDR | ||
* 16-bit ADC (hardware oversampling) | * 16-bit ADC (hardware oversampling) | ||
- | * Ultra-low-power mode with full RAM and low-power timer: 440 nA power consumption | + | * Ultra-safe, low-power BOR (brownout reset) with 5 selectable thresholds |
* LCD interface, comparator, DAC | * LCD interface, comparator, DAC | ||
- | * AES 128-bit | + | * Hardware Encryption Engine AES 128-bit |
\\ | \\ | ||
===== SX1276 Features ==== | ===== SX1276 Features ==== | ||
+ | <WRAP left 600px :en> | ||
+ | * 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 | ||
+ | </WRAP> | ||
+ | |||
+ | * 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 | ||
\\ | \\ | ||
===== Main Features of the Board ==== | ===== Main Features of the Board ==== | ||
Line 68: | Line 85: | ||
* M24LR64E-R STM dynamic NFC/RFID tag IC with a dual-interface, electrically erasable programmable memory (EEPROM) with I2C Interface | * M24LR64E-R STM dynamic NFC/RFID tag IC with a dual-interface, electrically erasable programmable memory (EEPROM) with I2C Interface | ||
* AN48836B Panasonic Hall sensor | * AN48836B Panasonic Hall sensor | ||
- | * Support of a wide choice of Integrated | + | * Support of a wide choice of Integrated Development Environments (IDEs) including IAR™, Keil®, GCC-based IDEs, Arm® Mbed™ |
- | * Development Environments (IDEs) including IAR™, Keil®, GCC-based IDEs, Arm® Mbed™ | + | |
* Full compatibility with n-Best Studio | * Full compatibility with n-Best Studio | ||
* Dimensions: 25x38mm | * Dimensions: 25x38mm | ||
\\ | \\ | ||
\\ | \\ | ||
- | |||
- | |||
- | |||
=====Board Pinout===== | =====Board Pinout===== | ||
Line 98: | Line 111: | ||
* The **Nimbus SDK** which contains the minimum files to start working with the n-PN 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). | * The **Nimbus SDK** which contains the minimum files to start working with the n-PN 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 /. | + | * 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 (Button folder for this example) and open MDK-ARM folder.\\ | * Open Any Example folder (Button folder for this example) and open MDK-ARM folder.\\ | ||
Line 104: | Line 117: | ||
* Open N-PN folder.\\ | * Open N-PN folder.\\ | ||
{{:nblocks:n-pn_gs2.png?700|}} | {{:nblocks:n-pn_gs2.png?700|}} | ||
- | * Open Button project (Double click on Button.uvprojx).\\ | + | * Open Button project (Double click on **Button.uvprojx**).\\ |
{{:nblocks:n-pn_gs3.png?700|}} | {{:nblocks:n-pn_gs3.png?700|}} | ||
* The project is ready to be tested.\\ | * The project is ready to be tested.\\ | ||
{{:nblocks:n-pn_gs4.png?700|}} | {{:nblocks:n-pn_gs4.png?700|}} | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
**NOTES:** | **NOTES:** | ||
- KEIL IDE (MDK) may not have the libraries installed for the microcontroller embedded in the n-PN 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. | - KEIL IDE (MDK) may not have the libraries installed for the microcontroller embedded in the n-PN 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. | ||
Line 135: | Line 138: | ||
\\ | \\ | ||
- | |||
===Firmware Structure=== | ===Firmware Structure=== | ||
* In Keil a project is structured as shown below:\\ | * In Keil a project is structured as shown below:\\ | ||
Line 149: | Line 151: | ||
* 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. | * 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. | ||
- | \\ | ||
\\ | \\ | ||
<fs large>**NOTE: A wire or U.FL-R antenna must be connected.**</fs> | <fs large>**NOTE: A wire or U.FL-R antenna must be connected.**</fs> | ||
- | |||
- | \\ | ||
\\ | \\ | ||
+ | =====Examples===== | ||
+ | * Open Temperature_Humidity example folder and open MDK-ARM folder inside it | ||
+ | * Open N-PN folder | ||
+ | * Open Temperature_Humidity project (Double click on **Temperature_Humidity.uvprojx**) | ||
- | + | This simple example shows how to transmit a package using LoRaWAN protocol. A new relative humidity and temperature value will be read every one minute and its value will be stored in a package which it will be sent to the Pervasive Nation LoRaWAN server. The counter will be incremented as well.\\ | |
+ | |||
+ | <WRAP centeralign>{{:nblocks:n-pn_ex.png?500|}}</WRAP> | ||
\\ | \\ | ||
\\ | \\ | ||
- | |||
- | |||
- | |||
- | |||
- | |||
=====Gallery===== | =====Gallery===== | ||