Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

stigvi

Medlemmer
  • Innlegg

    2 640
  • Ble med

  • Besøkte siden sist

  • Dager vunnet

    141

Innlegg skrevet av stigvi

  1. NilsG skrev (42 minutter siden):

    Noen anbefalinger til panelovn eller lignende anno 2023/2024? Har lyst å integrere med smarthus etterhvert, kanskje dette blir første smartprosjektet. Alle muligheter er åpne, fra Home Assistant til Apple Home.. 🙂


    Tenkte å begynne med en i stua her, og kanskje en per soverom når vi flytter til det nye huset. Fordel om det ser pent ut (wife acceptance factor), men flere tilkoblingsmuligheter og åpent api er vel viktigere 😀



    Leter du litt på forumet her så ser du at det er mange som har problem med Mill. Og nå fikk vi nettopp vite at de lager lyder også.

    Jeg bruker selv Nobø ovner og varmekabeltermostater. De har en offisiell integrasjon til Home Assistant og er lette å få inn der. En er heller ikke avhengig av skytjenester for å styre de.

  2. Bjørn Mork skrev (31 minutter siden):

    Jepp.  Og hadde det vært en kinavare til en 50-lapp så hadde det vært greit nok. Men på et produkt til 500, uten hverken design eller mekanikk som fordyrende faktorer, så er det rett og slett for dårlig.

     

    Ikke er det dokumentert heller.  Dvs, det er kanskje dokumentert.  Men jeg er ikke i stand til å finne noe som helst informasjon av verdi om noe Hue-produkt på Philps' websider.  De lager bare morsomme tegninger: https://media.flixcar.com/webp/synd-asset/Signify-132319351-8719514318045-322263906152.pdf
     

    Resten skal man visst finne i appen.  Det har jeg ikke prøvd. Men du kan male meg grønn hvis det står noe der om flash og ram, eller de (u)praktiske konsekvensene av det.


     

    Directly control Zigbee groups

    It's possible to configure this switch to directly control Zigbee groups. In this way the switch can control e.g. a group of light bulbs even when Zigbee2MQTT is not running. To accomplish this in the Zigbee2MQTT frontend:

    1. Go to the Groups tab and create a new group if it does not already exist. Add devices to the groups which you want to be controlled by this switch.
    2. Add this device to the group.
    3. Click on this device and go to the Bind tab. Uncheck all clusters except manuSpecificPhilips and OnOff (so only manuSpecificPhilips and OnOff are checked) and click Unbind in the row where destination is Coordinator.
    4. In the blank row at the bottom select endpoint 1 as the source endpoint, the group as the destination, tick OnOff and click bind.

    Notes:

    • The device needs to be awake to respond to changes so you will need to trigger the switch to wake it up before assigning to the group or changing the bindings.
    • This device does not support direct binding (to a device instead of a group).
    • After doing this, no actions will be send to the coordinator anymore. To revert this (and stop the switch from directly controlling the group), press the yellow reconfigure button in the About tab.
    • Actions are only send for input 1 of the device, for input 2 no actions will be send (so a double rocker is not supported).


      https://www.zigbee2mqtt.io/devices/929003017102.html#directly-control-zigbee-groups
    • Like 1
  3. Bjørn Mork skrev (6 minutter siden):

    Jupp, vært gjennom den der.  Har en noen slike IKEA-knapper og har etterhvert oppgradert alle sammen til firmwaren der gruppe-binding ikke lenger virker.  Syntes det var litt herkete i starten når jeg ville styre spot-armaturer med 4 GU10-pærer, men det er jo ikke verre enn at du må binde alle 4 pærene hver for seg.  Er uansett en engangsgreie.

    Det er en god stund siden nå, men jeg er ganske overbevist om at jeg hadde IKEA-bryter-erfaringen i bakhodet og derfor prøvde begge varianter uten suksess. Brukte mosquitto_pub og/eller Z2M frontend slik jeg vanligvis gjør.  Mest sannsynlig begge deler.  Fiklet nok også litt med forskjellige kombinasjoner av clusters for å se om det var noe som skurret der.( normal er OnOff og LevelCtrl).  Target var nok utelukkende forskjellige IKEA-pærer.  Tror ikke jeg har testet med Hue eller noe annet. Uansett uinteressant.  Enten virker bind mot Zigbee-pærer eller så gjør det ikke det.

    Litt off-topic, men det funker helt greit å binde en av de nevnte IKEA-bryterne mot en Micromatic ZB250 dimmer. Har ikke prøvd med Hue Wall Switch der.

    Som nevnt - bryter må støtte dette. Du skriver jo info til den som den skal lagre i sitt minne og noen har rett og slett ikke støtte for dette.

  4. Bjørn Mork skrev (2 timer siden):

    Fikk aldri til å binde dem direkte til pærene så da blir bryteren avhengig av en eller annen automasjon.  Selv om det virker det meste av tiden så liker jeg ikke slikt ifm fysiske brytere


    Du må faktisk sjekke om dette er støttet funksjonalitet i de enhetene du har lyst å kjøpe. En skulle tro at Philips støttet slikt på alle "brytere", men det tyder jo på at dette er utelatt når du ikke får det til.

  5. Bjørn Mork skrev (8 timer siden):

    Nja, det stemmer nå bare halvveis. Den må selvsagt ha strøm men den trenger ikke lyse. Zigbee pærer fungerer helt utmerket som mesh rutere. Samme gjelder forsåvidt dimmere og led drivere.

    Ja, jeg var snar med å fjerne strømbrytere fra veggene etter at smartpærer ble tatt i bruk. Nå er de kun strømløse når det er problem med leveransen i fra netteier.

  6. Dobe skrev (23 minutter siden):

    Jeg hadde jo håpet at dagens teknologi gjorde det mulig å lese data slik som man styrer f.eks router, camera osv. direkte fra http, men det er vel kanskje for mye forlangt.

    Dagens teknologi gjør det helt klart mulig. Men her har en tenkt på muligheter forbi det å få data opp på en nettside, heldigvis.

    Det enkleste og sannsynligvis billigste er nok å kjøpe en superbillig trådløs aksesspunkt og sette den opp i nærheten av skapet. Det finnes esp32 noder med nettverkstilkobling, men da må du sitte inne med kunnskaper om å lodde og koble deler sammen på egenhånd.

  7. Bjørn Mork skrev (1 time siden):

    Er veldig fornøyd med disse dimmerne så langt.  Men de har en feature som overrasket litt og som har medført noen brukerfeil her i huset:  Du kan slå på lyset ved å rotere dimmerattet.  Det er ikke nødvendig å trykke på det.

     

    Problemet er at dimmeren da starter på "min" uansett hva den var stilt på før.  Det spiller ingen rolle hvilken vei rattet roteres.  Funksjonen gir en viss mening om man roterer kraftig med klokka.  Men hvis du bare så vidt rører rattet, eller roterer det mot klokka, så blir dimmeren slått på med minimum styrke.  Og har du, som meg. vært sånn passelig lite nøye med å justere minimum så kan forskjellen på "av" og "på mimimum" være helt usynlig. Da er det fort gjort at en bruker forsøker på trykke på dimmeren for å slå på lyset. Og dermed slå det "av" igjen..

     

    Et tips for å unngå de verste frustrasjonene er vel å justere minimum lysstyrke slik at det er synlig.  Men jeg tror egentlig jeg ønsker meg at funksjonen forsvinner.  Ser ikke helt nytten.


    Spørsmål: Er det ikke mer brukervennlig om rattet brukes til å dimme ned til det praktisk brukbare minimumsnivået? Hvorfor skal det være mulig å dimme ned til null hvis dette er noe som ikke brukes og skaper kluss?

  8. Jeg har etterhvert en god del automasjoner som er avhengig av strømpris og da var det alltid irriterende at pris ikke var tilgjengelig. Ofte var den tilgjengelig på Entso-e integrasjonen, men ikke på Nordpool integrasjonen. Eller motsatt.
    Å bytte mellom de to er ikke gjort i en håndvending fordi de leverer data på forskjellig format. Så jeg har laget et pyscript som leser strømpriser fra både Nordpool og Entso-e og tilbyr data på et nytt format som da blir felles for disse to.

    Noen vil kalle det en bakdel, men for meg er det en fordel at scriptet samler alle prisene i en enkel liste istedenfor å splitte den i to.

    Det er ikke meningen at sciptet skal være gjenbrukbart hos alle og enhver, men mer som tips og inspirasjon til å lage et eget script.

    PS1. Scriptet har to funksjoner i toppen for å akkumulere dagens strømkostnad. 
    PS2: Nordpool og Entso-e forutsettes satt opp til å levere spotpris inkl mva og i kroner. Skriptet legger til nettleie og trekker fra strømstøtte.
    PS3: Sats for nettleie hentes fra to input_number. Tidspunkt en veksler mellom natt og dag er hardkodet. Det samme er strømstøtte.

    PS4: Nettleie natt blir brukt for lørdag, søndag og andre røde dager.

     

    from datetime import datetime,timedelta
    import holidays
    
    YEAR = datetime.today().year
    NOR_HOLIDAYS = holidays.NO(years=[YEAR, YEAR+1])
    
    state.persist('pyscript.total_pris_for_strom', default_value=0, default_attributes={"unit_of_measurement":"NOK"})
    state.persist('pyscript.snittpris_for_strom', default_value=0, default_attributes={"unit_of_measurement":"NOK/kWh"})
    state.persist('pyscript.spart_paa_strom', default_value=0, default_attributes={"unit_of_measurement":"NOK"})
    state.persist('pyscript.strompris', default_value=0, default_attributes={"unit_of_measurement":"NOK/kWh"})
    
    @time_trigger("cron(59 * * * *)")
    def akkumulere_stromkostnad():
        p = round(float(pyscript.strompris) * float(sensor.estimated_hourly_consumption) + float(pyscript.total_pris_for_strom), 2)
        pyscript.total_pris_for_strom = p
    
        if float(sensor.consumption_thisday) > 0:
            pyscript.snittpris_for_strom = round(float(pyscript.total_pris_for_strom) / float(sensor.consumption_thisday), 4)
        
        pyscript.spart_paa_strom = round(float(sensor.consumption_thisday) * (float(pyscript.strompris.averageprice) - float(pyscript.snittpris_for_strom)), 2)
    
    @time_trigger("cron(0 0 * * *)")
    def nullstille_stromkostnad():
        pyscript.total_pris_for_strom = 0
    
    @time_trigger("cron(0 * * * *)")
    @time_trigger("once(now)")
    @state_trigger("sensor.nordpool", "sensor.nordpool.raw_tomorrow")
    @state_trigger("sensor.current_electricity_market_price", "sensor.average_electricity_price_today.prices_tomorrow")
    def strompris():
        #state.set("pyscript.strompris", new_attributes={})
        
        grid_night = float(input_number.nettleie_natt) / 100.0
        grid_day = float(input_number.nettleie_dag) / 100.0
        additional_costs = float(input_number.paslag_strom) / 100.0
        
        if (sensor.nordpool.raw_tomorrow is not None
            and len(sensor.nordpool.raw_tomorrow) > 0
            and sensor.nordpool.raw_tomorrow[0]['value'] is not None):
            pyscript.strompris.updatetime = datetime.now().isoformat()
            pyscript.strompris.source = "Nordpool"
            l = []
    
            for sourceprice in sensor.nordpool.raw_today + sensor.nordpool.raw_tomorrow:
                pr = {}
                d = sourceprice["start"]
                pr["start"] = d.isoformat()
                pr["end"] = (d + timedelta(hours=1)).isoformat()
                pr["spotprice"] = float(sourceprice["value"])
                pr["gridprice"] = grid_day if is_peak(d) else grid_night
                pr["payback"] = max((float(pr["spotprice"]) - 0.875) * 0.9, 0.0)
                pr["totalprice"] = float(pr["spotprice"]) + float(pr["gridprice"]) + float(additional_costs) - float(pr["payback"])
                l.append(pr)
    
            pyscript.strompris.prices = l
    
        elif (sensor.average_electricity_price_today.prices_tomorrow is not None
            and len(sensor.average_electricity_price_today.prices_tomorrow) > 0):
            pyscript.strompris.updatetime = datetime.now().isoformat()
            pyscript.strompris.source = "Entso-e"
            l = []
            
            for sourceprice in sensor.average_electricity_price_today.prices_today + sensor.average_electricity_price_today.prices_tomorrow:
                pr = {}
                d = datetime.strptime(sourceprice["time"], "%Y-%m-%d %H:%M:%S%z")
                pr["start"] = d.isoformat()
                pr["end"] = (d + timedelta(hours=1)).isoformat()
                pr["spotprice"] = float(sourceprice["price"])
                pr["gridprice"] = grid_day if is_peak(d) else grid_night
                pr["payback"] = max((float(pr["spotprice"]) - 0.875) * 0.9, 0.0)
                pr["totalprice"] = float(pr["spotprice"]) + float(pr["gridprice"]) + float(additional_costs) - float(pr["payback"])
                l.append(pr)
            
            pyscript.strompris.prices = l
        
        price_sum = 0.0
        peak_sum = 0.0
        offpeak1_sum = 0.0
        offpeak2_sum = 0.0
        high = -1000
        low = 1000
    
        for sourceprice in pyscript.strompris.prices:
            if datetime.now() >= datetime.fromisoformat(sourceprice["start"]).replace(tzinfo=None) and datetime.now() < datetime.fromisoformat(sourceprice["end"]).replace(tzinfo=None):
                pyscript.strompris = float(sourceprice["totalprice"])
                pyscript.strompris.current_gridprice = float(sourceprice["gridprice"])
                pyscript.strompris.current_payback = float(sourceprice["payback"])
                pyscript.strompris.current_spotprice = float(sourceprice["spotprice"])
            
            if datetime.now().day == datetime.fromisoformat(sourceprice["start"]).day:
                price_sum += sourceprice["totalprice"]
    
                if datetime.fromisoformat(sourceprice["start"]).hour < 8:
                    offpeak1_sum += sourceprice["totalprice"]
                elif datetime.fromisoformat(sourceprice["start"]).hour < 20:
                    peak_sum += sourceprice["totalprice"]
                else:
                    offpeak2_sum += sourceprice["totalprice"]
                
                if high < sourceprice["totalprice"]:
                    high = sourceprice["totalprice"]
                
                if low > sourceprice["totalprice"]:
                    low = sourceprice["totalprice"]
        
        pyscript.strompris.averageprice = float(price_sum) / 24.0
        pyscript.strompris.peak = float(peak_sum) / 12.0
        pyscript.strompris.offpeak1 = float(offpeak1_sum) / 8.0
        pyscript.strompris.offpeak2 = float(offpeak2_sum) / 4.0
        pyscript.strompris.high = float(high)
        pyscript.strompris.low = float(low)
    
    def is_peak(t : datetime):
        if t.isoweekday() >= 6 or t.hour <= 5 or t.hour >= 22 or t.date() in NOR_HOLIDAYS:
            return False
        else:
            return True

     

    • Like 1
  9. NilsG skrev (1 time siden):

    Hva ville du gjort?


    Jeg bygde i 2018 og valgte bare Nobø varmesystem på varmekabler og ovner som ekstra. Alt lys var planen å bruke smartlys med enten smarte pærer eller smarte armaturer basert på zigbee. Jeg har fagbrev innen elektro så jeg monterte alt lys selv.

    Jeg er superfornøyd med at jeg har gått for smartbelysning istedenfor vanlig belysning og eventuelt brytere og dimmere basert på zigbee. Å kunne styre hver lyskilde individuelt har gitt en del flere muligheter enn det en ser i en byggeprosess. Og det er greit å ikke være låst til hvordan huset ble bygd og ledninger ble trukket når det gjelder lysgrupper. For eksempel fant vi ut at nattlys i gang bare skal være på den lampen som ikke vises i fra soverommet. Enkelt å få til med smart belysning. Håpløst å få til dersom begge lamper i gang var styrt i fra en felles dimmer.

    • Like 1
  10. storeulv skrev (5 timer siden):

    NRK er vel AFAIK tilgjengelig på Sonos Radio også. Man er dermed ikke avhengig av TuneIN på Sonos for å få NRK.

    Det står også nevnt i linken som Erling startet tråden med. Har Erling lest artikkelen selv?

     

    Sitat

    Slik lytter du til NRK

    Det er mulig å lytte til NRKs kanaler via NRK Radio på mobil, Sonos og web, på DAB eller via Radioplayer på de fleste «radio-enheter», være seg en smarthøytaler eller en bilradio.

     

    • Confused 1
  11. Automatisk reboot er enkelt å få til. Slik som dette. Der har jeg lagt inn en betingelse som ikke forteller deg så mye, men du ser jo eventuelt hvordan du tar en omstart med å kjøre homeassistant.restart

    PS. Nei, ingen problemer hos meg. Det lureste er å sjekke loggene hos deg. Homeassistant.log er den pågående loggen og homeassistant.log.1 er den som gjaldt før siste omstart.

    PS. Min ferie-omstart er lagd slik at hvis jeg ikke slår av input_boolean.next_day_reboot i løpet av formiddagen, så tas en omstart. Jeg lagde det da jeg så at forbindelsen til Nabu Casa gikk ned og jeg mistet kontakten med HA hjemme. Som ikke løste seg før etter en omstart da jeg var hjemme igjen. Så da ble det disse to automasjonene. 
     

    - id: '1661234937227'
      alias: Omstart på ferie (steg 1)
      description: ''
      trigger:
      - platform: time
        at: '12:30:00'
      condition:
      - condition: state
        entity_id: calendar.ferie
        state: 'on'
      action:
      - service: input_boolean.turn_on
        data: {}
        target:
          entity_id: input_boolean.next_day_reboot
      mode: single
    - id: '1671626910222'
      alias: Omstart på ferie (steg 2)
      description: ''
      trigger:
      - platform: time
        at: '12:05:00'
      condition:
      - condition: state
        entity_id: input_boolean.next_day_reboot
        state: 'on'
      action:
      - service: homeassistant.restart
        data: {}
      mode: single

     

    • Thanks 1
  12. RVM skrev (Akkurat nå):

    Litt av poenget med å gjøre det akkurat sånn for meg, var at jeg da slapp å endre så mye på logikk som bruker raw_today/raw_tomorrow andre steder, siden jeg har samme format for raw_today/raw_tomorrow i min nettopris.

    For meg er det motsatt. Jeg har en enkel liste som inneholder alle priser istedenfor å splitte den opp i to lister. Listen inneholder dato og klokkeslett så å splitte den i to for i dag og i morgen, gjør det bare mer komplisert.

     

    @state_trigger("sensor.nordpool")
    def strompris():
        if (sensor.nordpool.raw_tomorrow is not None
            and len(sensor.nordpool.raw_tomorrow) > 0
            and sensor.nordpool.raw_tomorrow[0]['value'] is not None):
            pyscript.strompris = datetime.now()
            pyscript.strompris.raw_price = sensor.nordpool.raw_today + sensor.nordpool.raw_tomorrow


    Dette lagde jeg for mer enn et år siden, med en plan om å lese inn priser fra Entso-e hvis Nordpool er utilgjengelig. Men så stoppet det opp av en eller annen grunn.

  13. RVM skrev (29 minutter siden):

    Jeg har nylig gått over til å la Nordpool-integrasjonen kun ta seg av spotprisen, og så lar jeg andre entities holde på nettleie og strømstøtte hver for seg, før jeg summerer opp en netto strømpris.


    Har vurdert det samme. Og å lage det slik at prisene for hvor time enten hentes fra Nordpool integrasjon eller Entsoe-e integrasjon, avhengig av tilgjengelighet på priser. Da får jeg to kilder som jeg varierer på, alt ettersom.

  14. Hos meg fikk jeg problem med at Nordpool integrasjonen starter opp før holidays integrasjonen og da feiler prisberegningen. Dette kan en løse med å endre manifest filen til nordpool. Men så må en huske å gjøre det hver gang det er ny versjon av nordpool.

    Da er det lettere å huske å endre helligdag-listen som jeg har i malen. Den endres kun en gang i året og jeg må jo allikevel endre malen pga nye priser. Da tar det mindre enn et minutt å legge inn 5 bevegelige helligdager istedenfor å være avhengig av at holidays integrasjonen starter opp før nordpool.....

  15. MagnusO2 skrev (På 6.12.2023 den 16.30):

    Det har du selvsagt rett i...

    Har gjort en nytt forsøk som benytter seg av custom integrasjonen Holidays (https://github.com/bruxy70/Holidays). Denne holder en liste over datoer som er definerte helligdager som jeg sammenligner med.

    Forutsetningen her er at nordpoolintegrasjonen bruker datoen til timen den prosesserer når man bruker now(). Har spurt utvikleren om dette, men ikke fått svar...

     

    Fortsatt åpen for innspill på dette!! 🙂

     

    {# January to March - Weekend and holiday taxes #}
    {% if (as_timestamp(now()) | timestamp_custom("%F")) in (state_attr('calendar.holidays','holidays') | list) and (now().month >= 1 and now().month <= 3) %}
      {% set el_taxes = 0.3558 %}
      
    {# April to December - Weekend and holiday taxes #}
    {% elif (as_timestamp(now()) | timestamp_custom("%F")) in (state_attr('calendar.holidays','holidays') | list) and (now().month >= 4) %}
      {% set el_taxes = 0.4393 %}
    
    {# January to March - Dyatime taxes #}
    {% elif (now().month >= 1 and now().month <= 3) and (now().hour >= 6 and now().hour <= 22) %}
      {% set el_taxes = 0.4738 %}
    
    {# January to March - Night taxes #}
    {% elif (now().month >= 1 and now().month <= 3) and (now().hour >= 23 or now().hour <= 5) %}
      {% set el_taxes = 0.3558 %}
    
    {# April to December - Day taxes #}
    {% elif (now().month >= 4) and (now().hour >= 6 and now().hour <= 22) %}
      {% set el_taxes = 0.5573 %}
    
    {# April to December - Night taxes #}
    {% elif (now().month >= 4) and (now().hour >= 23 or now().hour <= 5) %}
      {% set el_taxes = 0.4393 %}
    {% endif %}
    
    
    {% if current_price > 0.875 %}
        {% set subs = (current_price - 0.875) * 0.9 %}
        {% set additional_cost = el_taxes - subs %}
    {% elif current_price <= 0.875 %}
        {% set additional_cost = el_taxes %}
    {% endif %}
    
    
    {{ additional_cost }}

     


    Flott at du fant integrasjonen "Holidays". Da går det, som du har gjort, å teste på om en dato er en rød dag i kalenderen.

  16. MrE skrev (1 time siden):

    PID-regulering er finfint

    Noe andre ovner har hatt i årevis. Allerede på 80-tallet hadde jeg ovner med dette. Jeg er enig i at en god regulator er fint. Det gir en behagelig varme i fra de. Dessverre er det mange som ødelegger denne funksjonaliteten på sin ovn med å sette en fjernstyrt kontakt mellom ovn og stikkontakt.

  17. MagnusO2 skrev (8 timer siden):

    Jeg tror den templaten fungerer som den skal altså. Det virker som den blir evaluert på nytt for hver time, slik at både time på døgnet og helligdag vurderes riktig.

    Beklager, men det gjør den ikke. Når listen "Tomorrow" fylles inn med priser, så bruker du en workday som sier om dagen i dag er en helgedag. Den sier ikke hva morgendagen er. Men du har rett i at prisene oppdateres. Ved midnatt vil "Tomorrow" bli "Today" og workday vil være rett. Men klokken 14 når "Tomorrow" fylles inn med priser, har en samme problem igjen.

×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.