[DEPRECATED] Universal Ecobee Suite, Version 1.8.01

Sent high once, twice, thrice -> Optimized
Sent medium 1x -> High

Seems like the map I supplied before has reliable results for me. As far as I'm concerned, you can make this low on your priority list. I'm just happy I can toggle between low and high from the hub now.

OK - it seems we get different results (my own fan speed isn't actually adjustable, but the command still works).

As long as it works for you (you could try doing a refresh() in between consecutive calls, to see if waiting for the thermostat to actually react to the first attempt before sending the second has any effect).

Be sure to get this morning's update to the Thermostat device...

Can you check on this? Maybe its an error on my end, I used HE Package Manager update and repair to no avail.

Please try updating again...there was a typo on my side...

1 Like

Although I have not integrated these, you CAN manipulate the values directly using the (thermostat).setEcobeeSetting() API call with Ecobee Suite. You can change these attributes:

	attribute 'ventilatorDehumidify', 					'STRING'  // 'true' or 'false'
	attribute 'ventilatorFreeCooling', 					'STRING'  // ditto
	attribute 'ventilatorMinOnTime', 					'NUMBER'  // probably 0-59
	attribute 'ventilatorMinOnTimeAway', 				'NUMBER'  // ditto
	attribute 'ventilatorMinOnTimeHome', 				'NUMBER'  // ditto

There is no error checking (or verification) for these, but you can try them if you'd like.

Trying not to beat a dead horse, but just give accurate info and help anyone else if they're in a similar situation messing with the fan speed. When I was testing out the command yesterday, I was sending the command using the tile on device page and checking the results at the physical thermostat (you have to back out to main display then go back into settings to see the updated speed each time, it won't update live in front of you). I wrote up my rule to set the fan speed to medium (which yields High on Ecobee UI) when temp is <=32 and low (which yields Low on Ecobee UI) > 32. I wrote the rule to check the current state of the fan speed so it wouldn't send the command if it didn't need to and was comparing to high originally but the driver is (I guess correctly?) maintaining the state of what the command sent so as far as the driver is concerned my fan speed IS medium so I just needed to tweak the rule to check on medium vs high and all should be good now.

This is what I mean. Saw this in the logs for the rule this morning as the temp creeped back up to 33.
Action: IF (Ecobee fanSpeed(medium) = high(F) [FALSE]) THEN (skipping)

As always, thanks for adding this functionality. Love actually automating things like this.

A couple of things:

  1. You don't have to "back out...go back" to get the updated value - simply refresh your browser page to get the updated values

  2. If you have only connected your fan wires to G and G2, then (according to the docs I have read) you only have low and medium speed fans set up on your Ecobee. Not sure you can skip G2, but connecting to the 3rd connection would be high. Not sure why your thermostat calls medium as high in the UI, but the API is (apparently) reporting what we specified (ie. medium).

  3. I have a version under development that limits your fanSpeed setting to one of the ones that the thermostat says it supports. If you have only the one connection, it limits you to using only the low speed. If you'd like to try it prior to release, should me a PM. (FWIW, I suspect your thermostat is reporting that it only has low, medium, and optimized)

  1. This was about confirming the setting of the fan speed on the actual Ecobee thermostat. I wasn't seeing that value update live.

  2. Just looked back at the docs (Help Centre) and you are correct. I have Y1 and Y2 (which would imply low and medium), but the Thermostat UI itself is showing me Low, High, Optimized.

My guess is that they are "dumbing down" the UI on the thermostat because "Low and Medium" don't make much sense when you only have 2 speeds so they are translating medium in the API to High in the UI when you have 2 speeds. It would certainly seem like your code is doing the right thing API wise, it's the thermostat itself that is causing confusion.

  1. I'd be happy to try it out to help you out if you want to continue to spend time on it. I'll shoot you a PM.

I'm getting a null pointer error reported frequently by this app.

I'm also getting an initialization error related to a zip code - but I don't see where in the app this can be entered.

Not sure what is causing this.

  • What version of Ecobee Suite Manager and Ecobee Suite Thermostat are you using?

  • what where you doing when you got this error?

  • can you please provide the 10-20 immediately prior live log entries for ES Manager and ES Thermostat befor the error

  • Did you enter your zip code on the thermostat when you installed it?

  • Did you set your zip code in your Hubitat Location?

  • how long have you been running Ecobee Suite?

  • What version of Ecobee Suite Manager and Ecobee Suite Thermostat are you using?
    1.8.55 for suite. 1.8.22 for Thermo

  • what where you doing when you got this error?
    Just happened to notice it when I was looking at logs for other reasons

  • can you please provide the 10-20 immediately prior live log entries for ES Manager and ES Thermostat befor the error


  • Did you enter your zip code on the thermostat when you installed it?
    I don't see a place to explicitly enter zip code. I do have address defined in the mobile app.

  • Did you set your zip code in your Hubitat Location?
    I had Lat/Long but not zip code. I just added it.

  • how long have you been running Ecobee Suite?
    Not sure - several months if not longer.

After adding the zip code to your Hubitat Location, did the POSTAL CODE error go away? If not, try opening Ecobee Suite Manager, then clicking "Done" (to re-initialize it), then check that the POSTAL CODE error doesn't occur in Live Logging.

The HTTP 500 error is transient - sometimes the Ecobee Server just doesn't want to handle a request. It is non-fatal - everything should continue correctly at the next cycle.

  • I do suggest changing your cycle time to 1 minute (instead of the current 2 minutes). This won't add much overhead, and ensures that the code "recovers" from such transient errors in a timely manner (shorter cycles usually means less work to do each cycle time).

  • I also suggest upgrading to the latest version I posted earlier this week, especially if you are running Hubitat 2.3.3 or 2.3.4

Keep me posted!

Between adding the postal code and updating the app, the errors seem to have stopped - thanks!

1 Like

@storageanarchy, welcome back from RV'ing! Not to be a nag, but I'm reposting the above since I imagine you haven't been able to read all the posts from while you were gone. And no one else had the answer. TIA...

Smart Circulation is a simple goal-seeking Application: it increases the fan minutes per hour setting until the goal is met, and reduces it the longer the goal stays true. This is true with outside/inside temp difference goal, as well as for target humidity.

1 Like

I'm using the smart vent helper with Keen vents. I also have booster fans connected to smart switches. I have the vents set to constantly adjust to account for the lag that sometimes occurs from Ecobee and avoid too many vents being shut. However if I add the boosters under the switch option, they constantly run if the vent is open and the furnace is not running. Is it possible to set it so the vents constantly adjust but not the switches? Current option seems to be all or nothing. I currently have rules setup in rule master to account for the boosters. I suppose I could set up separate helpers for each room just for the boosters as well but was looking to try and condensed everything if possible.

I would suggest that you set up separate instances for the boosters and the vents at least, if not one pair for each room.

What is the minimum installation to "Include thermostats as a separate Ecobee Sensor? I would like to be able to display the actual temperature of my Ecobee 4 internal sensor on a dashboard. I don't need any of the other capabilities.

You would need to install Ecobee Suite Manager (ESM), plus the Thermostat and Sensor device. Start ESM, do the initial configuration to connect to your account. Then find and add your thermostat. In ESM preferences, turn on the Include Thermostats as a separate Ecobee Sensor. Then go to add sensors, and select the thermostat sensor to be created as a device. You will have both an ES Thermostat device and an ES sensor device.

You'll probably want to set the polling frequency to 1 minute.

1 Like

The ecobee device has weather information among its attributes, and I would like to pull them out to display on a dashboard. However, the weather tile seems to pull from the default attributes such as temperature, etc., which actually contains the thermostat temperature, etc., instead of weatherTemperature. How can I remap the attributes of the device (perhaps a virtual one) so that the weather tile displays the correct information?