On our family farm I have set up a network of remote sensors to assist with the monitoring of various pieces of equipment and to be on the lookout for any potential issues or ways to improve productivity. This sensor network uses the PJON protocol over LoRa radio to communicate. Back at the house, a base station receives messages from the sensors and passes them on to a Thingsboard dashboard where the data is displayed and managed. The base station can also transmit commands back to the sensors as required.

The current sensors and devices include:

  • Battery voltage monitoring and remote control of a solar electric fence.
  • Monitoring the time that the main pressure pump spends running and how often it starts to detect water leaks.
  • A “water baby” that sends alerts when water has reached particular points in the paddock when irrigating.

Planned additions include:

Screenshots from the Thingsboard dashboard.

Screenshots from the Thingsboard dashboard.

Current (ESP32 based) base station

I snuck this in as part of a FIT3146 assignment at uni and have added a bit to it since. Doxygen documentation is available here.

FarmBaseStation (Git repository)

Base station for connecting remote sensors to Thingsboard.

The base station disguised.

The base station disguised.

Demonstration

A short demonstration video of the base station:

Sensors and original base station

These sensors mainly use PICAXE microcontrollers as they were what I had on hand to build them. They are programmed using BASIC and I had to translate the drivers for the LoRa radios and PJON from their respective Arduino libraries.

Farm-PJON-LoRa-network (Git repository)

Code relating to a small LoRa network for remote monitoring and control. This is a work in progress.

The battery voltage monitor and remote control that I built for the solar electric fence.

The battery voltage monitor and remote control that I built for the solar electric fence.

Debugging code when installing the pressure pump monitor.

Debugging code when installing the pressure pump monitor.