Hop til indhold

Kenth Jensen

Members
  • Antal indlæg

    397
  • Medlem siden

  • Senest besøgt

Alt der er opslået af Kenth Jensen

  1. Det ser spændende ud med det nye API. Dog ser det også temmelig omfattende ud, der bliver vist en hel del nyt at sætte sig ind i her, når det engang bliver færdigt
  2. Ja, det skulle rent teknisk sagtens være muligt at styre det fra IhcCaptain eller lignende helt uden at bruge IHC udgange fra output moduler. Jeg kan styre mine vinduer fra min Raspberry Pi som kører Windows 10 IOT, uden at Velux KLF200 og Raspberry PIen er fysisk forbundet, ud over at de begge er forbundet til samme netværk. >>Er det noget med at man i klf 200 skal programmere nogle scenarier (evt via klr200) eller kan man styre hver enkelt produkt direkte via web interface sådan at programmeringen ligger enten i en FB eller captain el lign. Du skal på forhånd oprette nogle programmer, også kaldet scener, disse oprettes via webinterfacet der følger med KLF200 og ens originale Velux remote. program 1 kunne være at åbne vindue A på 0 %, program 2 kunne være at åbne vindue A på 50 %, program 3 kunne være at åbne vindue A på 100 %, program 4 kunne være at rulle gardin A+B til 800 %, Man kan definere op til 32 af disse programmer. Man kan så via APIet køre disse programmer, Det vil sige, man kan ikke åbne sit vindue på 37 % med mindre man har oprettet et program der åber det på 37 % på forhånd. Håber dette hjalp lidt på forståelsen, ellers bare spørg igen
  3. Så lykkedes det sørme at styre Velux gardiner og vinduer via C# og min Velux KLF200 enhed, nu mangler jeg bare at få smidt det over på min Raspberry PI, koden kan ses herunder. Den Velux KLF200 er godt nok genial, købte min fra www.roofingsuperstore.co.uk for ca 1300-1400 kr incl alt. using System; using System.Net.Http; using System.Net.Http.Headers; using System.Windows.Forms; namespace VeluxTest { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void buttonStart_Click(object sender, EventArgs e) { // Login HttpClient httpClient = new HttpClient(); string data = "{\"action\":\"login\",\"params\":{\"password\":\"velux123\"}}"; HttpResponseMessage response = httpClient.PostAsync(@"http://192.168.1.144/api/v1/auth", new StringContent(data)).Result; string respStr = response.Content.ReadAsStringAsync().Result; if (respStr.Contains("token")) { string token = IsolateToken(respStr); // Run a program (scene) httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); data = "{\"action\":\"run\",\"params\":{\"id\":1}}"; //first scene (program) = id 0, second scene (program) = id 1 etc. response = httpClient.PostAsync(@"http://192.168.1.144/api/v1/scenes", new StringContent(data)).Result; // Log out again data = "{\"action\":\"logout\",\"params\":{}}"; response = httpClient.PostAsync(@"http://192.168.1.144/api/v1/auth", new StringContent(data)).Result; } else { // Handle error here, could be caused by wrong IP address or password } } private string IsolateToken(string inputString) { var startOfToken = inputString.IndexOf("\"token\":\"") + 9; var stopOfToken = inputString.IndexOf("==", startOfToken + 5); var LengthOfToken = stopOfToken - startOfToken; string token = inputString.Substring(startOfToken, LengthOfToken + 2); return token; } } }
  4. Mikkel, det lyder skide godt. Min Raspberry PI kører Windows 10 IOT og ikke Raspbian som vist ellers er det mest normale, da jeg koder i C#, er dette et problem? Jeg aner intet om SSH, men hvis du kan hjælpe mig lidt på vej med det, så kan det måske lade sig gøre.
  5. Mange tak for hjælp indtil videre. Desværre kan jeg indtil videre slet ikke logge ind på skidtet fra mit program Jeg har prøvet med nedenstående kode, men får altid et svar tilbage hvor der står: )]}',{"result":false,"deviceStatus":"IDLE","data":{},"errors":[999]} hvilket jo må komme fra Velux devicen, hvilket i det midste er en lille smule positivt, da jeg så har fat i den rigtige device. Jeg får samme svar tilbage uanset om jeg bruger det rigtige password, eller noget volapyk. Dog får jeg StatusCode=OK, og ResponseStatus=Completed i min response, men det er vel også bare tegn på at devicen har svaret et eller andet tilbage. Jeg ved ikke rigtig hvor og hvordan jeg skal bruge dette: {"action":"login","params":{"password":"velux123"}} , passwordet har jeg brugt, men ved ikke hvad jeg stiller op med denne action login. Må indrømme jeg er temmelig meget på udebane her, så alt hjælp modtages med kyshånd, og hjælp må meget gerne skæres ud i pap :o) RestClient client = new RestClient(@"http://192.168.1.144/api/v1/auth"); RestRequest request = new RestRequest(Method.POST); request.AddParameter("password", "velux123"); request.RequestFormat = DataFormat.Json; IRestResponse response = client.Execute(request); string responseString = response.Content.ToString();
  6. Kender desværre ikke Hue, har selvfølgelig hørt om det, men kender ikke til det derudover. Den eneste mode man kan sætte på boksen, mig bekendt, er om den skal opføre sig som repeater eller interface, og jeg har valgt interface.
  7. Jeg har netop købt en Velux KLF 200, var fået parret den sammen med mine vinduer, og kan nu styre dem via relæ indgangene, og kan konfigurere den via dens almindelige webinterface i en internet browser. Jeg kunne rigtig godt tænke mig at styre den via dens web interface direkte, så jeg kan styre den fra min Raspberry PI der kører Windows 10 IOT, så jeg håber at få lavet noget kode i C# der kan styre mine vinduer. Jeg kan ikke rigtig få hul på bylden indtil videre. Jeg har fundet nedenstående kode, men undrer mig over hvordan jeg finder Authorization: Bearer bBbpXgBfTlw9LQwytyH5Cw==, tænker at denne er unik for hver enkelt KLF 200 device. Jeg har fundet en del kode eksempler i Java, men fatter desværre ikke en klap af Java, så er der en venlig sjæl der kan skubbe mig lidt i retning af hvordan jeg får noget op at køre med C#, evt nogle simple http post kommandoer. På forhånd mange tak Authenticate POST /api/v1/auth HTTP/1.1 Host: 192.168.0.1 Content-Type: application/json;charset=utf-8 Content-Length: 51 Connection: close {"action":"login","params":{"password":"velux123"}} Run a program POST /api/v1/scenes HTTP/1.1 Host: 192.168.0.1 Content-Type: application/json;charset=utf-8 Authorization: Bearer bBbpXgBfTlw9LQwytyH5Cw== Content-Length: 34 Connection: keep-alive {"action":"run","params":{"id":2}} Identify a product POST /api/v1/products HTTP/1.1 Host: 192.168.0.1 Content-Type: application/json;charset=utf-8 Authorization: Bearer bBbpXgBfTlw9LQwytyH5Cw== Content-Length: 50 Connection: close {"action":"identify","params":{"id":5,"time":254}}
  8. Øv, kan du evt uploade til et Google Drive eller en public folder på Dropbox. Min mail adresse er kfj4100 snabela gmail.com men der er der også en grænse på 25 mb. Hvordan håndterer du at den hashcode kun er gyldig i 30 minutter? Endnu engang mange tak for at du gider bruge tid på dette, sætter meget stor pris på det. HHilsen Kenth
  9. Hej igen. Sætter stor pris på at du vil dele ud af dine erfaringer. Ser frem til at modtage dit projekt. Den værdi du skriver at hver ting har, mener du resourceIDen som også bliver brugt i selve IHC projekt filen til IHC visual? Den der hash kode, er det en cookie, og hvordan håndtere du at den kun er gyldig i 30 minutter? Det vigtigste jeg skal lave er at overvåge 2 indgange og logge ændringerne i en fil, dette skal køre konstant 24/7 På forhånd tak Hilsen Kenth
  10. Hej Mikkel Jeg overvejer selv at bruge min Raspberry PI3 med Windows 10 IOT til at kommunikere med mit IHC via en UWP app, og er meget interesseret i dit projekt. Indtil videre har jeg kun brug for at lytte på et enkelt output fra IHC så min Raspberry kan gøre noget når en bestemt IHC output tændes eller slukkes. Har du evt tid til lige at skrive nogle linier med en introduktion af hvordan din klasse bruges, hvilke metoder der skal kaldes for at initialisere forbindelsen, hvor ip adressen, brugernavn og password sættes og hvordan man abonnerer på en given resource På fothånd mange tak HHilsen Kenth
  11. Anders, prøvede du at genere pulserne til controlleren, eller modtog du dem fra controlleren? Jeg kan se det kan lade sig gøre at modtage pulserne og time hver enkelt bit via Microsoft.SPOT.Hardware.Utility.GetMachineTime().Ticks; Der hvor jeg ikke lige kan gennemskue det, er når bittene skal generes af boardet og sendes til controlleren. Timeren i micro frameworket har en opløsning på 1 millisekund, men der skal laves pulser på henholdsvis 150, 300 og 450 micro sekunder. Man kan selvfølgelig lave en while løkke der looper rundt indtil ticks er nået op på den rigtige værdi, men tænker at det vil loade processoren og at det i stedet skal være noget event baseret, da boardet samtidig skal kunne modtage IR kommandoer fra remoten på præcis samme tidspunkter
  12. Jesper, har har kigget nu kigget lidt på protokollen brugt til temperatur sensorerne, men den protokol er alt for langsom til at bruge til IR modtager, det ser ud til at tage op til ca et halvt sekund at sende en enkelt værdi over via denne protokol, hvilket er fint til temperaturer der ændrer sig meget langsomt, men til en remote kontrol hvor man skal kunne regulere lyset op og ned, duer det ikke. Men det er da fint at tage alle muligheder med i ens overvejelser, og det havde da også kunne være lækkert at kunne lave det uden at skulle hacke sig direkte ind på databussen på controlleren. Anders, godt at høre det kan lade sig gøre, jeg er også faldet over en tråd inde på tooms forum som du har skrevet i. Jeg må vel bare prøve at se om controlleren kan acceptere at der kun er pulser når man sender noget med remoten. Tænker at dette vil være en fordel at processoren i Netduino boardet skal lave så lidt som muligt, da den nok samtidig skal køre en webserver og lytte til IR inputs fra photodioden, sidst nævnte er dog interrupt baserede. Men hvis jeg samtidig skal bruge mere end de 16 input kanaler, jeg kan opnå på en enkelt datainput på controlleren, vil jeg let kunne bruge 2 datainputs hvis jeg kun skal genere pulserne på en output port på boardet ad gangen. Det fede ved at "simulere" denne protokol direkte er at jeg også vil kunne simulere et output modul så jeg kan sende ting fra controlleren til Netduino boardet. Jeg er dog lidt i tvivl om hvordan paritets bitten virker. Taget fra wikipedia: One addition parity pulse; an even number of pulses is 0 parity and odd number pulses is 1 parity Dette er jo lidt noget sludder, der er jo altid samme antal pulser, uanset hvor mange inputs der er 1 og 0. Mon der i stedet menes at paritets bitten er 1 hvis der er et lige antal høje bits, og 0 hvis der er et ulige antal høje bits. Noget der ved det?
  13. Hej Jesper Hvordan virker denne LK temperatur protokol? jeg undrer mig over, hvordan man kan sende x antal grader, via et enkelt input på et inputmodul
  14. Hey Jeg tror lige jeg starter en ny tråd op her, for at undgå at det ellers drukner i en masse gamle indlæg i min gamle tråd. Jeg går og overvejer at lave mit eget input modul med et "Netduino plus 2" board, som skal snakke direkte sammen med IHC controlleren via databussen, som et originalt LK input og output modul gør. Dette skal bl.a. bruges til at lave min egen IR modtager, gammel tråd om emnet findes her: http://www.ihc-user.dk/forum/topic/3323-ir-modtager-og-logitech-harmony-one-universal-fjernbetjening/?p=31215 Jeg har googlet lidt rundt for at finde ud af hvilken protokol IHC benytter sig af mellem controlleren og input og output moduler, og jeg fandt nedenstående: http://en.wikipedia.org/wiki/Intelligent_Home_Control Så vidt jeg kan se, burde det være rimelig let at efterligne denne protokol med "Netduino plus 2" boardet, og det ser også ud til at andre herinde har haft held med tilsvarende. I den forbindelse dukker der et par spørgsmål op. I tilfældet hvor brugeren ikke trykker på nogle knapper på remoten, og alle indgange skal være Off, er det da nødvendigt at generere disse pulser overhovedet, tænkte at det ville være lettere kun at genere pulserne inkl header og paritets pulserne når der rent faktisk var en af indgangene der gik On, resten af tiden må det jo blot svare til at der rent fysisk slet ikke er forbundet et input modul på denne dataindgang på controlleren, og det ville spare en masse processorkraft på Netduino boardet Hvor præcis skal timingen være, tænker på hvor meget breddere og smallere pulserne må være for at controlleren stadig forstår dem. På forhånd mange tak for input
  15. Så har jeg modtaget mit "Netduino plus 2" board, har fået hooket den op med en basal IR photodiode. Jeg har valgt Sony 12 bit protokollen, da den er utrolig simpel at dekode. Jeg har tilføjet en gammel Sony forstærker til min Logitech universal remote, som netop bruger denne Sony 12 bit protokol. Det er lykkedes mig at dekode disse beskeder fra Logitech remoten, og jeg kan både detektere korte og lange tastetryk, jeg kan få forskellige LEDs forbundet til forskellige porte på boardet til at lyse præcis lige så længe som jeg holder knappen nede på remoten. Jeg har endvidere fået en basal webserver op at køre på Netduino boardet. Det jeg så nu mangler er at få den til at snakke sammen med IHC systemet. Oprindeligt var min tanke at den skulle benytte webservicen fra controlleren, på samme måde som Mikkel Skovgaard og Kristian Poulsen benytter, men der skal vist laves en del kode om for at få det til at køre i .NET micro frameworket på boardet, og jeg er absolut helt nybegynder indenfor webservices. Derfor overvejede jeg om mit Netduino plus 2 board kunne snakke direkte sammen med IHC controlleren via databussen som et originalt LK input og output modul gør. Derfor googlede jeg lidt rundt for at finde ud af hvilken protokol IHC benytter sig af mellem controlleren og input og output moduler, og jeg fandt nedenstående: http://en.wikipedia.org/wiki/Intelligent_Home_Control Dette minder super meget om den Sony 12 bit protocol jeg allerede kan dekode fra min IR modtager. Overser jeg noget her, eller vil det ikke være klart det nemmeste at lade mit Netduino board kommunikere direkte sammen med controlleren via dette simple interface, frem for at bruge en webservice hvor jeg skal rode med IP adresser, brugernavne, passwords og en masse andet tingel tangel? Inputs modtages meget gerne )
  16. Det lyder godt. Hvad for en IR modtager har du købt, en færdig LK eller en basal IR photodiode til dit Raspberry Pi board?
  17. Så kom der endelig svar fra LK angående udlevering af hex koder til Logitech, og helt som forventet ville de ikke udlevere dem. Dog kunne de fortælle at jeg i stedet skulle have købt B&O udgaven af deres IR modtager, da disse hex koder er offentligt tilgængelige. Jeg har nu istedet bestilt et Netduino Plus 2 processor board og en IR photodiode, så håber jeg at kunne lave min egen IR modtager, som forhåbentlig kan modtage kommandoer fra Logitech remoten, og via Kristian Poulsens .NET API forhåbentlig kunne sendes videre til IHCen. Det er sgu godt gjort at man selv bliver nødt til at lave det helt fra bunden af for at få det til at virke )
  18. Det er jeg helt med på, jeg ville blot for sjov lave et helt simpelt program, som jeg kunne have liggende på min desktop, så hvis jeg af dovenskab ikke gad rejse mig fra sofaen for at tænde eller slukke for lyset, kunne jeg lynhurtigt starte dette program og styre lyset. Da dette program ikke altid skal ligge og køre i baggrunden hele tiden, kunne det være lækkert hvis det kunne connecte osv super hurtigt. Jeg må i gang med at prøve at fjerne noget af alt det indlæsnings funktionalitet som jeg ikke har brug for, efterhånden som jeg forhåbentlig begynder at forstå hvordan det virker. Jeg tænker også lidt ud i fremtiden, hvis jeg skal have det til at køre på et Arduino board som ikke har så meget processor kraft, skal projektet måske også skrumpes væsentligt ned
  19. Jeg har faldet over Kristians IHCOutput projekt, og er ovenud begejstret, nu bliver det jo pludselig endnu sjovere at rode med IHC Stort tak for alt det arbejde der er lagt i det. Jeg er straks gået i gang med at hacke rundt i projektet og modificere det hist og her, ikke mindst for at prøve at lære hvordan det virker. Jeg overvejer at prøve at få projektet op at køre på et af de der Arduino boards, og på denne måde lave en IR remote modtager, men der er rigtig meget jeg skal have sat mig ind i, inden det er muligt. Indtil videre leger jeg blot med projektet på min PC med Visual Studio. Jeg har fået lavet det, så jeg i stedet kan styre DatalineInput i stedet for DatalineOutput, dermed kan jeg lave lange og korte tryk på mine kontakter og på denne simple måde skrue op og ned for lyset osv, hvilken virker fint indtil nu. Nu til spørgsmålet, når jeg trykker Login går der ca 11 sekunder inden den har indlæst projektet fra controlleren, loopet igennem diverse rum og fundet alle resourcerne. Jeg kunne godt tænke mig at få speedet denne tid drastisk op, men ved ikke helt præcis hvad der tager så lang tid. Jeg overvejer at lave det så den kun læser fra et enkelt rum eksempelvis stuen og kun læser alle DataLineInputs, så den ignorerer alle andre rum, DataLineOutputs, alle wireless resourcer osv. Er der en behjælpelig sjæl der kan forklare hvor jeg skal lave et hack for at opnå dette. Kan ikke helt gennemskue om det skal laves i Controller klassen eller i utcs_project klassen På forhånd mange tak
  20. Har nu efterhånden læst alle trådene herinde omkring Raspberry pi og IHC captain, men synes godt nok det ser temmelig avanceret ud, det skyldes måske også at jeg aldrig har rodet med Linux eller PHP, programmerer dog til daglig, men det er i Windows og C#, så det meste i de tråde jeg har læst indtil nu, er totalt sort snak for mig. Mikkel, mener du stadig Raspberry pi er en løsning for mig, kan det laves på en simpel måde hvis jeg blot ønsker samme funktionalitet som en LK IR modtager giver mig, altså 16 kanaler med kort og langt tryk?
  21. Du kan enten lade PIRen trække et 230 volts relæ http://elsag.dk/stikbensrelae/1-pol/stikbensrel-med-sokkel-1-omskifter-led-spole-2.htm Den anden side af relæet kan du forbinde til enten et 230 volts eller 24 volts inputmodul Du kan også forbinde PIRen direkte til et 230 volts inputmodul, det bruger jeg selv med succes i min installation
  22. Må indrømme at jeg er blevet lidt nysgerrig angående det der Raspberry pi, kan se de ikke koster ret meget, men det er en helt ny verden for mig. Forklar meget gerne hvordan Raspberry pi kan kobles sammen med IHC osv.
  23. Når jeg nu engang har brugt penge på en LK IR modtager og en universal remote, vil jeg helst bruge dette, frem for at skal ud og bruge endnu flere penge. Men dit forslag med den der Raspberry pi, kan man få IR modtager til dem, og hvordan får man den til at snakke sammen med IHC?
  24. Synes lige det var ved at være på tide med en lille update i sagen. Logitechs support har været i gang i rigtig lang tid med at prøve at løse problemet, og der er brugt utallige timer på at prøve at løse problemet. Indtil nu er det lykkedes dem at få en enkelt IR kommando til at virke hver eneste gang ved kort tryk, alle de andre IR kommandoer virker stadig kun ca 5-8 gange ud af 10 forsøg. Det helt store problem er at lange tryk stadig overhovedet ikke virker, specielt et problem når jeg har dimmere på næsten alle lamper. Nu har Logitech opgivet og bedt mig om at skaffe hex koderne til ir remoten fra LK, ellers kan de ikke gøre mere. Jeg har netop skrevet til LK / Schneider, så bliver det spændende at se om de kan / vil udlevere disse hex koder.
  25. Perfekt, så er problemet løst ved hjælp af http://www.lk.dk/Lauritz+Knudsen/professionel/nyheder/ihc-nyheder/java8_problem_loest.page? Takker mange gange for hjælpen
×
×
  • Tilføj...

Important Information

Privatlivspolitik og We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

1200x630bb.png

ok