The problem

How can we monitor ecosystem dynamics across long time-frames easily and affordably?

Our solution

By creating an open, low-cost, networked device which performs robust, real-time and autonomous monitoring of ecosystems

Ever wanted to incorporate long-term, large-scale ecosystem monitoring within your study, but never quite got around to it? Maybe the commercial equipment available was too expensive? Or you didn’t have the time or manpower to manage such a system? We may have the answer to your prayers...

Here we will walk you through how to make your own fully autonomous ecosystem monitoring device. The device records data from the field and automatically uploads it to a central server continuously and robustly over long time-periods.

The specific case we show you is for a continuous, long-term fully autonomous acoustic monitoring device, but with a little tweaking it’s relatively simple to modify the design to monitor temperature, humidity, rainfall, images, ultrasonic audio, pH, etc

Our system is:

  • Robust: Tested in tropical climates with unreliable network connections
  • Autonomous: Requires no manual data collection or battery replacements
  • Low cost: One-off cost of approximately £230 + £30/month for data connection subscription
  • Open: All software on GitHub under GNU GPLv3. Hardware design openly available
  • Networked: Update software remotely, receive logs from device for remote debugging
  • Real-time: Data uploaded directly from the field to a server every 20 minutes

This website should be treated as a supplement to our open access paper published in Methods in Ecology and Evolution, Robust, real-time and autonomous monitoring of ecosystems with an open, low-cost, networked device, which describes the full details of our system, along with some validation studies. Here we give a more hands-on approach to actually putting together one of these devices yourself.

Parts list

Before you get started you need to get your hands on the parts required. Links to Amazon UK (or other vendors where unavailable) are given for each component, but feel free to swap alternatives in where you see appropriate - especially those labelled as generic.

The total cost is approximately £230 ($305) for the acoustic monitoring device. In addition to this you'll need a SIM card for a data connection - in the UK we use Vodafone who offer 50GB per month for £30/month ($40) and in Malaysia we use Celcom on a similar deal.

Preparing the SD card

The brains behind the scheduling, recording, compressing and reliable uploading of the data is the software running on the Raspberry Pi. There's a short one-off process of making your first SD card image to configure it to work with your remote server, but once that's done making subsequent cards is a breeze.

The SD card image we start with is designed for this system. Configuring the system from a stock Raspbian image is more advanced and is covered on the GitHub page

Configuring your first SD card

  1. Download, and extract our pre-made SD card image - same for any model of Raspberry Pi
  2. Write the image to a new microSD card (How?)
  3. Insert the microSD card into the Raspberry Pi. Plug the Pi into a screen and keyboard and boot it up
  4. Let the startup script run until it exits with the message "Config file not found!"". If you would like to change an existing configuration, press Ctrl+C when you see "Start of ecosystem monitoring startup script"
  5. Type cd ~/rpi-ecosystem-monitoring below followed by Enter
  6. Type python below followed by Enter. Follow the prompts to setup your monitoring unit's sensor configuration and details of your FTP server.
  7. Make sure the timezone is set correctly. Check by typing sudo dpkg-reconfigure tzdata followed by Enter and following the prompts
  8. If your SD card is larger than the size of our pre-prepared image run sudo raspi-config followed by Enter and choose Expand Filesystem
  9. Type sudo halt followed by Enter and let the Pi shut down
  10. Take the microSD card from the Pi, and make a copy of it onto your computer (How?). Now you can clone as many of these SD cards as you need for your monitoring devices with no extra setup required

Putting it all together

Now that you've bought all the equipment and prepared your SD card, you're ready to make your first autonomous ecosystem monitoring device!

* We have shown how to put together the acoustic monitoring unit, but for any other sensor (e.g. the time-lapse camera) it's exactly the same, just swap the microphone for your sensor.

Step by step instructions

  • Connect the micro USB end of the 12V-5V micro USB converter to the power socket of the Anker USB hub

  • Connect a micro-usb power cable from the Anker USB hub to the power socket of the Raspberry Pi (with prepared microSD card inserted)
  • Connect the USB output from the Anker USB hub to the single USB socket on the Raspberry Pi

  • Connect the microphone to the TRRS to TRS audio jack splitter
  • Connect the microphone output of the splitter to the USB audio card microphone input. Leave the headphone end unplugged

  • Connect the USB audio card to the Anker USB hub

  • Plug in the 3G dongle to the USB extender cable
  • Connect the USB extender cable to the Anker USB hub
  • If you are using a Raspberry Pi model with multiple USB ports, plug the 3G dongle, and the USB audio card directly to the Pi
  • Similarly, plug the 12V-5V DC micro USB converter directly into the Raspberry Pi

  • Tape the microphone to the outer edge of the silicon on one end of the dri-box

  • Run the (unconnected) 12V end of the power cable and the 3G dongle with cable out through the silicon pads on the other end of the dri-box

  • Close the box. Take a deep breath - the worst is past you

  • Create a frame for the solar panel to fix to. The exact form will depend on what best suits your application

  • Fix the solar panel to the frame
  • Super glue the charge controller to the back of the solar panel. Connect cables from the solar panel to the charge controller

  • Connect cables to the battery terminals

  • Place the battery in the 3L dry bag and strap it to the frame securely
  • Connect the battery to the charge controller. Press the power button on the charge controller to ensure the load voltage is off for now

  • Strap the electronics dri-box to the frame securely. Connect the 12V to 5V micro-USB adaptor to the charge controller
  • Wrap the bottom of the 3G dongle in some Gorilla tape and secure it to the frame with cable ties

  • When you are at your field site press the power button on the charge controller to start the monitoring device
  • Sit back and watch as the data rolls in!

Files on the FTP server

Once the monitoring device is running it will start uploading data to your FTP server. Specifically it will upload to a directory named continuous_monitoring_data. Within this directory a folder of the form live_data/RPiID-12345abc will be created for each device, and further subdirectories will be made for separate days, e.g. 25-12-2017.

The data files will be stored in these directories and named according to their time, with other information (where applicable). An example full path from an autonomous acoustic monitoring might be /continuous_monitoring_data/live_data/RPiID-12345abc/25-12-2017/12.20.00_dur=1200secs.mp3.


This is a cross disciplinary research project based at Imperial College London, across the Faculties of Engineering, Natural Sciences and Life Sciences.

Get in touch via email or Twitter with any questions or possible collaborations