We love to build great products. It’s what our team lives for at Pixel Fusion. In fact, building world class digital products is our day job, and on top of that, our team often sticks around on Thursday nights for Pixel Fusion’s weekly Hackathon (seperate to our 48 hour hackathon- more on this soon). This is an evening to work on side projects, learn new skills, and collaborate on grand ideas. Fuelled by tunes, beer (and non alcoholic beverages), food, and passion.

A photo of a portion of the Pixel Fusion tinkering with Raspberry Pi, Arduino and Macbooks
On the left, a team around pizza working at the Hackathon. On the right, a delicious Mocha

We’re ecstatic to finally be able to share one of our recent products "Jerry the Coffee Collector (CC)" which was a project started and delivered by:

  • Thijs (Our next level intern from the Netherlands) and;
  • Shane (me) one of our Business Development Managers.

Why did we start this project?

We take coffee seriously, almost as seriously as the calibre of products we build. There is always a faint sound in the distance of fresh beans being ground and our team is capable of producing cafe grade coffee (which our clients love). There is one catch, the building our studio is situated in (The Textile Centre in Parnell) has been standing for roughly 100 years which means some of the pipes are by definition old and run almost horizontal. Pipes like this don’t like coffee grounds because it can build up over time and cause an obstruction. Our solution to this dilemma to date has been a bright green 5L bucket from the a local supermarket.

What you'd expect, a photo of green bucket filled to the brim with coffee grounds.

Over the last two years our team size has grown significantly by more than 120% and our collective caffeine addiction is becoming stronger. A natural consequence is an increased frequency of emptying the coffee waste bucket before it overflows and leaks into the Xero offices. We had the idea to use the Internet of Things (IoT) to make this whole situation a bit more “smart”.

On the 11th of May 2017 we created a Slack channel called #cc - Project Coffee Collector was born. The project started with a brainstorming session where we decided the following 6 things:

  1. We would use an ultrasound sensor to measure how full the bucket is.
  2. We would use a tiny OLED screen to display info on the bucket.
  3. We will connect the bucket to the internet (securely) using a Raspberry Pi Zero.
  4. We won’t use a bucket instead we’ll use a slick jerrycan.
  5. Oh and of course, we’ll integrate with Slack to push notifications at intervals in order to avoid the grounds ever spilling again.
  6. Finally; lets name the product “Jerry” - get it?

We decided to use Python and make the entire project open source, so what follows is a breakdown of how the product works and what you’ll need in order to make your own smart jerry can or device that can measure your water tank.

(Pixel Fusion accepts no responsibility or liability, please experiment/hack at your own risk 😉 )

Key features:

  • Autostart
  • Real time information on LED screen
  • Notifications via Slack
  • Error Logging

Further technical detail on Pixel Fusion’s Github Page: https://github.com/pixelfusion/coffee-collector-messenger


  • Raspberry pi Zero W (with or without case)
    • Micro Usb Power 5v
    • SD Card
  • Adafruit SSD1306 128*32 led screen
  • HC-SR04 ultrasonic distance ranging module
  • Army Jerry can 20L
    • Dark green 0.7mm metal wall container with grenade style locking pin & cap
    • Measures: 470mm high x 350mm wide x 150mm
  • Wires

A photo of the OLED screen mounted on a green jerry can, sitting next to a bunch of parts listed above.


  • Drill
  • Metal Files
  • Blu-tack
  • Soldering station
  • Soldering iron

A photo of Thijs drilling holes in the jerrycan for the sensor, next to a splayed drill kit.

How it works

  1. Raspberry Pi boots
  2. Initialises Python script
  3. Every 3 seconds Pi uses the sensor to read the current centimeters (CM) left in the Jerrycan.
  4. Processes CM into a formula and outputs a % (with +10% safety.)
  5. Pi updates the LED screen every 3 seconds with real time information:
  6. CC / Pixel Fusion Logo
  7. % of liquid in the jerry can
  8. Statistics about the Pi
  9. IP Address
  10. CPU Usage
  11. Memory Status
  12. Disk Status
  13. Notifications are triggered as per the table below. When a notification is triggered Pi creates the message with all the relevant data.
  14. Pi sends message to a specified Slack channel (If nearly full the random team members are tagged)
  15. Repeat steps 3-7

Low angle photo of beer, laptop, soldering iron and the OLED screen displaying "CC" and Pixel Fusion
Front shot of the green jerry can with powered Raspberry Pi and the sensor working

Slack notifications

Slack integration to notify team of current levels:

Small image of what the slack notification looks like, shows percentage and an emoticon displaying smiling face

Randomly tags team members to empty the CC when status D, see table below:

Table that outlines the different statuses and how notifications are triggered

We ask that if you create one of these yourself, please take a photo and send to Pixel Fusion: hello@pixelfusion.co.nz

If you are interested in working for Pixel Fusion, email us on careers@pixelfusion.co.nz

If you’d like to talk about this project or a new project, you can email or call me on shane@pixelfusion.co.nz or 09 353 1234

— Shane