System Overview & High Level Design

Description

Sentrifarm is comprised of a network of energy harvesting sensor nodes, geographically distributed according to the topology of the farm, able to run on low power, and communicate over extended distances without relying on the mobile phone network.

(This Project Details along with linked material presently constitutes the top level System Design Document required for the finals. Other entry criteria are listed in various project logs)


Novel features include intelligent back end monitoring and data analysis, a shield-like system allowing the SX1276 radio to be connected to completely different embedded boards, a custom design intelligent rain gauge, and the ability for long range farm monitoring of multiple paddocks without requiring multiple SIM cards.

Operational Concept & User Scenario

Refer to the Operational Concept Github.

Benefits to Farmers

System Requirements

Initial Prototype

In the true hacker spirit, for the initial hackaday prize build much of the equipment (in particular, the various computing modules used to build the nodes) has been chosen due to being on hand, we have more important things to spend money on at this time :-) however, the design is such that they can be changed easily to more 'production' oriented modules in the future.

Components include SX1276 915MHz LoRa radios, Teensy-LC and ESP8266 modules, ATtiny powered rain gauge & wind gauges, and Raspberry Pi nodes.

Architecture

Sentrifarm supports a variety of nodes:

Note that paddock in this context may be between 4 and 100 acres or potentially larger...

Sentrifarm will have a database and monitoring system, linked to the Farm base station node(s).

The Paddock Node includes a couple of different mode configurations:

The point to point store and forward model has been chosen for the hackaday prize entry as this best suits the topology of the real working farm the system is being developed for. The implementation under way for the hackaday prize provides for the nodes and network topology to be upgraded in the future to use LoRa or Dash7 or another more scalable control system.

Remote communications use ISM band frequencies to mitigate licensing requirements.

The MQTT-SN protocol is used for communication between the Ground sensors, Paddock Nodes and the Farm Base station. This allows the various nodes to be asleep or discharged for periods of time, and simplifies interfacing to the radios. MQTT-SN bridges to MQTT on each of the Farm base station nodes.

Design Overview

The remote communication network utilises Semtech SX1276 LoRa radios (inAir9 modules) operating in the 915MHz ISM band. In Australia, this is limited to the range 915-928 MHZ. The SX1276 communicates via SPI. The hackaday prize build use BMP180 i2c barometer modules, DS18B20 1-wire temperature sensors, DHT-11 humidity sensors, wind pulse & and custom designed rain gauge, and a variety of other modules and sensors will be integrated over time.

The Farm base includes the following equipment:

The first version of the Repeater Fencepost nodes are built using a Carambola2 embedded Linux device, with plans to build a version using the Domino.io openwrt board. This provides USB host functionality allowing easy local logging to USB storage for development and diagnostics, and the ability to add other USB devices for various purposes including audio visual and other experiments. The Repeater Fencepost will need a larger solar panel (and SLA battery) than the Leaf nodes but there will be less of them. Where data such as images is collected, this will not be transmitted over the radio due to power / bandwidth but instead collected onto SD card / USB. A novel feature is a button that will allow the farmer to drive up and turn on the wifi (normally off to save power) to download images to a mobile device.

In practice, we have presently deployed the farm sensor using Carambola2 instead of Raspberry Pi due to issues experienced with reliability.

The Raspberry Pi, Carambola2 and Domino.io all run OpenWRT.

Circuit diagram v0.1 of the carambola2-inAir9 shield at Github.

For the hackaday prize build there will be two types of leaf node:

This will allow the power usage of the Teensy to be compared with the ESP8266 in deep mode under real world solar powered conditions.

Both the Farm base, Repeater and leaf nodes are designed such that the electronic circuitry to the SX1276 radio is interchangeable regardless of whether the computing module is Linux capable or the aforementioned microcontrollers, using a shield system. Where possible a similar approach is applied to the software used for radio communications.

Circuit diagram v0.1 of the adaptor shield at Github.

The shield allows for a wide variety of sensors to be integrated on demand, by providing i2c, 1-wire and a PCF8591 i2c 4-channel ADC.

The ground station design is still under review, however the aim is for it to be similar in shape to a solar powered garden LED light, except pushed into the ground.

The custom designed rain gauge will use a small form factor arduino compatible, either an ATMEL ATtiny85 like a digispark or a beetle, or an Arduino Nano, or if time permits a custom board based on the same. The intent of the custom design is to gain a greater level of accuracy for a lower cost than easily available on the market.

For reading wind pulses without requiring the sensor nodes to be continually powered, an ATtiny85 (in the form of a digispark) acts as an i2c slave. Code is located on github separately at https://github.com/pastcompute/Pulse_i2c_slave