Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to change temperature with version 0.21.0 #41

Closed
flyboy013 opened this issue Mar 23, 2019 · 18 comments
Closed

Unable to change temperature with version 0.21.0 #41

flyboy013 opened this issue Mar 23, 2019 · 18 comments
Labels
bug Something isn't working

Comments

@flyboy013
Copy link

I've installed version 0.21.0 to test out the new decimals capability. While this capability appears to be working (Thanks!), the ability to adjust the temperature no longer works. Whenever I change the temperature, it immediately goes back to the original value (even before the MQTT post). This problem does not appear to be related to the decimals capability as I'm having the issue with both decimals 0 and 1.

If I click on the temperature which brings up the "more info", I am able to update the temperature just fine.

Here is a screen capture of the issue.

I've installed version 0.20.0 and things work as expected. The problem is definitely with 0.21.0

Here is the code for the Front thermostat. I tested it with the minimal amount of configuration in order to isolate the issue. I still get the problem with this minimal configuration.

                - entity: climate.front
                  hide:
                    temperature: true
                    state: true
                  type: 'custom:simple-thermostat'
@nervetattoo
Copy link
Owner

Ouch, I've missed this issue. If you try to open the developer tools console, do you get any errors there?

@flyboy013
Copy link
Author

No errors. The only messages (warnings, info, etc) are as shown:

Screen Shot 2019-04-03 at 9 33 06 PM

@DavesDevFails
Copy link

Also having this issue.

@nervetattoo
Copy link
Owner

Weird it not working at all, but I did some changes to this in v0.22 that were just released. Any improvements after upgrading to that?

@nervetattoo nervetattoo added the bug Something isn't working label May 16, 2019
@fredriklj
Copy link

This now works for me. It flickers sometimes, but works.

@flyboy013
Copy link
Author

No change. I made sure I cleared my cache after installing.

Please let me know if there anything I can do to help troubleshoot.

@nervetattoo
Copy link
Owner

Is this a dual high/low device or just a single temperature @flyboy013 ?
Could you share the device attributes from HA? (Or did you already share it in some other issue?)

@flyboy013
Copy link
Author

The problem occurs on both single and dual controls. I have three instances for floor heat and three for HVAC systems.

Here's the floor heat:

Screen Shot 2019-05-16 at 9 32 55 AM

                    - sensors:
                        - entity: sensor.front_floor_heat_status
                          name: Status
                        - entity: sensor.front_floor_heat_silverleaf_level
                          name: SL Level
                      type: 'custom:simple-thermostat'
                      hide:
                        state: true
                        temperature: true
                      decimals: 0
                      name: Front
                      step_size: 1
                      entity: climate.front

and the HVAC:

Screen Shot 2019-05-16 at 9 33 08 AM

              - sensors:
                  - entity: sensor.ambient_temp_1
                    name: Now
                  - entity: sensor.front_zone_status
                    name: Status
                type: 'custom:simple-thermostat'
                hide:
                  state: true
                  temperature: true
                modes:
                  Fan Only:
                    name: FAN
                    icon: 'mdi:fan'
                  Auto Heat/Cool:
                    name: HEAT/COOL
                    icon: 'mdi:help'
                  Cool:
                    name: COOL
                    icon: 'mdi:snowflake'
                  Heat:
                    name: HEAT
                    icon: 'mdi:fire'
                  'Off':
                    name: 'OFF'
                    icon: 'mdi:power-off'
                decimals: 0
                name: Living Room
                step_size: 1
                entity: climate.living_room

@nervetattoo
Copy link
Owner

Can you go to <your-domain:port>/dev-state and find the devices there and then copy the value in the attributes column @flyboy013 ?
It seems like all logic is running as in it calls the service after a second after the last button click, but the temperature seems to get reset to the previous temperature right after you click and thus it sends the existing temperature to the service call. I have a few ideas for what might be causing this but I want a little bit more of information to get a better understanding of your setup.

@flyboy013
Copy link
Author

Here are the attributes for the two devices:

operation_list: Off,Heat
operation_mode: Off
target_temp_step: 1
max_temp: 95
min_temp: 50
current_temperature: null
temperature: 65
supported_features: 129
friendly_name: Front
aux_heat: off
operation_list: Off,Cool,Heat,Auto Heat/Cool,Fan Only
operation_mode: Off
max_temp: 90
min_temp: 50
fan_mode: Auto
supported_features: 2246
friendly_name: Living Room
target_temp_high: 71
target_temp_step: 1
temperature: 21
current_temperature: 69
fan_list: Auto,Low,High
target_temp_low: 64

@flyboy013
Copy link
Author

I've been done some more troubleshooting of this issue. I created a new MQTT HVAC entity in my configuration.yaml file.

climate thermostats:
  - platform: mqtt
    name: Test

I then setup the lovelace UI for it:

          - type: custom:card-modder
            style:
              --st-font-size-xl: 32px
            card:
              type: 'custom:simple-thermostat'
              name: Test
              entity: climate.test

I have tested this card out both with my 3000+ line lovelace interface as well as a 20 line skeleton. Also tested it with a gutted configuration.yaml file. I have found that when I comment out the mqtt section in my configuration.yaml, the problem seems to go away. Not quite sure why, but I figured I would provide the insight in case you have any ideas.

@flyboy013
Copy link
Author

Another update. I have found that if I shutdown the bridge application that is posting all the data to my MQTT broker, the problem goes away. It would appear that the HA MQTT subscription message processing (or perhaps the bridge application's publishing) is causing the problems. The test climate (mqtt platform) entity does not have any mqtt variables so it shouldn't be an issue of new data overwriting existing values. So it would appears that this may be more of an issue between HA MQTT processing and the climate entity, but I don't yet have enough data one way or another.

@terafin
Copy link

terafin commented May 24, 2019

I am seeing something... similar to this, but just wanted to comment here.

I'm using celsius and have noticed a few things:
• Nothing in console
• Side by side with built in thermostat, updating the built in one updates this guy instantly
• My step is set to 0.5 degrees for celsius.
• If I click rapidly to make it change a full degree, it seems to work!

Could this be fractional degrees related?

@terafin
Copy link

terafin commented May 24, 2019

To add to this, the simple thermostat doesn't seem to show fractional setpoints either:
Screen Shot 2019-05-24 at 2 48 13 PM

@nervetattoo
Copy link
Owner

@flyboy013 It does sound a bit like the set temperature service is called correctly but the value is discarded or overwritten later on? When I find time I will try to configure a void MQTT thermostat to see if I can get the same issue locally.

@terafin It doesn't sound like the same issue. Do you have step size set in backend or as config to the card? One thing that is lacking is that the card does not read step size from the climate entity when its available. I will register an issue to make sure I get that in for a next release at some point.

@terafin
Copy link

terafin commented Jun 3, 2019

@nervetattoo I have the step size configured on the card, and the platform is venstar (which as far as I can see doesn't support step size - but seems to work with the native card).

My config for simple-thermostat is:

decimals: 1
entity: climate.study
hide:
  state: true
  temperature: false
step_size: 0.5
type: 'custom:simple-thermostat'

@john-arvid
Copy link

I have a similar problem with version 0.25.0
But it is a bit random, mostly when I increase or decrease the counter fast.
Then it jumps back to a previous number (not necessarily the initial one)
Sometimes it also brings a 0.5 in there.

This is the config I have:

Lovelace

- cards:
      - entity: climate.hybel_lille_soverom
        name: Lille soverom
        step_size: 1
        type: 'custom:simple-thermostat'

configuration.yaml

- platform: generic_thermostat
  name: "Hybel lille soverom"
  heater: switch.esp01_mill02_relay
  target_sensor: sensor.esp01_mill02_temperature
  max_temp: 28

No messages in the developer console

@yevon
Copy link

yevon commented Dec 7, 2019

I'm having this issue also. I imagine that it is due to that it doesn't wait few seconds before aplying the new temperature value, and lovelace triggers a refresh and it gets messed up.

You should wait for two seconds and abort previous click events before calling the setTemperature function. Something like this should help:

https://stackoverflow.com/questions/17690193/delaying-click-event

``
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

7 participants