LoRa in Lund

Abiro participates in the evaluation of sensor communication using LoRaWAN in Lund Open City Sensor Network.

During the current phase it’s all about evaluating the possibilities of the technology, but of course with potential commercialization in mind.

A few LoRaWAN characteristics:

  • Topology: star
  • Range (radius): urban 2-5 km, rural 15-20 km
  • Speed: 0.3 kbps to 50 kbps
  • Amount: pot. 1000s of nodes per gateway
  • Frequency: 868 or 915 MHz

We will be using LoPy from Pycom, that supports LoRa, WiFi and Bluetooth, and has lots of I/O ports for different types of sensors, so they are also applicable for many other applications. We will also soon get Pysense and Pytrack. With a waterproof IP67 case and a LiPo battery, LoPy can be installed in the field with no other equipment needed.

Evaluation setups

In the simple examples below the RGB LED was used to show real-time status, and more detailed information was read via USB and Telnet. Note the 1200 mAh LiPo batteries in the latter examples, that are charged via USB. That said, LoPy draws too much current to run on such a battery for more than a day (at the most). Hopefully there are ways to lower power consumption.

Measure distance

This “space monster” measures distance via ultrasound. Not 100% reliable, as timing in the LoPy (or rather Python) is a bit iffy, but with some averaging it’s rather accurate. Whether it will be possible to calculate speed from several measurements is another story. A doppler radar would be much better, that I hope to get hold of soon.

Measure moisture

A simple resistive moisture sensor has been attached, to see that analog values can be read in via an analog-to-digital port. This might actually find practical (but very local) use.

Detect beacons

This example listens for BLE beacons (iBeacon) and determines the identity of respective beacon. This is done to investigate a real-life use case involving equipment with attached beacons, for tracking them indoors. Unfortunately, a bug in LoPy causes continuous BLE scanning to stop working after a while. This has been reported to Pycom.

Communicate via LoRa

Here data is sent between two LoPy:s via LoRa (raw data). The data is changed continuously and checked, to see that what’s sent is actually received.