AgroHack

A hands on workshop for an agrotech hackathon 🌽

View the Project on GitHub jimbobbennett/AgroHack

Agrotech Hackathon

This workshop is a hands on lab for building an AgroTech solution using Azure IoT.

Learn more, get certified

If you want to learn more about Azure IoT Services, then check out the following:

Once you have upskilled as an IoT developer, why not get certified with our upcoming AZ-220 Azure IoT Developer certification. Check out the details on our certification page

The final project that will be created is an internet connected device with environment sensors, that connects to a set of services that will store the telemetry data and predict the weather using Azure Maps. This weather prediction will be combined with soil moisture data, and used to send a signal back to the device to indicate if the plants need watering, and this will be indicated by an LED, lit if the plant needs watering.

Most of this implementation will use a no-code IoT platform called Azure IoT Central, an IoT Software-as-a-service (SaaS) platform. There will be some coding required for the connected device, and this will all be in Python.

Getting started

Hardware requirements

Like all good IoT labs, you will need hardware to make this work. You will also need a plant to monitor.

The environment sensor

Software

You will need to install some software to be able to program the Raspberry Pi and create the various parts of this app

Azure subscription

To use Azure services you will need an Azure subscription. If you don’t have a subscription you can sign up for free.

The workshop

Steps

  1. Set up the environment monitor

  2. Create the application in Azure IoT Central

  3. Write the code to capture telemetry from the Raspberry Pi

  4. Export IoT telemetry to Azure Event Hubs

  5. Create a storage account to store telemetry data

  6. Use Azure Stream Analytics to stream data into the storage account

  7. Create an Azure Function triggered by Azure Stream Analytics to check soil moisture

  8. Trigger an Azure IoT Central command if the soil moisture is too low

  9. Call Azure Maps to check the weather forecast before sending the needs watering command

  10. Summary

  11. Clean up