Inspiration

Everyday life became more comfortable with the development of smart home systems ranging from vacuum cleaners to smart lights. As part of the smart home system, we developed a prototype for gartelme, the future of digital urban gardening. The goal is to make growing plants at home as easy and fun as possible, supporting the trend towards self-sufficient food supply and a nutrition-conscious lifestyle. Importantly, the app and hardware will support the survival of house plants over long durations when home owners are on holidays or business trips.

What it does

The gartelme app provides a web interface to control multiple wireless stations that are equipped with sensors and devices for precise irrigation. The energy-efficient Arduino stations are interconnected in a mesh network and centrally controlled by a WiFi-enabled Raspberry Pi. A locally-hosted web frontend allows the user to easily schedule irrigation tasks and integrate with public APIs for weather forecasting and crowd-based gardening services. A public REST API allows third-party developers to integrate with other smart home devices and external services. In the future, notifications will remind the user to refill water tanks, add additional nutrients or check on not-so-happy plants.

How we built it

We developed a web frontend using Boostrap, Javascript and Vue.js to support user input and visual representation of the irrigation system. The web frontend communicates with a Python/FastAPI-based REST webservice that exposes a relational database storing the scheduling information. All components are hosted on a WiFi-enabled Raspberry Pi that acts as a controller for the wireless irrigation stations. Communication among the controller and the Arduino-based irrigation stations is powered by an nRF24 mesh network with a custom-built dynamic address assignment. All components were selected for affordability and low energy consumption.

Challenges we ran into

The biggest challenge we faced was to integrate the independently developed components. At the end, we did not succeed to implement all features that we hoped for.

Accomplishments that we are proud of

We are proud to have built the basis for a complete framework that lets us control the irrigation system remotely. Even though there are few bugs remaining, we have managed to combine a number of programming languages and hardware components to build a semi-functional prototype.

What we learned

We learned how to programmatically setup the hardware and work with mesh networks. Furthermore, we advanced in understanding how different layers interact with each other within local networks.

What's next for gartelme

We want to fix known remaining bugs and use the system to water our plants!

Share this project:

Updates