Spring is almost here, and I am excited to announce some new projects that I have been working on. I have been busy creating the very first marketable prize vending machine, which will be released soon. This custom-built vending machine is unlike anything you have ever seen before, and I can’t wait for everyone to experience it.
In addition to the new vending machine, I am also teaching a class at Mayland Community College – Avery campus about smart home introduction using Home Assistant. This class is designed to help you get started with Home Assistant, a powerful open-source home automation platform. With Home Assistant, you can control all your smart home devices from a single interface, making it easy to manage and automate your home.
But that’s not all! I am also planning a summer Introduction to Laser Cutting class at Mayland Community College – Mitchell campus. This class is perfect for anyone who is interested in learning about laser cutting and how it can be used to create beautiful and intricate designs on a wide range of materials. I will teach you everything you need to know to get started, including how to use the software and how to operate the laser cutter safely.
I am excited about all these new projects, and I hope you are too. As always, I are committed to providing high-quality, locally sourced products and services to our community. Stay tuned for more updates and details on our upcoming classes and events! Please register at Mayland for the upcoming classes if interested.
The other day I started thinking about our chest freezer and all of the hundreds of dollars worth of food that we have in there. What if it fails and goes unnoticed for a while? The freezer is getting older. Probably around 11 years old. I would hate for all of that food to ruin. Plus that’s a lot of money to loose if it does fail. So I started looking online for a simple freezer alarm thermometer.
What I found didn’t really stand out as something I would trust to do the job. Most of them were battery powered and the reviews had several complaints about how quiet the alarms were. Some even mentioned that the alarm would just stop after a few minutes. With our freezer being located in a basement I needed something reliable, loud, and that could just be plugged in. I definitely didn’t need yet another device that had to have batteries replaced every so often. So I just decided to build my own and post the results for anyone else in the same predicament.
Below is everything you should need to build your own Arduino powered freezer alarm. It operates like this. The temperature sensor is placed in the freezer with small gauge wires in order not to cause issues with the seal. When the temperature inside the freezer gets to 32°F/0°C or above the alarm sounds for 3 seconds and repeats every 13 seconds until the temperature drops below freezing. If the Arduino looses signal from the temperature sensor it will sound the alarm constantly.
It’s a very simple setup that with a little research and minimal skills you can build yourself. I will include everything that I did to build this device here, but you can modify it however you want. I know that everyone doesn’t have a 3D printer to print their own case, but you can just buy a project box enclosure and get the same results.
Parts:
ELEGOO UNO R3
DHT22/AM2302 Digital Temperature and Humidity Sensor
4-Digit 7-Segment Display HT16K33 -Adafruit
100dB Piezoelectric Buzzer
24 Gauge Solid Wire
Solder/Heat-shrink Tubing
Arduino Sketch
//freezeralarm (low temperature freezer alarm)
//by Adam (aparker@appforgeworks.com)
//2020.05.4 https://www.appforgeworks.com
//version 1.1
#include "DHT.h" //DHT sensor library - adafruit
#include <Wire.h> //wire library
#include "Adafruit_LEDBackpack.h" //adafruit unified sensor library
#include "Adafruit_GFX.h" //adafruit GFX library
int speakerPin = 3;
int length = 1;
#define DHTPIN 2 //DHT22 is connected to digital pin 2
#define DHTTYPE DHT22 //set the type of sensor
DHT dht(DHTPIN, DHTTYPE);
Adafruit_7segment matrix = Adafruit_7segment();
void setup() {
dht.begin();
matrix.begin(0x70);
matrix.setBrightness(1);
}
void loop() {
pinMode(speakerPin, OUTPUT);
delay(2000);
float t = dht.readTemperature(); //t = DHT temp
if (isnan(t)) { //failure to read from DHT sensor alarm
digitalWrite(speakerPin, HIGH);
return;
}
if (t >= 0) { //alarm for temp above or equal to 0 celsius 32 fahrenheit
digitalWrite(speakerPin, HIGH);
delay (3000); //wait 3 seconds
digitalWrite(speakerPin, LOW);
}
matrix.print(t*1.8+32); //display temp in fahrenheit
matrix.writeDisplay();
delay(10000); //wait 10 seconds
}