LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS LoRaMote USER GUIDE Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 1 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS Table of Contents Table of Contents .......................................................................................................................................... 2 Index of Figures ............................................................................................................................................ 2 1 Preamble ................................................................................................................................................ 3 2 Introduction ............................................................................................................................................ 3 3 Ordering Information .............................................................................................................................. 3 4 LoRaMote .............................................................................................................................................. 4 4.1 IMST WiMOD iM880A Module ...................................................................................................... 6 4.2 868 MHz ISM Band PCB Antenna ................................................................................................ 7 4.3 Hardware Details ........................................................................................................................... 8 4.3.1 3-Axis Accelerometer sensor MMA8451Q ................................................................................ 8 4.3.2 3-Axis Magnetometer sensor MAG3110 ................................................................................... 8 4.3.3 Altimeter, Thermometer and Pressure sensor MPL3115A2 ..................................................... 8 4.3.4 SAR proximity sensor SX9500 .................................................................................................. 9 4.3.5 GPS module UP501 .................................................................................................................. 9 4.3.6 IO Expander .............................................................................................................................. 9 4.3.7 EEPROM ................................................................................................................................... 9 5 LoRaMote Demo Software .................................................................................................................. 10 5.1 Updating the LoRaMote Firmware .............................................................................................. 10 5.1.1 Programming the LoRaMote through the JTAG connector .................................................... 10 5.1.2 Programming the LoRaMote through the USB-Bootloader .................................................... 13 5.2 Payload Format ........................................................................................................................... 17 5.3 PER Analysis............................................................................................................................... 18 6 WiMOD iM880A Energy profile ............................................................................................................ 19 Index of Figures Figure 1: LoRaMote Hardware Description ................................................................................................... 4 Figure 2: LoRaMote Schematics ................................................................................................................... 5 Figure 3: WiMOD iM880A Module ................................................................................................................ 6 Figure 4: PCB Antenna ................................................................................................................................. 7 Figure 5: WiMOD Energy Profile ................................................................................................................. 19 Figure 6: Power Consumption Across Time ............................................................................................... 20 Figure 7: Power Consumption with successful Rx ...................................................................................... 21 Figure 8: Power Consumption at SF12 ....................................................................................................... 22 Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 2 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS 1 Preamble The LoRaMote is a demo platform intended to showcase the capability of the SX1272 and especially the LoRa modulation. The platform is fitted with various sensors which provide a variety of application. We strongly recommend for the user to read thoroughly the datasheet of the SX1272 and the LoRaMAC specification prior to start working with on the LoRaMote. 2 Introduction The SX1272 is a single-chip integrated circuit ideally suited for today's high performance ISM band RF applications. Added to the renowned, high-performance and low-cost, FSK / OOK RF transceiver modem, the SX1272 is also equipped with the LoRa proprietary transceiver modem. This advanced feature set, including a state of the art packet engine, greatly simplifies system design whilst the high level of integration reduces the external BOM to a handful of passive decoupling and matching components. It is intended for use as high-performance, long range, half-duplex bi-directional RF links, and where stable and constant RF performances are required over the full operating range of the device down to 1.8V. The SX1272 is intended for applications over a wide frequency range, including the 868 MHz European and the 902-928 MHz North American ISM bands. Coupled with a link budget in excess of 135 dB in FSK in excess of 155 dB in LoRa, the SX1272 really offers the possibility of two modems in one single package. The SX1272 complies with both ETSI and FCC regulatory requirements and is available in a 5x5 mm QFN 28 lead free package. The LoRaMote has been design to demonstrate the capability of the SX1272 and is targeted to any potential user who would like to get familiar with the LoRa Modulation and the LoRaMAC protocol. Without going into too many details, this document should guide the reader through the potential use of the LoRaMote as a standalone transmitter/receiver, or as part of a more complex IOT system. The LoRaMote being a battery powered device, a strong emphasis on the power consumption is described within the documents. 3 Ordering Information When ordering, please refer to the following parts numbers: SX1272LM1BAP LoRaMote 868 MHz version The LoRaMote can be ordered in various quantities, contact your local Semtech representative for more information. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 3 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS 4 LoRaMote The LoRaMote is targeted to be a development platform for the SX1272. This idea has been to group into a single, user friendly, battery powered handheld device. While not being a real turn-key solution, the use of the WiMOD iM880A allows the software developer to re-use all the development work into another final product. 868 MHz ISM PCB Antenna LED1, 2 and 3 SAR Controller WiMOD iM880A USB Connector EEPROM Power Switch Header Connector GPS IO expander JTAG Connector Accelerometer Altimeter Magnetometer Figure 1: LoRaMote Hardware Description Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 4 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS The schematic of the LoRaMote is displayed below. The full design details of the LoRaMote (schematic, layout, BOM) are available upon request. Figure 2: LoRaMote Schematics The LoRaMote can either be supplied with a 9V alkaline battery of through the USB connector. The internal circuitry is however powered at 3.3V. The power switch allows to user to select whether the board is powered from the USB or from the battery. When both a battery and the USB connector are power supplied, the switch is rendered useless and both positions will keep the LoRaMote active. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 5 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS 4.1 IMST WiMOD iM880A Module To simplify the possibility to re-use the core of the board into another system, the LoRaMote is fitted with a HW module from the company IMST (www.imst.com). This module is equipped with the SX1272 and a STM32L151Cx MCU from ST Microelectronics. As equipped with the SX1272, the modules operates in the license free 868 MHz ISM frequency band and includes all necessary passive components for wireless communication. The modules is therefore ideal for any user who would like to shorten the time to market of its final product This module, the WiMOD iM880A, is fully certified and is fitted with the STM32L151C8U6 (64 KB flash + 10 KB RAM) and the SX1272. The module is clocked through the internal RC oscillator and is coming at a very low cost. Figure 3: WiMOD iM880A Module Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 6 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS 4.2 868 MHz ISM Band PCB Antenna The LoRaMote is fitted with a breakable PCB antenna, this PCB antenna has been especially tailored to provide the maximum available power (20 dBm) in the 868 MHz ISM band. All the antenna design parameters are freely available upon request. Figure 4: PCB Antenna This antenna has been tested and a range of over 10km has been reached with the adequate setup. For more information on the LoRa parameters allowing achieving this range, please refer to the datasheet of the SX1272. It is also possible to remove the breakable antenna and connect a standard SMA connector. This can be especially needed to perform RF testing if another antenna is required. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 7 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS 4.3 Hardware Details As a handheld platform, the LoRaMote is mainly targeted to be battery powered and is thus equipped with a dedicated 9V standard alkaline battery holder. To simplify the development of software on the LoRaMote, the platform can also be powered directly from a USB port, thus removing the need for a battery while developing software. The LoRaMote is targeted to a wide range of applications and is therefore fitted with a variety of sensors which gives flexibility of use, and allows showcasing the IOT capabilities of the LoRaMote. It is important to notice that a header fitted with a wide variety of communication protocols is available on the board. This brings to the LoRaMote the flexibility of having an add-on sensor board carrying another complete set of devices. 4.3.1 3-Axis Accelerometer sensor MMA8451Q Made by Freescale, the MMA8451Q is a low-power, three-axis, capacitive accelerometer with 14 bits of resolution. This accelerometer is packed with embedded functions with flexible user programmable options, configurable to two interrupt pins. The device can be configured to generate inertial wakeup interrupt signals from any combination of the configurable embedded functions allowing the MMA8451Q to monitor events and remain in a low-power mode during periods of inactivity. The MMA841Q is accessible through the I2C bus at the address 0x1C. Please, consult Freescale website for more detailed information on the device. 4.3.2 3-Axis Magnetometer sensor MAG3110 The MAG3110 is a small, low-power digital 3-D magnetic sensor with a wide dynamic range to allow operation in PCBs with high extraneous magnetic fields. The MAG3110 magnetometer measures the three components of the local magnetic field which will be the sum of the geomagnetic field and the magnetic field created by components on the circuit board. The MAC3110 can be used in conjunction with a 3-axis accelerometer; orientation-independent accurate compass heading information can be achieved. The MAG3110 is accessible through the I2C bus at the address 0x0E. Please, consult Freescale website for more detailed information on the device. 4.3.3 Altimeter, Thermometer and Pressure sensor MPL3115A2 Freescale's MPL3115A2 provides highly precise pressure, temperature and altitude data with variable sampling rate capability. It has low-power consumption and requires zero data processing. The Xtrinsic MPL3115A2 pressure sensor smart features include digital output, two interrupts for auto-wake, minimum/maximum threshold detection and autonomous data acquisition. MCU usage is limited since the MPL3115A2 pressure sensor can process sensor data locally, reducing communications required with the host processor. The MPL3115A2 is accessible through the I2C bus at the address 0x60. Please, consult Freescale website for more detailed information on the device. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 8 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS 4.3.4 SAR proximity sensor SX9500 The SX9500 is a low-cost, very low power 4-channel SAR controller that can operate either as a proximity or button sensor. The SX9500 includes sophisticated on-chip auto-calibration circuitry to regularly perform sensitivity adjustments, maintaining peak performance over a wide variation of temperature, humidity and noise environments, providing simplified product development and enhanced performance. A dedicated transmit enable (TXEN) pin is available to synchronize capacitive measurements for applications that require synchronous detection, enabling very low supply current and high noise immunity by only measuring proximity when requested. The SX9500 is accessible through the I2C bus at the address 0x28. Please, consult Semtech website for more detailed information on the device. 4.3.5 GPS module UP501 The u-blox UP501 GPS receiver module with embedded GPS antenna enables high performance navigation in the most stringent applications and solid fix even in harsh GPS visibility environments. The UP501 is implemented with a Deep Sleep mode allowing reducing the power consumption while the positioning of the device is not mandatory. Connected to the UART of the WiMOD iM880A, the GPS module is providing directly the NMEA data from the GPS. Please, consult the u-blox website for more detailed information on the device. 4.3.6 IO Expander The LoRaMote is equipped with the Semtech SX1509 ultra low voltage IO- expander which allows connecting some of the less vital part of the circuitry such as spare IOs and LEDs. The IO expander is accessible through the I2C at the address 0x3E. Please, consult the Semtech website for more detailed information on the device. 4.3.7 EEPROM The LoRaMote is also equipped with a Microchip 24AA1287 EEPROM which can hold up to 128 Kbit (16K x 8) of data. The EEPROM is accessible Through the I2C at the address 0xA8. Please, consult the Microchip website for more detailed information on the device. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 9 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS 5 LoRaMote Demo Software The LoRaMote is normally delivered fully programmed and is ready to be used. While the current software is still being worked on, it is already an advanced snapshot of the LoRaMote capability. The current implementation is based around the LoRaMAC which takes all its values when operated in conjunction with LoRa Gateway and LoRa Server (a simple LoRa receiver can nevertheless be used to receive the LoRaMote packets). 5.1 Updating the LoRaMote Firmware Depending of the version of the software programmed in the LoRaMote, or if the software has been corrupted, it may be necessary to re-flash the platform using a JTAG programmer. 5.1.1 Programming the LoRaMote through the JTAG connector Semtech provide an updater which can operate either with the Raisonance R-Link or with the standard STM ST-Link. In both case, the process is the following. - Download the .zip file “LoRaMote-eu868-fw-Updater.zip” from the Semtech website or from the Semtech IoT server (iot.semtech.com) Make sure the platform is powered down Connect the debugger though the standard 20-pin header (se figure 1 for the location) Power-up the LoRaMote From the downloaded file, execute “update.bat” and the following window will appear. The user is here requested to enter the debugger used to program the LoRaMote: either an ST-Link or an R-Link. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 10 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS A second window will then be displayed with the option to select whether the code to be programmed must have the ADR (Adaptative Data Rate) enable or disable. In case of doubt, please select ADR OFF. This is the last point to which it is still possible to cancel the upload of a new firmware in the LoRaMote. The user is thus asked to press any key to continue or to press Ctrl-C to cancel the operation. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 11 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS Once the programming is complete, the following window should be displayed: At this stage, the firmware programmed is equipped with the USB-Bootloader and it should not be necessary to do this operation again unless the code is corrupted due to wrong manipulations. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 12 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS 5.1.2 Programming the LoRaMote through the USB-Bootloader By default, the firmware will boot and run directly the LoRaMac application. There is a small manipulation to perform to enter in USB-Bootloader mode and the process is the following: - Power down the LoRaMote Remove the LoRaMote battery Connect the USB cable to the mote Then, to enter in bootloader mode, it is necessary to have a finger pressed against the SAR sensor present on the back of the RF antenna. Please, refer to the picture below. SAR Sensor - The user can then power-up the mote through the side switch while keeping its finger pressed on the SAR sensor as shown below: The user should then see the three LEDs flashing at a one second interval which indicate the platform is now in bootloader mode. If the three LEDs are not flashing, then the process must be done again as there was an issue with the detection of the finger on the sensor antenna. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 13 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS The USB-Bootloader is based on the DfuSe Application provided by ST. The executable is located in the .zip file downloaded under: \LoRaMote-eu868-fw-Updater\DfuSe-3.0.0\BIN and it is necessary to launch the application “DfuSeDemo.exe”. Select Capacitive both Antenna options You can then click on “Choose” to select the file you want to program into the board. If necessary change the directory to “*\LoRaMote-eu868-fw-Updater\LoRaMote” Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 14 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS Once the file is selected, it is simply a matter of selecting the “Upgrade” button. Select Upgrade You should see a warning window from the Application but the user simply needs to click on “Yes. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 15 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS The DfuSe Application will start with erasing the FLASH memory and then it will upgrade the firmware. Once successful, the user needs to quit the application and reboot the board. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 16 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS 5.2 Payload Format The implemented software is based around the GPS and the MPL3115A2 and the packets payload is composed of 15 bytes. Of course, this payload is only given as an example and the user is free to change it or to add further information coming from other sensors: The current payload is composed of: Byte [0] > Value: 0x00 or 0x01 The first byte of the payload indicates the status of LED3 which is controllable from the LoRaServer. The server can remotely switch this LED ON or OFF. Byte [1] Byte [2] > > Value: Value: MSB of the MPL3115A2 measured atmospheric pressure LSB of the MPL3115A2 measured atmospheric pressure Byte 1 and 2 represent the atmospheric pressure in dPa (deci-Pascal) as it is measured through the MPL3115A2. This value can easily be divided by 10 to get the standard hPa value. Byte [3] Byte [4] > > Value: Value: MSB of the MPL3115A2 measured Temperature LSB of the MPL3115A2 measured Temperature Byte 3 and 4 represent the signed value of the temperature (x 100) as it is measured through the MPL3115A2. This value can easily be divided by 100 to get the temperature with decimal values Byte [5] Byte [6] > > Value: Value: MSB of the MPL3115A2 measured Altitude LSB of the MPL3115A2 measured Altitude Byte 5 and 6 represent the signed value of the altitude (x 10) as it is measured through the MPL3115A2. This value can easily be divided by 10 to get the altitude with decimal values. It is important to notice that the value returned is not calibrated. The MPL3115A2 returns the estimate altitude relative to the atmospheric pressure. Depending on the measurement condition, the value may be within plus or minus 100m. Please, refer to the component datasheet for more details. Byte [7] > Value: 0x00 to 0xFF The seventh byte of the payload indicates the status of the battery. The status of the battery is returned as described in the LoRaMAC specification: 0x00: The device is connected to an external power source 0x01 to 0xFE: The battery level, 1 being the minimum and 254 the maximum. This measurement is a linearized discharge function of the battery and is thus battery dependent 0xFF: The LoRaMote was not able to read the battery level Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 17 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS Byte [8] Byte [9] Byte [10] > > > Value: Value: Value: MSB of the UP501 received Latitude CSB of the UP501 received Latitude LSB of the UP501 received Latitude Byte 8, 9 and 10 represent the latitude as defined by the LoRaMAC specification. The north-south latitude is encoded using a signed 24 bit word where corresponds to 90° south (the South Pole) and -1 corresponds to 90° north (the North Pole). The equator corresponds to 0. Byte [11] Byte [12] Byte [13] > > > Value: Value: Value: MSB of the UP501 received Longitude CSB of the UP501 received Longitude LSB of the UP501 received Longitude Byte 8, 9 and 10 represent the longitude as defined by the LoRaMAC specification. The east-west longitude is encoded using a signed 24 bit word where corresponds to 180° west and - 1 corresponds to 180° east. The Greenwich meridian corresponds to 0. Byte [14] Byte [15] > > Value: Value: MSB of the UP501 received Altitude LSB of the UP501 received Altitude Byte 14 and 15 represent the value of the altitude (in meters) as it is received through the UP501. 5.3 PER Analysis It is also important to notice that some of the LoRaMAC protocol frames can be used to perform network testing such a PER test. A PER test can be perform thanks to the sequence number which is maintained between the LoRa Server and the LoRaMote. Every packet send from the LoRaMote is numbered and thus can be extracted from the LoRaMAC on the server side to perform the PER analysis. For more information on the sequence numbering or on any other aspect of the protocol, please refer to the LoRaMAC specifications Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 18 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS 6 WiMOD iM880A Energy profile The figure below shows the power consumption of the WiMOD iM880A module. The code is organized so that the MCU and all peripherals are in sleep mode most of the time. The purple line shows the current consumption of the WiMOD across a 100 ohm resistor (R40 on the schematics is a 0 ohm resistor which can be removed to allow measuring the current). Tx at SF12 Sensors Active RX Window 1 RX Window 2 Figure 5: WiMOD Energy Profile For details information on the LoRa protocol, it is advised to read the LoRaMAC specifications. The principal aspect of the protocol is the opening of two reception windows after each transmission. Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 19 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS The figure below highlights the timing of the events: The Rx Window 1 is opened exactly 1s after the end of the Tx The Rx Windows are 5 symbols at The RxDepending Window on 1 is for SF12. theopened SF, the Rx Windows are thus 5 symbols at changing. SF12. Tx duration is SF dependent Sensor power consumption (duration and power consumption is sensor dependent) Delay between Tx The Rx Window 2 is opened exactly 2s after the end of the Tx if no packet was received during the first Rx Window Figure 6: Power Consumption Across Time Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 20 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS The figure below highlights the power consumption of the WiMOD during a successful reception. Here the Rx Window is only opened once and its duration is longer as it is staying active for the length of the packet The Rx Window 2 is not present as a packet has been received Figure 7: Power Consumption with successful Rx Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 21 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS When the ADR (Adaptative Data Rate) is active, the Gateway can send the information to the Node to switch to a lower SF. Here, the power consumption is greatly reduced during the transmission and reception as the SF is much lower. The difference is transmission time, and thus power consumption, is greatly reduced as the SF goes lower The same goes for the Rx Windows Figure 8: Power Consumption at SF12 Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 22 of 23 www.semtech.com LoRaMote USER GUIDE WIRELESS, SENSING and TIMING PRODUCTS © Semtech 2014 All rights reserved. Reproduction in whole or in part is prohibited without the prior written consent of the copyright owner. The information presented in this document does not form part of any quotation or contract, is believed to be accurate and reliable and may be changed without notice. No liability will be accepted by the publisher for any consequence of its use. Publication thereof does not convey nor imply any license under patent or other industrial or intellectual property rights. Semtech assumes no responsibility or liability whatsoever for any failure or unexpected operation resulting from misuse, neglect improper installation, repair or improper handling or unusual physical or electrical stress including, but not limited to, exposure to parameters beyond the specified maximum ratings or operation outside the specified range. SEMTECH PRODUCTS ARE NOT DESIGNED, INTENDED, AUTHORIZED OR WARRANTED TO BE SUITABLE FOR USE IN LIFE-SUPPORT APPLICATIONS, DEVICES OR SYSTEMS OR OTHER CRITICAL APPLICATIONS. INCLUSION OF SEMTECH PRODUCTS IN SUCH APPLICATIONS IS UNDERSTOOD TO BE UNDERTAKEN SOLELY AT THE CUSTOMER’S OWN RISK. Should a customer purchase or use Semtech products for any such unauthorized application, the customer shall indemnify and hold Semtech and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs damages and attorney fees which could arise. Contact Information Semtech Corporation Wireless & Sensing Products Division 200 Flynn Road, Camarillo, CA 93012 Phone: (805) 498-2111 Fax: (805) 498-3804 E-mail: [email protected] [email protected] Internet: http://www.semtech.com Revision 2.0 – July 2014 ©2014 Semtech Corporation Page 23 of 23 www.semtech.com