Missing thermostatMode() attribute values in Rule Machine 4.0

I suspect because this is not a custom attribute but only a custom value of a standard attribute that nothing is going to make this work. The only way would be if the attribute did not have a standard name, then it would allow you to free-text in whatever you wanted. But since this is a standard attribute with custom values, you're never going to be able to select the non-standard ones. The driver doesn't expose all the possible values for attributes.

1 Like

That makes sense. I wend back to see if maybe I had missed an option but as you describe, there wasn't an option where I could enter free text.

Yeah, the attribute name has to be custom in order for you to have the option to enter anything you want. I would leave a comment for the author of the driver on the thread where it was released.

Thanks @Ryan780, I discussed this with @cybrmage already. Other than this particular and small issue, the driver works quite well, so I would be hesitant to ask for changes. I am using a workaround that he has recommended and it is working.

That said, wouldn't it be preferable if Rule Machine worked in a way to allow this to work? I'm sure it won't be the last time someone tries to use it with a custom driver. :slight_smile:

1 Like

The issue is:

the attribute "thermostatMode" is a standard attribute.

When used with the dashboard "thermostat" tile, the (list) contents of the attribute "supportedThermostatModes" is used to tell the tile what modes are supported by the specific thermostat device.

In Rule Machine, the attribute "thermostatMode" is presented with the default modes and the "supportedThermostatModes" attribute is ignored.

Similarly, "thermostatFanMode" is a standard attribute. This attribute can also be customized in the dashboard with the "supportedThermostatFanModes" attribute.

AND both of these attributes, "supportedThermostatModes" and "supportedThermostatFanModes" are documented in the developer documentation for the thermostat capability.

So... Using standard attributes, the Dashboard tile operates properly, but Rule Machine does not... Seeing that the supported modes attributes work in the dashboard, it makes sense that they should work in Rule Machine.

I believe this to be a bug (or oversight) in Rule Machine. I will ping @bravenel and @mike.maxwell to get their opinion...

3 Likes

Yep. Will put it on the list...

3 Likes

So,you're saying it does not matter what the standard says, and it should actually use, supportedThermostatModes and supportedThermostatFanModes for those two listings? Because if that's the case, then the developer documentation should really be updated to specify that is a required attribute that can specify whatever it wants and then is the basis for the selection of it's corresponding mode attribute. It makes complete sense but that is totally not what the documentation leads one to believe at all.

I had a similar thing when developing a custom driver for my Mitsubishi ducted system, it also has a fan only and a dry mode. I added some code in either the refresh or initialize methods (or both.. ) to update the supported thermostat modes. That solved the issue of selecting the modes on the dashboard tile, but I think I noticed one of two spots where that didn't take effect.

If a driver doesn't publish the supported modes or fan modes, I assume the system uses the default set? The couple of drivers I looked at for reference never created an event for supported modes so I didn't even know this was a thing. Learn something new every day. :slight_smile:

@bravenel I would also love to have the dry mode added to rule machine the same as the dashboard tile, tis the season for dehumidify! :slight_smile:

Thanks!

With no update to RM, you can still use this with Custom Attribute and/or Custom Action. What is it that you are wanting to do?

1 Like

I am trying to send the "dry" thermostat mode in @cybrmage 's driver but doesnt seem to be available in rule machine.

Will this be fixed in a future release of RM?

Thanks

@Sebastien curious what you are using for a workaround to get DRY mode?

I just learned the IR command and am sending that using custom actions in rule machine but unfortunately the dashboard thermostat tile has no idea of the change in state doing it this way.

Well, I’ve never used Dry mode, so it hasn’t been a problem for me. If I did need, I would probably do the same as you. I would probably also create another tile that would say « Dry » when in dry mode, so that I can see the state on my dashboard(s).

I did have to have it learn the codes for moving the vanes up/down or sideways.

1 Like

Thanks, I see now when you started this thread that you were looking for "fan" mode and mentioned the missing "dry" mode in a later post.

Hopefully this will get fixed/added in the near future if its not too complicated.

If you are trying to trigger a rule from the driver sending Dry mode, then use Custom Attribute against that device, and it will offer all of the attributes the device sends. Select ThermostatMode, and then select from the values it offers.

This won't be "fixed" anytime soon in Rule Machine, as this mechanism already exists to get at any attribute/value pair for any device that is not otherwise already part of RM.

1 Like

I am trying to send the dry mode command as an action in a rule based on time of day. Not using dry as a trigger.

Then look at Run Custom Action. Select your device, and it will give you every command it supports.

Like this?

It is listed as a supported mode but not showing up in the list.