Oil usage monitoring?

I’m not new to home automation, but I am new to ST… So please bear with me.

Is there a software method of monitoring and tracking when my furnace is actually running? Not the fan, just heat. Based on the nozzle size, my oil furnace burns 0.75 gal/hr. So all I need to do is multiply the actual running time of the furnace, in one 24-hour period, by 0.75… And I’ll know my daily oil usage. With this, I can start from a known quantity of oil, and predict when I need to fill up.

For example: Assume 200 gallons to start with, and a 4-hour per day total furnace run time.
4 hours / 0.75 = 3 gal/day
200 gal / 3 gal/day = ~66 days

I’ve searched through the ST app, and through the forums, to no avail. Any help would be appreciated!

Chris - The short answer is yes, this is 100% doable. There are two ways you can possible accomplish this although others might ahve more ideas:

  1. DIY approach - Use the ST_Anything program (search forums) with a small micro processor to monitor if it’s running or not. Based on that a calculation can be made within the device in smartthings to add up the minutes running.

  2. Not so DIY - Use a standard contact sensor to monitor if it’s running or not. Modify/Create a much more custom device handler that schedules a task to run every minute then when it runs checks the status and does the same math to add up minutes.

Both would cost about the same ($30 in parts?). Both will need some programming expertise although I could probably give you something to try…should only take 10 minutes. Actually would be happy to…I can think of some ways tracking runtime might be helpful for me also as I wouldn’t mind tracking the usage of my electric garage heater…


I have a Radio Thermostat CT50 and it tracks hour to hour and day to day usage on their app and website. It can also accept a Z-wave Module to make it ST compatible. I’ve had my CT50 for a few years but just recently got into ST and was going to purchase a new T-stat until I found out a simple $20 module would allow me to connect it to ST.

I’ve got a Radio Thermostat CT30 with a Z-Wave module. Was hoping to find a way to use that for a software solution, rather than adding hardware. I know I can use a contact sensor and a relay to monitor things, but would like to find a way to do this with my current equipment, if possible.

How does it come into ST? Does it show it’s running or just temperatures?

In ST it shows all. What mode its in, what it should be heating / cooling to. The other app which is not part of ST also shows all that plus usage. Here are some screenshots.

This one is the T-Stat in ST

Here is the Android based Wifi App

Here is usage tracking, Its been warm here so i had to go back to Oct to show Heat Usage.
You can see at the top it shows a total of 36 minutes of total usage and then the hourly break down

Same for A/C Usage


Hope this helps

Did some more digging, and it looks like there should be a “thermostatOperatingState” variable (at least, CoRE has that variable, so I’m assuming ST can see it as well). If I could use that to make some kind of SmartApp, where one can enter the current oil quantity and nozzle size, and get some kind of display of oil usage/remaining quantity (and a “refill” notification when a specific quantity is reached)… That would be exactly what I’m looking for.

Yes, a WebCore app that monitors when “thermostatOperatingState” changes to “heating”, and then back to “idle” or “fan only” would do the trick.

So long as you understand that, dependent upon the thermostat and the SmartThings DTH that you use, you could be off by a few seconds, a minute or even 5-15 minutes. This due to any delays in reporting to the Thermostat’s Cloud, and the polling delay from the SmartThings cloud/DTH to the thermostat Cloud. Once you know your polling frequency delay, you can just add in a fudge-factor (ie., if the polling frequency is 60 seconds, on average your app will be off by 30 seconds - so just add 30 seconds to the time calculated when the operating state returns to “idle”).

This gets a little trickier with multi-stage heat (usually gas, but could be done with oil as well). For this, you’ll need a thermostat that is actually controlling the Stage 1 to Stage 2 transition, and you’ll need a DTH that reports the various stages. My DTH for Ecobee thermostats does report this (as equipmentOperatingState), not sure if there are any other DTHs that do.

Heat pumps will also be a bit harder, since they will typically use electricity to pump heat into the house, but the can use aux heating if the baseline isn’t sufficient. Usually this is just more electricity, but I supposed there could be a gas backep. Again, my Ecobee DTH will tell you if using AuxHeat/Emergency Heat (in equipmentOperatingState).

If you’re interested in using Ecobee thermostats with SmartThings, you can find my DTH and supporting Suite here: [RELEASE] Free Ecobee Suite, Version 1.2.*