Introduction
The goal of this project was to prototype a commercial IOT temperature
sensing product. It was broken down into smaller pieces to experiment with before assembling the entire thing together.
Methods
The temperature sensor used was a DS18B20. It reads in temperature data
and sends it to a master-configured Arduino Nano. The master Nano
displays the data on a SSD1306 OLED display and then transfers it to
another Nano in slave configuration. The slave Nano receives the data through an ISR,
then uploads it to ThingSpeak via an ESP8266 wifi module. The display()
function for the OLED display conflicts with the Serial.print()
function in Arduino, but using two Nano's as master/slave solves this
problem.
Results
Video 1: OLED text demonstration.
Figure 1: The temperature sensor circuit.
Figure 2: The output of the circuit from figure 1.
Figure 3: The temperature
being displayed on the OLED.
Video 2: The temperature being displayed on the OLED with the ISR
blinking an LED.
Video 3: The master/slave Nano configuration uploading the temperature data to ThingSpeak.
Discussion
I had difficulty getting the data to upload to ThingSpeak, but
eventually got it to work. The ESP8266 would connect to my router but
would not connect to ThingSpeak. When I used my phones hotspot feature
the data uploaded to ThingSpeak with no problems.