nervetattoo / simple-thermostat Goto Github PK
View Code? Open in Web Editor NEWA different take on the thermostat card for Home Assistant ♨️
License: MIT License
A different take on the thermostat card for Home Assistant ♨️
License: MIT License
Will it be possible to have ability to add 1 button temp. selection?
example: I want to set my heater to specific temperature lets say 30C I have my thermostat currently set to 16C I have 1 button which I click and settings is changed to 30C
If you specify additional sensors to display such as humidity, or even the default temperature sensor which is displayed does not allow you to click on them to display "more-info".
Is it still possible to hide the mode?
How can you add formats (e.g °C or % for humidity) to the attributes section under modes?
2019-02-21 08:29:59 ERROR (MainThread) [frontend.js.latest.201902200] http://192.168.1.135:8123/local/simple-thermostat/simple-thermostat.js?v=1:5:10 Uncaught TypeError: Cannot convert undefined or null to object
Is this going to be available with HACS which is replacing custom_updater?
Hi,
Using the following lines from the main page, results in lovelace giving errors stating that the card is not available. The following are the lines I am referring to:
type: custom:simple-thermostat entity: climate.my_room
Using the following lines, resolved the issue for me:
type: 'custom:simple-thermostat' entity: climate.my_room
Personally I often use a few specific temperatures that are normally handled by automations, say 23℃ in daytime and 16℃ at night. Having these as presets with buttons would make it easier to manually trigger such temperatures and would also be an easier way for people who haven't figured out automations.
It would also be great for things like heat pumps / AC where you can have both a heat and cool mode.
Config:
presets:
- name: Daytime
temperature: 23
mode: heat
- name: Night
temperature: 16
- name: Hot summer
temperature: 20
mode: cool
I have updated today to the version 0.19 and all works fine.
No I want change the list of modes available in the card, and with the new modes key I'm able to do all these changes.
My question is related the key 'name', if I use a different name in my config, seems that it's ignored. I can see always the original mode name!
"Timer":
include: false
icon: mdi:av-timer
"Tado mode":
include: false
"Manual":
name: Make it cold
icon: mdi:cursor-pointer
"Smart schedule":
name: Test description
icon: mdi:calendar-clock
"Off":
name: Make it cold
icon: mdi:power
"On":
name: Warmer!
icon: mdi:fire
There is also a way to remove completely the name and use only the icon?
Please support the custom updater module to allow easy updates of new versions of this card.
If you put your card inside and other card
- type: custom:card-modder
card:
type: entities
title: OFFICE
show_header_toggle: false
entities:
- entity: light.office
secondary_info: last-changed
group: true
- entity: fan.office_fan
secondary_info: last-changed
- type: custom:simple-thermostat
entity: climate.office_temperature
secondary_info: last-changed
- entity: sensor.tempcheck
when you try to click to change the temp the POPup info shows
- type: custom:simple-thermostat
entity: climate.office_temperature
works perfit
Hi there! Thanks again for the great custom card - but sadly it looks like 'null' still appears in the latest release (0.23) when the thermostat is off.
The default icon colours appear to be in grey as opposed to matching the existing theme.
Separately it would be good to optionally change the colour depending on state.
e.g. Leave as standard for radiator-disabled, red for radiator (ie warming).
The Daikin climate component is async in 0.91 and it seems like the simple-thermostat is too quick with updating the the temperature state. When I click temp down it immediately goes up to the previous value.
If I set the temperature in the standard lovelace climate card (or in the entity detail card) it works as expected (and before).
Related to #41
It would be great if state
and mode
would show the nicer formatting i.e. fan_only
is shown as Fan only
as for the traditional climate entity.
The standard climate component card have three dots at top right that opens the entity card. It would be great if this also had that (or clicking on title/icon).
I have a TADO and when it is off, it does not report the set temperature.
The attribute "temperature" is then "null"
I have fixed it by changing to this(from line 90):
const {
attributes: {
min_temp: minTemp = null,
operation_mode: mode,
operation_list: modes = [],
temperature: _temperature,
},
} = entity
if (typeof _temperature != "number") {
this._temperature = minTemp;
} else {
this._temperature = _temperature
}
When amending the temperature from the simple Thermostat card (see below for configuration) I'm sometimes getting multiple decimal places, please see attached screenshot below.
type: 'custom:simple-thermostat'
step_size: 0.1
decimals: 1
entity: climate.garden_room
hide:
- away: false
sensors:
- entity: input_boolean.gardenroom_virtual_heaters
name: Virtual Heaters
- entity: switch.garden_room_heat_1
name: Kitchen End
- entity: switch.garden_room_heat_2
name: Lounge End
Truly loving this thermostat and thank you for all your hard work.
sensors:
- entity: <my energy entity id>
name: Energy today
- entity: <an outdoor temperature entity>
name: Outdoor temperature
- entity: <power entity>
name: Current power
First of all, thanks for doing this great card @nervetattoo !
Any chance you could change it slightly so it's not possible to go below minimum and maximum attributes for the climate entity ? E.g. not allowing the arrows to take you to minus degrees and high temperatures ? (I know that it's not being set, but it seems slightly silly and has no wife-acceptance =)).
Thanks!
The Thermostat "detail" window that opens up when clicking on the Set Temperature display on simple-thermostat has one nice feature: when changing the temperature setting in it, the new setting will change color until HA sends the command to the thermostat and confirms the change. I find this feedback information really useful.
This is a feature request to have the same behavior when change the temperature setting in the Card itself: after a change is made, change the font color (e.g. to red), wait a few seconds in case more changes are coming, and then send the command; when the setting is confirmed to be accepted by the thermostat, then return the font color ot the default value. For the choice of 'highlight' color - take in to account some ppl use dark themes so maybe make it configurable
I'm getting the error that the custom element doesn't exist. Finally got it to work last night and then new update to HA and Custom components changed and I lost my card. Love this card over the stock thermostat card. Please someone help me figure this out.
🚨 You need to enable Continuous Integration on Greenkeeper branches of this repository. 🚨
To enable Greenkeeper, you need to make sure that a commit status is reported on all branches. This is required by Greenkeeper because it uses your CI build statuses to figure out when to notify you about breaking changes.
Since we didn’t receive a CI status on the greenkeeper/initial
branch, it’s possible that you don’t have CI set up yet. We recommend using Travis CI, but Greenkeeper will work with every other CI service as well.
If you have already set up a CI for this repository, you might need to check how it’s configured. Make sure it is set to run on all new branches. If you don’t want it to run on absolutely every branch, you can whitelist branches starting with greenkeeper/
.
Once you have installed and configured CI on this repository correctly, you’ll need to re-trigger Greenkeeper’s initial pull request. To do this, please click the 'fix repo' button on account.greenkeeper.io.
Hi,
since yesterday evening my simple-thermostat card stopped working, i checked the open issues and found the Custome element doesn't exist threat. i tried to update the thermostat card with the auto updater.
But when opening the URL i get a 404: not found.
https://raw.githubusercontent.com/nervetattoo/simple-thermostat/allow-updates/tracker.json
Can you please help me?
Kind regards,
Dion
It is not too uncommon for a HVAC system to set the operation_mode automatically based on the target temperature, and offer the user the option to set fan_mode instead. In such cases, the HVAC system may regulate the room temperature by selecting cooling, heating, idling et cetera without user intervention, whereas operation_mode is a read-only variable.
It would have been nice if it was possible to configure simple-thermostat to take the fan_mode/fan_list as input for the control icons instead of operation_mode/operation_list.
The operation_mode icon could however still be rendered alongside the card name, but should also be configurable to support modes such as heat/cool regeneration, et cetera. Related to this, I would also recommend to clarify the difference between mode and state in the documentation.
I have custom_updater up and running, showing various cards and components.
I manually installed simple-thermostat, added the card and it displays with not issue.
However, custom-updater does NOT list the card at all. Tried restarting HA, reloading the UI, forcing custom_update to re-check etc.
custom_updater:
track:
- cards
- components
card_urls:
- https://raw.githubusercontent.com/nervetattoo/simple-thermostat/master/tracker.json
ui-lovelace.yaml
resources:
- url: /local/vertical-stack-in-card.js?v=v0.1.0
type: js
- url: /local/tracker-card.js?v=0.1.5
type: js
- url: /local/simple-thermostat.min.js?v=0
type: module
Invitation to bring your repo over to the community custom-cards organization: https://github.com/custom-cards/information
Let me know if you're interested and I can float you an invitation to the org. Thanks!
Can now add UI Editors to custom cards. e.g. my Roku Card
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'
Like this card way better than the stock thermostat card - awesome work.
I would really like to be able to customise the font sizes used. The card title and target temperature are quite large and the custom entities (like current temp) are a little too small.
Proposed config syntax:
- type: custom:better-thermostat
entity: climate.kjkken
embeds:
- url: <url>
ratio: 50%
- url: <url>
ratio: 50%
Embeds should probably be rendered in a wrapped grid with 1 or 2 items pr row
As asked for here it would be nice to be able to use the attribute for a foreign entity and not just attributes of the main entity.
The configuration now support entity
or attribute
for sensors, but supporting both at the same time would be even more logical and not require any configuration changes.
Hi,
Since a few days (I would say since 0.20 but can't be certain of that), my thermostat card is showing null.0°C, which makes setting the temperature impossible.
Is there any breaking change that we should be aware of ? I'm using it with a Nest Thermostat.
Thanks
I am getting the big red box of doom with this card.
Custom element doesn't exist: simple-thermostat
Config as follows:
ui.lovelace.yaml
resources:
- url: /local/simple-thermostat/simple-thermostat.js?v=1
type: module
- id: 4
icon: mdi:weather-sunset
title: Weather
background: center / cover no-repeat url("/local/galaxy-wallpaper-21.jpg") fixed
cards:
- id: 60
type: vertical-stack
cards:
- id: 61
type: weather-forecast
entity: weather.dark_sky
- id: 62
type: horizontal-stack
cards:
- id: 62a
type: "custom:mini-graph-card"
name: Temp
entity: sensor.dark_sky_temperature
# labels: true
hours_to_show: 168
# line_width: 3
- id: 62b
type: "custom:mini-graph-card"
name: Humidity
entity: sensor.dark_sky_humidity
hours_to_show: 168
- id: 63
type: horizontal-stack
cards:
- id: 63a
type: "custom:mini-graph-card"
name: Pressure
entity: sensor.dark_sky_pressure
- id: 63b
type: "custom:mini-graph-card"
name: Wind Speed
entity: sensor.dark_sky_wind_speed
- type: custom:simple-thermostat
entity: climate.thermostat
step_size: 1
sensors:
- sensor.inside_temp
file is named correctly and in the correct location
When using Fahrenheit temperature scale, temperatures are typically whole numbers and thus displaying the temperature in tenths is unnecessary and uses up space that may be needed elsewhere. Request that if the step size is a whole number that the set point temperature is also displayed as a whole number.
Optionally add a card configuration variable to enable/disable the displaying of tenths.
Climate entities often pass the step size as an attribute. Should resolve step size like card config
→ entity attributes
→ default
Hi,
thanks for that cool card! Really like it - looks way better than the default ones.
However, there seems to be a few small bugs: If a state other than on or off is set (e.g. manual or automatic), the icon will show a big "false". I think falling back to the on-icon would be a good thing here.
Also, as a side-note, the mode field doesn't widen for wider texts, it just cuts them off. Looks a bit chunky.
entity: sensor.letto_fun_mode
icon: ‘mdi:fan’
As shown on the screenshot on the project page (thermostat-card.png), localization seems to not work properly for "Temperature" and "State". Neither have I been able to have localization of the state itself.
Also, given that the translations provided through hass is not always very accurate in this area (depending on context), and all possible states may not have translations at all, it would also have been nice to have the option to override these in the card configuration.
Rather than just supporting sensors, it would be useful to be able to support the attribute of a sensor also. Reason is that many temperature sensors will also report humidity and this would avoid the need to pull it out as an additional template sensor.
Some thermostats (like the Nest) allow you to set a range of temperatures (IE: turn on the heat if it drops below 60F, turn on the a/c if it rises above 80F). When a Nest is in this mode, simple-thermostat shows "null" as the temperature setting.
Example:
Screenshot of my thermostat setting from the old legacy UI:
Since the 0.20 upgrade, my Ecobee thermostats show two "null.0" temperature selectors when in standard heat
or cool
operation modes. I believe the card is looking for the target_temp_high
and target_temp_low
attributes when these are not used in these modes. It should just be using the single target named temperature
.
Entity attribute dump:
==================================================
climate.upstairs
--------------------------------------------------
State: heat
---------- Attributes ----------
actual_humidity: 33
aux_heat: off
away_mode: off
climate_list: ['Away', 'Sleep', 'Home']
climate_mode: Home
current_temperature: 69
fan: off
fan_list: ['auto', 'on']
fan_min_on_time: 0
fan_mode: auto
friendly_name: Upstairs
hold_mode: None
max_temp: 95
min_temp: 45
operation: idle
operation_list: ['auto', 'auxHeatOnly', 'cool', 'heat', 'off']
operation_mode: heat
supported_features: 3575
target_temp_high: None
target_temp_low: None
temperature: 67
I know you can specify it as an option, but heat, cool, dry and off all have default icons, so why not fan as well.
mdi:fan
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.