
A couple of months back, we had an aging air conditioning unit in our network/server room go bad. Anyone who works with networks knows how critical it is to keep this kind of room cold at all times. As we went out to bid for a new AC system, I asked the following question of our vendors:
"Can we receive a text or email alert when the room gets above a certain temperature?"
A notification of this kind would allow us time to shut down devices gently, if necessary, rather than see them overheat. The vendors all responded that this was a feature that could be added, but was not inherently built into what they were proposing.
As a maker with a recent interest in IoT (Internet of Things), I decided to take this project on myself. With the growing variety of apps, devices, development boards, and online services dedicated to IoT, this project seemed within my grasp. My first instinct was to look at the Arduino platform, as that is what I am most comfortable with. I've built a number of Arduino projects in the past, but none that were connected to the Internet. With a little further research, however, I came upon the Particle.io platform, and the Photon development board.
Particle.io is designed specifically for Internet connected devices, and the Photon board is a perfect prototyping hardware for those learning about IoT, as it is easy to set up and has built-in WiFi connectivity. A quick search on Youtube brought me to this thorough instructional video on using the Photon with a temperature sensor.
The video described a set up that included a DHT11 temperature and humidity sensor as well as a photo cell light sensor. I built the same model, and rather quickly had it up and running on my dashboard in the Particle.io platform, as seen below. I could track temperature, light and humidity every few seconds on this dashboard from anywhere with a web connected device.
"Can we receive a text or email alert when the room gets above a certain temperature?"
A notification of this kind would allow us time to shut down devices gently, if necessary, rather than see them overheat. The vendors all responded that this was a feature that could be added, but was not inherently built into what they were proposing.
As a maker with a recent interest in IoT (Internet of Things), I decided to take this project on myself. With the growing variety of apps, devices, development boards, and online services dedicated to IoT, this project seemed within my grasp. My first instinct was to look at the Arduino platform, as that is what I am most comfortable with. I've built a number of Arduino projects in the past, but none that were connected to the Internet. With a little further research, however, I came upon the Particle.io platform, and the Photon development board.
Particle.io is designed specifically for Internet connected devices, and the Photon board is a perfect prototyping hardware for those learning about IoT, as it is easy to set up and has built-in WiFi connectivity. A quick search on Youtube brought me to this thorough instructional video on using the Photon with a temperature sensor.
The video described a set up that included a DHT11 temperature and humidity sensor as well as a photo cell light sensor. I built the same model, and rather quickly had it up and running on my dashboard in the Particle.io platform, as seen below. I could track temperature, light and humidity every few seconds on this dashboard from anywhere with a web connected device.
I am amazed at how easily this can be done. With an investment of under $50, anyone with an internet connection and WiFi can now track environmental conditions from anywhere in the world. And with prototyping tools like Particle, people are creating new and innovative systems that have the potential to become fully operational products and businesses.
My original question, however, was still not addressed by what I had put together. I needed an alert that allowed me to be notified when the temperature in the room rose above a specific degree. The Particle.io dashboard worked wonderfully if I was logged in and viewing the live stream. But that wouldn't be the case in most circumstances. I needed a text message or email alert when I was away from my desk, possibly off campus, possibly on the weekend.
I discovered two great IoT platforms that I believed could meet this need, Structure.io, now called Losant, and PubNub. Pubnub, in particular, I learned about after attending an Arduino/RPi session through LA Meetup. There, one of the engineers from Pubnub presented the platform and had two working temperature sensor projects using Arduino and Raspberry Pi. She showed live data streaming from each of them and how the data interacted with the Pubnub platform.
While my investigation of these platforms didn't lead me to using either, I was able to create what I needed. Using IFTTT (which stands for If This, Then That), I added a "trigger" to my existing code at Particle, which allowed me to send an email to myself based upon conditions that I set. It took some trial and error to tweak the code, and I still think it could use some refining, but I now receive an alert when temperatures rise above a level that I have established.
For further information on how IFTTT and Particle work together, see this page.
I plan to dig deeper with Losant and Pubnub. I am certain these are tools that I will use in future projects here at school. IoT is in the emergent stage, with so much more to come, and I believe there are many opportunities to integrate this technology into the learning process for students.
My original question, however, was still not addressed by what I had put together. I needed an alert that allowed me to be notified when the temperature in the room rose above a specific degree. The Particle.io dashboard worked wonderfully if I was logged in and viewing the live stream. But that wouldn't be the case in most circumstances. I needed a text message or email alert when I was away from my desk, possibly off campus, possibly on the weekend.
I discovered two great IoT platforms that I believed could meet this need, Structure.io, now called Losant, and PubNub. Pubnub, in particular, I learned about after attending an Arduino/RPi session through LA Meetup. There, one of the engineers from Pubnub presented the platform and had two working temperature sensor projects using Arduino and Raspberry Pi. She showed live data streaming from each of them and how the data interacted with the Pubnub platform.
While my investigation of these platforms didn't lead me to using either, I was able to create what I needed. Using IFTTT (which stands for If This, Then That), I added a "trigger" to my existing code at Particle, which allowed me to send an email to myself based upon conditions that I set. It took some trial and error to tweak the code, and I still think it could use some refining, but I now receive an alert when temperatures rise above a level that I have established.
For further information on how IFTTT and Particle work together, see this page.
I plan to dig deeper with Losant and Pubnub. I am certain these are tools that I will use in future projects here at school. IoT is in the emergent stage, with so much more to come, and I believe there are many opportunities to integrate this technology into the learning process for students.