Acties:
  • 0 Henk 'm!
RobertMe schreef op woensdag 18 januari 2023 @ 16:32:
[...]

Ik krijg het script zo snel niet geontleed op mijn telefoon. Maar ik gok dat dit elke X (milli)seconden een service call doet om de status bij te werken? En daarmee dus het Zigbee netwerk plat spamd? Terwijl (Hue) dit heel mooi zelf kan middels één simpel Zigbee berichtje: "stel status in op X met een transition tijd van Y".

Overigens gebruik ik zelf dan weer geen transitions in HA. Maar heb wel op Zigbee niveau scenes gedefinieerd, met ingebakken transitions. Dus in HA kan ik Z2M een scene laten oproepen en de lampen gaan dan automatisch naar de juiste status inclusief transitions. Allemaal mooi in de lampen opgeslagen en dus met 1 Zigbee bericht op te roepen (per groep). Bv bij het gaan slapen gaan 3 spotjes uit met een transition van 10 seconden terwijl de laatste uit gaat met een transition van 15 minuten.

Waarbij dat laatste mij ook ondoenlijk lijkt om in HA te doen. Een transition over vele minuten heen. Waarbij die ook nog eens moet stoppen als de state wordt veranderd. Want nu kan ik binnen die 15 minuten de lampen aan/uit doen "en dan is dat zo". Met een script in HA in een loop zal dan die loop gestopt moeten worden om te voorkomen dat die gewoon na die X (milli)seconden weer de verlichting aan zet / dimd / ....
transition wordt niet door elke lamp ondersteund, daar is dit script in eerste instantie dus voor bedoeld. Hue zou het wel moeten ondersteunen, maar blijkbaar werkt dat voor de vraagsteller niet meer, vandaar dat ik het als alternatief aanbod.

Standaard is het overigens ingesteld op een maximaal 2 updates per seconde en d e repeat in het script stopt als de lamp uitgezet wordt, dus lamp uitzetten stopt de transition.

Home Assistant configuratie


Acties:
  • 0 Henk 'm!
Zelf iets vergelijkbaars als maar dan voor een fade. Want dat blijft anders nog lastig in sync te houden. Maar vooral omdat ik het voor een Tasmota device gebruik en die helaas nog steeds geen transition ondersteunen :/ Mijn grootste issue is dat dit ook soort van flood oplevert en de led vaak nog weer een keer aan springt nadat ik hem uit zet omdat het laatste fade/set commando dan nog ergens in de pijplijn zit.

@RobertMe Zelf nu iets vergelijkbaars voor een wake up light, maar misschien de transition eens naar de bulb gooien. Maar juist een lange transition is wel makkelijk omdat die inderdaad het netwerk niet flood.

En dan misschien ook eens kijken of ik een fade kan doen voor Zigbee devices waar ik het deels met een transition doe ofzo. Zodat flooding beperkt blijft maar ik het wel kan synchroon kan laten lopen maar bijvoorbeeld uit fase of tusen Zigbee en Wifi lampen.

Acties:
  • +2 Henk 'm!
Hmmbob schreef op woensdag 18 januari 2023 @ 16:46:
[...]

Huh? Waarom wordt er iets verwijderd bij opslaan?
Ik verwacht dat de YAML wordt aangepast in de (ingebakken) dashboard editor?

@Sp33dFr34k overigens is dit ook geen HA beperking. YAML ondersteund geen multi line comment, dus HA natuurlijk ook niet. Het is al heel iets dat YAML überhaupt comments ondersteund. Immers is het een JSON afgeleide (en valid JSON is ook valid YAML), en JSON zelf ondersteund geen comments.

Acties:
  • +1 Henk 'm!
Sp33dFr34k schreef op woensdag 18 januari 2023 @ 16:38:
Is het correct dat yaml in HA geen multi line comments accepteert?

Achtergrond, ik heb wat kerstverlichting erin staan, die 90% van het jaar eruit mag. Zou handig zijn als je die zou kunnen commenten als het nodig is... Lijkt erop dat dit niet mogelijk is, hoe doen jullie dit, gewoon ergens apart opslaan?
Ik heb een input_boolean.christmas_time die ik als condition gebruik voor alles gerelateerd aan de kerst, dus de automations, maar ook de cards op m'n dashboard.

Home Assistant configuratie


Acties:
  • +1 Henk 'm!
@Sp33dFr34k Als het een card is, kan je dan niet gewoon een conditional card gebruiken?

Mijn grootste post-kerst issue is juist dat HA blijft zeuren dat het WLED device niet meer beschikbaar is. En bij een disable je dan als nog errors in je log krijgt als je dan iets probeert te doen met de enity :/

Acties:
  • +1 Henk 'm!
Sp33dFr34k schreef op woensdag 18 januari 2023 @ 16:49:
[...]


Misschien mijn stommiteit, maar ik druk op edit dashboard, edit dan mijn vertical-stack-in-card (dus geen GUI editor, alleen yaml), daar comment ik die code uit, sla het op. Als ik vervolgens dan weer het dashboard edit, dan is die code gewoon weg....

EDIT: als ik een comment probeer op te slaan via de raw configuration editor, dan krijg ik ook deze melding: Your configuration might contains comment(s), these will not be saved. Do you want to continue?
Ah, vandaar. Ik gebruik die editor niet, om precies dit soort gekkigheid.

Sometimes you need to plan for coincidence


Acties:
  • 0 Henk 'm!
TheFes schreef op woensdag 18 januari 2023 @ 16:50:
[...]


transition wordt niet door elke lamp ondersteund, daar is dit script in eerste instantie dus voor bedoeld. Hue zou het wel moeten ondersteunen, maar blijkbaar werkt dat voor de vraagsteller niet meer, vandaar dat ik het als alternatief aanbod.

Standaard is het overigens ingesteld op een maximaal 2 updates per seconde en d e repeat in het script stopt als de lamp uitgezet wordt, dus lamp uitzetten stopt de transition.
Nouja, ik snap de use case van het script. Maar het is geen oplossing voor "transition werkt niet meer". Als ik vraag van "ik moet van Maastricht naar Amsterdam en mijn auto is kapot" hoop ik ook niet dat het eerste antwoord is "hier heb je de bouwtekening voor een fiets die ik vorige week heb geschreven" :p

En "als de lamp uit is stopt die". Wat als ik de lamp aan zet / kleur/brightness verander? Dan gaat de transition wel verder en lamp dus alsnog verder uit.
Dus in zoverre nogmaals: leuk dat het kan en werkt. Maar ik zou gewoon fatsoenlijke lampen fixen of geen transitions gebruiken :)

Acties:
  • 0 Henk 'm!

  • Sp33dFr34k
  • Registratie: Juni 2006
  • Niet online

Sp33dFr34k

Retro-Geek

TheFes schreef op woensdag 18 januari 2023 @ 16:52:
[...]

Ik heb een input_boolean.christmas_time die ik als condition gebruik voor alles gerelateerd aan de kerst, dus de automations, maar ook de cards op m'n dashboard.
Dat is geen gek idee, thanks.
Septillion schreef op woensdag 18 januari 2023 @ 16:54:
@Sp33dFr34k Als het een card is, kan je dan niet gewoon een conditional card gebruiken?

Mijn grootste post-kerst issue is juist dat HA blijft zeuren dat het WLED device niet meer beschikbaar is. En bij een disable je dan als nog errors in je log krijgt als je dan iets probeert te doen met de enity :/
True, icm die helper suggestie van @TheFes is dat zeker een idee.
Hmmbob schreef op woensdag 18 januari 2023 @ 16:56:
[...]

Ah, vandaar. Ik gebruik die editor niet, om precies dit soort gekkigheid.
Ik heb al eens eerder geprobeerd daar vanaf te stappen, maar ik zie geen file van mijn dashboard die ik kan editen buiten de ingebouwde editor. Hoe doe jij het?

i7 9700k + Be-Quiet Dark Rock 4 Pro | Gigabyte Z390 Aorus Ultra | Gigabyte Aorus GTX1080TI | Samsung 970 Pro 512GB + 860 EVO 1TB | 2x8GB DDR4 3000Mhz | Seasonic Platinum 660W | Fractal Design R6 | Acer Predator X34P | M-Audio AV40


Acties:
  • +1 Henk 'm!
Sp33dFr34k schreef op woensdag 18 januari 2023 @ 16:59:
Ik heb al eens eerder geprobeerd daar vanaf te stappen, maar ik zie geen file van mijn dashboard die ik kan editen buiten de ingebouwde editor. Hoe doe jij het?
https://www.home-assistan...for-the-default-dashboard

Edit: en mijn hele config staat online: https://github.com/hmmbob/HomeAssistantConfig

[ Voor 10% gewijzigd door Hmmbob op 18-01-2023 17:06 ]

Sometimes you need to plan for coincidence


Acties:
  • +4 Henk 'm!

  • Ronker32
  • Registratie: Mei 2018
  • Nu online
Sp33dFr34k schreef op woensdag 18 januari 2023 @ 16:38:
Is het correct dat yaml in HA geen multi line comments accepteert?

Achtergrond, ik heb wat kerstverlichting erin staan, die 90% van het jaar eruit mag. Zou handig zijn als je die zou kunnen commenten als het nodig is... Lijkt erop dat dit niet mogelijk is, hoe doen jullie dit, gewoon ergens apart opslaan?
Met CTRL + / kun je een geselecteerd blok code in één keer voorzien van # of juist # weghalen. Ik weet niet hoe je het nu doet, wellicht is dit handig.

Acties:
  • 0 Henk 'm!
RobertMe schreef op woensdag 18 januari 2023 @ 16:57:
[...]
En "als de lamp uit is stopt die". Wat als ik de lamp aan zet / kleur/brightness verander? Dan gaat de transition wel verder en lamp dus alsnog verder uit.
Dus in zoverre nogmaals: leuk dat het kan en werkt. Maar ik zou gewoon fatsoenlijke lampen fixen of geen transitions gebruiken :)
Nee, als je de lamp uit zet, stopt het script. Als je lamp daarna weer aan zet, gebeurt er niets meer vanuit het script

Home Assistant configuratie


Acties:
  • 0 Henk 'm!
TheFes schreef op woensdag 18 januari 2023 @ 18:04:
[...]


Nee, als je de lamp uit zet, stopt het script. Als je lamp daarna weer aan zet, gebeurt er niets meer vanuit het script
Zover was duidelijk ;) Ik bedoelde: wat als tijdens de transition je handmatig, of via een automation, een andere kleur instelt of wat dan ook. Dan zet je hem natuurlijk niet uit. Dus dan gaat de transition verder? En wordt de wijziging weer overruled.

Acties:
  • 0 Henk 'm!
RobertMe schreef op woensdag 18 januari 2023 @ 18:50:
[...]

Zover was duidelijk ;) Ik bedoelde: wat als tijdens de transition je handmatig, of via een automation, een andere kleur instelt of wat dan ook. Dan zet je hem natuurlijk niet uit. Dus dan gaat de transition verder? En wordt de wijziging weer overruled.
Met de huidige versie zal dat inderdaad nog gebeuren, maar ik neem het mee met de verbeterpunten die ik zelf al bedacht heb.

https://github.com/TheFes/HA-configuration/issues/79

Home Assistant configuratie


Acties:
  • 0 Henk 'm!

  • Piet400
  • Registratie: Juli 2009
  • Laatst online: 20-06 14:24
Ik heb de powercalc integratie geinstalleerd, evenals de Tuya integratie, waarbij ik het vermogen van mijn power plugs kan meten/uitlezen.

Ik wil graag een historisch overzicht van het verbruik zien op dezelfde manier als het standaard Energie dashboad dat doet. iemand ervaring hiermee?

Acties:
  • 0 Henk 'm!

  • vso
  • Registratie: Augustus 2001
  • Niet online

vso

tja...

Piet400 schreef op woensdag 18 januari 2023 @ 21:28:
Ik heb de powercalc integratie geinstalleerd, evenals de Tuya integratie, waarbij ik het vermogen van mijn power plugs kan meten/uitlezen.

Ik wil graag een historisch overzicht van het verbruik zien op dezelfde manier als het standaard Energie dashboad dat doet. iemand ervaring hiermee?
thx ik ga het ook installeren,

Als je https://homeassistant-pow...s.io/en/latest/index.html leest dan kan je ergens iets aan/uit zetten dan verschijnen ze automagisch in het energie dashboard.

beetje laat maar van de week verder puzzelen

[ Voor 18% gewijzigd door vso op 18-01-2023 21:58 ]

Tja vanalles


Acties:
  • 0 Henk 'm!

  • Rouwette
  • Registratie: Maart 2007
  • Laatst online: 09-07 23:01

Rouwette

Rouwette.com

Is er al iemand die dit in HA heeft verwerkt?

https://www.rijksoverheid...+prijsplafond+per+dag.csv

https://www.rouwette.com/


Acties:
  • 0 Henk 'm!

  • n9iels
  • Registratie: November 2017
  • Niet online
Een paar mensen hier hebben dezelfde vraag gesteld: https://community.home-as...rijsplafond-sensor/508604

Denk dat het relatief eenvoudig is. Als je een sensor hebt die bijv. je huidige maand kan uitlezen en je zelf de maximum van de maand optelt kun je een meter-kaartje maken. Beetje handmatig werk, dat wel.

Acties:
  • 0 Henk 'm!

  • -Casper
  • Registratie: Juni 2012
  • Laatst online: 11:34
Waarom zou je willen werken met het prijsplafond per dag? Ben je van plan om over te gaan stappen?

Acties:
  • 0 Henk 'm!

  • gastje01
  • Registratie: Oktober 2005
  • Nu online
Nadat de Growatt integratie (zie een paar pagina's terug in dit topic) me weer in de steek liet, heb ik besloten om mijn omvormer lokaal uit te lezen over de Modbus interface in combinatie met ESPhome. Na een paar kleine hardware uitdagingen, mede door mijn gebrek aan kennis in combinatie met de verkeerde spullen, heb ik dit nu stabiel draaien. Op een Wemos ESP 32 en een SP3485 Modbus adapter draait alles nu al enige dagen stabiel waarbij ik iedere 10s de omvormer uitlees.

Allemaal mooi, maar ik krijg mijn energie-dashboard niet netjes in orde. Wanneer de opbrengst stopt, valt de omvormer uit en krijg ik geen data meer binnen. Helemaal prima, totdat deze in de ochtend weer aangaat en (kort) de totale opbrengst van de vorige dag doorgeeft waardoor mijn dashboard niet meer klopt. Ik heb in dit topic al een keer langs zien komen met een oplossing, maar mijn zoek-skills laten me in de steek. Als alternatief zou ik de totale opbrengst kunnen gebruiken, maar deze is afgerond op hele kWh's en daarmee minder precies. Dit zou in in de ESPhome configuratie aan moeten passen, maar de standaard Growatt integratie lijkt daar geen configuratiemogelijkheid voor te hebben. De waarde die via Modbus verzonden wordt is wel een stuk preciezer.

Edit: lijk het gevonden te hebben, je kan in ESPhome de nauwkeurigheid in decimalen aangeven, dat lijkt te werken. Even een dagje aankijken.

[ Voor 14% gewijzigd door gastje01 op 19-01-2023 10:13 ]


Acties:
  • 0 Henk 'm!

  • Ferrox1
  • Registratie: Augustus 2008
  • Laatst online: 11:49
Ferrox1 schreef op dinsdag 17 januari 2023 @ 20:09:
Ik heb hier een vaag probleem met home assistant. Ik heb ook al een bug report aangemaakt, maar daar wordt natuurlijk niet snel op gereageerd. Omdat ik toch nieuwsgierig ben wat het kan zijn hoop ik dat iemand hier mij in de juiste richting kan helpen. Met eventueel debuggen van de back-end en waarom de lange termijn niet goed werkt

Ik meerdere sensoren waarvan ik graag de long-term statistics (dus in de statistics tabel) zou willen zien in het verschil per dag. Dit kan met Apex Charts en dan een func. diff met group by 1 day. Dat geeft echt een heel fijn overzicht, een beetje vergelijkbaar als het energy dashboard maar dan voor iedere sensor die in HASS hebt zitten. Echter loop ik met deze integratie (en ook andere!!) tegen een probleem aan.

Het kan tot 40 seconden duren voordat de server de data uit de database als json terugstuurt naar de front end. We hebben het hier over een query uit de short_term_statistics tabel met net geen 3000 regels. Ook verschild het per sensor, maar allemaal hebben ze wel ongeveer net zoveel regels. Die kunnen dan wel terug gestuurd worden in een 4-8 seconden. Nog niet rap, maar wel acceptabel als je wat complexere zaken inzichtelijk wil hebben.

Wat ook bijzonder vind is dat ik nooit meer dan 10 dagen te zien krijg. Kortom, hij neemt niet de statistics tabel, maar alleen short term. Hier baal ik wel een beetje van dat dit niet zo werkt. Vervolgens wordt het nog gekker, in de geschiedenis kan ik ook niet verder dan 10 dagen terug kijken. Het energie dashboard kan dit wel en blijft gewoon werken, maar ook die data krijg ik niet in de geschiedenis naar boven.

Verder geen corrupte database, de data is aanwezig en kan ik met een database browser gewoon bekijken.

Ik heb versie 2023.1.4 draaien in een docker container. Herstarten helpt niet.

Iemand enig idee wat dit zou kunnen zijn?
Inmiddels iets verder. Lijkt de grootte van de database te zijn die de traagheid veroorzaakt. Dus nu wat instellingen in de recorder aangepast. Alleen nog steeds 1 (voor mij) groot probleem. Alles langer dan de recorder history instelling wordt niet getoond. Ook niet in de ingebouwde history tab van HASS zelf. Iemand enig idee wat dit is?

Acties:
  • 0 Henk 'm!

  • Borne
  • Registratie: Oktober 2009
  • Nu online
Ik probeer om de vaatwasser met een uitgestelde start automatisch te laten starten als de stroom voor 3 uur de waarde low heeft.

Ik gebruik de volgende trigger voor mijn Siemens vaatwasser

Trigger
Siemens Vaatwasser - Remote Control Start Allowed ingeschakeld

ik heb als voorwaarden het volgende gedaan

Test if 3 conditions match
- Confirm Zonneplan current tariff group is low
- Confirm Zonneplan forcast tariff group hour 1 is low
- Confirm Zonneplan forcast tariff group hour 2 is low

Acties
- Druk op de knop Siemens Vaatwasser - Start

Alle losse onderdelen los van elkaar werken. Als ik een notification zet op de tarrif group low dan krijg ik keurig een pushbericht dat hij low is. Als ik de 3 conditions vervang door bijvoorbeeld tijd:23:00. dan wacht hij ook keurig tot 23 uur en start dan de vaatwasser.

Echter het script hierboven start niet terwijl de 3 statussen van de entiteiten op dat moment low zijn.

Hier in Yaml:

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
alias: "Test: Vaatwasser remote start"
description: ""
trigger:
  - type: turned_on
    platform: device
    device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    entity_id: >-
      binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_remotecontrolstartallowed
    domain: binary_sensor
condition:
  - condition: and
    conditions:
      - condition: state
        entity_id: sensor.zonneplan_current_tariff_group
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_1
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_2
        state: low
action:
  - device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    domain: button
    entity_id: button.siemens_sx878d26pe_68a40e1d88d2_start_pause
    type: press
  - device_id: 9c5510c699d9c1c07ad79f1cf89dbcf7
    domain: mobile_app
    type: notify
    message: "Test: Vaatwasser is gestart"
    title: "Test: Vaatwasser is gestart"
mode: single


Heeft iemand een idee wat dit kan zijn en hoe dit op te lossen is?

[ Voor 0% gewijzigd door Septillion op 19-01-2023 12:47 . Reden: Denk aan de 'yaml' bij de code tags aub! ]


Acties:
  • 0 Henk 'm!

  • Slinkos
  • Registratie: Januari 2012
  • Laatst online: 08-07 11:11
Borne schreef op donderdag 19 januari 2023 @ 10:16:
Ik probeer om de vaatwasser met een uitgestelde start automatisch te laten starten als de stroom voor 3 uur de waarde low heeft.

Ik gebruik de volgende trigger voor mijn Siemens vaatwasser

Trigger
Siemens Vaatwasser - Remote Control Start Allowed ingeschakeld

ik heb als voorwaarden het volgende gedaan

Test if 3 conditions match
- Confirm Zonneplan current tariff group is low
- Confirm Zonneplan forcast tariff group hour 1 is low
- Confirm Zonneplan forcast tariff group hour 2 is low

Acties
- Druk op de knop Siemens Vaatwasser - Start

Alle losse onderdelen los van elkaar werken. Als ik een notification zet op de tarrif group low dan krijg ik keurig een pushbericht dat hij low is. Als ik de 3 conditions vervang door bijvoorbeeld tijd:23:00. dan wacht hij ook keurig tot 23 uur en start dan de vaatwasser.

Echter het script hierboven start niet terwijl de 3 statussen van de entiteiten op dat moment low zijn.

Hier in Yaml:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
alias: "Test: Vaatwasser remote start"
description: ""
trigger:
  - type: turned_on
    platform: device
    device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    entity_id: >-
      binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_remotecontrolstartallowed
    domain: binary_sensor
condition:
  - condition: and
    conditions:
      - condition: state
        entity_id: sensor.zonneplan_current_tariff_group
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_1
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_2
        state: low
action:
  - device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    domain: button
    entity_id: button.siemens_sx878d26pe_68a40e1d88d2_start_pause
    type: press
  - device_id: 9c5510c699d9c1c07ad79f1cf89dbcf7
    domain: mobile_app
    type: notify
    message: "Test: Vaatwasser is gestart"
    title: "Test: Vaatwasser is gestart"
mode: single


Heeft iemand een idee wat dit kan zijn en hoe dit op te lossen is?
Formatteer je code even met code block en specifeer dat het yaml is. Dan kunnen we ook goed controleren of je alles goed hebt gedaan qua inspringen etc.

Aangeboden: MHI Airco Wifi controller (MHI-AC-Ctrl) (Local control)


Acties:
  • 0 Henk 'm!
Borne schreef op donderdag 19 januari 2023 @ 10:16:
Ik probeer om de vaatwasser met een uitgestelde start automatisch te laten starten als de stroom voor 3 uur de waarde low heeft.

Ik gebruik de volgende trigger voor mijn Siemens vaatwasser

Trigger
Siemens Vaatwasser - Remote Control Start Allowed ingeschakeld

ik heb als voorwaarden het volgende gedaan

Test if 3 conditions match
- Confirm Zonneplan current tariff group is low
- Confirm Zonneplan forcast tariff group hour 1 is low
- Confirm Zonneplan forcast tariff group hour 2 is low

Acties
- Druk op de knop Siemens Vaatwasser - Start

Alle losse onderdelen los van elkaar werken. Als ik een notification zet op de tarrif group low dan krijg ik keurig een pushbericht dat hij low is. Als ik de 3 conditions vervang door bijvoorbeeld tijd:23:00. dan wacht hij ook keurig tot 23 uur en start dan de vaatwasser.

Echter het script hierboven start niet terwijl de 3 statussen van de entiteiten op dat moment low zijn.

Hier in Yaml:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
alias: "Test: Vaatwasser remote start"
description: ""
trigger:
  - type: turned_on
    platform: device
    device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    entity_id: >-
      binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_remotecontrolstartallowed
    domain: binary_sensor
condition:
  - condition: and
    conditions:
      - condition: state
        entity_id: sensor.zonneplan_current_tariff_group
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_1
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_2
        state: low
action:
  - device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    domain: button
    entity_id: button.siemens_sx878d26pe_68a40e1d88d2_start_pause
    type: press
  - device_id: 9c5510c699d9c1c07ad79f1cf89dbcf7
    domain: mobile_app
    type: notify
    message: "Test: Vaatwasser is gestart"
    title: "Test: Vaatwasser is gestart"
mode: single


Heeft iemand een idee wat dit kan zijn en hoe dit op te lossen is?
Wat zegt de trace van deze automation?

Afbeeldingslocatie: https://tweakers.net/i/LFHyAQe4LflVgqKow0jUxKFee4g=/800x/filters:strip_exif()/f/image/RqFsbNBoEuAGsZN0fNFDsNSb.png?f=fotoalbum_large



Overigens kan je condition een stuk korter: (niet dat het verschil maakt in je probleem, maar leest lekkerder)

YAML:
1
2
3
4
5
6
7
condition:
  - condition: state
    entity_id: 
      - sensor.zonneplan_current_tariff_group
      - sensor.zonneplan_forcast_tariff_group_hour_1
      - sensor.zonneplan_forcast_tariff_group_hour_2
    state: low


edit: oh, ik zie dat je de UI gebruikt voor je automation - die houdt van uitgebreid inderdaad :+

[ Voor 14% gewijzigd door Hmmbob op 19-01-2023 10:29 ]

Sometimes you need to plan for coincidence


Acties:
  • 0 Henk 'm!

  • Borne
  • Registratie: Oktober 2009
  • Nu online
Slinkos schreef op donderdag 19 januari 2023 @ 10:20:
[...]


Formatteer je code even met code block en specifeer dat het yaml is. Dan kunnen we ook goed controleren of je alles goed hebt gedaan qua inspringen etc.
Ik heb hem niet in Yaml geschreven maar als automation bij elkaar geklikt en hier de code geplakt voor jullie goeroes ;)

Hoe doe ik dat met Code Block?

Acties:
  • 0 Henk 'm!

  • Slinkos
  • Registratie: Januari 2012
  • Laatst online: 08-07 11:11
Volgens mij heb je een streepje teveel:

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
alias: "Test: Vaatwasser remote start"
description: ""
trigger:
  - type: turned_on
    platform: device
    device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    entity_id: >-
      binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_remotecontrolstartallowed
    domain: binary_sensor
condition: 
  condition: and
  conditions:
      - condition: state
        entity_id: sensor.zonneplan_current_tariff_group
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_1
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_2
        state: low
action:
  - device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    domain: button
    entity_id: button.siemens_sx878d26pe_68a40e1d88d2_start_pause
    type: press
  - device_id: 9c5510c699d9c1c07ad79f1cf89dbcf7
    domain: mobile_app
    type: notify
    message: "Test: Vaatwasser is gestart"
    title: "Test: Vaatwasser is gestart"
mode: single

Aangeboden: MHI Airco Wifi controller (MHI-AC-Ctrl) (Local control)


Acties:
  • +2 Henk 'm!

  • Borne
  • Registratie: Oktober 2009
  • Nu online
Hmmbob schreef op donderdag 19 januari 2023 @ 10:23:
[...]

Wat zegt de debugging van deze automation?

Overigens kan je condition een stuk korter: (niet dat het verschil maakt in je probleem, maar leest lekkerder)

YAML:
1
2
3
4
5
6
7
condition:
  - condition: state
    entity_id: 
      - sensor.zonneplan_current_tariff_group
      - sensor.zonneplan_forcast_tariff_group_hour_1
      - sensor.zonneplan_forcast_tariff_group_hour_2
    state: low


edit: oh, ik zie dat je de UI gebruikt voor je automation - die houdt van uitgebreid inderdaad :+
Door de Debugging tip lijk ik iets gevonden te hebben. _/-\o_

code:
1
2
3
4
5
6
7
Triggered by the state of binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_remotecontrolstartallowed at 18 januari 2023 om 23:37:16
Test if 3 conditions match
Druk op de knop Siemens Vaatwasser - Start
(button.siemens_sx878d26pe_68a40e1d88d2_start_pause) turned 2023-01-18T22:37:16.644590+00:00
Stopped because an error was encountered at 18 januari 2023 om 23:37:16 (runtime: 0.05 seconds)

Failed to start the selected program: Request cannot be performed since door is not closed (409)


Hij probeert natuurlijk meteen te starten nadat ik automatisch uitstellen heb geselecteerd. Ik ga een extra voorwaarde opnemen die controleert of de deur gesloten is en dan zou hij er volgens mij moeten zijn :)

Acties:
  • 0 Henk 'm!
Borne schreef op donderdag 19 januari 2023 @ 10:30:
[...]


Door de Debugging tip lijk ik iets gevonden te hebben. _/-\o_

code:
1
2
3
4
5
6
7
Triggered by the state of binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_remotecontrolstartallowed at 18 januari 2023 om 23:37:16
Test if 3 conditions match
Druk op de knop Siemens Vaatwasser - Start
(button.siemens_sx878d26pe_68a40e1d88d2_start_pause) turned 2023-01-18T22:37:16.644590+00:00
Stopped because an error was encountered at 18 januari 2023 om 23:37:16 (runtime: 0.05 seconds)

Failed to start the selected program: Request cannot be performed since door is not closed (409)


Hij probeert natuurlijk meteen te starten nadat ik automatisch uitstellen heb geselecteerd. Ik ga een extra voorwaarde opnemen die controleert of de deur gesloten is en dan zou hij er volgens mij moeten zijn :)
Of een delay

Sometimes you need to plan for coincidence


Acties:
  • 0 Henk 'm!

  • Borne
  • Registratie: Oktober 2009
  • Nu online
Dank voor de snelle antwoorden:

Vanavond het volgende eens testen:

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
alias: "Test: Vaatwasser remote start"
description: ""
trigger:
  - type: turned_on
    platform: device
    device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    entity_id: >-
      binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_remotecontrolstartallowed
    domain: binary_sensor
  - type: not_opened
    platform: device
    device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    entity_id: binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_doorstate
    domain: binary_sensor
    for:
      hours: 0
      minutes: 5
      seconds: 0
condition:
  - condition: and
    conditions:
      - condition: state
        entity_id: sensor.zonneplan_current_tariff_group
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_1
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_2
        state: low
action:
  - device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    domain: button
    entity_id: button.siemens_sx878d26pe_68a40e1d88d2_start_pause
    type: press
  - device_id: 9c5510c699d9c1c07ad79f1cf89dbcf7
    domain: mobile_app
    type: notify
    message: "Test: Vaatwasser is gestart"
    title: "Test: Vaatwasser is gestart"
mode: single


Als dit werkt dan ga ik de wasmachine en de droger op dezelfde manier doen. Dan alleen mijn vrouw nog opvoeden om de uitgestelde start knop te drukken en deurtje te sluiten :9

[ Voor 0% gewijzigd door Septillion op 19-01-2023 12:49 ]


Acties:
  • 0 Henk 'm!

  • maartend
  • Registratie: Augustus 2002
  • Laatst online: 09:08
We hebben sinds kort die laokale kalender.

Nu wil ik in Node red het volgende maken
If kalender says vroege, then verwarming woonkamer 18 graden om 05.30 uur

Laatste stuk lukt me, maar ik heb geen idee hoe ik de kalender in kan lezen in Node red.
Iemand?

Acties:
  • +1 Henk 'm!

  • Koepert
  • Registratie: Augustus 2013
  • Laatst online: 08:07
maartend schreef op donderdag 19 januari 2023 @ 11:31:
We hebben sinds kort die laokale kalender.

Nu wil ik in Node red het volgende maken
If kalender says vroege, then verwarming woonkamer 18 graden om 05.30 uur

Laatste stuk lukt me, maar ik heb geen idee hoe ik de kalender in kan lezen in Node red.
Iemand?
Onderaan: https://www.home-assistant.io/integrations/local_calendar

Calendar produceert EVENTS. Dus in NodeRed kun je Events:all node gebruiken en dan filteren naar je juiste calendar/voorwaarden. Of waarschijnlijk ook wel een Events:state node local calendar zal ook een calendar.XX entity geven.. gebruik zelf de local calender echter niet.

maar hang een debug aan de events:state en kijk wat er uit komt :)

Zie ook hier:
https://www.home-assistan...tion/templating/#calendar
https://www.home-assistan...tions/calendar#automation

[ Voor 3% gewijzigd door Koepert op 19-01-2023 11:43 ]


Acties:
  • 0 Henk 'm!

  • Obelixxx
  • Registratie: Juli 2020
  • Laatst online: 09:52
Ik wil ook eens gaan kijken naar een energie leverancier met uurtarieven.
Welke leverancier is het handigst ic, Home Assistant, heeft dus de beste integratie?

Al het advies is zeer welkom

Acties:
  • +2 Henk 'm!

  • twixx
  • Registratie: April 2000
  • Niet online
Obelixxx schreef op donderdag 19 januari 2023 @ 11:58:
Ik wil ook eens gaan kijken naar een energie leverancier met uurtarieven.
Welke leverancier is het handigst ic, Home Assistant, heeft dus de beste integratie?

Al het advies is zeer welkom
In mijn beleving maakt dat niet uit. Je haalt de marktprijzen op (b.v. Nordpool integratie) en je kunt dan daar op basis van in HA acteren.

9x Canadian Solar + Enphase IQ7+ 3,4 kWp ZZW 20º
4x Yingli + Enphase IQ7 1 kWp ZZW 25º
4x Yingli + Enphase IQ7 1 kWp ZZW 90º


Acties:
  • 0 Henk 'm!
gastje01 schreef op donderdag 19 januari 2023 @ 10:02:
Nadat de Growatt integratie (zie een paar pagina's terug in dit topic) me weer in de steek liet, heb ik besloten om mijn omvormer lokaal uit te lezen over de Modbus interface in combinatie met ESPhome. Na een paar kleine hardware uitdagingen, mede door mijn gebrek aan kennis in combinatie met de verkeerde spullen, heb ik dit nu stabiel draaien. Op een Wemos ESP 32 en een SP3485 Modbus adapter draait alles nu al enige dagen stabiel waarbij ik iedere 10s de omvormer uitlees.

Allemaal mooi, maar ik krijg mijn energie-dashboard niet netjes in orde. Wanneer de opbrengst stopt, valt de omvormer uit en krijg ik geen data meer binnen. Helemaal prima, totdat deze in de ochtend weer aangaat en (kort) de totale opbrengst van de vorige dag doorgeeft waardoor mijn dashboard niet meer klopt. Ik heb in dit topic al een keer langs zien komen met een oplossing, maar mijn zoek-skills laten me in de steek. Als alternatief zou ik de totale opbrengst kunnen gebruiken, maar deze is afgerond op hele kWh's en daarmee minder precies. Dit zou in in de ESPhome configuratie aan moeten passen, maar de standaard Growatt integratie lijkt daar geen configuratiemogelijkheid voor te hebben. De waarde die via Modbus verzonden wordt is wel een stuk preciezer.

Edit: lijk het gevonden te hebben, je kan in ESPhome de nauwkeurigheid in decimalen aangeven, dat lijkt te werken. Even een dagje aankijken.
Dan gok ik dat je ESPhome nu 0 terug geeft als de omvormer uit gaat? Mooiste zou zijn als je de availability door kan geven aan HA. Dus als de omvormer uit gaat dat de entiteit in HA 'unavailable' wordt. Dan maakt het namelijk niet meer uit dat hij het totaal van de dag ervoor even weergeeft, immers kijkt HA dan netjes naar het verschil tussen laatste echte data. En de reset naar 0 daarna is dan correct.

Kan je de ESPhome code delen?

Acties:
  • +1 Henk 'm!
Ferrox1 schreef op donderdag 19 januari 2023 @ 10:05:
[...]


Inmiddels iets verder. Lijkt de grootte van de database te zijn die de traagheid veroorzaakt. Dus nu wat instellingen in de recorder aangepast. Alleen nog steeds 1 (voor mij) groot probleem. Alles langer dan de recorder history instelling wordt niet getoond. Ook niet in de ingebouwde history tab van HASS zelf. Iemand enig idee wat dit is?
Laat je Apex Charts wel de statistics gebruiken? Standaard pakt het volgens mij alleen de recorder. Zou dan moeten met statistics optie.

En verder, waar draait je HA op? Dat maakt groot verschil hoe snel je DB is.

[ Voor 5% gewijzigd door Septillion op 19-01-2023 12:46 ]


Acties:
  • +1 Henk 'm!
@Borne Ik zou alleen maar triggeren op het sluiten van de deur (ook zonder delay). En op dat moment dan kijken of alle huidige voorwaardes waar zijn + dat delayed start aan staat. Zo ja, starten.

Btw, hoe heb jij het geïntegreerd? Ik heb namelijk geen button voor mijn HomeConnect vaatwasser. Ook al blijf ik een button een lelijke manier van service call vinden, is dat wel iets netter dan de toggles die ik heb.

Acties:
  • +1 Henk 'm!

  • Borne
  • Registratie: Oktober 2009
  • Nu online
Obelixxx schreef op donderdag 19 januari 2023 @ 11:58:
Ik wil ook eens gaan kijken naar een energie leverancier met uurtarieven.
Welke leverancier is het handigst ic, Home Assistant, heeft dus de beste integratie?

Al het advies is zeer welkom
Ik doe het met Zonneplan. https://github.com/fsaris/home-assistant-zonneplan-one Maar zoals al genoemd maakt het niet uit, kan ook op basis van Entso-E https://github.com/JaccoR/hass-entso-e of Frank Energie

Je moet met een integratie gewoon het laagste punt in de dag zien te pakken

Acties:
  • 0 Henk 'm!

  • Obelixxx
  • Registratie: Juli 2020
  • Laatst online: 09:52
Borne schreef op donderdag 19 januari 2023 @ 12:56:
[...]


Ik doe het met Zonneplan. https://github.com/fsaris/home-assistant-zonneplan-one Maar zoals al genoemd maakt het niet uit, kan ook op basis van Entso-E https://github.com/JaccoR/hass-entso-e of Frank Energie

Je moet met een integratie gewoon het laagste punt in de dag zien te pakken
Mijn vraag was eigenlijk meer bedoelt als:

Bij welke leveranciers kunnen we de prijzen inlezen automatisch.

Acties:
  • 0 Henk 'm!

  • Hari-Bo
  • Registratie: Juli 2003
  • Laatst online: 09:04
Ik heb het nu met Nordpool werkend gekregen en een overzicht van de dagtarieven.
HACS nordpool + apexcharts-card

Afbeeldingslocatie: https://tweakers.net/i/TtvWVPWKYLUat60UdlFgYnyojNM=/full-fit-in/4000x4000/filters:no_upscale():fill(white):strip_exif()/f/image/VvM8Mk2SZyfmejiqtY8cpUyr.png?f=user_large

Alleen zoek ik nu nog een oplossing om een groep in/uit te laten schakelen op de dal momenten van die dag, daar kan ik nog geen concreet voorbeeld van vinden. Iemand een suggestie?

[ Voor 3% gewijzigd door Hari-Bo op 19-01-2023 13:09 ]

Bos Stern Service Onafhankelijke Mercedes-Benz dienstverlening; diagnose, codering, retrofit, sleutelservice. ECU en tuning alle merken welkom. Projecten


Acties:
  • +2 Henk 'm!
Hari-Bo schreef op donderdag 19 januari 2023 @ 13:08:
Ik heb het nu met Nordpool werkend gekregen en een overzicht van de dagtarieven.
HACS nordpool + apexcharts-card

[Afbeelding]
Je wil misschien 1800 seconden (=30min) bij de tijd optellen, zodat de balkjes mooier vallen in je grafiek. Check Hmmbob in "Home Assistant: Open source Python3 home automation - deel 5"

Sometimes you need to plan for coincidence


Acties:
  • 0 Henk 'm!

  • Erik80
  • Registratie: Februari 2005
  • Laatst online: 01-07 08:44

Erik80

Sinds 1980

Septillion schreef op donderdag 19 januari 2023 @ 12:52:
@Borne Ik zou alleen maar triggeren op het sluiten van de deur (ook zonder delay). En op dat moment dan kijken of alle huidige voorwaardes waar zijn + dat delayed start aan staat. Zo ja, starten.

Btw, hoe heb jij het geïntegreerd? Ik heb namelijk geen button voor mijn HomeConnect vaatwasser. Ook al blijf ik een button een lelijke manier van service call vinden, is dat wel iets netter dan de toggles die ik heb.
Gebruik je de officiele integratie of de HACS versie? Laatste heeft de buttons (en meer)!

Acties:
  • 0 Henk 'm!
TheFes schreef op donderdag 19 januari 2023 @ 13:22:
[...]


Dat weet je wat het betekent als @Hmmbob een half uurtje tijd voor je heeft.
Laat de deur maar open :+

Sometimes you need to plan for coincidence


Acties:
  • 0 Henk 'm!
Staat er toch ook? O-) :+

Sometimes you need to plan for coincidence


Acties:
  • +2 Henk 'm!

  • Groen
  • Registratie: Juli 2022
  • Laatst online: 09-07 20:23
Hari-Bo schreef op donderdag 19 januari 2023 @ 13:08:
Ik heb het nu met Nordpool werkend gekregen en een overzicht van de dagtarieven.
HACS nordpool + apexcharts-card

[Afbeelding]

Alleen zoek ik nu nog een oplossing om een groep in/uit te laten schakelen op de dal momenten van die dag, daar kan ik nog geen concreet voorbeeld van vinden. Iemand een suggestie?
Ik schakel de boiler in op basis van de prijzen. Misschien heb je hier iets aan?
Zie deze posts voor de code:

Groen in "LG warmtepompboiler ervaringen" (code met sensor voor goedkoopste uren)
Groen in "LG warmtepompboiler ervaringen" (verbeterde code om boiler te schakelen)

LG-HM123MR.U34 / LG-WH27S.F5 / 1245 Wp (zuid)


Acties:
  • 0 Henk 'm!
@Erik80 Ahh, wist niet dat er een HACS versie is, toch eens mee spelen dan :) De officiële is wel heel raar opgebouwd qua controles.

Krijg je dan ook meldingen van zout, glasspoel, stoffilter etc binnen?

En mag je daar dezelfde "applicatie" voor gebruiken in HomeConnect Dev als de originele?

Acties:
  • 0 Henk 'm!

  • Borne
  • Registratie: Oktober 2009
  • Nu online
Septillion schreef op donderdag 19 januari 2023 @ 12:52:
@Borne Ik zou alleen maar triggeren op het sluiten van de deur (ook zonder delay). En op dat moment dan kijken of alle huidige voorwaardes waar zijn + dat delayed start aan staat. Zo ja, starten.

Btw, hoe heb jij het geïntegreerd? Ik heb namelijk geen button voor mijn HomeConnect vaatwasser. Ook al blijf ik een button een lelijke manier van service call vinden, is dat wel iets netter dan de toggles die ik heb.
Ik heb gewoon een Home Connect integratie en deze waarden zijn meteen bruikbaar in de automation. Ik heb dus geen button maar de entiteit heeft deze waarden al.

Acties:
  • +1 Henk 'm!

  • Erik80
  • Registratie: Februari 2005
  • Laatst online: 01-07 08:44

Erik80

Sinds 1980

Septillion schreef op donderdag 19 januari 2023 @ 13:39:
@Erik80 Ahh, wist niet dat er een HACS versie is, toch eens mee spelen dan :) De officiële is wel heel raar opgebouwd qua controles.

Krijg je dan ook meldingen van zout, glasspoel, stoffilter etc binnen?

En mag je daar dezelfde "applicatie" voor gebruiken in HomeConnect Dev als de originele?
Ik heb ze naast elkaar draaien zonder problemen. Kan dus kiezen welke entities mij het beste uitkomen ;)
Geen meldingen van glansspoel etc. maar volgens mij zit dat ook niet in de Home Connect app, toch?

Heb wel trigger op voorraad vaatwasser blokjes, maar dat regel ik met Grocy die voorraad afbouwt obv als er een programma gedraaid heeft.

Acties:
  • +1 Henk 'm!

  • Borne
  • Registratie: Oktober 2009
  • Nu online
Septillion schreef op donderdag 19 januari 2023 @ 12:52:
@Borne Ik zou alleen maar triggeren op het sluiten van de deur (ook zonder delay). En op dat moment dan kijken of alle huidige voorwaardes waar zijn + dat delayed start aan staat. Zo ja, starten.

Btw, hoe heb jij het geïntegreerd? Ik heb namelijk geen button voor mijn HomeConnect vaatwasser. Ook al blijf ik een button een lelijke manier van service call vinden, is dat wel iets netter dan de toggles die ik heb.
Dat is wel een goede inderdaad. Heb nu een 5 minuten delay na het sluiten van de deur, dan checkt hij of remote start ingeschakeld is, of de komende 3 uur de stroomprijs low is en gaat dan starten.

Kijken of dit werkt vanavond :)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
alias: "Test: Vaatwasser remote start"
description: ""
trigger:
  - type: not_opened
    platform: device
    device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    entity_id: binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_doorstate
    domain: binary_sensor
    for:
      hours: 0
      minutes: 5
      seconds: 0
condition:
  - type: is_on
    condition: device
    device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    entity_id: >-
      binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_remotecontrolstartallowed
    domain: binary_sensor
  - condition: and
    conditions:
      - condition: state
        entity_id: sensor.zonneplan_current_tariff_group
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_1
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_2
        state: low
action:
  - device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    domain: button
    entity_id: button.siemens_sx878d26pe_68a40e1d88d2_start_pause
    type: press
  - device_id: 9c5510c699d9c1c07ad79f1cf89dbcf7
    domain: mobile_app
    type: notify
    message: "Test: Vaatwasser is gestart"
    title: "Test: Vaatwasser is gestart"
mode: single

Acties:
  • 0 Henk 'm!
Erik80 schreef op donderdag 19 januari 2023 @ 14:03:
Ik heb ze naast elkaar draaien zonder problemen. Kan dus kiezen welke entities mij het beste uitkomen ;)
Maar eens mee spelen dan. Beide met zelfde keys? Geen problemen met aantal API calls dan?
Geen meldingen van glansspoel etc. maar volgens mij zit dat ook niet in de Home Connect app, toch?
Jammer, die doet de app wel :/ Dan zal het stom genoeg wel niet in de API zitten :/ En dan vragen mensen zich af waarom ik vaak voor een DIY oplossing wil gaan....
Heb wel trigger op voorraad vaatwasser blokjes, maar dat regel ik met Grocy die voorraad afbouwt obv als er een programma gedraaid heeft.
Ik gebruik poeder :+

Acties:
  • +4 Henk 'm!
TheFes schreef op maandag 16 januari 2023 @ 16:17:
Misschien leuk voor anderen.

Ik heb mijn transition script gisteren en vandaag geüpdatet zodat het werkt met brightness, color temperature (in Kelvin) en RGB

Je kunt dit toepassen op elke lamp, en ook meerdere lampen tegelijk als target gebruiken.
Er zijn selectors gebruikt, dus je kunt het ook in de GUI instellen allemaal.

Duration is in seconden, en in principe onbeperkt, dus je kun je transition uitsmeren over 2 uur (7200 seconden) als je wil. De slider in de GUI gaat niet zo ver, maar dat kun je overrulen door het handmatig in te voeren.

Het zijn twee scripts, de eerste om de instellingen in te geven, en het tweede script voert de transition uit per lamp. Dus als de ene lamp wel color_temp ondersteunt en de andere niet, of een andere min en max heeft, dan werkt dat gewoon.

https://github.com/TheFes...al/transition_lights.yaml

Update:
Ik heb een aantal verbeteringen doorgevoerd:
  • Het script stopt nu als je tijdens het script de brightness aanpast (meer dan 1.5e stap in het script, dus bij bijvoorbeeld een transition van 250 brigthness in 50 stappen, zal het script stoppen als de brightness meer dan 250/50*1.5 = 8 (afgerond) hoger of lager is dan wat verwacht wordt)
  • Je kunt er nu met een toggle/boolean variable voor kiezen om wel of niet op te splitsen in meerder service calls (sommige lampen hebben er moeite mee als je bijvoorbeeld brightness en color_temp in één keer aanpast)
  • Je kunt nu kiezen welke mode je gebruikt (gebaseerd op de standaard automation modes). Bij single wordt het niet uitgevoerd als er al een transition actief is, bij parallel worden ze gelijktijdig uitgevoerd en bij queued wordt er gewacht tot de volgende transition voltooid is
  • Wat andere kleine verbeteringen en bugfixes
Even mezelf quoten, ik heb een aantal verbeteringen doorgevoerd in het transition script, zie voor het lijstje de originele post.

[ Voor 6% gewijzigd door TheFes op 20-01-2023 08:38 ]

Home Assistant configuratie


Acties:
  • 0 Henk 'm!

  • gastje01
  • Registratie: Oktober 2005
  • Nu online
Septillion schreef op donderdag 19 januari 2023 @ 12:41:
[...]

Dan gok ik dat je ESPhome nu 0 terug geeft als de omvormer uit gaat? Mooiste zou zijn als je de availability door kan geven aan HA. Dus als de omvormer uit gaat dat de entiteit in HA 'unavailable' wordt. Dan maakt het namelijk niet meer uit dat hij het totaal van de dag ervoor even weergeeft, immers kijkt HA dan netjes naar het verschil tussen laatste echte data. En de reset naar 0 daarna is dan correct.

Kan je de ESPhome code delen?
Zeker, al denk ik het nu opgelost te hebben met de totale waarde, die zou als het goed is alleen maar op moeten lopen en niet moeten resetten. Door de nauwkeurigheid daar iets te verhogen (lees, de afronding er uit te halen), zou dat nu ook goed moeten gaan.

Voor de geinteresseerden:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
esphome:
  name: omvormer-zolder

esp32:
  board: wemos_d1_mini32
  framework:
    type: arduino

# Enable logging
logger:
  level: verbose
  baud_rate: 0

ota:
  password: <password>

mqtt:
  broker: <mqttbrokerIP>
  username: <mqttuser>
  password: <mqttpass>

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

captive_portal:

time:
  - platform: sntp
    id: sntp_time  

uart:
  - id: mod_bus
    baud_rate: 9600
    tx_pin: GPIO17
    rx_pin: GPIO16

modbus:
  uart_id: mod_bus

sensor:
  - platform: growatt_solar
    update_interval: 10s
    protocol_version: RTU2

    inverter_status:
      name: "Growatt Status Code"

    phase_a:
      voltage:
          name: "Net Voltage"
      current:
          name: "Net Current"
      active_power:
          name: "Net Power"

    pv1:
      voltage:
          name: "PV Oost Voltage"
      current:
          name: "PV Oost Ampere"
      active_power:
          name: "PV Oost Wattage"

    pv2:
      voltage:
          name: "PV West Voltage"
      current:
          name: "PV West Ampere"
      active_power:
          name: "PV West Wattage"

    active_power:
      name: "Wattage Totaal Net"

    pv_active_power:
      name: "Wattage Totaal PV"

    frequency:
      name: "Net Frequentie"

    energy_production_day:
      name: "PV Productie Vandaag"

    total_energy_production:
      name: "PV Productie Totaal"
      accuracy_decimals: 3

    inverter_module_temp:
      name: "Omvormer Temperatuur"

Acties:
  • 0 Henk 'm!

  • mrbert
  • Registratie: Augustus 2003
  • Laatst online: 09-07 18:57
Hallo,
Ik probeer home assistant aan de praat te krijgen in een oracle VM
Op zich werkt het en zie ik een hoop integraties verschijnen.
Alleen zie ik mijn MQTT stekers niet.
De broker is wel gestart
2023-01-19 16:12:00: Client <unknown> disconnected, not authorised.
2023-01-19 16:14:02: New connection from 192.168.1.142:57085 on port 1883.
Ik heb dit in de configuratie van de mosqitto broker staan.
code:
1
2
3
4
5
6
7
8
9
10
active: false
folder: mosquitto
logins: []
customize:
  active: false
  folder: mosquitto
  anonymous: true
certfile: fullchain.pem
keyfile: privkey.pem
require_certificate: false

Ik zal iets four doen maar heb al heel wat gegoogled maar niet echt kunnen vinden hoe ik dit kan verhelpen.
Heeft ier iemand een tip?

mrbert


Acties:
  • 0 Henk 'm!

  • Timo002
  • Registratie: September 2003
  • Niet online
Ik heb Homeassistant opnieuw geïnstalleerd, schone installatie. Eerst had ik het via docker op mijn synology. Nu via een virtual machine op mijn synology. Geen gedoe met de zigbee usb stick, werkt gewoon direct.

Nu heb ik meer gegevens van het energie dashboard in de andere installatie staan en ik heb nog een redelijk recente backup. Kan ik specifiek alleen die historische data importeren in de nieuwe installatie?

Acties:
  • 0 Henk 'm!

  • Turb0Turb0
  • Registratie: Juni 2007
  • Laatst online: 09:10
Sinds vandaag 13:00 ineens geen verbinding meer met de thermostaat.

intergas via config
YAML:
1
2
incomfort:
  host: 192.168.1.43



Afbeeldingslocatie: https://tweakers.net/i/TJTx2Jqv3D88AmL3RRyMQLr1yVg=/800x/filters:strip_exif()/f/image/WhDh7rdzqTt3TaHj5RBcSwUH.png?f=fotoalbum_large

Nu werkte de app van intergas op de telefoon ook niet vandaag maar dat is inmiddels vanzelf weer gaan werken. Dat gebeurt wel vaker helaas.

Ik heb alles (intergas gateway, HA, router, switch) al opnieuw opgestart maar HA blijft dit aangeven.

Acties:
  • +1 Henk 'm!

  • gazzzman61
  • Registratie: November 2012
  • Laatst online: 11:44
Turb0Turb0 schreef op donderdag 19 januari 2023 @ 18:53:
Sinds vandaag 13:00 ineens geen verbinding meer met de thermostaat.

intergas via config
YAML:
1
2
incomfort:
  host: 192.168.1.43



[Afbeelding]

Nu werkte de app van intergas op de telefoon ook niet vandaag maar dat is inmiddels vanzelf weer gaan werken. Dat gebeurt wel vaker helaas.

Ik heb alles (intergas gateway, HA, router, switch) al opnieuw opgestart maar HA blijft dit aangeven.
Waarschijnlijk heeft ie een nieuwe ip-adres gekregen bij het opnieuw opstarten?

Canon 5dMkIV


Acties:
  • 0 Henk 'm!

  • Turb0Turb0
  • Registratie: Juni 2007
  • Laatst online: 09:10
gazzzman61 schreef op donderdag 19 januari 2023 @ 19:03:
[...]


Waarschijnlijk heeft ie een nieuwe ip-adres gekregen bij het opnieuw opstarten?
Nee ook al check gedaan, heeft vast ip adres.

Acties:
  • 0 Henk 'm!

  • Slinkos
  • Registratie: Januari 2012
  • Laatst online: 08-07 11:11
Turb0Turb0 schreef op donderdag 19 januari 2023 @ 19:25:
[...]


Nee ook al check gedaan, heeft vast ip adres.
Reageert hij op Ping?

Aangeboden: MHI Airco Wifi controller (MHI-AC-Ctrl) (Local control)


Acties:
  • 0 Henk 'm!

  • Aziraphale
  • Registratie: September 2013
  • Laatst online: 11:39
Septillion schreef op woensdag 18 januari 2023 @ 13:21:
@Aziraphale Ja, de eerste template die ik noemde kan je ook aanpassen naar de total yield :)
Ik heb hem aangepast en toen ook de total yield uit de sensor.yaml verwijderd, maar vandaag deed niks meer. Ik heb toen hem verwijderd van het energie dashboard, maar nu staat hij niet meer in het keuzelijstje voor de zonnepanelen en een paar sensoren die ik al niet meer heb nog wel. :? Enig idee hoe dit kan?

3120WP Solax, 4825WP SolarEdge, Nibe S2125-8 met een VVMS320, 7680Wh Zendure Hyper 2000.


Acties:
  • 0 Henk 'm!

  • Turb0Turb0
  • Registratie: Juni 2007
  • Laatst online: 09:10
Die had ik niet getest (stom achteraf) maar dat doet hij inderdaad niet.. Terwijl ik hem wel in de router zie, met een lanscanner ook gewoon op zijn eigen ip zie en hem in een browser ook gewoon kan benaderen.
Afbeeldingslocatie: https://tweakers.net/i/vpyMFQrq9D38Hx_uaSEJLpe4nfY=/800x/filters:strip_exif()/f/image/r0ischJtjmdM2RafbCrCoM6H.png?f=fotoalbum_large

Acties:
  • 0 Henk 'm!

  • Slinkos
  • Registratie: Januari 2012
  • Laatst online: 08-07 11:11
Turb0Turb0 schreef op donderdag 19 januari 2023 @ 19:57:
[...]


Die had ik niet getest (stom achteraf) maar dat doet hij inderdaad niet.. Terwijl ik hem wel in de router zie, met een lanscanner ook gewoon op zijn eigen ip zie en hem in een browser ook gewoon kan benaderen.
[Afbeelding]
Ah ok maar benader je hem in de browser op IP? Ping zou ook geblokkeerd kunnen zijn…

Aangeboden: MHI Airco Wifi controller (MHI-AC-Ctrl) (Local control)


Acties:
  • 0 Henk 'm!

  • Turb0Turb0
  • Registratie: Juni 2007
  • Laatst online: 09:10
Slinkos schreef op donderdag 19 januari 2023 @ 20:00:
[...]

Ah ok maar benader je hem in de browser op IP? Ping zou ook geblokkeerd kunnen zijn…
Ja gewoon 192.168.1.43 in de browser, kan de rest in mijn lan wel pingen. 8)7

Acties:
  • +1 Henk 'm!

  • Ferrox1
  • Registratie: Augustus 2008
  • Laatst online: 11:49
Septillion schreef op donderdag 19 januari 2023 @ 12:45:
[...]

Laat je Apex Charts wel de statistics gebruiken? Standaard pakt het volgens mij alleen de recorder. Zou dan moeten met statistics optie.

En verder, waar draait je HA op? Dat maakt groot verschil hoe snel je DB is.
Ik kreeg die statistics optie niet goed aan de gang. Maar nu wel, dus dankjewel voor de hint! Ik moest mean gebruiken i.p.v. state.

Hij draait op een DS918+ met SSD cache in docker. Maar heb met nu de recorder aanpassingen al een flinke snelheidsboost gekregen. Die statistics werken ook sneller. Dus ik ben tevreden! En ik bedenk nu al weer dingen die beter kunnen >:)

Vind het alleen nog steeds raar dat de originele history van HASS zelf er niet mee om kan gaan...

Acties:
  • +1 Henk 'm!

  • Ferrox1
  • Registratie: Augustus 2008
  • Laatst online: 11:49
Groen schreef op donderdag 19 januari 2023 @ 13:27:
[...]


Ik schakel de boiler in op basis van de prijzen. Misschien heb je hier iets aan?
Zie deze posts voor de code:

Groen in "LG warmtepompboiler ervaringen" (code met sensor voor goedkoopste uren)
Groen in "LG warmtepompboiler ervaringen" (verbeterde code om boiler te schakelen)
En @Hari-Bo , Wellicht dat je dit kunt gebruiken:

https://www.creatingsmart...vices-for-cheapest-hours/

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
    - name: 'goedkoopste_n_uur_morgen_overdag'
      # Set unique_id to a 32-digit random number or UUID
      unique_id: '5da7bd8e3457a8266d81082ca12129f4'
      device_class: 'timestamp'
      state: >
          {%- set numberOfSequentialHours = states('input_text.aantal_goedkoopste_uren_achter_elkaar') | int() -%}
          {%- set lastHour = states('input_text.eindtijd_dag') | int() -%}
          {%- set firstHour = states('input_text.start_tijd_dag') | int() -%}
          {%- if state_attr('sensor.nordpool_kwh_nl_eur_4_08_0', 'tomorrow_valid') == true -%}
            {%- set ns = namespace(counter=0, list=[], cheapestHour=today_at("00:00") + timedelta( hours = (24)), cheapestPrice=999.00) -%}
            {%- for i in range(firstHour + numberOfSequentialHours, lastHour+1) -%}
              {%- set ns.counter = 0.0 -%}
              {%- for j in range(i-numberOfSequentialHours, i) -%}
                {%- set ns.counter = ns.counter + state_attr('sensor.nordpool_kwh_nl_eur_4_08_0', 'tomorrow')[j] -%}
              {%- endfor -%}
              {%- set ns.list = ns.list + [ns.counter] -%}
              {%- if ns.counter < ns.cheapestPrice -%}
                {%- set ns.cheapestPrice = ns.counter -%}
                {%- set ns.cheapestHour = today_at("00:00") + timedelta( hours = (24 + i - numberOfSequentialHours)) -%}
              {%- endif -%}
            {%- endfor -%}
            {{ ns.cheapestHour }}
            {%- set ns.cheapestPrice = ns.cheapestPrice / numberOfSequentialHours -%}
          {%- endif -%}


Let niet op de naamgeving ;)

Ik heb uiteindelijk de start tijd, eindtijd en duur in variabelen gezet. Via een atomation reken ik alle gunstige tijden uit die ik nodig heb.

YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
alias: Overnemen goedkoopste uren naar vandaag
description: ""
trigger:
  - platform: time
    at: "23:10:00"
condition: []
action:
  - service: input_text.set_value
    data:
      value: "0"
    target:
      entity_id: input_text.start_tijd_dag
  - service: input_text.set_value
    data:
      value: "23"
    target:
      entity_id: input_text.eindtijd_dag
  - service: input_text.set_value
    data:
      value: "3"
    target:
      entity_id: input_text.aantal_goedkoopste_uren_achter_elkaar
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - service: input_datetime.set_datetime
    data:
      datetime: >-
        {{ (as_timestamp(states('sensor.goedkoopste_n_uur_morgen_overdag'))
        |timestamp_custom('%Y-%m-%d %H:%M') ) }}
    target:
      entity_id: input_datetime.goedkoopste_3_uur_vandaag
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 5
  - service: input_text.set_value
    data:
      value: "0"
    target:
      entity_id: input_text.start_tijd_dag
  - service: input_text.set_value
    data:
      value: "23"
    target:
      entity_id: input_text.eindtijd_dag
  - service: input_text.set_value
    data:
      value: "1"
    target:
      entity_id: input_text.aantal_goedkoopste_uren_achter_elkaar
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - service: input_datetime.set_datetime
    data:
      datetime: >-
        {{ (as_timestamp(states('sensor.goedkoopste_n_uur_morgen_overdag'))
        |timestamp_custom('%Y-%m-%d %H:%M') ) }}
    target:
      entity_id: input_datetime.goedkoopste_uur_vandaag
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 5
  - service: input_text.set_value
    data:
      value: "10"
    target:
      entity_id: input_text.start_tijd_dag
  - service: input_text.set_value
    data:
      value: "20"
    target:
      entity_id: input_text.eindtijd_dag
  - service: input_text.set_value
    data:
      value: "1"
    target:
      entity_id: input_text.aantal_goedkoopste_uren_achter_elkaar
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - service: input_datetime.set_datetime
    data:
      datetime: >-
        {{ (as_timestamp(states('sensor.goedkoopste_n_uur_morgen_overdag'))
        |timestamp_custom('%Y-%m-%d %H:%M') ) }}
    target:
      entity_id: input_datetime.goedkoopste_uur_overdag
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 5
  - service: input_text.set_value
    data:
      value: "10"
    target:
      entity_id: input_text.start_tijd_dag
  - service: input_text.set_value
    data:
      value: "20"
    target:
      entity_id: input_text.eindtijd_dag
  - service: input_text.set_value
    data:
      value: "3"
    target:
      entity_id: input_text.aantal_goedkoopste_uren_achter_elkaar
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - service: input_datetime.set_datetime
    data:
      datetime: >-
        {{ (as_timestamp(states('sensor.goedkoopste_n_uur_morgen_overdag'))
        |timestamp_custom('%Y-%m-%d %H:%M') ) }}
    target:
      entity_id: input_datetime.goedkoopste_3_uur_overdag
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 5
  - service: input_text.set_value
    data:
      value: "10"
    target:
      entity_id: input_text.start_tijd_dag
  - service: input_text.set_value
    data:
      value: "20"
    target:
      entity_id: input_text.eindtijd_dag
  - service: input_text.set_value
    data:
      value: "2"
    target:
      entity_id: input_text.aantal_goedkoopste_uren_achter_elkaar
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - service: input_datetime.set_datetime
    data:
      datetime: >-
        {{ (as_timestamp(states('sensor.goedkoopste_n_uur_morgen_overdag'))
        |timestamp_custom('%Y-%m-%d %H:%M') ) }}
    target:
      entity_id: input_datetime.goedkoopste_2_uur_overdag
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 5
  - service: input_text.set_value
    data:
      value: "0"
    target:
      entity_id: input_text.start_tijd_dag
  - service: input_text.set_value
    data:
      value: "23"
    target:
      entity_id: input_text.eindtijd_dag
  - service: input_text.set_value
    data:
      value: "2"
    target:
      entity_id: input_text.aantal_goedkoopste_uren_achter_elkaar
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - service: input_datetime.set_datetime
    data:
      datetime: >-
        {{ (as_timestamp(states('sensor.goedkoopste_n_uur_morgen_overdag'))
        |timestamp_custom('%Y-%m-%d %H:%M') ) }}
    target:
      entity_id: input_datetime.goedkoopste_2_uur_vandaag
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 5
  - service: input_text.set_value
    data:
      value: "0"
    target:
      entity_id: input_text.start_tijd_dag
  - service: input_text.set_value
    data:
      value: "7"
    target:
      entity_id: input_text.eindtijd_dag
  - service: input_text.set_value
    data:
      value: "1"
    target:
      entity_id: input_text.aantal_goedkoopste_uren_achter_elkaar
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - service: input_datetime.set_datetime
    data:
      datetime: >-
        {{ (as_timestamp(states('sensor.goedkoopste_n_uur_morgen_overdag'))
        |timestamp_custom('%Y-%m-%d %H:%M') ) }}
    target:
      entity_id: input_datetime.goedkoopste_uur_vannacht
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 5
  - service: input_text.set_value
    data:
      value: "0"
    target:
      entity_id: input_text.start_tijd_dag
  - service: input_text.set_value
    data:
      value: "7"
    target:
      entity_id: input_text.eindtijd_dag
  - service: input_text.set_value
    data:
      value: "2"
    target:
      entity_id: input_text.aantal_goedkoopste_uren_achter_elkaar
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - service: input_datetime.set_datetime
    data:
      datetime: >-
        {{ (as_timestamp(states('sensor.goedkoopste_n_uur_morgen_overdag'))
        |timestamp_custom('%Y-%m-%d %H:%M') ) }}
    target:
      entity_id: input_datetime.goedkoopste_2_uur_vannacht
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 5
  - service: input_text.set_value
    data:
      value: "0"
    target:
      entity_id: input_text.start_tijd_dag
  - service: input_text.set_value
    data:
      value: "7"
    target:
      entity_id: input_text.eindtijd_dag
  - service: input_text.set_value
    data:
      value: "3"
    target:
      entity_id: input_text.aantal_goedkoopste_uren_achter_elkaar
  - delay:
      hours: 0
      minutes: 0
      seconds: 5
      milliseconds: 0
  - service: input_datetime.set_datetime
    data:
      datetime: >-
        {{ (as_timestamp(states('sensor.goedkoopste_n_uur_morgen_overdag'))
        |timestamp_custom('%Y-%m-%d %H:%M') ) }}
    target:
      entity_id: input_datetime.goedkoopste_3_uur_vannacht
mode: single


En die gooi ik weer in sensoren zodat ik de tijd tot krijg (ben er nog niet achter hoe ik dat met de inputs kan doen... scheelt een bak sensoren als dat wel kan)

Voorbeeldje:
YAML:
1
2
3
4
5
6
    - name: 'tijd_tot_goedkoopste_uur_vandaag'
      # Set unique_id to a 32-digit random number or UUID
      unique_id: '5da7bd8e3457a9266d81082ca12129f4'
      device_class: 'timestamp'
      state: >
        {{ states('input_datetime.goedkoopste_uur_vandaag') | as_datetime | as_local }}


Het enige wat ik nu nog zou willen is dat hij ook over een nacht uit kan rekenen wat de goedkoopste x uren zijn. Maar daar ben ik nog niet aan toe gekomen.

Acties:
  • +9 Henk 'm!

  • GENETX
  • Registratie: Juni 2005
  • Laatst online: 09-07 22:38
@Borne @Ferrox1

Meh, zoveel yaml doet pijn aan mijn ogen :+ . Ik ben beter in nog veel meer Python ;(
Spoiler, de 3e post hier bevat de "calculate" functie die daadwerkelijk de optimale starttijd bepaald: GENETX in "Home Assistant: Open source Python3 home automation - deel 5"

Voor het geval jullie er wat aan hebben, mijn domme vaatwasser (maar slim gemaakt met een schakelaartje) plan ik in op basis van het goedkoopste of duurzaamste moment. Zie ook GENETX in "Je favoriete automatisering op de frontpage"

Afbeeldingslocatie: https://tweakers.net/i/cw6F76gRcFQnrqjIqrQ6OPUGZhY=/234x176/filters:strip_exif()/f/image/Fln3GpKXBnVmdnYHzibHsdrQ.png?f=fotoalbum_medium

Ik heb dit in AppDaemon gezet en hoop binnenkort wat breder te delen, maar de code lijkt nu goed te werken en heeft al iets van documentatie. Dus ik deel dit maar voor het geval het jullie helpt. Dit rekent het optimale moment uit (en dat is een vrij simpel algoritme). Dan hoef je ook niet af te gaan op Zonneplan "Low", maar kun je gewoon het optimum bepalen >:)

Interface
YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
type: custom:stack-in-card
cards:
  - type: entities
    entities:
      - entity: sensor.stopcontact_vaatwasser_power
        name: Vaatwasser activiteit
        type: custom:secondaryinfo-entity-row
        secondary_info: '[[ sensor.vaatwasser_plan_status ]]'
      - entity: sensor.laatste_vaatwas
        name: Laatste vaatwas
        icon: mdi:history
        type: custom:secondaryinfo-entity-row
        secondary_info: '[[ sensor.laatste_vaatwas_info ]]'
    title: Vaatwasser
    footer:
      type: graph
      entity: sensor.stopcontact_vaatwasser_power
      detail: 2
    show_header_toggle: false
    state_color: true
  - type: entities
    entities:
      - entity: sensor.vaatwasser_plan_price
        name: Laagste kosten
        icon: mdi:currency-eur
        type: custom:secondaryinfo-entity-row
        secondary_info: '[[ sensor.vaatwasser_plan_price.attributes.info ]]'
      - entity: sensor.vaatwasser_plan_co2
        name: Laagste uitstoot
        icon: mdi:molecule-co2
        type: custom:secondaryinfo-entity-row
        secondary_info: '[[ sensor.vaatwasser_plan_co2.attributes.info ]]'
      - entity: sensor.vaatwasser_plan_clever
        name: Slimste keuze
        icon: mdi:leaf
        type: custom:secondaryinfo-entity-row
        secondary_info: '[[ sensor.vaatwasser_plan_clever.attributes.info ]]'
      - type: section
      - entity: input_boolean.vaatwasser_smartstart
        name: Smart Start
        secondary_info: >-
          {% if is_state('input_boolean.vaatwasser_smartstart', 'on') %} Actief
          {% else %} Uit {% endif %}
        tap_action:
          action: toggle
        extend_paper_buttons_row:
          hide_state: true
          position: right
          buttons:
            - entity: input_button.vaatwasser_goedkoop
              name: false
              tap_action:
                action: call-service
                service: input_button.press
                service_data:
                  entity_id: input_button.vaatwasser_goedkoop
            - entity: input_button.vaatwasser_co2
              name: false
              tap_action:
                action: call-service
                service: input_button.press
                service_data:
                  entity_id: input_button.vaatwasser_co2
            - entity: input_button.vaatwasser_clever
              name: false
              tap_action:
                action: call-service
                service: input_button.press
                service_data:
                  entity_id: input_button.vaatwasser_clever
            - entity: switch.stopcontact_vaatwasser
              name: false
              icon: mdi:power
              tap_action:
                action: toggle
      - entity: input_datetime.vaatwasser_starttijd
    title: Vaatwasser Smart Start
    show_header_toggle: false
    state_color: true
  - type: custom:apexcharts-card
    apex_config:
      chart:
        height: 200px
    experimental:
      color_threshold: true
    graph_span: 24h
    span:
      start: hour
      offset: +1h
    update_interval: +15m
    header:
      title: Kosten per vaatwas [€]
      show: true
    series:
      - entity: sensor.vaatwasser_plan
        color_threshold:
          - value: 0
            color: '#04822e'
          - value: 0.2
            color: '#12A141'
          - value: 0.266
            color: '#79B92C'
          - value: 0.333
            color: '#C4D81D'
          - value: 0.4
            color: '#F3DC0C'
          - value: 0.466
            color: '#EFA51E'
          - value: 0.533
            color: '#E76821'
          - value: 0.6
            color: '#DC182F'
        type: column
        float_precision: 2
        data_generator: |
          return entity.attributes.forecast.map((entry) => {
             return [new Date(entry.datetime), entry.costs];
           });
    yaxis:
      - id: '1'
        decimals: 2
        min: 0
        max: 0.667
  - type: custom:apexcharts-card
    apex_config:
      chart:
        height: 200px
    experimental:
      color_threshold: true
    graph_span: 24h
    span:
      start: hour
      offset: +1h
    update_interval: +15m
    header:
      title: Uitstoot per vaatwas [gCO2]
      show: true
    series:
      - entity: sensor.vaatwasser_plan
        color_threshold:
          - value: 0
            color: '#04822e'
          - value: 67
            color: '#12A141'
          - value: 133
            color: '#79B92C'
          - value: 200
            color: '#C4D81D'
          - value: 266
            color: '#F3DC0C'
          - value: 333
            color: '#EFA51E'
          - value: 400
            color: '#E76821'
          - value: 466
            color: '#DC182F'
        type: column
        float_precision: 2
        data_generator: |
          return entity.attributes.forecast.map((entry) => {
             return [new Date(entry.datetime), entry.co2];
           });
    yaxis:
      - id: '1'
        decimals: 0
        min: 0
        max: 667

Acties:
  • +1 Henk 'm!

  • GENETX
  • Registratie: Juni 2005
  • Laatst online: 09-07 22:38
AppDaemon code
Python:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
import appdaemon.plugins.hass.hassapi as hass
import const

import math
import time
import datetime
from dateutil import parser
from datetime import timedelta
from datetime import timezone

class VaatwasserApp(hass.Hass): 
    def initialize(self):   
        # MQTT
        self.mqtt = self.get_plugin_api("MQTT") 
        
        # Config
        self.devname = "vaatwasser"
        self.powerthreshold = 1.0
        self.delay = 300

        # Add time restrictions to devices
        self.allowedStartHour = None
        self.allowedEndHour = None  # Including, so 22 means 22:59 is also allowed!
    
        self.timestep = 900 
        
        # Profiles in Watts
        # Vaatwasser = 1.3kWh
        self.profile = [200, 1704, 1139, 66, 44, 1592, 462, 4, 5]
    
        # State
        self.running = False
        self.waiting = False
        self.smartstarttimer = None
        
        self.energy = 0
        self.costs = 0
        self.co2 = 0
        
        self.delaytimer = None
        self.finishtimer = None

        # Listeners
        self.listen_state(self.changed_power, "sensor.stopcontact_"+self.devname+"_power")
        self.listen_state(self.changed_energy, "sensor.stopcontact_"+self.devname+"_energy")
        
        self.listen_state(self.changed_powerswitch, "switch.stopcontact_"+self.devname, old="off", new="on")
        self.listen_state(self.changed_datetime, "input_datetime."+self.devname+"_starttijd")
        
        self.listen_state(self.click_button_price, "input_button."+self.devname+"_goedkoop")
        self.listen_state(self.click_button_co2, "input_button."+self.devname+"_co2")
        self.listen_state(self.click_button_clever, "input_button."+self.devname+"_clever")

        # Initial state
        self.set_state("sensor."+self.devname+"_plan_status", state="Inactief") 
        if float(self.get_state("sensor.stopcontact_"+self.devname+"_power")) >= self.powerthreshold:
            self.running = True
            self.set_state("sensor."+self.devname+"_plan_status", state="Actief")

        # Optimal scheduling
        self.run_in(self.calculate, 10)
        
        
        # Restore
        if float(self.get_state("sensor.stopcontact_"+self.devname+"_power")) >= self.powerthreshold:
            self.running = True
            self.set_state("sensor."+self.devname+"_plan_status", state="Actief")

    def changed_power(self, entity, attribute, old, new, kwargs):
        # First check the smart start and disable the device if needed
        smartstart = self.get_state("input_boolean."+self.devname+"_smartstart") == "on"
        smarttime = int(self.get_state("input_datetime."+self.devname+"_starttijd", attribute="timestamp"))
        thistime = int(time.time())
        
        # Check if we should delay the start
        if smartstart and not thistime >= smarttime-10 and not self.waiting and self.get_state(const.auto) == "on":
            # We should turn off the device if it is consuming
            if float(new) >= self.powerthreshold:
                # This is the only way to turn off with smart start due to the initial power peak when setting a mode
                # This will be triggered after 15 seconds. Hence, we have 15 seconds to set to turn on the dishwasher, set the mode, and press start
                self.run_in(self.smart_turn_off, 15)
                
            
        # Else, we should be running and this code should do the accounting + notification trigger
        else:
            # Device is running
            if float(new) >= self.powerthreshold:
                # Make sure we don't get false notifications
                if self.finishtimer is not None:
                    try:    
                        self.cancel_timer(self.finishtimer)
                        self.finishtimer = None
                    except:
                        pass
                    
                # Reset accounting triggers
                if not self.running:
                    # Reset the defaults
                    self.running = True
                    self.waiting = False
                    self.energy = 0
                    self.costs = 0
                    self.co2 = 0
                    
                    # Calculate the end time:
                    et = datetime.datetime.fromtimestamp(int(time.time())+len(self.profile)*self.timestep)
                    
                    s = "Actief - Klaar rond "+et.strftime('%H:%M')
                    self.set_state("sensor."+self.devname+"_plan_status", state=s)
            
            # Device seems to be idle
            # Activate the delay if needed
            else:
                if self.running and self.finishtimer is None:
                    self.finishtimer = self.run_in(self.timer_finish, self.delay)
                

    # This is the only way to turn off with smart start due to the initial power peak when setting a mode
    # This will be triggered after 30 seconds. Hence, we have 30 seconds to set to turn on the dishwasher, set the mode, and press start
    def smart_turn_off(self, kwargs):
        # First check the smart start and disable the device if needed
        smartstart = self.get_state("input_boolean."+self.devname+"_smartstart") == "on"
        smarttime = int(self.get_state("input_datetime."+self.devname+"_starttijd", attribute="timestamp"))
        thistime = int(time.time())
        
        # Check if we should delay the start
        if smartstart and not thistime >= smarttime and not self.waiting and self.get_state(const.auto) == "on":
            # Set the waiting state
            self.waiting = True
            self.running = False
            self.turn_off("switch.stopcontact_"+self.devname)
                    
            # Set a message in the interface:
            s = "Uitgesteld met Smart Start"
            self.set_state("sensor."+self.devname+"_plan_status", state=s)
            
            # Set the timer for the smart start
            st = self.get_state("input_datetime."+self.devname+"_starttijd")
            self.smartstarttimer = self.run_at(self.delayed_start, st)
    
    
    
    # Activate after delayed start
    def delayed_start(self, kwargs):
        smartstart = self.get_state("input_boolean."+self.devname+"_smartstart") == "on"
        smarttime = int(self.get_state("input_datetime."+self.devname+"_starttijd", attribute="timestamp"))
        thistime = int(time.time())
        
        # Check if we should start
        if smartstart and self.get_state(const.auto) == "on":
            self.waiting = False
            self.smartstarttimer = None
            
            # Start the device
            self.turn_on("switch.stopcontact_"+self.devname)
            
            # And push a notification
            self.call_service("notify/mobile_app_smartphone", message="De "+self.devname+" start nu door middel van Smart Start", title="Witgoed")
            
    # Cleanup if we decide to flick the switch now      
    def changed_powerswitch(self, entity, attribute, old, new, kwargs):
        try:
            self.waiting = False
            if self.smartstarttimer is not None:
                self.cancel_timer(self.smartstarttimer)
                self.smartstarttimer = None
        except:
            pass
            
    # Monitor changes in datetime when the device is waiting        
    def changed_datetime(self, entity, attribute, old, new, kwargs):
        smartstart = self.get_state("input_boolean."+self.devname+"_smartstart") == "on"
        smarttime = int(self.get_state("input_datetime."+self.devname+"_starttijd", attribute="timestamp"))
        thistime = int(time.time())
        
        # Sanity check, if the datetime is in history we do no nothing
        if smartstart and self.waiting and self.smartstarttimer is not None and self.get_state(const.auto) == "on":
            if thistime < smarttime:
                try:
                    if self.smartstarttimer is not None:
                        self.cancel_timer(self.smartstarttimer)
                        self.smartstarttimer = None
                except:
                    pass
                    
                # Change the timer
                st = self.get_state("input_datetime."+self.devname+"_starttijd")
                self.smartstarttimer = self.run_at(self.delayed_start, st)
                
    
    
    
    # Monitor the energy usage of this run
    def changed_energy(self, entity, attribute, old, new, kwargs):
        if self.running:
            price = float(self.get_state("sensor.zonneplan_current_electricity_tariff"))
            co2 = float(self.get_state("sensor.zonneplan_current_co2"))
            
            diff = float(new)-float(old)
            self.energy += diff
            self.costs += diff*price
            self.co2 += diff*co2
            


    # Finish notification
    def timer_finish(self, kwargs):
        if self.running and float(self.get_state("sensor.stopcontact_"+self.devname+"_power")) < self.powerthreshold:
            self.running = False
            
            # Set the stats
            s = "{:.2f} kWh".format(self.energy)
            s = s.replace(".", ",")
            a = "€ {:.2f} en {:d} gCO2".format(self.costs, int(round(self.co2)))
            a = a.replace(".", ",")
            
            self.mqtt.mqtt_publish("homeassistant/sensor/"+self.devname+"/last_run", s, retain=True)
            self.mqtt.mqtt_publish("homeassistant/sensor/"+self.devname+"/last_run/info", a, retain=True)
        
            # Create the message
            msg = "De "+self.devname+" is klaar! Statistieken: {:.2f} kWh verbruikt voor in totaal € {:.2f} met {:d} gCO2 uitstoot.".format(self.energy, self.costs, int(round(self.co2)))
            
            # Send out the message
            rl = int(float(self.get_state("input_number.runlevel")))    
            self.call_service("notify/mobile_app_smartphone", message=msg, title="Witgoed")
            if rl >= const.rlHome:  
                self.call_service("tts/google_translate_say", entity_id = "media_player.gc_huiskamer", message="De "+self.devname+" is klaar!")
                self.call_service("tts/google_translate_say", entity_id = "media_player.gc_keuken", message="De "+self.devname+" is klaar!")
                self.call_service("tts/google_translate_say", entity_id = "media_player.gc_studeerkamer", message="De "+self.devname+" is klaar!")
            
            # Set the state
            self.set_state("sensor."+self.devname+"_plan_status", state="Klaar")
            self.finishtimer = self.run_in(self.timer_idle, 7200)
            
            # Reset
            self.energy = 0
            self.costs = 0
            self.co2 = 0

    # Timer to reset the device description to idle again
    def timer_idle(self, kwargs):
        if not self.running:
            self.set_state("sensor."+self.devname+"_plan_status", state="Inactief")




    # Helpers to set the time
    def click_button_price(self, entity, attribute, old, new, kwargs):
        dt = self.get_state("sensor."+self.devname+"_plan_price_timestamp")
        self.call_service("input_datetime/set_datetime", entity_id="input_datetime."+self.devname+"_starttijd", timestamp=dt)
        
    def click_button_co2(self, entity, attribute, old, new, kwargs):
        dt = self.get_state("sensor."+self.devname+"_plan_co2_timestamp")
        self.call_service("input_datetime/set_datetime", entity_id="input_datetime."+self.devname+"_starttijd", timestamp=dt)
        
    def click_button_clever(self, entity, attribute, old, new, kwargs):
        dt = self.get_state("sensor."+self.devname+"_plan_clever_timestamp")
        self.call_service("input_datetime/set_datetime", entity_id="input_datetime."+self.devname+"_starttijd", timestamp=dt)


Note, ik schrijf de statistieken van het laatste wasje weg naar een mqtt topic, welke vervolgens weer in een sensor komt zodat ik deze op kan slaan bij een reboot van HA.

Acties:
  • +1 Henk 'm!

  • GENETX
  • Registratie: Juni 2005
  • Laatst online: 09-07 22:38
En deel 2 van de code door de GoT limiet :')

Python:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
    # Calculate the costs
    def calculate(self, kwargs):
    
#### Preparation
        # Obtaining data
        zp = self.get_state("sensor.zonneplan_current_electricity_tariff", attribute="all")
        ts = int(time.time())
        
        # Prepopulate the result attributes dict
        result = {'forecast': []}
        
        # Now round to the next full self.timestep.
        ts = ts + (self.timestep - (ts%self.timestep))
        
        # Prepare the result vectors
        energy_prices = []
        energy_co2 = []
        timestamp = ts
        
        # Prepare the optimal soluation storage variables
        best_costs          = 100000000
        best_co2            = 100000000
        best_clever         = 100000000
        
        best_cost_co2       = 100000000
        best_co2_costs      = 100000000
        best_clever_costs   = 100000000
        best_clever_co2     = 100000000
        
        best_cost_time      = ts
        best_co2_time       = ts
        best_clever_time    = ts
    

    
        
#### Data processing
        # Process the data
        for element in zp['attributes']['forcast']:
            timeElement = int(parser.parse(element['datetime']).timestamp())
            for i in range(0, int(3600/self.timestep)):
            
                # Check if time is in this slot:
                if timeElement <= timestamp < timeElement+3600:
                    # Add all the elements
                    try:
                        energy_prices.append(element['electricity_price']/10000000)
                    except:
                        energy_prices.append(0.0)
                        
                    try:    
                        energy_co2.append(element['carbon_footprint_in_grams']/10)
                    except:
                        energy_co2.append(0.0)
                    
                    # Increment time
                    timestamp += self.timestep
                    
        
        
#### Find Optimal solutions     
        # Loop through all options
        for i in range(0, len(energy_co2)-len(self.profile)+1):
            co2 = 0
            costs = 0
            clever = 0
            timestamp = ts + i*self.timestep
            
            for j in range(0, len(self.profile)):
                #Calculate the costs
                costs += self.profile[j] * energy_prices[i+j] * (self.timestep/3600.0) / 1000
                co2 += self.profile[j] * energy_co2[i+j] * (self.timestep/3600.0) / 1000
                
                # Perform normalization, ensure that divisions by 0 do not occur
                try:
                    # Price normalization
                    p = (energy_prices[i+j]-min(energy_prices)) / (max(energy_prices)-min(energy_prices))
                except:
                    p = 0
                
                try:
                    # CO2 normalization
                    c = (energy_co2[i+j]-min(energy_co2)) / (max(energy_co2)-min(energy_co2))
                except:
                    c = 0
                
                # Give a score, note that I weigh CO2 emissions with a factor of 2
                clever += self.profile[j] * (c*2+p) * (self.timestep/3600.0) / 1000
                

            
            # Select the best options
            
            # First verify if this is a valid option given time constraints
            allowed_option = True
            if self.allowedStartHour is not None and self.allowedEndHour is not None:
                allowed_option = False
                start = datetime.datetime.fromtimestamp(timestamp).hour
                end = datetime.datetime.fromtimestamp(int(timestamp+len(self.profile)*self.timestep-1)).hour
                if self.allowedStartHour <= start <= self.allowedEndHour and self.allowedStartHour <= end <= self.allowedEndHour:
                    allowed_option = True
                    
            # If it is ivalid, see if it is better than the previous obtained value     
            if allowed_option:
                if costs < best_costs:
                    best_costs = costs
                    best_cost_time = timestamp
                    best_cost_co2 = co2
                if co2 < best_co2:
                    best_co2 = co2
                    best_co2_time = timestamp
                    best_co2_costs = costs
                if clever < best_clever:
                    best_clever = clever
                    best_clever_time = timestamp
                    best_clever_costs = costs   
                    best_clever_co2 = co2
                
                
#### Set the sensors for graphing       
            # Add this result   
            dt = datetime.datetime.fromtimestamp(timestamp).astimezone(tz=timezone.utc)
            r = {   
                    'datetime': dt.isoformat(timespec='microseconds')[:-6]+'Z', 
                    'costs': costs, 
                    'co2': co2 
                }   
            result['forecast'].append(r)


        # Now set the sensors:
        self.set_state("sensor."+self.devname+"_plan", state="on", attributes=result)
        
        
#### Price Optimum          
        # Indicate the best moment for price:
        dt = datetime.datetime.fromtimestamp(best_cost_time)
        et = datetime.datetime.fromtimestamp(best_cost_time+len(self.profile)*self.timestep)
        
        s = ""
        
        if datetime.datetime.now().strftime('%d-%m-%Y') != dt.strftime('%d-%m-%Y'):
            s+= "Morgen "
        s += dt.strftime('%H:%M')
        s += " ( +"+str(int(round(best_cost_time - int(time.time()))/3600))+"h )"
        
        a = "€ {:.2f} en {:d} gCO2".format(best_costs, int(round(best_cost_co2)))
        a = a.replace(".", ",")
        a += " - Klaar rond "
        a += et.strftime('%H:%M')
        
        self.set_state("sensor."+self.devname+"_plan_price", state=s, attributes={'info': a})       
        self.set_state("sensor."+self.devname+"_plan_price_timestamp", state=best_cost_time)
        
        
        
        
#### CO2 Optimum        
        # Indicate the best moment for CO2:
        dt = datetime.datetime.fromtimestamp(best_co2_time)
        et = datetime.datetime.fromtimestamp(best_co2_time+len(self.profile)*self.timestep)
        
        s = ""
        if datetime.datetime.now().strftime('%d-%m-%Y') != dt.strftime('%d-%m-%Y'):
            s+= "Morgen "
        s += dt.strftime('%H:%M')
        s += " ( +"+str(int(round(best_co2_time - int(time.time()))/3600))+"h )"
        
        a = "€ {:.2f} en {:d} gCO2".format(best_co2_costs, int(round(best_co2)))
        a = a.replace(".", ",")
        a += " - Klaar rond "
        a += et.strftime('%H:%M')
        
        self.set_state("sensor."+self.devname+"_plan_co2", state=s, attributes={'info': a})     
        self.set_state("sensor."+self.devname+"_plan_co2_timestamp", state=best_co2_time)       
        

        
#### Verstandigste Keuze        
        # Indicate the best moment for Clever:
        dt = datetime.datetime.fromtimestamp(best_clever_time)
        et = datetime.datetime.fromtimestamp(best_clever_time+len(self.profile)*self.timestep)
        
        s = ""
        if datetime.datetime.now().strftime('%d-%m-%Y') != dt.strftime('%d-%m-%Y'):
            s+= "Morgen "
        s += dt.strftime('%H:%M')
        s += " ( +"+str(int(round(best_clever_time - int(time.time()))/3600))+"h )"
        
        a = "€ {:.2f} en {:d} gCO2".format(best_clever_costs, int(round(best_clever_co2)))
        a = a.replace(".", ",")
        a += " - Klaar rond "
        a += et.strftime('%H:%M')
        
        self.set_state("sensor."+self.devname+"_plan_clever", state=s, attributes={'info': a})      
        self.set_state("sensor."+self.devname+"_plan_clever_timestamp", state=best_clever_time)     
        
        
        
        
        # Set the next runtime of this function
        nt = int(self.timestep - (int(time.time())%self.timestep))
        if nt <= 5:
            nt = 900
        self.run_in(self.calculate, nt)


Ik moet dit maar snel eens op Github zetten :'(

Acties:
  • 0 Henk 'm!

  • Hari-Bo
  • Registratie: Juli 2003
  • Laatst online: 09:04
@Hmmbob Ik zag deze post en wil deze weergave van de elektra kosten ook op deze manier presenteren.

Alleen zit ik even met hoe te implementeren nordpool_energy.yaml, moet ik dit simpelweg toevoegen aan configuration.yaml of moet ik de nordpool_energy.yaml lokaal wegzetten en op een andere manier aanroepen?

De basis heb ik nu redelijk onder de knie en het gebruik van oa node-red, maar customization van dashboards etc is nog niet mijn ding :P Hopelijk kan je me een zetje de juiste richting geven.

Bos Stern Service Onafhankelijke Mercedes-Benz dienstverlening; diagnose, codering, retrofit, sleutelservice. ECU en tuning alle merken welkom. Projecten


Acties:
  • +1 Henk 'm!
Hari-Bo schreef op donderdag 19 januari 2023 @ 22:11:
@Hmmbob Ik zag deze post en wil deze weergave van de elektra kosten ook op deze manier presenteren.

Alleen zit ik even met hoe te implementeren nordpool_energy.yaml, moet ik dit simpelweg toevoegen aan configuration.yaml of moet ik de nordpool_energy.yaml lokaal wegzetten en op een andere manier aanroepen?

De basis heb ik nu redelijk onder de knie en het gebruik van oa node-red, maar customization van dashboards etc is nog niet mijn ding :P Hopelijk kan je me een zetje de juiste richting geven.
Nordpool_energy.yaml is een "package": dat is een bestand waarin je allerlei verschillende 'domeinen' kan combineren.

Zie: https://www.home-assistant.io/docs/configuration/packages/

Sometimes you need to plan for coincidence


Acties:
  • 0 Henk 'm!

  • CyBeRSPiN
  • Registratie: Februari 2001
  • Laatst online: 10:41

CyBeRSPiN

sinds 2001

@GENETX indrukwekkend!
Hoe heb je de vaatwasser “smart” gemaakt?

Acties:
  • +3 Henk 'm!

  • GENETX
  • Registratie: Juni 2005
  • Laatst online: 09-07 22:38
Met een slimme stekker. Die van mij gaat door waar deze gebleven is als ik de stroom er weer op zet. Dus, vaatwasser vullen, smart start aanzetten met een starttijd en starten. 15 seconden na een overschrijding van een power threshold schakel ik de stekker uit. Timertje start. Timertje loopt af. Klik, stroom er op, en we gaan lekker goedkoop of duurzaam draaien :D

Mijn vorige wasmachine deed dat ook, maar mijn hypermoderne, maar domme, AEG wasmachine en droger niet. Daarom geeft mijn script wel aan hoeveel uren ik moet uitstellen. Dus kan ik dat makkelijk handmatig doen. De code is eigenlijk hetzelfde daarvoor (een aantal zaken weggelaten). Wel heb ik daar nog aangegeven dat deze alleen tussen 7 en 23 uur mag draaien, want de was doe ik niet 's nachts met natte was dat nog uren ligt..

[ Voor 37% gewijzigd door GENETX op 19-01-2023 22:36 ]


Acties:
  • 0 Henk 'm!

  • vso
  • Registratie: Augustus 2001
  • Niet online

vso

tja...

GENETX schreef op donderdag 19 januari 2023 @ 22:26:
Met een slimme stekker. Die van mij gaat door waar deze gebleven is als ik de stroom er weer op zet. Dus, vaatwasser vullen, smart start aanzetten met een starttijd en starten. 15 seconden na een overschrijding van een power threshold schakel ik de stekker uit. Timertje start. Timertje loopt af. Klik, stroom er op, en we gaan lekker goedkoop of duurzaam draaien :D

Mijn vorige wasmachine deed dat ook, maar mijn hypermoderne, maar domme, AEG wasmachine en droger niet. Daarom geeft mijn script wel aan hoeveel uren ik moet uitstellen. Dus kan ik dat makkelijk handmatig doen. De code is eigenlijk hetzelfde daarvoor (een aantal zaken weggelaten). Wel heb ik daar nog aangegeven dat deze alleen tussen 7 en 23 uur mag draaien, want de was doe ik niet 's nachts met natte was dat nog uren ligt..
Dat is wel een heel slimme KISS oplossing dude _/-\o_

Dit neemt dan wel erg de meuk uit handen en voor iedereen begrijpbaar..

Zelf zat ik al te bedenken hoe ik bv een ESP32 in het witgoed kan frutselen om dit te bewerkstelligen, maar zie het niet zo zitten om elk device te ontmantelen + stroommetingen oid te doen en knoppen aan te sturen (handmatig en ESPhome gestuurd oid)

maar iedereen in het huishouden via de smartphone dat soort meuk aansturen is net te veel gevraagd.(lees aparte interface ergens) ..

dus again win-win

Tja vanalles


Acties:
  • 0 Henk 'm!

  • Turb0Turb0
  • Registratie: Juni 2007
  • Laatst online: 09:10
Turb0Turb0 schreef op donderdag 19 januari 2023 @ 20:03:
[...]


Ja gewoon 192.168.1.43 in de browser, kan de rest in mijn lan wel pingen. 8)7
Ik heb de intergas gateway ook een ander vast ip adres gegeven maar helaas, HA blijft er moeite mee hebben.

Afbeeldingslocatie: https://tweakers.net/i/TJTx2Jqv3D88AmL3RRyMQLr1yVg=/800x/filters:strip_exif()/f/image/WhDh7rdzqTt3TaHj5RBcSwUH.png?f=fotoalbum_large

Eigenlijk ben ik wel klaar met die gateway (los van dit probleem in HA), elk begin stookseizoen zijn er weer problemen dat ik de app niet kan gebruiken. Reviews in playstore geven ook aan dat ik niet de enige ben.

Dus eigenlijk wil ik een andere oplossing.

Een Google Nest V3 is iets wat al op mijn wishlist stond maar is aardig aan de prijs, ik heb wel meer spul van Google (deurbel, camera, speakers, hub) dus past wel mooi in mijn huis. product: Nest Learning Thermostat V3

Of zijn er tips voor ander/beter spul?
Moet kunnen moduleren, Intergas HRE36/30A ketel. https://www.intergas-verw...mbi-kompakt-hre/hre-3630/

Acties:
  • 0 Henk 'm!

  • -Casper
  • Registratie: Juni 2012
  • Laatst online: 11:34
Turb0Turb0 schreef op vrijdag 20 januari 2023 @ 08:20:
[...]


Ik heb de intergas gateway ook een ander vast ip adres gegeven maar helaas, HA blijft er moeite mee hebben.

[Afbeelding]

Eigenlijk ben ik wel klaar met die gateway (los van dit probleem in HA), elk begin stookseizoen zijn er weer problemen dat ik de app niet kan gebruiken. Reviews in playstore geven ook aan dat ik niet de enige ben.

Dus eigenlijk wil ik een andere oplossing.

Een Google Nest V3 is iets wat al op mijn wishlist stond maar is aardig aan de prijs, ik heb wel meer spul van Google (deurbel, camera, speakers, hub) dus past wel mooi in mijn huis. product: Nest Learning Thermostat V3

Of zijn er tips voor ander/beter spul?
Moet kunnen moduleren, Intergas HRE36/30A ketel. https://www.intergas-verw...mbi-kompakt-hre/hre-3630/
Zelf was ik destijds (ca. 2 a 3 jaar geleden) niet onder de indruk van nest. Temperatuur metingen waren niet accuraat en de koppeling met HA was nauwelijks te realiseren (via cookie Ids volgens mij). Zou dus wel ff goed kijken hoe dat tegenwoordig is als ik jou was.

Verder zie ik mensen hier vaak ook een OpenTherm gateway noemen. Schijnt een goedkope oplossing te zijn maar heb er geen ervaring mee.

Acties:
  • 0 Henk 'm!
GENETX schreef op donderdag 19 januari 2023 @ 22:26:
Met een slimme stekker. Die van mij gaat door waar deze gebleven is als ik de stroom er weer op zet. Dus, vaatwasser vullen, smart start aanzetten met een starttijd en starten. 15 seconden na een overschrijding van een power threshold schakel ik de stekker uit. Timertje start. Timertje loopt af. Klik, stroom er op, en we gaan lekker goedkoop of duurzaam draaien :D

Mijn vorige wasmachine deed dat ook, maar mijn hypermoderne, maar domme, AEG wasmachine en droger niet. Daarom geeft mijn script wel aan hoeveel uren ik moet uitstellen. Dus kan ik dat makkelijk handmatig doen. De code is eigenlijk hetzelfde daarvoor (een aantal zaken weggelaten). Wel heb ik daar nog aangegeven dat deze alleen tussen 7 en 23 uur mag draaien, want de was doe ik niet 's nachts met natte was dat nog uren ligt..
Vraag me af hoe goed dat voor je apparaten is.

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


Acties:
  • 0 Henk 'm!

  • Obelixxx
  • Registratie: Juli 2020
  • Laatst online: 09:52
Heeft er iemand ervaring met de Dutch Originals Slimme Stekker?
Zou het mogelijk zijn om de led ring door HA te laten kleuren?

rood -> niet wassen
oranje -> wassen als het echt moet
groen -> onder gemiddelde prijs van de dag -> wassen

Acties:
  • +1 Henk 'm!

  • Borne
  • Registratie: Oktober 2009
  • Nu online
Borne schreef op donderdag 19 januari 2023 @ 14:20:
[...]


Dat is wel een goede inderdaad. Heb nu een 5 minuten delay na het sluiten van de deur, dan checkt hij of remote start ingeschakeld is, of de komende 3 uur de stroomprijs low is en gaat dan starten.

Kijken of dit werkt vanavond :)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
alias: "Test: Vaatwasser remote start"
description: ""
trigger:
  - type: not_opened
    platform: device
    device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    entity_id: binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_doorstate
    domain: binary_sensor
    for:
      hours: 0
      minutes: 5
      seconds: 0
condition:
  - type: is_on
    condition: device
    device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    entity_id: >-
      binary_sensor.siemens_sx878d26pe_68a40e1d88d2_bsh_common_status_remotecontrolstartallowed
    domain: binary_sensor
  - condition: and
    conditions:
      - condition: state
        entity_id: sensor.zonneplan_current_tariff_group
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_1
        state: low
      - condition: state
        entity_id: sensor.zonneplan_forcast_tariff_group_hour_2
        state: low
action:
  - device_id: b9ac8108bfaf5ae96ab76f3692aeabfe
    domain: button
    entity_id: button.siemens_sx878d26pe_68a40e1d88d2_start_pause
    type: press
  - device_id: 9c5510c699d9c1c07ad79f1cf89dbcf7
    domain: mobile_app
    type: notify
    message: "Test: Vaatwasser is gestart"
    title: "Test: Vaatwasser is gestart"
mode: single
Even een update. Zo werkt hij perfect _/-\o_

Acties:
  • 0 Henk 'm!

  • JeroenH
  • Registratie: Januari 2003
  • Laatst online: 08:27
Ik wil deze integratie installeren: Frank Energie Custom Component, hiermee kunnen de uurprijzen van de energieleverancier Frank Energie ingetrokken worden, zodat je op basis van die informatie apparatuur kunt in-/uitschakelen, accu laden/ontladen, enz.

Dat moet via HACS, dat had ik nog niet, dus dat geïnstalleerd, dat ging zonder problemen. Custom repository toegevoegd, custom integration gedownload, ook dat leek geen problemen te geven. Nu staat er een integratie genaamd "Frank Energie" onder Integrations in HACS.

Nu loop ik echter vast. Het zal aan mij liggen, maar ik heb zo vaak ruzie met Github omdat er bij een script of applicatie zelden een net overzicht staat van dingen die je kunt verwachten, misschien een gebruiksvoorbeeld o.i.d. Als net niet echt geavanceerde gebruiker is dat best frustrerend. En nu ook weer.... de handleiding heeft het over "sensoren" zonder even een lijstje te geven van welke beschikbaar zouden moeten zijn.

Als ik zoek in de Entities naar "frank", "electricity" en dat soort dingen vind ik niets wat hierbij zou kunnen horen.

Ook nog even gegoogled of iemand anders het misschien wat uitgebreider heeft uitgeschreven, maar ik vind niets. HA geherstart, ook geen resultaat.

Heeft iemand een idee wat ik fout doe?

Xtool D1 10w laser cutter - IoT moet nooit op internet


Acties:
  • +2 Henk 'm!

  • Groen
  • Registratie: Juli 2022
  • Laatst online: 09-07 20:23
JeroenH schreef op vrijdag 20 januari 2023 @ 09:23:
Ik wil deze integratie installeren: Frank Energie Custom Component, hiermee kunnen de uurprijzen van de energieleverancier Frank Energie ingetrokken worden, zodat je op basis van die informatie apparatuur kunt in-/uitschakelen, accu laden/ontladen, enz.

Dat moet via HACS, dat had ik nog niet, dus dat geïnstalleerd, dat ging zonder problemen. Custom repository toegevoegd, custom integration gedownload, ook dat leek geen problemen te geven. Nu staat er een integratie genaamd "Frank Energie" onder Integrations in HACS.

Nu loop ik echter vast. Het zal aan mij liggen, maar ik heb zo vaak ruzie met Github omdat er bij een script of applicatie zelden een net overzicht staat van dingen die je kunt verwachten, misschien een gebruiksvoorbeeld o.i.d. Als net niet echt geavanceerde gebruiker is dat best frustrerend. En nu ook weer.... de handleiding heeft het over "sensoren" zonder even een lijstje te geven van welke beschikbaar zouden moeten zijn.

Als ik zoek in de Entities naar "frank", "electricity" en dat soort dingen vind ik niets wat hierbij zou kunnen horen.

Ook nog even gegoogled of iemand anders het misschien wat uitgebreider heeft uitgeschreven, maar ik vind niets. HA geherstart, ook geen resultaat.

Heeft iemand een idee wat ik fout doe?
Ik vermoed: Je hebt de integratie nu 'mogelijk gemaakt' via HACS. Je moet hem nog toevoegen via Instellingen -> Integraties.

LG-HM123MR.U34 / LG-WH27S.F5 / 1245 Wp (zuid)


Acties:
  • +1 Henk 'm!

  • Quad
  • Registratie: Mei 2009
  • Laatst online: 11:26

Quad

Doof

Groen schreef op vrijdag 20 januari 2023 @ 09:26:
[...]


Ik vermoed: Je hebt de integratie nu 'mogelijk gemaakt' via HACS. Je moet hem nog toevoegen via Instellingen -> Integraties.
Afbeeldingslocatie: https://tweakers.net/i/IO4no722wut2r7H4du1uNsc_QdQ=/full-fit-in/4000x4000/filters:no_upscale():fill(white):strip_exif()/f/image/1Wwvcb8y3kEN2eHawD22i1jx.png?f=user_large
Correct. :)

Alles went behalve een Twent.
PVOutput☀️


Acties:
  • +3 Henk 'm!

  • JeroenH
  • Registratie: Januari 2003
  • Laatst online: 08:27
Groen schreef op vrijdag 20 januari 2023 @ 09:26:
Ik vermoed: Je hebt de integratie nu 'mogelijk gemaakt' via HACS. Je moet hem nog toevoegen via Instellingen -> Integraties.
...en dat was het, daar zijn de entities. Zeer bedankt! :>

Voel me best stom nu. Ik moet hier ook 's avonds aan werken, met een biertje, niet overdag, merk ik ;)

Xtool D1 10w laser cutter - IoT moet nooit op internet


Acties:
  • 0 Henk 'm!

  • bd-casemod
  • Registratie: Januari 2005
  • Laatst online: 10:50
Zijn er meer mensen die sinds gister waarbij de SEMS API (Goodwe) niet meer werkt in HA ?

Acties:
  • +2 Henk 'm!

  • Yukkie
  • Registratie: Januari 2001
  • Laatst online: 11:17

Yukkie

Vorsprung Durch Technik

Was deze al gespot? https://www.iculture.nl/n...tyrka-binnenluchtmonitor/
Ik ben benieuwd wat nou precies het communicatie protocol is en of het ook zonder IKEA gateway te integreren in Home Assistant is.

We've got that ring of confidence


Acties:
  • 0 Henk 'm!

  • Tralapo
  • Registratie: Januari 2008
  • Niet online
Hmmbob schreef op zaterdag 7 januari 2023 @ 11:51:
[...]
[Afbeelding]

Ik gebruik ook Zonneplan, maar haal de dynamische stroomprijzen op vanaf Nordpool en de gasprijs met een rest-sensor vanaf enever.nl. Dat begint met het aanmaken van de benodigde sensoren:
YAML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
sensor:
  - platform: nordpool
    region: "NL"
    currency: "EUR"
    VAT: False
    precision: 3
    low_price_cutoff: 0.9
    price_in_cents: false
    price_type: kWh
    additional_costs: >
      {% set VAT = 0.21 %}
      {% set tax_kWh = 0.12599 %}
      {% set opslag = 0.0025 %}
      {{ ((current_price * VAT ) + (tax_kWh + opslag) * (1 + VAT)) | float }
    # Let op: 'opslag' is specifiek voor Zonneplan!

rest:
  - resource: https://enever.nl/feed/gasprijs_vandaag.php
    scan_interval: 900
    sensor:
      - name: "Zonneplan gasprijs"
        unique_id: zonneplan_gasprijs
        value_template: "{{ ((value_json.data.0.prijsZP | float(0)) if value_json is defined else 'unavailable')  }}"
        json_attributes_path: "$.data.0"
        json_attributes:
          - "datum"
        device_class: monetary

Voor mijn dashboard heb ik een aparte view genaamd "energy" aangemaakt. Linkje brengt je naar de code op GitHub, maar belangrijkste items om rekening mee te houden:
  • Ik geef de gemiddelde waarde weer in mijn grafiek. Die is variabel, dus kan je niet hardcoded opnemen. Daarvoor maak ik gebruik van 'config-template-card', welke me toestaat om variabelen te gebruiken in de config van andere kaarten. Zie verderop hoe dit gebruikt wordt.
    [Afbeelding]
  • Voor de grafieken gebruik ik Apexcharts-card. Omdat de drie grafieken op mijn pagina veel configuratie delen, maak ik gebruik van de ingebouwde template opties van apexcharts-card. Deze zijn hier op mijn GitHub te vinden en moet je vanuit ui-lovelace.yaml includen (of daar opnemen).
    [Afbeelding]
  • De data wordt opgehaald uit de attributes van de nordpool-sensor. Voor elke uurprijs wordt berekend voor welk tijdstip deze geldig is. Ik tel hier 30min bij op (1800000ms) zodat de uitlijning van de balkjes in de grafiek mooier is. Met deze 30 extra minuten centreert het balkje op (bijvoorbeeld) 17:30, en loopt het balkje dus precies van 17:00-18:00. Tel je die 30min er niet bij, dan centreert het balkje op 17:00 en loopt het dus van 16:30 tot 17:30. Dat gaat mis in mijn hoofd :+
    [Afbeelding]
    YAML:
    1
    2
    3
    4
    5
    6
    7
    
              series:
                - entity: sensor.nordpool
                  name: "Dynamische energieprijs"
                  data_generator: |
                    return entity.attributes.raw_today.map((start, index) => {
                      return [new Date(start["start"]).getTime() + 1800000, entity.attributes.raw_today[index]["value"]];
                    });
  • Zoals je ziet voeg ik ook twee horizontale lijnen toe, 'annotations' in apexcharts taal. Een is voor het gemiddelde tarief van die dag, de andere voor de (vaste) prijs die bij het energieplafond hoort. Die laatste is gewoon een vast tarief, en voor mij een treshold dat alles daarboven sowieso duur is (maar niet meer dan het plafond kost). :+

    Het gemiddelde voor 'vandaag' zit gewoon in de attributes van de nordpool sensor en voeg ik in met behulp van de template card (zie eerste bullet).
    [Afbeelding]

    Het gemiddelde voor morgen bereken ik zelf met een aparte template (waarna ook deze via de template card wordt ingevoegd):
    YAML:
    1
    2
    3
    4
    5
    
    template:
      - sensor:
          - name: "Nordpool Tomorrow Average"
            unique_id: nordpool_tomorrow_average
            state: "{{ average(states['sensor.nordpool'].attributes.tomorrow, 0) | round(3) }}"
Bekijk vooral mijn hele dashboard yaml voor deze grafieken, want die Apexcharts config is vrij uitgebreid. Alle betrokken bestanden:

Dashboard:
ui-lovelace.yaml
apexcharts_card_templates.yaml
energy.yaml

Sensors die gebruikt worden:
Nordpool Energy package
Nog steeds erg enthousiast over deze methode en de bijbehorende grafieken!

Helaas geeft Nordpool het average voor vandaag tegenwoordig in wel 17 decimalen, wat de grafiek behoorlijk vervuild. Het lukt me echter maar niet om daar een afronding op te krijgen, heb jij dit al opgelost?

Acties:
  • 0 Henk 'm!

  • etmnidj1
  • Registratie: Juli 2010
  • Laatst online: 20-06 11:26
Het lukt mij niet om de buienradar camera aan de gang te krijgen in mijn dashboard.
De intergratie al een keer opnieuwe geinstalleerd maar krijg de melding dat de camera inactief is?

Afbeeldingslocatie: https://tweakers.net/i/l7W0xm6vivYfzTvRMsMHASfPdiE=/800x/filters:strip_icc():strip_exif()/f/image/yOxOGrHRLuB8SiPtK5ZQEdNB.jpg?f=fotoalbum_large

Heb ik de verkeerde kaart gepakt of? Als ik op de afbeelding klik krijg ik wel de kaart te zien?

Code is als volgt:

Afbeeldingslocatie: https://tweakers.net/i/kUdSGyqL8HhvmO8KXGlLYDgPRJI=/800x/filters:strip_icc():strip_exif()/f/image/MiFBJC2IMkbEGeCt0MJkDfbT.jpg?f=fotoalbum_large

Acties:
  • 0 Henk 'm!

  • Sp33dFr34k
  • Registratie: Juni 2006
  • Niet online

Sp33dFr34k

Retro-Geek

Heeft iemand hier toevallig ervaring met het integreren van een mechanische ventillatie in Home Assistant? Ik ben op zoek naar een nieuwe, en het zou fijn zijn als ik die aan HA kan koppelen. Ervaringen welkom :)

i7 9700k + Be-Quiet Dark Rock 4 Pro | Gigabyte Z390 Aorus Ultra | Gigabyte Aorus GTX1080TI | Samsung 970 Pro 512GB + 860 EVO 1TB | 2x8GB DDR4 3000Mhz | Seasonic Platinum 660W | Fractal Design R6 | Acer Predator X34P | M-Audio AV40


Acties:
  • 0 Henk 'm!
etmnidj1 schreef op vrijdag 20 januari 2023 @ 10:24:
Het lukt mij niet om de buienradar camera aan de gang te krijgen in mijn dashboard.
De intergratie al een keer opnieuwe geinstalleerd maar krijg de melding dat de camera inactief is?

[Afbeelding]

Heb ik de verkeerde kaart gepakt of? Als ik op de afbeelding klik krijg ik wel de kaart te zien?

Code is als volgt:

[Afbeelding]
Ja, je moet hem in een picture entity card zetten
YAML:
1
2
3
4
5
type: picture-entity
camera_image: camera.buienradar
entity: camera.buienradar
show_name: false
show_state: false

Home Assistant configuratie


Acties:
  • +5 Henk 'm!

  • Jerry_bboy
  • Registratie: September 2017
  • Laatst online: 08:11
Sp33dFr34k schreef op vrijdag 20 januari 2023 @ 10:31:
Heeft iemand hier toevallig ervaring met het integreren van een mechanische ventillatie in Home Assistant? Ik ben op zoek naar een nieuwe, en het zou fijn zijn als ik die aan HA kan koppelen. Ervaringen welkom :)
Ja zeker, ik ben nu bezig met een compleet gestuurde mechanische ventilatie. De basis is een Duco silent, deze heb ik voorzien van een print van @The_ Mad_Ping . Meer over dit topic kan je hier vinden.

https://gathering.tweakers.net/forum/list_messages/2099830

Ik heb naast de print voor het aansturen van de Duco ook 4 kleppen deze kan ik openen/sluiten afhankelijk van verschillende situaties. Ik ga binnenkort leidingen aanleggen en dan ook de kleppen monteren.

Maar het werkt echt top. En kwaliteit van de printjes zijn echt geweldig.

Afbeeldingslocatie: https://tweakers.net/i/qpNk_C7fzoQ4u_Ou3cqTWfNJnAA=/x800/filters:strip_icc():strip_exif()/f/image/FhTxBsiaeFW7R0wdTEcjRQF0.jpg?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/LbQyLLpqguFpr-8HrG6jW_cwQ1Y=/x800/filters:strip_icc():strip_exif()/f/image/AbKqh3pFBHkrWDYkgiInyFBb.jpg?f=fotoalbum_large

Acties:
  • +1 Henk 'm!
Sp33dFr34k schreef op vrijdag 20 januari 2023 @ 10:31:
Heeft iemand hier toevallig ervaring met het integreren van een mechanische ventillatie in Home Assistant? Ik ben op zoek naar een nieuwe, en het zou fijn zijn als ik die aan HA kan koppelen. Ervaringen welkom :)
Wellicht dat een Itho een optie is? Itho Daalderop - open source wifi control add-on module

En die post van @Jerry_bboy boven mij ziet er ook goed uit.

Acties:
  • 0 Henk 'm!

  • Dutchess_Nicole
  • Registratie: Augustus 2001
  • Laatst online: 08-07 08:58
Heeft iemand tips om de apexcharts-card aan de praat te krijgen?

Ik heb de kaart geinstalleerd door de apexcharts-card.js in /config/www/ te zetten, en deze als resource toe te voegen via settings -> dashboard -> resources.

Helaas is het ding niet beschikbaar en krijg ik nog steeds telkens de 'custom element doesn't exist' error als ik probeer die card te gebruiken.

Ik heb deze installatiemethode overigens van de apexcharts github readme; Ik ben begonnen om te proberen de card te installeren via HACS maar de integration is niet zichtbaar of beschikbaar in HACS om te installeren, en als ik dan probeer hem handmatig toe te voegen krijg ik een melding dat hij al beschikbaar is, dus dat werkt niet.

Afbeeldingslocatie: https://tweakers.net/i/0tBxiKJMJf1xNAuwhbZd-f0MQFU=/full-fit-in/4000x4000/filters:no_upscale():fill(white):strip_exif()/f/image/mLKB9o8l3XNwnCPmKtzMSZOo.png?f=user_large

Kia E-Niro 2019 Executiveline. OTGW/HA Enthousiasteling.


Acties:
  • +1 Henk 'm!
Tralapo schreef op vrijdag 20 januari 2023 @ 10:18:
[...]


Nog steeds erg enthousiast over deze methode en de bijbehorende grafieken!

Helaas geeft Nordpool het average voor vandaag tegenwoordig in wel 17 decimalen, wat de grafiek behoorlijk vervuild. Het lukt me echter maar niet om daar een afronding op te krijgen, heb jij dit al opgelost?
Jep, is een onderdeel van je Apex configuration (keyword is float_precision):

Apexcharts-card docs: https://github.com/RomRider/apexcharts-card#series-options

In mijn config (ik gebruik all_series_config): https://github.com/hmmbob...s_card_templates.yaml#L10

[ Voor 13% gewijzigd door Hmmbob op 20-01-2023 10:55 ]

Sometimes you need to plan for coincidence


Acties:
  • 0 Henk 'm!
Dutchess_Nicole schreef op vrijdag 20 januari 2023 @ 10:48:
Heeft iemand tips om de apexcharts-card aan de praat te krijgen?

Ik heb de kaart geinstalleerd door de apexcharts-card.js in /config/www/ te zetten, en deze als resource toe te voegen via settings -> dashboard -> resources.

Helaas is het ding niet beschikbaar en krijg ik nog steeds telkens de 'custom element doesn't exist' error als ik probeer die card te gebruiken.

Ik heb deze installatiemethode overigens van de apexcharts github readme; Ik ben begonnen om te proberen de card te installeren via HACS maar de integration is niet zichtbaar of beschikbaar in HACS om te installeren, en als ik dan probeer hem handmatig toe te voegen krijg ik een melding dat hij al beschikbaar is, dus dat werkt niet.

[Afbeelding]
Misschien proberen de folder uit www weg te gooien, dan te rebooten, en dan via HACS installeren?
Verder ook al Ctrl -F5 geprobeerd om cache te wissen? Eventueel even in een incognito scherm proberen.

Home Assistant configuratie


Acties:
  • 0 Henk 'm!

  • rvinke
  • Registratie: September 2008
  • Laatst online: 10:38
Dutchess_Nicole schreef op vrijdag 20 januari 2023 @ 10:48:
Heeft iemand tips om de apexcharts-card aan de praat te krijgen?

Ik heb de kaart geinstalleerd door de apexcharts-card.js in /config/www/ te zetten, en deze als resource toe te voegen via settings -> dashboard -> resources.

Helaas is het ding niet beschikbaar en krijg ik nog steeds telkens de 'custom element doesn't exist' error als ik probeer die card te gebruiken.

Ik heb deze installatiemethode overigens van de apexcharts github readme; Ik ben begonnen om te proberen de card te installeren via HACS maar de integration is niet zichtbaar of beschikbaar in HACS om te installeren, en als ik dan probeer hem handmatig toe te voegen krijg ik een melding dat hij al beschikbaar is, dus dat werkt niet.

[Afbeelding]
Ik heb 'm gewoon geinstalleerd via HACS, en dan werkt het na reboot.


Weet iemand toevallig hoe je de kosten vanuit het energie-dashboard kunt ophalen via de api? Ik gebruik altijd gewoon een entity met de api, maar ik kan nergens de entity van dit bedrag vinden.

[ Voor 8% gewijzigd door rvinke op 20-01-2023 10:53 ]


Acties:
  • +3 Henk 'm!

  • SonOfSam
  • Registratie: Juni 2001
  • Laatst online: 08:40
Sp33dFr34k schreef op vrijdag 20 januari 2023 @ 10:31:
Heeft iemand hier toevallig ervaring met het integreren van een mechanische ventillatie in Home Assistant? Ik ben op zoek naar een nieuwe, en het zou fijn zijn als ik die aan HA kan koppelen. Ervaringen welkom :)
Ja ik! Ik heb een Komfovent Domekt in HA geintegreerd met behulp van de MODBUS integratie. Dit had ik overigens van te voren ook opgezocht. Ik stuur hem nu automatisch aan met behulp van een aantal Netatmo binnen modulles die Vocht en CO2 kunnen meten. Bij meer dan 70% vocht of 1000ppm gaat ie een stap hoger. Na 2 uur de vraag of ik hem op boost (is erg lawaaierig) wil zetten op m'n telefoon, met antwoord mogelijkheden.

En die timers zijn mogelijkheden om de ventilatie voor een bepaalde tijd in een bepaalde stand te zetten. Of te wel automatiseringen uit.

DM me als je meer wilt weten.

Afbeeldingslocatie: https://tweakers.net/i/t2tXdNFboQg3bUo4pEqISZuULDU=/x800/filters:strip_exif()/f/image/H5fyD7die8E7LhU1yN7IZl7e.png?f=fotoalbum_large

[ Voor 2% gewijzigd door SonOfSam op 20-01-2023 10:53 . Reden: Link toegevoegd ]

Time flies like an arrow, but fruitflies like a banana


Acties:
  • 0 Henk 'm!

  • Dutchess_Nicole
  • Registratie: Augustus 2001
  • Laatst online: 08-07 08:58
TheFes schreef op vrijdag 20 januari 2023 @ 10:50:
[...]


Misschien proberen de folder uit www weg te gooien, dan te rebooten, en dan via HACS installeren?
Verder ook al Ctrl -F5 geprobeerd om cache te wissen? Eventueel even in een incognito scherm proberen.
Er is geen folder, file staat gewoon direct in /config/www/apexcharts-card.js en de resource URL is /local/apexcharts-card.js

Uiteraard al HA reboots geprobeerd en browser cache clearance en private windows, niks werkt. Het ding blijft niet werken.
rvinke schreef op vrijdag 20 januari 2023 @ 10:51:
[...]


Ik heb 'm gewoon geinstalleerd via HACS, en dan werkt het na reboot.
Dat wou ik dus maar dat gaat niet.

Afbeeldingslocatie: https://tweakers.net/i/Pap_A4h__uM5xjYLoQIyIWzjHH8=/800x/filters:strip_exif()/f/image/875QQnjRZbZLdvofhsnwGTdr.png?f=fotoalbum_large

Hij is niet te vinden in de verschillende HACS searches, en ik kan hem dus ook niet toevoegen.

Kia E-Niro 2019 Executiveline. OTGW/HA Enthousiasteling.


Acties:
  • 0 Henk 'm!
Dutchess_Nicole schreef op vrijdag 20 januari 2023 @ 10:56:
[...]


Er is geen folder, file staat gewoon direct in /config/www/apexcharts-card.js en de resource URL is /local/apexcharts-card.js
Gekke vraag misschien, maar weet je zeker dat de JS file goed gedownload is? Het klinkt alsof je hem handmatig hebt gedownload, ik heb zelf ook wel eens per ongeluk een html bestand opgeslagen als JS....

Sometimes you need to plan for coincidence


Acties:
  • 0 Henk 'm!
Dutchess_Nicole schreef op vrijdag 20 januari 2023 @ 10:56:
[...]


Er is geen folder, file staat gewoon direct in /config/www/apexcharts-card.js en de resource URL is /local/apexcharts-card.js

Uiteraard al HA reboots geprobeerd en browser cache clearance en private windows, niks werkt. Het ding blijft niet werken.
[...]


Dat wou ik dus maar dat gaat niet.

[Afbeelding]

Hij is niet te vinden in de verschillende HACS searches, en ik kan hem dus ook niet toevoegen.
Je probeert nu zelf de repo toe te voegen aan HACS, en HACS geeft aan dat die repo al in de standaard lijst staat.
Als ik hem zoek, dan staat hij er ook gewoon bij. Je moet wel in de frontend/lovelace categorie zoeken he, niet in de integrations.. (ik het zelf de expiremental mode aan staan, dan staat alles in één lijst)
Hmmbob schreef op vrijdag 20 januari 2023 @ 10:58:
[...]

Gekke vraag misschien, maar weet je zeker dat de JS file goed gedownload is? Het klinkt alsof je hem handmatig hebt gedownload, ik heb zelf ook wel eens per ongeluk een html bestand opgeslagen als JS....
Dat is mij inderdaad ook al regelmatig overkomen.

[ Voor 15% gewijzigd door TheFes op 20-01-2023 10:59 ]

Home Assistant configuratie


Acties:
  • +1 Henk 'm!
@Dutchess_Nicole Lukt het hiermee? Afbeeldingslocatie: https://my.home-assistant.io/badges/hacs_repository.svg
TheFes schreef op vrijdag 20 januari 2023 @ 10:58:
Dat is mij inderdaad ook al regelmatig overkomen.
En vet onhandig te debuggen

[ Voor 30% gewijzigd door Hmmbob op 20-01-2023 11:02 ]

Sometimes you need to plan for coincidence


Acties:
  • +1 Henk 'm!

  • etmnidj1
  • Registratie: Juli 2010
  • Laatst online: 20-06 11:26
Super bedankt! Werkt nu!
TheFes schreef op vrijdag 20 januari 2023 @ 10:32:
[...]


Ja, je moet hem in een picture entity card zetten
YAML:
1
2
3
4
5
type: picture-entity
camera_image: camera.buienradar
entity: camera.buienradar
show_name: false
show_state: false

Acties:
  • 0 Henk 'm!

  • RevellNL
  • Registratie: Januari 2009
  • Laatst online: 04-07 09:20
Weet iemand of het mogelijk is om Areas te groeperen? Ik zou de slaapkamers graag in een `Upstairs` area zetten b.v.

In de Home.app van Apple kun je wel Zones groeperen, dus ik vraag me af of dit in HA op een gelijkwaardige manier mogelijk is.

"The desire to bring something into the world that didn't exist, is one of the most important human desires there is. We are inventors, and we are explorers." - Adam Savage

Pagina: 1 ... 12 ... 324 Laatste

Let op:
Zet je code tussen [code=yaml] [/code] tags om het goed leesbaar te houden; ook makkelijker voor de eventuele foutopsporing.

Lees ook eerst even de topicstart voor je je vraag plaatst, wellicht wordt je vraag daar al beantwoord. Wil je pronken met je setup mag dat in Home Assistant - Show je setup.