{"id":1234,"date":"2023-01-13T00:48:13","date_gmt":"2023-01-12T22:48:13","guid":{"rendered":"https:\/\/cln.io\/blog\/?p=1234"},"modified":"2023-01-13T19:53:37","modified_gmt":"2023-01-13T17:53:37","slug":"home-assistant-energy-price-entity-peak-off-peak-hours","status":"publish","type":"post","link":"https:\/\/cln.io\/blog\/home-assistant-energy-price-entity-peak-off-peak-hours\/","title":{"rendered":"Home assistant &#8211; energy &#8211; price entity that switches between night and day tariff (peak and off-peak hours)"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">I have a raspberry with Home Assistant Tracking energy usage using the Aeotec Home Energy METER Gen5 (ZWave) and a WiFi Shelly 3EM (2 separate locations).<br>I was in need to track the consumed energy in \u20ac, home assistant allows you to pick a &#8220;Use an entity with current price&#8221; in the energy dashboard<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/12\/image-2-806x1024.png\" alt=\"\" class=\"wp-image-1235\" width=\"390\" height=\"495\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/12\/image-2-806x1024.png 806w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/12\/image-2-236x300.png 236w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/12\/image-2-768x976.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2022\/12\/image-2.png 946w\" sizes=\"auto, (max-width: 390px) 100vw, 390px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">I did not want to deal with automation and such, so I devised a simple template sensor that switches its &#8220;price&#8221; between specific time periods. (pro tip: convert the current hour of the day to minutes + add the current minutes)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">here we see the sensor switching price<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"571\" height=\"537\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/image-3.png\" alt=\"\" class=\"wp-image-1276\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/image-3.png 571w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/image-3-300x282.png 300w\" sizes=\"auto, (max-width: 571px) 100vw, 571px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">The new modern way of doing this would be with a template sensor<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Based on EDF&#8217;s peak and off-peak hours<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"577\" height=\"192\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/image-4.png\" alt=\"\" class=\"wp-image-1277\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/image-4.png 577w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/image-4-300x100.png 300w\" sizes=\"auto, (max-width: 577px) 100vw, 577px\" \/><\/figure>\n<\/div>\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">template:\n    - sensor:\n        - name: \"EDF Price\"\n          unique_id: edf_price\n          unit_of_measurement: EUR\/kWh\n          state:  \"\n            {% set time = now().hour * 60 + now().minute %}\n            {% if time > 750 and time &lt; 870 or time > 90 and time &lt; 450 %}\n            {{'14.70'|float\/100}}\n            {% else %}\n            {{'18.41'|float\/100}}\n            {% endif %}\n            \" <\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Depending on your peak hours they could be different:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"583\" height=\"192\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/image-5.png\" alt=\"\" class=\"wp-image-1278\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/image-5.png 583w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/image-5-300x99.png 300w\" sizes=\"auto, (max-width: 583px) 100vw, 583px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">A variant on the same template sensor<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">template:\n    - sensor:\n        - name: \"EDF Price\"\n          unique_id: edf_price\n          unit_of_measurement: EUR\/kWh\n          state:  \"\n            {% set time = now().hour * 60 + now().minute %}\n            {% set startTime = 21 * 60 + 56 %}\n            {% set endTime = 5 * 60 + 56 %}\n            {% if time >= startTime or time &lt;= endTime %}\n            {{'14.70'|float\/100}}\n            {% else %}\n            {{'18.41'|float\/100}}\n            {% endif %}\n            \" <\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"571\" height=\"543\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/brave_KlCY7pp6Qp.png\" alt=\"\" class=\"wp-image-1283\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/brave_KlCY7pp6Qp.png 571w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/brave_KlCY7pp6Qp-300x285.png 300w\" sizes=\"auto, (max-width: 571px) 100vw, 571px\" \/><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">The legacy way of doing it (don&#8217;t do this!)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/community.home-assistant.io\/t\/difference-between-sensor-platform-template-and-template-sensor\/389248\" target=\"_blank\" rel=\"noreferrer noopener\">The old way would have been adding a template under the sensor <\/a><\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#old way of doing things\nsensor:\n  - platform: template\n    sensors:   \n        edf_price:\n            friendly_name: \"EDF Price\"\n            unit_of_measurement: EUR\/kWh\n            value_template:  \"\n            {% set time = now().hour * 60 + now().minute %}\n            {% if time > 750 and time &lt; 870 or time > 90 and time &lt; 450 %}{{'14.70'|float\/100}}\n            {% else %}{{'18.41'|float\/100}}\n            {% endif %}\n            \"    <\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/arthur-lambillotte-rP1iwkrbSe0-unsplash-1024x768.jpg\" alt=\"\" class=\"wp-image-1280\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/arthur-lambillotte-rP1iwkrbSe0-unsplash-1024x768.jpg 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/arthur-lambillotte-rP1iwkrbSe0-unsplash-300x225.jpg 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/arthur-lambillotte-rP1iwkrbSe0-unsplash-768x576.jpg 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/arthur-lambillotte-rP1iwkrbSe0-unsplash-1536x1152.jpg 1536w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2023\/01\/arthur-lambillotte-rP1iwkrbSe0-unsplash.jpg 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Photo by <a href=\"https:\/\/unsplash.com\/@artlambi?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\" target=\"_blank\" rel=\"noreferrer noopener\">Arthur Lambillotte<\/a> on <a href=\"https:\/\/unsplash.com\/photos\/rP1iwkrbSe0?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText\" target=\"_blank\" rel=\"noreferrer noopener\">Unsplash<\/a>   <\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>I have a raspberry with Home Assistant Tracking energy usage using the Aeotec Home Energy METER Gen5 (ZWave) and a WiFi Shelly 3EM (2 separate locations).I was in need to track the consumed energy in [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1281,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,4],"tags":[],"class_list":["post-1234","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-automation","category-homeassistant"],"_links":{"self":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts\/1234","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/comments?post=1234"}],"version-history":[{"count":6,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts\/1234\/revisions"}],"predecessor-version":[{"id":1284,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts\/1234\/revisions\/1284"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/media\/1281"}],"wp:attachment":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/media?parent=1234"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/categories?post=1234"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/tags?post=1234"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}