A global contest to grow and monitor your own food with Raspberry Pi

Related tags

Hardware growlab
Overview

growlab

A global contest to grow and monitor your own food with Raspberry Pi

My green beans

A capture from phototimer of my seed tray with a wide-angle camera positioned above

New Live stream - 27th April 16:30 BST

Got started already, or just want to learn more? Tune into the live stream Grow your own with Raspberry Pi - Alex Ellis & Richard Gee

How it works

  1. Read the launch blog post: Join the Grow Lab Challenge.
  2. Order your kit, or decide you're taking part by sending a PR and adding yourself to the "growlab Technicians" section below.
  3. Build your own #growlab using one of the designs, or customise it. And start growing and recording a timelapse.
  4. Use the #growlab hashtag and share as many pictures as you like.
  5. Send a Pull Request and link to each Tweet to unlock each level.
  6. At the conclusion of the growing period, we'll send some prizes from OpenFaaS Ltd and Pimoroni to entries at random for different tiers.

Prizes to be provided by: OpenFaaS Ltd and Pimoroni. Want to sponsor or provide prizes? Send an email to [email protected]

Unlock each level

Bronze - assemble your #growlab using one of the recommend designs or customise it. Tweet a photo of your build.

Silver - install the software and capture your first photo of your seeds in the soil. Tweet it using the seeds2 software, or copy the file to your computer and Tweet it from there.

Gold - Wait until at least one of your seeds has germinated, and Tweet a second photo.

Platinum - use the phototimer or seeds2 software to capture images over a week. Compile the images into a timelapse and upload it to YouTube. We recommend one photo every 10 minutes. Tweet a link to the video.

Making your timelapse

If you're using phototimer, then you can run the following:

echo $(echo $(find ./Desktop/image/ | sort -V|grep jpg)) | xargs cat | ffmpeg  -framerate 10 -f image2pipe -vcodec mjpeg -i - -vcodec libx264 out.mp4

iMovie is also relatively easy to use, by dragging the images into the timeline and changing the time between images to ~ 0.1s

Here's a sample from 9th-22nd April you can watch on YouTube:

Click here to watch my video timelapse

Extra points and taking things further

Self-watering system

A self-watering system

  • Overlay temperature and humidity data with an BME280 sensor
  • Add a self-watering system with a small pump and capacitive soil sensor
  • Try a garden RGB grow-light to give your seeds a little more help
  • Experiment with hydroponics
  • Install your lab in an outdoor greenhouse, shed or cold-frame
  • Use a light sensor / LDR or UV sensor measure available light
  • Try a suitable solar panel and battery capacity to run your experiment outdoors or in a room without a socket

Growlab Technicians

Technicians work in laboratories, and you are no different, so if you've bought your kit, or have decided to join, then add your details below so that we can encourage each other and see how many people are participating. If you don't have a Twitter or GitHub handle just put N/a.

Name Twitter GitHub Live preview URL
Alex Ellis @alexellisuk alexellis Live preview with the growlab app
Simon Emms @MrSimonEmms MrSimonEmms Images captured by phototimer
Richard Gee @rgee0 rgee0 Most recently captured image
Jakob Waibel @jakobwaibel JakWai01
Florian Clanet @FlolightC Flolight
Felix Pojtinger @pojntfx pojntfx
Sam Perrin @sam_perrin sam-perrin
Philippe Charrière @k33g_org k33g
John McCabe @mccabejohn johnmccabe
Adam Craggs @abigpancake agcraggs
Martin Woodward @martinwoodward martinwoodward

Live preview URLs

A live preview URL keeps things interesting and lets the community get a view inside your lab.

See the new growlab app for your Raspberry Pi

Contest entries #growlab 🥇 🥈 🥉

Name Bronze Silver Gold Platinum
Alex Ellis Bronze Silver Gold Platinum
Richard Gee Bronze Silver Gold Platinum
Simon Emms Bronze Silver
Florian Clanet Bronze Silver
Philippe Charrière
John McCabe Bronze
Adam Craggs

Official growlab software

  • growlab app for creating a live-preview via GitHub Pages
  • bme280-logger for data-logging to InfluxDB, and for showing the time-series on a Grafana dashboard
  • phototimer for capturing photos from the RPi camera for a timelapse: alexellis/phototimer

Community projects and add-ons

  • Richard Gee's seeds2 repo for tweeting and capturing images: rgee0/seeds2
  • Sam Perrin's seed-viewer for viewing the images captured with phototimer sam-perrin/seed-viewer
Comments
  • Add bmp280 sensor support

    Add bmp280 sensor support

    The BME280 has been harder for some people to get. Some have also bought the BMP280 in error, so this commit aims to add support and help them along.

    Signed-off-by: Alex Ellis (OpenFaaS Ltd) [email protected]

    opened by alexellis 2
  • submit-sample func won't create readings database

    submit-sample func won't create readings database

    Hi,

    I've followed the steps defined in the README.md to deploy the submit-sample func. After having a look at the code, I understand it should create a readings db in InfluxDB.

    However, even after invoking the func explictly with http://192.168.1.42:8080/function/submit-sample, the readings db doesn't seem to have been created.

    What am I missing?

    image

    opened by felipecruz91 1
  • Update secret name in README.md

    Update secret name in README.md

    When following the instructions in the README.md, the deploy operation failed due to a missing secret.

    $ faas-cli deploy
    Deploying: submit-sample.
    WARNING! You are not using an encrypted connection to the gateway, consider using HTTPS.
    
    Unexpected status: 400, message: unable to find secret: influx-pass
    unable to start task: submit-sample, error: OCI runtime create failed: container_linux.go:344: starting container process caused "process_linux.go:424: container init caused \"rootfs_linux.go:58: mounting \\\"/var/lib/faasd-provider/secrets/influx-pass\\\" to rootfs \\\"/run/containerd/io.containerd.runtime.v2.task/openfaas-fn/submit-sample/rootfs\\\" at \\\"/var/openfaas/secrets/influx-pass\\\" caused \\\"stat /var/lib/faasd-provider/secrets/influx-pass: no such file or directory\\\"\"": unknown
    

    This is due to a different secret name being defined in the stack.yml file: https://github.com/alexellis/growlab/blob/master/data-logger/stack.yml#L20

    opened by felipecruz91 1
  • Add the date to the live preview's HTML page

    Add the date to the live preview's HTML page

    Add the date to the live preview's HTML page so that we can see how old an image and its sensor data are.

    Start in the app folder. You'll need to test end to end, but don't actually need a sensor to show it working, just an RPi and camera.

    Any PR must be tested with results shared to be considered for merge.

    Example live preview URLs are in the Readme and at https://growlab.alexellis.io

    opened by alexellis 0
  • :sparkles: Add DTH22 sensor support

    :sparkles: Add DTH22 sensor support

    Add the DHT22 Sensor (temperature and humidity)

    Add a class in sensor.py
    Update the readme for the sensor connection
    Update the service
    

    Nota: I think the type of sensor can be set via the config.json file instead of an environnement variable. @alexellis what do you think about it ?

    opened by amouchere 0
  • Tracking sensor kind used by growl technicians

    Tracking sensor kind used by growl technicians

    Hi !

    I'm wondering if it won't be a good idea to track the kind of sensor the growlab technicians used, it may help us to discuss when facing issues or what could be optimized. Doing this by just adding one column on the table with the id and links of the technicians ? Best, Philippe

    opened by pensarguet 0
Owner
Alex Ellis
Founder @openfaas @inlets. CNCF Ambassador
Alex Ellis
Turn your Raspberry Pi Pico into a USB Rubber Ducky

pico-ducky Turn your Raspberry Pi Pico into a USB Rubber Ducky Install Requirements CircuitPython for the Raspberry Pi Pico adafruit-circuitpython-bun

Konstantinos 5 Nov 8, 2022
Monitor an EnvisaLink alarm module running Honeywell firmware, and set a Nest device to Home/Away depending on whether the alarm is Disarmed/Away.

Nestalarm Monitor an EnvisaLink alarm module running Honeywell firmware, and set a Nest device to Home/Away depending on whether the alarm is Disarmed

null 1 Dec 30, 2021
Hook and simulate global keyboard events on Windows and Linux.

keyboard Take full control of your keyboard with this small Python library. Hook global events, register hotkeys, simulate key presses and much more.

BoppreH 3.2k Dec 30, 2022
A Python script to monitor the latest block on an LCD.

PiHole-Monitoring A Python script to monitor the latest block on a lcd display. The first number represents the dns queries from the last 24h, the sec

Maxi 4 Dec 5, 2022
Monitor Live USB Plug In & Plug Out Events

I/O - Live USB Monitoring Author: Jonathan Scott @jonathandata1 Date: 3/13/2021 CURRENT VERSION 1.0 This is just a simple bash script that calls a pyt

Jonathan Scott 17 Dec 3, 2022
Hook and simulate global mouse events in pure Python

mouse Take full control of your mouse with this small Python library. Hook global events, register hotkeys, simulate mouse movement and clicks, and mu

BoppreH 722 Dec 31, 2022
A rubiks cube timer using a distance sensor and a raspberry pi 4, and possibly the pi pico to reduce size and cost.

distance sensor cube timer A rubiks cube timer using a distance sensor and a raspberry pi 4, and possibly the pi pico to reduce size and cost. How to

null 3 Feb 21, 2022
This repository hosts the code for Stanford Pupper and Stanford Woofer, Raspberry Pi-based quadruped robots that can trot, walk, and jump.

This repository hosts the code for Stanford Pupper and Stanford Woofer, Raspberry Pi-based quadruped robots that can trot, walk, and jump.

Stanford Student Robotics 1.2k Dec 25, 2022
Mycodo is open source software for the Raspberry Pi that couples inputs and outputs in interesting ways to sense and manipulate the environment.

Mycodo Environmental Regulation System Latest version: 8.12.9 Mycodo is open source software for the Raspberry Pi that couples inputs and outputs in i

Kyle Gabriel 2.3k Dec 29, 2022
Designed a system that can efficiently sort recyclables and transfer them to corresponding bins using Python, a Raspberry Pi, and Quanser Labs.

System for Sorting and Recycling Containers - Project 3 Table of contents Overview The challenge Screenshot My process Built with Code snippets What I

Mit Patel 2 Dec 2, 2022
Code and build instructions for Snap, a simple Raspberry Pi and LED machine to show you how expensive the electricyty is at the moment

Code and build instructions for Snap, a simple Raspberry Pi and LED machine to show you how expensive the electricyty is at the moment. On row of LEDs shows the cost of the hour, the other row the cost of the day.

Johan Jonk Stenström 3 Sep 8, 2022
A Raspberry Pi Pico powered Macro board, like a Streamdeck but cheaper and simpler.

Env-MCRO A Raspberry Pi Pico powered Macro board, like a Streamdeck but cheaper and simpler. (btw this image is a bit outdated, some of the silkscreen

EnviousData 68 Oct 14, 2022
Raspberry Pi Pico and LoRaWAN from CircuitPython

Raspberry Pi Pico and LoRaWAN from CircuitPython Enable LoRaWAN communications on your Raspberry Pi Pico or any RP2040-based board using CircuitPython

Alasdair Allan 15 Oct 8, 2022
a weather application for the raspberry pi and the Pimorioni Inky pHAT.

raspi-weather a weather application for the raspberry pi and the Inky pHAT

Derek Caelin 59 Oct 24, 2022
A versatile program that uses the raspberry pi camera and provides it as a service

PiCameleon Is a daemon program meant to provide the RaspberryPi Camera as a service while running according to a configuration.

André Esser 52 Oct 16, 2022
Monorepo for my Raspberry Pi dashboard and GPS satellite listener.

?? pi dashboard My blog post: Listening to Satellites with my Raspberry Pi This is the monorepo for my Raspberry Pi dashboard!

Andrew Healey 27 Jun 8, 2022
KIRI - Keyboard Interception, Remapping, and Injection using Raspberry Pi as an HID Proxy.

KIRI - Keyboard Interception, Remapping and Injection using Raspberry Pi as a HID Proxy. Near limitless abilities for a keyboard warrior. Features Sim

Viggo Falster 10 Dec 23, 2022
Using a raspberry pi, we listen to the coffee machine and count the number of coffee consumption

A typical datarootsian consumes high-quality fresh coffee in their office environment. The board of dataroots had a very critical decision by the end of 2021-Q2 regarding coffee consumption.

dataroots 51 Nov 21, 2022
E-Ink Magic Calendar that automatically syncs to Google Calendar and runs off a battery powered Raspberry Pi Zero

E-Ink Magic Calendar that automatically syncs to Google Calendar and runs off a battery powered Raspberry Pi Zero

null 2.8k Dec 30, 2022