Introducing the Electric Energy Demand Manager Smart App for the SmartThings Home Automation Hub.

This smart app is designed for those wishing to save money on their electric bill with utility companies that levy demand charges (such as Arizona’s APS and SRP (with solar) utilities), or for those wishing to reduce their environmental footprint by reducing peak electric demand loads. I recently installed solar in SRP utility territory, and I estimate that this app has saved me over $150 in SRP’s utility demand fees over the past year

The app will continuously monitor your home’s electric usage and calculate current and projected demand usage for 30 or 60-minute demand cycles. Based on your preferences, you can receive notifications and automatically control your thermostat and other devices in order to reduce peak demand costs and reduce your electric bill.

How does it work?

When used in conjunction with a smart thermostat, this software focuses on warm weather air-conditioning cooling set-point (rather than heating) management. AC is often a home’s main electric energy consumption and is not easily load shifted into off-peak hours. The app is designed to work best in conjunction with pre-cooling your home prior to your peak utility hours of concern– and it also provides some simple pre-cooling settings.

In addition to air conditioning, the smart app can turn off smart switches and devices during peak hours – or only when your demand goal is exceeded. There’s several optional display indicator devices you can add as well for peak period indication, current solar production and current demand status.

You can choose to receive demand status related alerts on your mobile device and view your current and projected demand status on your mobile device as well as on a SmartThings compatible wall dash-board devices such as ActionTiles™.

This smart app is currently in development in the Alpha release/prototype phase.

Update 10-Jan-2020: The latest version v0.3.0e.20200110 of the Demand Manager Smart app adds initial (basic) cross-platform support for the Hubitat Elevation Home Automation hub


  • Monitor and display your electric demand usage data in real-time.
  • Automatically turn on and off devices in your home and adjust your home thermostat cooling temperature based on your demand goal and real-time demand projections.
  • Get notified when you’re approaching your demand goal limit via your mobile device or indicator devices that can be placed throughout your home.
  • Customize a 30 or 60-minute demand target to meet your specific goals.
  • Set peak period schedules based on:
    • Your utility’s peak usage hours -or-
    • Custom pricing thresholds you define based on Griddy or ComEd’s real-time prices
  • Let your family know whether you are in a peak utility period via simple red/green indicator lights that can be placed at any power outlet.
  • Display the current power output of your solar array using LED level indicator devices.
  • Create optional virtual demand meters for display on dashboards such as ActionTiles™.
  • Pre-cool your home on scheduled peak utility days.
  • Monitor your solar array for improved predictive demand projections
Mobile Phone App User Interface
Peak Period “On” Indication
Peak Period “Off” Indication
Current, Projected, Peak for Day, Peak for Month Data displayed on Action/Smart Tiles wall dashboard
Peak Period Indication, Goal demand exceeded, and/or Solar Production Level
Example Demand Manager Dashboard running on Hubitat



Required Hardware

    • SmartThings (10-Jan-2020: or Hubitat Elevstion) Hub
    • Whole Home Energy Meter (or Tesla Powerwall 2)

In addition to the SmartThings hub, the Demand Manager application requires a whole home energy meter to accurately measure current real-time electricity usage. If an energy meter is not available, the Demand Manager will attempt to estimate your demand based on whether your thermostat is actively cooling your home (if a smart thermostat is connected) and the nominal home usage data that you’ve entered into the application preferences.

If you have a Tesla Powerwall, you can designate the Powerwall device (see the Powerwall smart app) as your energy meter and you do not need to install a separate whole home energy meter.


Optional Additional Hardware:

  • Express Controls EzMultipli/HomeSeer HSM200 (for peak period indication)
  • HomeSeer HS-WD200 (peak period indication, high current demand projection indication, & solar production)
  • Any On/Off switch capable of being controlled by SmartThings (Z-Wave, Zigbee, Wifi)
  • A SmartThings compatible thermostat
  • Any SmartThings compatible switch



The WD200 Dimmer and EZMultiPli devices can be set up in the Demand Manager Smart App Display Indicator Devices page.

The EZMultiPli device can be plugged into any electrical outlet and will display red when your schedule preference indicates that you are currently in a peak utility demand period.

The WD200 Dimmer devices can be installed in standard wall switch plates and replace standard wall dimmers or switches. When used with the Demand Manager Smart App, the bottom LED will display either red or green depending on if you are currently in a peak utility period. The bottom LED will flash slowly when you’re projected demand is approaching your demand goal limit, and will flash faster when your demand goal limit has been exceeded. In addition, if you have a solar array inverter installed, the LED’s will display the current level of energy production as reported by your inverter (this requires that you have installed a SmartThings device handler for your current inverter).


Warnings and Disclaimer


Installation and configuration of this software will grant this application control of your home thermostat and other devices. Unexpectedly high or low home temperatures and unexpected high utility usage and utility costs may result due to both the planned and unplanned nature of the algorithms and technologies involved, the unreliability of devices and networks, and un-anticipated software defects including those in this software application and its dependencies.

By installing this software, you are accepting the risks to people, pets, and personal property and agree to not hold the developer liable.

This software was developed in the hopes that it will be useful to others, however, it is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR GUARANTEES OF ANY KIND, either express or implied.

Note: SmartThings is a cloud-based system and this software executes on the SmartThings servers. In addition to potential reliability issues with this software application and related device hardware, operational reliability is also subject to cloud and network related stability issues including, but not limited to the SmartThings cloud, your internet provider, your local network, Wifi, and Z-Wave and/or Zigbee mesh networks.


Obtaining the App


This smart app is currently in the Alpha Release/prototype phase.

If you would like to be a Demand Manager app beta tester, try the app for personal use, and/or provide input on feature recommendations, the installation instructions below include the links to obtain the software. I am concerned that there may be questions or issues during this initial testing and requirements gathering phase and recommend that you contact me prior to using the app due to the lack of complete documentation, and to ensure there is a path for direct feedback if there are issues. I can be contacted via either this website’s contact form, with a comment below, or via a SmartThings community private or public message.

Installing the App


The instructions below assume you have basic familiarity with the SmartThings IDE and custom code installation techniques. Installation of required and optional supporting devices including the Aeotec Home Energy Meter, WD200+ Dimmer, EZMultiPli Light Indicator device, and solar inverters also require the installation of standard readily available free custom code device handlers. Please contact me if you need additional help in this area, including suggestions on recommended drivers that have worked well for me.

Install the Demand Manager Smart App

  1. Open the Demand Manager Smart App code from this link and select edit->select all” followed by “edit -> copy”
  2. Navigate to the SmartThings IDE “My Smart Apps” tab
  3. Select “+ New Smart App” (upper right)
  4. Select “From Code”
  5. Paste in the Demand Manager Smart App code
  6. Select the “Create” at the bottom
  7. Select “the Publish” button and select “For Me”

Install the Demand Manager Device Handlers

  1. Open the Demand Manager Dashboard Device from this link, and select “edit->select all” followed by “edit -> copy”
  2. Navigate to the SmartThings IDE “My Device Handlers” tab
  3. Select “+Create New Device Handler” (upper right)
  4. On the “Create New Device Handler” page, select the tab “From Code”, and paste in the code for the Demand Manager Dashboard Device
  5. Click the “Create” button at the bottom.
  6. Click the “Publish” button and select “For Me”.
  7. Repeat steps 1-6 for the Demand Manager virtual meter device from this link. (This last step is only required if you would like to install virtual meters for dashboards such as ActionTiles™).

Activate the Demand Manager Smart App from the SmartThings Mobile App

  1. From the SmartThings Classic mobile app on your phone or tablet device, select the Automation -> SmartApps tab
  2. Scroll to the bottom and select “+Add a SmartApp”
  3. Scroll to the bottom and select “My Apps”
  4. Select “Demand Manager” from the list
  5. Scroll through each of the setting options and menus and select “Save” when done. See the configuring the app section below for additional information. You can always go back and add/change your settings.
  6. The Demand Manager is now operational and its status can be viewed from the Demand Manager Dashboard on the SmartThings Classic mobile app “Things” tab.

Configuring the App


Once installed, the Demand Manager can be configured from the SmartThings mobile UI “SmartApps” tab.

If you have chose the Powerwall device in the app preferences as your whole home energy meter , enable “refresh devices” in the smart app advanced page. This will ensure the demand manager receives current real-time usage from the Powerwall.


The Demand Manager Dashboard Device


The Demand Manager status and projected demand, current demand, peak demand for the day, and peak demand for the month can be monitored from the Demand Manager Dashboard Device user interface on the SmartThings mobile UI “Things” tab.

In addition, you can manually control whether or not you are in a peak utility period by tapping the dashboard on/off main panel.


Terms and Definitions

Coming Soon


Future Enhancements

Coming Soon


Coming Soon


Do you have unique requirements for demand or energy management? Please comment below.

For existing Demand Manager Smart App users, I would greatly appreciate it if you could take the Demand Manager Survey to help improve this software. Thank you!


1. How does the app control my thermostat to manage demand? Won’t my home heat up if it periodicaly turns off my AC ?

The app will continuously project out your estimated 30 or 60 minute cycle demand during your programmed peak utility schedules. If within any 30 or 60 minute cycle period, it determines based on current thermostat conditions (and other preferences) that that your air conditioning should be temporarily halted in order to meet your demand goal, the app will either halt your AC (by bumping up and then back down your thermostat set-point to trigger the hysteresis check) or will increase your current set-point if necessary.

The app is designed to work best in conjunction with pre-cooling your home – and it also provides some simple pre-cooling settings.

You can enter a maximum allowed thermostat set point and also choose to allow the app to conserve energy and reduce AC duty cycles by allowing your air conditioner to continue through to the next demand cycle (ie 30 or 60 minute period) if it is close to the end of a demand cycle and demand overage will not be extreme.

2. What settings the Demand Manager settings be when used with a Powerwall or other home battery back-up system?

If you can expect your Powerwall or other home battery backup system to normally supply enough power to cover 100% of your demand requirements, I recommend setting the Demand Manager preferences as a backup monitor in the event of an extreme demand event, cloudy days, or a battery malfunction. For this purpose, set the Demand Manager demand goal to just above 0 (I set mine to 500 Watts) and set your nominal home usage to 0 Watts.

Recommended Handlers

In many cases, any device handler will work for SmartThings devices that are associated with the Demand Manager app. Here is a list of device handlers that I have used and/or recommend for use with the Demand Manager: