Lysquid / Albert-le-frigidaire

A box to monitor your fridge

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Albert le frigidaire

A box to monitor your fridge without having to buy an expensive smart fridge.

dashboard

hardware

This project made by six INSA Lyon students for a second year class. It uses Arduino (C++) for the hardware, MySQL to store data, Java for the graphical interface and R for in-depth statistics.

Concept

The goal of the project is to make an inexpensive box that you can put in your fridge to monitor it from an application. The final result is the white box above, along with the monitoring app.

The box has many sensors to collect data on the temperature, the humidity, the concentration of six gases and the light intensity to know if the fridge is open. The app displays graphs of those values and give you alerts when certain thresholds are crossed, for example if the temperature is too high, or the fridge has been open for too long.

The box also have a barcode reader, to scan the products you put into your fridge. There is a button to set if you are adding or removing products. This way, the app has an up-to-date list of the products in your fridge, and can display information about them, provided by the Open Food Facts database. In addition, sensors thresholds dynamically adapt to the contents of your fridge.

Project structure

The project is divided into five parts, which correspond to the five folders of the repository. The overly complex structure was imposed by the assignment.

  • Box : the first Arduino chip with all the sensors, directly in the box.
  • Receptor : a second Arduino chip that communicates with the first one through radio waves.
  • Transfer : a Java app on a first computer to collect the data of the chip through a serial port, and store it in a distant SQL database.
  • Dashboard : a Java app on another computer that fetches information from the database and displays them.
  • Statistics : an R notebook to make in-depth statistics from the data collected. It can be viewed on RPubs.

The code for the Arduino chips are PlatformIO projects, in C++. The Java apps are Maven projects, and the graphical interface was done painfully with Swing.

Hardware

Database

database

About

A box to monitor your fridge

License:MIT License


Languages

Language:Java 85.5%Language:C++ 13.0%Language:C 1.4%