My nephew visited me some months ago and asked me for a wireless soil moisture sensor. At that time I was already aware of those groundbreaking new wireless technologies like LoRa, Sigfox and NB-IoT, but had no comprehensive experience so far. So I decided to
- get an overview of the competing technologies LoRa, Sigfox and NB-IoT,
- develop some low cost wireless nodes
- and get some practical experience.
This is the first part of my journey which covers LoRa. Before diving into the technical details let me talk about low power long range communication in general.The range of a wireless system mainly depends on these factors
- transmitter power
- receiver sensitivity (bandwidth)
- antenna gain
- radio environment (from line of sight to dense urban areas)
Many people are not aware that the radio environment has an extreme infkuence in range. There is easily a factor of 10 or morge in range comparing rural and urband sites. Datasheets often claim a range which can only be achieved under most favourite conditions and therefore disappointment is guaranteed. I usually follow these rules:
- use the highest transmitter power which is accpetable in regard to frequency spectrum regulations and power supply capability
- use antennas with as much gain as possible
- place the antennas as high as possible
- use a low bandwidth/datarate to increase sensitivity (in my application I usually transmit only a few bytes of data)
Before LoRa it was already possible to achieve long range at low power, but LoRa made this possible at very low cost by integrating the required signal processing into a single chip. I usually go with the module RFM95 by HopeRF which is about 5-6 Euros and add an ATmega328 controller. Here you can see me first attempt.
Software is either pure LoRa or LoRaWAN in conjunction the TheThingsNetwork. For LoRaWAN I chose MCCI Catena LMIC lib which works quite well and a low power lib to achieve a few Mikroamps during sleep times. This way I am running an experiemental node in my garden together with an SMT50.