Not-so-smart fridge

A cheap and straightforward solution to the problem of forgetting what groceries you need to buy

Similar projects worth following
A simple and cheap device that magnetically sticks to your fridge door and is used to record what you need from the shops at the touch of a button. It then updates a shopping list via a WiFi connection that is accessible with a smartphone app. Kind of like a load of Amazon Dash buttons for everything in your fridge/cupboards but all contained in a single touch screen device - fully customizable and updated remotely when purchases are made.

Items can be added using a wireless barcode scanner that connects with an online database, via the device touchscreen or with an app.

We are always running out of essential food and drink in our house, despite having plenty of opportunities buy replacements, because we are over-tired parents. The obvious solutions here are: 1. Wait for an affordable and functional 'smart-fridge' (maybe a long wait), or 2. Use a list app on a smartphone to record what we need and refer to it when out shopping. The problem with this second solution is that it never actually works - my phone is never nearby when I open the fridge door to see there is no milk left - and by the time I have found my phone I will have forgotten about the milk.

So what I want is something permanently there on the fridge and I can just press a button to say we need milk, or cheese, or beer or whatever. This will then update a shopping list that can viewed on a smartphone online or via an app. All of this could of course be done with a touch screen tablet stuck to the fridge door, but this would be relatively expensive and wasteful (both in terms of technology and power) for what is a very specific task. To keep the costs low (and also to have fun and learn lots of new things) I want to build it (both the hardware and software) from scratch.

My initial plan is to use an Arduino (compatible) board and touch screen TFT shield: this is mainly because this makes it easy to construct and mount, and they can be bought very cheaply (A Mega clone and 4" touch shield for about £10 ($15) from China). WiFi connectivity will use the super-cheap ESP8266 module. Connectivity to optional peripherals - a barcode scanner and load cells - will use ultra-cheap and low power nRF24l01 modules. Power will come from a thin Li-ion cell.

  • 1 × Arduino Mega (clone)
  • 1 × 4 inch TFT LCD resitive touch screen (shield)
  • 1 × ESP8266-12E WiFi module
  • 1 × nRF24L01 2.4 GHz module Power Management ICs / Power Supply Modules
  • 1 × 1200mAh Li-ion cell Application Specific ICs / Telecom ICs

View all 7 components

  • Breadboard

    Tom04/07/2016 at 23:18 0 comments

    Everything is now hooked up (the power, the ESP8266 and NRF modules) and working fine. I've worked on the GUI to make it clear and responsive: when an item is pressed on the touchscreen, it remains 'on' and highlighted until it is pressed again to cancel even after power cycling (everything is stored in EEPROM). Buttons at the bottom access additional screens (more grocery items and the barcode scanning facility).

    I've settled on a list app that will be used to view and cross off items when out shopping: Todoist. It has a nice elegant look and feel, and a straightforward API with a couple of very useful features. One of these is the ability to set a user defined unique ID when adding a particular item to the list - this means that it is possible to delete that item without needing to know the ID assigned to it by the app.

    The Todoist API requires the use of HTTPS, but the ESP8266 cannot handle SSL, so everything is relayed via ThingSpeak's ThingHTTP app. The ESP8266 makes a GET request to ThingHTTP with plain unsecured HTTP with the item and ID, and then ThingHTTP makes a POST request to Todoist with HTTPS. This is obviously not ideal, security wise, but until the ESP32 comes along I'll just have to live with the possibility that unit 61398 are monitoring my cheese consumption.

View project log

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates