Oven temperature measurement in real-time

Every time I move apartments, I usually come across a really old gas-powered oven with dubious thermal insulation. I'd like to be a better cook, but every time I start up the oven it feels a bit like black magic guessing how long it takes for the oven to be 'ready', or what temperature it really is inside the oven, and how long I should cook the food for.

Enter, Shitty-Engineering Science! I put together a little temperature display with a thermocouple wire that can be stuck into the oven through the door.

My oven temperature reader in use. The golden cable snaking into the oven is the thermocouple
The magic lies in the thermocouple, a fiber-glass braided K-type thermocouple (which can be used in extremely high heats like kilns), which is basically just two pieces of metal connected together. The way the two metals heats up differently results in a (tiny) temperature-dependent voltage that can be measured with a micro-controller, and used to drive a 7-segment display in our case.

Since I bought most of the components from Adafruit, getting the code running was very easy since they have libraries for speaking to all the components. The core loop is dead simple, read from the sensor, write to the display, wait one second and repeat.


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
void loop() {
  // Read thermocouple temperature
  // double temp = thermocouple.readCelsius(); 
  double temp = thermocouple.readFarenheit();

  // Display temperature rounded to whole values on 7-segment display
  matrix.print(round(temp));
  matrix.writeDisplay();

  delay(1000);
}

By the time I finished this I realized that I wanted more. My ideal use would be a IoT (Internet of Things) type device that can connect to my google home/alexa device, so that I can be notified when the oven is ready, or what temperature it is, and even check if I've left my oven on when I'm not home.

Popular posts from this blog

Building a PID hover controller for Kerbal Space Program with kOS and IPython Notebook

Learning TensorFlow #1 - Using Computer Vision to turn a Chessboard image into chess tiles

Visualizing TLE Orbital Elements with Python and matplotlib