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

Automatikk

Medlemmer
  • Innlegg

    119
  • Ble med

  • Besøkte siden sist

  • Dager vunnet

    6

Innlegg skrevet av Automatikk

  1. Såvidt jeg har fått beskjed om fra Garo skal denne ha 2 utganger som viser ved høy:

     

    Komfyrvakt utløst

     

    Komfyr i bruk 

     

    Da skal det være mulig å kombien disse til en binærinngang tenker jeg?

     

    I tillegg mener jeg det skal være mulig å koble til en vannsensor til disse og således slå av platetoppen ved bruk av releutgang. Sjekk manualen på nett ?

  2. Jeg pleier å legge en KNX kabel til ringeklokken fra tavlen. Kjører ett par til knappen (til binærinngang) og 1 par til en diode. Selve bjellen går på egen KNX utgang. På denne måten kan man «mute» ringeklokke om ønskelig og heller aktivere push, PiP på TV og lignende. 

    • Like 1
  3. Jeg lagde for en stund tilbake simulert soloppgang som vekkerklokke på soverommet, med påfølgende lyd fra Sonos etter ca. 10 minutter. Selv om jeg kan aktivere denne ved sengen om kvelden, er det ikke alltid jeg ønsker å stå opp til samme tidspunkt hver dag. Kjæresten jobber også turnus, slik at det ikke alltid passer seg å vekke henne med dette. I tillegg har vi hver våre leiligheter slik at jeg ikke alltid sover hjemme. Vanskelig å automatisere mao.  Jeg synes også apper er noe herk og det blir litt mye navigering for å endre tidspunkt i styringsappen for leiligheten. 

     Jeg lagde derfor en workflow i appen, wait for it, Workflow! Denne er tilgjengelig som en slags widget i iOS og ser slik ut:

     

    7DA557B0-E2DD-46E5-8A60-E730FB00F1B6.thumb.jpeg.0830413cfa12b61ee94643e2c4c6e61a.jpeg

     

    Trykker man på vekkerklokke kastes man umiddelbart inn i appen til en tidspunktvelger:

     

    BEE8ECA0-40A8-4CE7-8167-0E223C24FF1E.thumb.jpeg.95202a62861e1cd5a42be3689dfbd78b.jpeg

     

    Appen sender så tidspunkt til kontrolleren min og denne starter tidsjekk hvert minutt frem til vekkerklokkesekvensen skal starte. 

     

    Ganske fornøyd! Maaaange trykk og venting har blitt erstattet med et sveip, klikk, velg og klikk!

    • Thanks 1
  4. Har et inntrykk av at folk ville se hvordan jeg bygget min versjon av MagicMirror2.

     

    Jeg har et forholdsvis lite bad og trenger derfor ikke så veldig stort speil, heldigvis. Det dyreste med hele pakken er selve speilet, et såkalt spionspeil (ja, glassmestrene kaller det for dette). Når det er sagt gir dette speilet et ekslusivt preg som er vanskelig å forklare, det er som det er litt sotet i forhold til vanlige speil. Speilet er gjennomlysbart, noe som krever at man er nøye ved installering av monitor. 

     

    Det første man gjør er å lage selve rammen. Den kan bestå av hva som helst; har du tilgang på stålverksted kan gjerne aluminiumprofiler brukes, jeg brukte MDF. Dette er et dødt materiale som er enkelt å forme og male over. Brukte grunning og våtromsmaling da speilet står på bad. Det er viktig å tenke lufting da det kan bli varmt bak speilet, alt etter hvor mye plass man har. 

     

    Jeg planla speilet i forbindelse med bygging av leilighet, derfor la jeg opp sentralstøvsugerrør i veggen for god nok plass til kabler:

     

    IMG_0564.thumb.png.dee2a1b07ade98b5bea0e3c39d3f132b.png

     

    Her er jeg i gang med selve rammen ("L-en" nederst på bildet er der hvor speillyset er montert, henger på vegg og toppen av skap):

     

    IMG_0266.thumb.png.bcab21bfc9d1007e5de214c719237854.png

     

    Så var det montering av skjerm. Dette er en standard PC-monitor med HDMI-inngang. Måtte demontere dette og flytte hovedkortet på siden av skjermen pga. "plassproblemer", kalkulerte sådan. Det jeg ikke hadde kalkulert skikkelig var størrelsen på HDMI-kontakten, denne måtte modifiseres kraftig. Tenk litt på helheten før du lager rammen. Samtidig skal det jo se pent ut, uten at det henger 10cm ut av veggen.

    Jeg brukte borrelås for å feste skjermen og reklamefolie rundt for å sikre meg mot lysutslipp på sidene av skjermen.

     

    Slik ser baksiden ut:

     

    IMG_0563.thumb.png.1853d5d257315f8c4acbb5853214f194.png

     

    Selve softwaren er enkel å installere og kjøres på en RPi. Jeg loddet en kabel på AV/PÅ bryteren på skjermen, slik at RPi også kan slå denne av og på. Skjermen min har hardkodet strømsparing etter 4 timer, slik at den må vekkes manuelt via power-knappen uansett. PIR i rommet slår skjermen av og på alt etter om det er folk i rommet.

     

    Slik så det hele ut etter at det var ferdig satt på plass:

     

    IMG_0566.thumb.png.9caf156212debc1effbe0fecceb02aa2.png

     

    Total information-overload, så jeg kuttet ut masse moduler og flyttet de viktigste ut av boksen modulene nederst:

     

    IMG_0568.thumb.png.36dcb80cc557e3f7f1b227bf091ef5fd.png

     

    Jeg er veldig fornøyd med resultat og det er dessverre vanskelig å fange opp med et kamera hvor mye av informasjonen man faktisk ser i full belysning. Informasjonen er der, men ikke i veien, heller til glede om man pusser tennene feks.

     

    Vi har funnet ut av magicmirror har sine begrensinger og kommer derfor til å lage custom software som integrerer direkte mot toppsystemet i leiligheten. Da kan vi tilpasse informasjonsflyten mye bedre uten å ha 2 separate datamodeller som skal samkjøres.

     

    Neste på programmet er ansiktsgjenkjenning. Dette kommer til å kjøre helt separat på en egen RPi med kameramodul som da sender et tall til den internett-tilknyttede RPi´en via TX/RX ved gjenkjent ansikt. Jeg nekter å ha en RPi med kamera tilkoblet internett på badet... ;) 

     

    Deler:

     

    • RPi 
    • HDMI-kabel
    • PC-monitor
    • Spionspeil (Koster ca. 2300 + mva pr. kvm)
    • Ramme m/ materiale og maling
    • Like 7
    • Thanks 1
  5. Jeg skjønner. 

     

    Har du kontroll på hvordan du eksporterer gruppeadresser fra ETS til SpaceLYnk?

     

    Sett en knapp på en bryter til en gruppeadresse.  (bruk toggle)

     

    Sjekk at du får oppdatert status i SpaceLYnk når du trykker på bryter. 

     

    Gå til fanen Scripting i SpaceLYnk og trykk på Common Functions. Legg dette til på slutten av koden (trykke på save etterpå):

     

    function upnpavcmd(host, port, cmd, param)
      local client, soap, reqs, service, res, err
     
      require('socket')
      client = socket.tcp()
      client:settimeout(3)
     
      -- try connecting to upnp endpoint
      res, err = client:connect(host, port)
      if not res then
        return nil, err
      end
     
      -- guess service name based on command
      if cmd == 'SetVolume' or cmd == 'GetVolume' or cmd == 'GetEQ' or cmd == 'SetMute' or cmd == 'GetMute' then
        service = 'RenderingControl'
      
      elseif cmd == 'SetGroupVolume' or cmd =='SetGroupMute' or cmd == 'GetGroupVolume' or cmd == 'GetGroupMute'then
      	service = 'GroupRenderingControl'
    
        else
        service = 'AVTransport'
      end
     
      -- soap envelope
      soap = '<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">' ..
               '<s:Body>' ..
                 '<u:' .. cmd .. ' xmlns:u="urn:schemas-upnp-org:service:' .. service .. ':1">' ..
                   '<InstanceID>0</InstanceID>' ..
                   (param or '') ..
                 '</u:' .. cmd .. '>' ..
               '</s:Body>' ..
             '</s:Envelope>'
    
      -- http request   
      reqs = 'POST /MediaRenderer/' .. service .. '/Control HTTP/1.1\r\n' ..
             'CONNECTION: close\r\n' ..
             'HOST: ' .. host .. ':' .. port .. '\r\n' ..
             'CONTENT-LENGTH: ' .. soap:len() .. '\r\n' ..
             'CONTENT-TYPE: text/xml; charset="utf-8"\r\n' ..
             'SOAPACTION: "urn:schemas-upnp-org:service:' .. service .. ':1#' .. cmd .. '"\r\n' ..
             '\r\n' .. soap
    
      -- send http request
      res, err = client:send(reqs)
      if not res then
        return nil, err
      end
     
      -- get reply and close connection
      res, err = client:receive('*a')
      client:close()
     
      return res, err
    end
    

     

    Trykk på scriptknappen (en av de to grønne på samme linje som gruppeadressene i Objects fanen) på den aktuelle gruppeadresser. Du får nå opp Script editor. 

     

    Lim inn denne koden:

     

    val = event.getvalue()
    
    ip = '192.168.0.0' -- Endre denne til din SONOS-ip
    
    if val == true then
    
    	upnpavcmd(ip, 1400, 'SetGroupMute', '<DesiredMute>1</DesiredMute>') -- Muter sonos
     
    else
      
      	upnpavcmd(ip, 1400, 'SetGroupMute', '<DesiredMute>0</DesiredMute>') -- Unmuter sonos
      
    end

     

    Trykk Save og prøv å trykk på knappen mens du spiller noe på sonos.

  6. 15 minutter siden, MarkusH skrev:

    Tusen takk for svar. Har lest på forumet og installert appen, men ble dessverre ikke så mye klokere. Hvordan har du løst det med å linke gruppeadresser til feks play og pause? 

     

    Se post 13 i linken jeg postet. 

     

    Har du grei kontroll på scripting på Spacelynk?

     

    Har du lisens selv til ETS ?

×
×
  • 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.