As hobbyists, we are often faced with the decision of COTS (Commercial Off The Shelf) vs. CUSTOM, or sometimes known as the Buy vs Build dilemma.
But let me back up, and explain the requirements for temperature, humidity, water, and movement sensors.
I own a vacation house near Lake Tahoe California, officially in the U.S. protected Tahoe National Forest.
There are a lot of IoT products at this home, a test-bed for the “connected home” .
I like to monitor this house from a remote location. Now that we live overseas, it is even more vital to monitor the house from afar. For example, I like to look out of the windows, even when I am not there:
Above is a a photo of a family of four deer wandering in my backyard, taken from my web cam, and observed by us 8,000 miles away. I love to look at the deer.
But back to the IOT devices, … I have a lot of different devices, mostly COTS (Commercial Off The Shelf). However some are Custom (e.g., homemade).
I have about two dozen devices:
- 1 Irrigation Controller
- 2 Nest Thermostats
- 3 utility meters: Water, Electricity, & Gas
- IP cameras
- a variety of entertainment devices, including Roku TVs, Apple TV, DVD player, Cable set-top boxes, PLex media server
- custom security server
- second WiFi access point (running additional security)
- a variety of IT equipment including Linux and Mac servers, running UPnP applications
- 3 IP-connected printers.
This home is fully occupied year-round so all of these IoT devices have to be non-intrusive to the tenants and each maintainable on my own from 8000 miles away.
Each of these devices operate, more or less, in their own walled-off universe. There are several iPhone/iPad applications I use to control the house:
Sprinkler Controller
Here are two screens from the sprinkler controller iPhone application:
Not only can this sprinkler controller be operated remotely, it is a smart device which will not water the lawn if it has rained today, or is raining now, or is going to rain later in the day.
Nest Thermostat
Next, here are two screens from the Nest thermostat iPhone application:
Note that the Energy History screen includes detail of every thermostat change, plus when the furnace is actually on, delivering heat.
IP Cameras
I have a number of IP-addressable cameras, looking out the windows. Here is a “multi-view” of 4 IP cameras, on an iPad application:
This accomplishes my goal to “look out the windows” from afar.
Water Meter
My Water Utility company has an excellent portal which lets me look at, for example, water usage data.
Here is a plot of water usage for the month of May 2016:
And here is the usage chart for the next month:
Do you notice the anomaly on Friday May 20 in the wee hours? Just as the temperature dropped to freezing, my water usage suddenly shot up, from a couple hundred gallons a day to 20,000 gallons a day! That was due a broken pipe! It took me 3 days to detect and repair. During those 3 days, the basement was entirely flooded.
Requirements
Therefore my mission is to install new IoT devices to help me detect or even prevent frozen pipes in the future. I would also like a more detailed temperature profile for several points in the house. Is the basement freezing? Are the bedrooms warm enough? Is the space under the sinks too cold? What’s the temperature in the garage? Is the Refrigerator performing correctly, and the food at a safe temperature?
Build or Buy?
Certainly, I know how to build a temperature sensor.
Mike Diamond has shared several interesting articles on how to build with Blynk, for example.
or how to build with Cayenne, for example.
and how to perform your own data collection and analysis.
I have set up Cayenne myself, at a couple of sites. This screen capture is from one of my Cayenne installations:
This is my Cayenne server, running on a Raspberry Pi, that shows me vital information about my Haifa apartment. This screenshot was taken during the Sharav (heat wave) last week so it was very warm in the apartment.
I was concerned about the mass deployment of Cayenne temperature sensors for several reasons:
- Packaging. We amateurs suck at packaging. My Cayenne server with wires hanging out looks unsightly.
- It’s even more difficult to make these waterproof. Here is a photo of Mike’s patio temperature sensor (with no offense to Mike … it’s a brilliant solution as a homemade device)
- Network load … it’s difficult to throttle the amount of traffic between the Cayenne server and the network servers. And to limit its use of the RasPi CPU.
- Maintenance: the Cayenne user interface, while flexible, is somewhat cumbersome.
- Power. This is certainly the biggest problem, the number one problem. Mike has addressed it here, but that solution only applies to ESP8266 devices. Raspberry Pi systems need to be in reach of and always plugged into an electrical outlet.
My goal was to find a COTS (commercial off-the-shelf) device, if at all possible, with all the required sensors, that is small and well packaged, could be installed in wet locations, reasonable or controllable network load, is easy to deploy, is easy to monitor, and is battery-based.
Wireless Sensor Tags
I found this, a "Wireless Sensor Tag":
These devices report Temperature, Humidity, Motion – and can be programmed to report very frequently (every 15 seconds), or not too frequently (every 10 minutes). It is not an Ethernet device, per se, but uses another wireless communications technology and therefore is installed with a gateway device. The little coin-size battery is supposed to last for between 1 and 3 years.
This product precisely fit the bill for my requirements. So I ordered 5 of the above sensor, plus 5 of the Temperature/Moisture gauges. They came packaged in a 5-pack of the former:
And a 2-pack of the later, plus the little gateway device, fitting in a very small box.
Gateway device:
Setting up the gateway device was quite simple. You plug it in to your router, then open their iPhone app, and enter your ID, the device’s unique ID, and that is it. One screen setup.
Then setting up the ten sensors is quite easy. This was all done from my Phone. I only used my laptop to read the detailed HOW-TO.
In the end, it is an extremely usable interface, with pictures identifying each Wireless Tags, and various Moisture Alerts or Temperature Alerts easy to program.
Here is the iPhone application, with the Wireless Tags all set up:
I notice that my refrigerator is running a little warm – the guideline is under 40° F (4° C).
Now here is the iPad application, which displays a little more detail:
The refrigerator Wireless Tag can be programmed for more sophisticated alerts. Not only alerting when the temperature exceeds a range, but also when the refrigerator door is opened, for example, between midnight and 6am. The Alert is then sent to the iPhone IOS Notification Center, and is audibly announced by the App. The Alert can also interact with server-based Apps, including but not limited to IFTTT actions.
The Wireless Tags are inexpensive, require no power outlets, non-intrusive to the occupants, easy to deploy, easy to monitor, Alerts may be set up, and have excellent User Interface. They exceed my expectations in all areas.
I think in this COTS vs CUSTOM choice, I made the correct decision.