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

Grøtan

Medlemmer
  • Innlegg

    20
  • Ble med

  • Besøkte siden sist

  • Dager vunnet

    2

Innlegg skrevet av Grøtan

  1. @aarpi3 Er Grafana ja. Har satt opp egen VM med Grafana og Graphite.
    Fulgte disse guidene: 

    Install on Debian/Ubuntu | Grafana Labs

    Install Graphite and Graphite-Web on Ubuntu 20.04 using Docker | ComputingForGeeks

     

    Bruker Home Assistant og den har en enkel konfig for å pushe stats til graphite. Om dette er mulig i Homeseer er jeg usikker på, er lenge siden jeg brukte Homseer.

    configuration.yaml:

    graphite:
      host: x.x.x.x
      port: 2003

     

    Med MS6 rakk jeg å gå 2-4 skritt inn gangen, men med MS7 så trigges lyset momentant. 

    • Like 1
  2. image.png.45e9a4600b727b7722e1a67f2c712c62.png

     

    Ble markant bedre med ny firmware. Hvite streken markerer ca. hvor jeg oppdaterte til nyeste fw.

    Threshold satt til 0.1 grader.

     

    Etter min erfaring er MS7 mye raskere på deteksjon av bevegelse enn MS6 med 1.15 fw.

    Virker også som at PIR-sensoren har lengre rekkevidde enn hva MS6 har.

     

     

    • Like 4
  3. Er du fra Steinkjer/Snåsa og vil ha tømmedato for renovasjon inn i Home Assistant kan koden nedenfor brukes.

     

    # ruteType:
    # 1,2 = Matavfall og Restavfall
    # 1,3 = Matavfall og Papp/Papir
    # 4 = Plast
    # 5 = Plast sentrum nord for Steinkjerelva
    # 6 = Plast sentrum sør for Steinkjerelva
    #
    # OmradeID og ruteID finner man i Tømmeplan Steinkjer appen eller på hjemmesiden til Steinkjer kommune
    #
    # Henter restavfall
    - platform: rest
      resource: https://tommeplan.grsoft.no/v1/getha?omradeID=2&ruteID=3&ruteType=1,2&fetchLimit=1
      name: "Mat og Restavfall"
      scan_interval: 86400
      device_class: timestamp
      headers:
        content-type: "application/json"
        x-api-key: "ZABtfylm48W01BPcEGKmnpbm7XCLWKAo"
      json_attributes:
        - readrute
        - readomrade
      value_template: "{{ value_json[0].dato }}"
    
      # Denne bolken kan sløyfes om man ikke vil ha 2 sensorer med område og rutebeskrivelse
    - platform: template
      sensors:
        matogrest_rutebeskrivelse:
          friendly_name: "Rutebeskrivelse"
          value_template: "{{ state_attr('sensor.mat_og_restavfall', 'readrute') ['rutebeskrivelse'] }}"
        matogrest_omrade:
          friendly_name: "Område"
          value_template: "{{ state_attr('sensor.mat_og_restavfall', 'readomrade') ['omradetekst'] }}"
    
    # Henter Papp/Papir
    - platform: rest
      resource: https://tommeplan.grsoft.no/v1/getha?omradeID=2&ruteID=3&ruteType=1,3&fetchLimit=1
      name: "Mat og Papp/Papir"
      scan_interval: 86400
      device_class: timestamp
      headers:
        content-type: "application/json"
        x-api-key: "ZABtfylm48W01BPcEGKmnpbm7XCLWKAo"
      value_template: "{{ value_json[0].dato }}"
    
    # Henter Plast
    - platform: rest
      resource: https://tommeplan.grsoft.no/v1/getha?omradeID=2&ruteID=3&ruteType=4&fetchLimit=1
      name: "Plast"
      scan_interval: 86400
      device_class: timestamp
      headers:
        content-type: "application/json"
        x-api-key: "ZABtfylm48W01BPcEGKmnpbm7XCLWKAo"
      value_template: "{{ value_json[0].dato }}"
    

     

    Lovelace glance:

    type: glance
    entities:
      - entity: sensor.mat_og_restavfall
        icon: mdi:delete-outline
        name: Restavfall
        card_mod:
          style: |
            :host {
            --card-mod-icon-color: green;             
              }
      - entity: sensor.mat_og_papp_papir
        icon: mdi:book-open-blank-variant
        name: Papp/Papir
        card_mod:
          style: |
            :host {
            --card-mod-icon-color: dark-blue;             
              }
      - entity: sensor.plast
        icon: mdi:domain
        name: Plast
        card_mod:
          style: |
            :host {
            --card-mod-icon-color: orange;             
              }
    

     

    Har installert en HACS som heter card-mod for å få endret farge på ikonene.

    Blir seende slik ut:

    soppel.PNG.9a5cd255e6b23dd1c411c2c90d76f884.PNG

     

    Er rimelig fersk på HA så mulig det finnes bedre metoder for å få til dette, men det ser ut til å funke :D

     

    • Like 2
  4. Etter inspirasjon fra denne tråden har jeg laget/modifisert script for henting av tømmedatoer i Steinkjer og Snåsa.

    Har laget og drifter en mobilapp for tømmedatoer så jeg laget en rute i backend for å gjøre det litt enklere å tilpasse til Homeseer.

     

    Man må lage 3 virtuelle enheter med On/Off mulighet der On er 1 og Off er 0.

    Scriptet slår på enhetene som har tømming neste dag og slår av enhetene som ikke har tømming neste dag.

     

    Nå vet ikke jeg hvor mange som bruker Homeseer i Steinkjer/Snåsa, men det kan jo finnes noen 😊

     

    Public Class Readomrade
        Public Property id As Integer
        Public Property omradetekst As String
    End Class
    
    Public Class Readrute
        Public Property id As Integer
        Public Property ruteomradeid As Integer
        Public Property rutetekst As String
        Public Property rutebeskrivelse As String
    End Class
    
    Public Class TommePlan
        Public Property id As Integer
        Public Property dato As DateTime
        Public Property rutetype As String
        Public Property readomrade As Readomrade
        Public Property readrute As Readrute
    End Class
    
    Sub Main(ByVal parameters As Object)
    
    ' Tømmeplan Steinkjer og Snåsa. https://grsoft.no/tommeplan
            
    ' Parameter:
    ' 1: Devref Restavfall
    ' 2: Devref Papp
    ' 3: Devref Plast
    ' 4: Områdenr.
    ' 5: Rutenr. Område og Rutenr hentes fra: https://www.steinkjer.kommune.no/renovasjon.460804.no.html
    
    ' ruteType: 
    ' 1,2 = Matavfall og Restavfall
    ' 1,3 = Matavfall og Papp/Papir
    ' 4 = Plast
    ' 5 = Plast sentrum nord for Steinkjerelva
    ' 6 = Plast sentrum sør for Steinkjerelva
    
    'Clio75  All Credits to [email protected]
    'Inspired and based on Moskus scrip NewsReader.vb 
    
        Dim devIDRest As Integer = parameters.ToString.Split("|")(0)
        Dim devIDPapp As Integer = parameters.ToString.Split("|")(1)
        Dim devIDPlast As Integer = parameters.ToString.Split("|")(2)
        Dim omradeID As String  = parameters.ToString.Split("|")(3)
        Dim ruteID As String  = parameters.ToString.Split("|")(4)
    
            
        'Angir hvor mange fremtidige tømminger som skal hentes
        Dim fetchLimit As String  = "2"
        Dim ruteType As String = ""
        Dim devID As Integer = 0
           
        For x As Integer = 0 To 2
    
            Select Case x
                Case 0
                    ruteType = "1,2"
                    'Device ref til Restavfall
                    devID = devIDRest
                Case 1
                    ruteType = "1,3"
                    'Device ref til Papp
                    devID = devIDPapp
                Case 2
                    'Endre denne til 5 eller 6 om du bor i sentrum av Steinkjer
                    ruteType = "4"
                    'Device ref til Plast
                    devID = devIDPlast
            End Select
    
            Dim url As String = "https://tommeplan.grsoft.no/v1/getha?omradeID=" & omradeID & "&ruteID=" & ruteID & "&ruteType=" & ruteType & "&fetchLimit=" & fetchLimit  
            Dim source As String = ""
          
            Try
                Using client As New System.Net.WebClient
                    ' Denne api nøkkelen kan alle bruke
                    client.headers.set("X-Api-Key", "ZABtfylm48W01BPcEGKmnpbm7XCLWKAo")
                    Net.ServicePointManager.SecurityProtocol = Net.SecurityProtocolType.Tls12
                    client.Encoding = System.Text.Encoding.UTF8
                    source = client.DownloadString(url)
                End Using
            Catch ex As Exception
                hs.WriteLog("Soppel Error", "Net Feil: " & ex.Message)
            End Try
    
            If source = "" Then
                hs.WriteLog("soppel Error", "Got no response from url: " & url)
                Exit Sub
            End If
    
            Try
                Dim tommePlan() as TommePlan = Newtonsoft.Json.JsonConvert.DeserializeObject(Of TommePlan())(source)
    
                Dim devTekst = ""
               ' Dim firstDate As DateTime
                Dim imorgen As Date = DateAdd("d",1,Today)
                Dim tommeDato As Date
                For i As Integer = 0 To tommePlan.Count -1
                    
                    Dim ruteTypeTekst As String = ""
                    Dim  dato As DateTime = Convert.ToDateTime(tommePlan(i).dato)
                    Dim formattedDate As String = dato.ToString("ddd d MMM")
                    
                    Select Case i
                        Case 0                        
                            devTekst = formattedDate+" <br>"              
                            tommeDato = tommePlan(i).dato
                            If imorgen = tommeDato Then
                                ' Slår på virtuell enhet om det er tømming i morgen 
                                hs.SetDeviceValueByRef(devID, 1, True)
                            Else
                                ' Slår av virtuell enhet om det ikke er tømming i morgen 
                                hs.SetDeviceValueByRef(devID, 0, True)
                            End If
    
                        Case 1
                            devTekst = devTekst + "<b>Neste:</b> " + formattedDate
                    End Select
    
                    hs.SetDeviceString(devID, devTekst , True)
                Next
    
            Catch ex As Exception
                hs.WriteLog("Soppel Error", "Net Feil: " & ex.Message)
            End Try
        Next
    End Sub

     

    Capture1.PNG

    Capture2.PNG

    renovasjon.vb

    • Like 2
  5. Veeam har kommet med Community Edition som lar deg ta backup av inntil 10 enheter for Hyper-V eller VMWare (Kreves vel betalt versjon av VMWare for at Veeam skal få tilgang til backup API).

    https://www.veeam.com/virtual-machine-backup-solution-free.html

     

    • Powerful: Experience the full backup, recovery and replication capabilities provided in Veeam Backup & Replication Standard edition
    • Simple: Download and begin protecting in minutes with any server hardware and backup storage you already have
    • Reliable: Set it and forget it, ensuring your data is protected and available whenever and wherever you need it— It Just Works!

     

    And, most importantly, Veeam Community Edition is FREE FOREVER!

     

     

    • Like 1
  6. Brukte denne funksjonen for et par dager siden til å oppgradere en Oomi Multisensor som ikke ville la seg inkludere korrekt i HS3.

    Etter å ha oppgradert den med Aeotec sin 1.11 firmware så fungerer den :)

     

    Om de fortsetter trenden med å legge ut firmware til HS3 så kommer jeg til å kjøpe Aeotec enheter så langt det går. 

     

  7. Hei.
    Har laget et program som leser databasen til Device History og sender dataene til Graphite slik at man kan lage fine grafer i Grafana.

    Pakk ut zip filen til f.eks /opt/dhtographite/
    Kjør chmod +x dhtographite.exe

     

    Endre dhtographite.exe.config slik at det passer oppsettet du har.
    Setter du LastDate til 0 så går den gjennom hele databasen til devicehisory.

      <add key="DeviceHistorySQL" value="/opt/HomeSeer/Data/skWare/DeviceHistory/HSPI_SKWARE_DEVICE_HISTORY.db3" />
      <add key="LastDate" value="0" />
      <add key="GraphiteIP" value="10.0.0.11" />
      <add key="GraphitePrefix" value="devicehistory" />
      <add key="GraphitePort" value="2003" />

    kjør crontab -e og legg til:

    * * * * * /opt/dhtographite/dhtographite.exe (Endre path til der du har pakket ut zip filen)

    Denne gjør at dhtographite kjøres en gang i minuttet. Det kjøres en SQL spørring slik at kun nye data blir sendt til Graphite.

    Programmet bør kjøres manuelt første gangen. Kan ta lang tid om databasen er stor.

     

    Har testet på Ubuntu 16.04, men burde fungere i windows også.

    Finnes utallige guider for å installere Graphite og Grafana på linux om man googler litt.


    Etter installasjon av graphite bør storage-schemas.conf endres, default så lagrer den kun 1 døgn.

    /etc/carbon/storage-schemas.conf

    slik ser min ut:

    [device_history]
    pattern = ^devicehistory\.
    retentions = 1m:5y
    
    [carbon]
    pattern = ^carbon\.
    retentions = 60:90d
    
    [default_1min_for_1day]
    pattern = .*
    retentions = 60s:1d
    

    Viktig at device_history ligger øverst.

     

    I Grafana legger du til devicer slik:

    metrics.thumb.PNG.fe70e4b8b3e8bb20586b8eb6b55068ed.PNG

    Tallene du ser er device_ref

     

    Eksemple på temperatur siste 7 døgn

    graf.thumb.PNG.886abbf9273d07704df9019998d07644.PNG

     

    Jobber med en plugin som sender data direkte til Graphite, men er bratt læringskurve så blir vel etter hvert.

     

     

    dhtographite.zip

    • Like 8
    • Thanks 1
×
×
  • 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.