Gå til innhold
  • Bli medlem

Vinnerliste

Populært innhold

Viser innholdet med mest poeng fra 04. mars 2018 i alle områder

  1. Har oppdatert dette da det første utgangspunktet med ESP-01 ikke er så mye brukt lenger samt det er mye enklere med de nyere ESP variantene som Nodemcu, Wemos, ESP32, osv. som har det som trengs innebygd på kortet. Jeg gikk selv raskt over til en Nodemcu like etter jeg brukte ESP-01 pga litt nettere innstallasjon, så på tide med en update da jeg ser flere ønsker å gjøre dette . Jeg bruker enda kode som er fra 2018 som virker helt fint for meg, men det er blitt oppdatert flere ganger på https://github.com/SwiCago/HeatPump ------------- Deler litt bilder og hva jeg gjorde for å få Mitsubishi varmepumpe online med ESP8266 WIFI modul. Utgangspunket var å få noe bedre en zxt-120 til å styre varmepumpa og noterte meg at det kan kjøpes diverse plugin moduler fra Mitsubishi for dette (blant annet MelCloud WIFI adapter). Så da tenkte jeg at det måtte være noen terminaler eller plug som en kunne koble seg til. Heldigvis så er det noen som har trakka løypa først så noen kloke hoder har reversert kommunikasjonen på CN105 porten på disse varmepumpene og laget hardware oppsett og software bibliotek for dette; https://github.com/SwiCago/HeatPump. I korte trekk så er det en kontakt, CN105, som har seriell kommunikasjon og 5V på ene pinnen så da sier det seg selv at en ESP modul er rette valget her. Denne porten finnes på de fleste Mitsubsihi varmepumper, hvis varmepumpen søtter MelCloud så har den denne kontakten slik jeg har forstått det. Jeg har en Mitsubishi FD-Heat Kirigamine (MSZ-35FD). Så da er det bare å trekke ut strømkontakten til varmepumpa og åpne opp. Finner hovedkortet og i mitt tilfelle så må en ta ut flere kontakter for å få ut hovedkortet. CN105 kontakten ser ut til å være brun i det fleste tilfeller. Den har 5 pinner. Type kontakt som passer er PAP-05V-S, jeg kjøpte min fra Elfa: 300-21-706 "PAP-05V-S Krympehus Poles 5, JST 300-21-733 "SPHD-001T-P0.5 - Klemkontakt Hunn 26...22 AWG, JST" Elfa har også ferdige ledninger med klemkontakt montert i svart og rød for å gjøre det litt enklere; 143-52-231 "Rød Forkrympet ledning DF11 Hunn 500mm 143-52-235 "Sort Forkrympet ledning DF11 Hunn 500mm" Jeg gikk for klemkontakter så jeg kunne være litt fargerik på ledningene, bruker kontakter 2 - 5 (TX,RX,5V,GND). Siden jeg har min pumpe opp under taket laget jeg en lang ledning slik at jeg kan ha ESP modul på toppen. Laget et lite hakk i kabinett for ledning ut. Har en liten nedfelt "hylle" på toppen hvor jeg har ESP liggende. Flere modeller har også plass innvendig for ESP modul så kan gjemmes vekk hvis ønskelig. Sjekket at det var 5V på plus leding etter mod (NB! pinne 1 har 12V) så en slipper uønsket grill party. Tilkobling fra CN105 kontakt direkte til Nodemcu blir da slik som under. Kjører 5V fra varmepumpe kontakt inn på 5V inn på nodemcu (VIN). Ser da noe sånt ut som dette: Jeg brukte Arduino IDE med Nodemcu og PubSubClient MQTT biblioteker. På HS3 brukte jeg mcsMQTT plugin da denne parser JSON direkte og lager egne devicer for hver parameter i JSON strengen. Tick av "a" for de lesingene du ønsker og den lager devicer i Homeseer. Trykk på "ref" for å legge til knapper for de ulike parameterene. For hver kommando en vil sende til varmpepumpen må en legge til en kommando. Brukte MQTTlens for Windows med testing. Trykker på f.eks ID "534", tick av Button for "knapper" på HS device siden. Deretter gå til "HS Device VSP list" og legg til kommandoer. Skriver bare i feltet: "0=SWING" og tar retur, deretter neste knapp "1=<<", så bygger en listen nedover som da blir "knapper" i device siden. Det vil da se slik ut: * Oppdatert: dette eksempelet er som sagt laget med 2018 kode så det kan avvike litt fra det siste på https://github.com/SwiCago/HeatPump. Er nye opsjoner som f.eks ignorerer vanlig IR fjernkontroll og overstyrer med satte parameter. Modifiserte MQTT eksempelet med fixed IP og laget egne MQTT subscriptions for de ulike kommandoene da mcsMQTT plugin for Homeseer ikke sender JSON for kommandoer. Noter de ulike topics f.eks heatpump/set/fan nedenfor i settings for mcsMQTT som en må sette for hver device som skal sende data. I utgangspunktet er eksempel kode på ESP'en satt opp med å motta alle parameter på same topic, må da sende MQTT payload som JSON streng f.eks {temperature: 24}. Så derfor tok jeg en "kjapp" update med egen topic for hver setting og tar da bare verdi rett fra device i homeseer som payload for raskt få det til å virke. Men her kan en lage det som en vil uansett. Jeg la til disse som nye topics i .h filen, måtte også oppdatere litt i "void mqttCallback(...) samt registere de nye MQTT topics. // new topics for Homeseer/mcsMQTT const char* heatpump_set_power_topic = "heatpump/set/power"; const char* heatpump_set_mode_topic = "heatpump/set/mode"; const char* heatpump_set_temperature_topic = "heatpump/set/temperature"; const char* heatpump_set_fan_topic = "heatpump/set/fan"; const char* heatpump_set_vane_topic = "heatpump/set/vane"; const char* heatpump_set_widevane_topic = "heatpump/set/widewane"; Får da hver gang det er en forandring på varmepumpe settings (enten via MQTT eller fjernkontroll) og da oppdateres MQTT topic "heatpump" som JSON streng: {"power":"ON","mode":"HEAT","temperature":25,"fan":"2","vane":"SWING","wideVane":"SWING"} Ellers leser den temperatur hver 60 sekunder (kan justeres i kode) på topic "heatpump/status: {"roomTemperature":25,"operating":true} ...og det var en kort update på hvordan jeg fikk min varmepumpe online .
    7 poeng
  2. Tok en runde med fjernkontrollen til webasto varmeren (Audi) i dag: Har remote som først trenger et trykk for "wake up" av kontrolleren, deretter er det bryter ved siden av som må brytes for å starte varmer. Så brukte en Nodemcu med et rele for dette, remote bruker 3V og rele går på 5V. Brukte D6 Output direkte på knapp 1 for wake up, trenger bare et "3V støt" for å komme i gang, deretter venter jeg bare et par sekunder så remote er oppe og går og så bryter jeg knapp 2 med rele for å sende RF til bilen som da starter diesel varmer. Så blir vel å legge den på MQTT hvis jeg ikke tar den direkte fra Homeseer. "Alexa, heat my car" ? Utdrag av test kode: // setup pinMode(D6, OUTPUT); // Power ON pinMode(D7, OUTPUT); // Trigger relay digitalWrite(D6, LOW); digitalWrite(D7, HIGH); // set relay HIGH, use LOW to toggle // loop digitalWrite(D6, HIGH); // Power on remote control delay(500); // Delay digitalWrite(D6, LOW); // Power off delay(2000); // wait 2 sec for remote contol to wake up digitalWrite(D7, LOW); // Send to relay/short button on remote control to send "heater on" delay(500); // 0.5 sec should be long enough for tooggle switch digitalWrite(D7, HIGH); // turn off toogle relay Bilder: Knapp 1 er nede for power up, knapp 2 over er styrt av rele. Kjører inn 3.3 Volt på undersiden hvor batteri sitter:
    5 poeng
  3. Rett før vinterferien programmerte jeg opp en "innbruddsmodus" med blinkende lys. Tanken er at hvis noen av bevegelsessensorene trigges når husalarmen er på, så er det kanskje innbrudd, og da kan godt lyset si fra på sitt vis, ved å dimme opp og ned alle lysene i huset (godt synlig ute), samt at RGB led-striper blinker rødt. Jeg hadde mine anelser om at sensorene kunne trigge feilaktig, så jeg satte dette til kun å blinke i ett minutt. I OpenHAB programmerte jeg dette med en virtuell switch (item) som settes på når huset tror det er innbrudd, og så skrus den av igjen med 'expire'-bindingen etter ett minutt. Et minutt er vel ikke for flaut at huset ditt står og blinker. På telefonen på hytta i vinterferien får jeg beskjed om at huset er "innbruddsmodus" - vel det var vel neste å forvente tenkte jeg. Sjekket det jeg kunne fra remote at lyset ikke stod og blinka - så bra ut da den virtuelle switchen var avskudd slik den skulle. Dagen etterpå gjør jeg av andre grunner en restart av OpenHAB-instansen (tror det var Netatmo-bindingen som trengte et spark, og sparket var enklest med en restart). Senere samme kveld blir kona oppringt av en nabo som hinter om at huset står og blinker!! #%&? (og ja, i timesvis) Rask innlogging i huset fikk skrudd av blinkinga, men jeg måtte tenke endel før jeg skjønte hva som hadde skjedd. Det skulle jo bare kunne blinke i ett minutt. Teorien min er at expire-bindingen kun satte item til 'undefined'. 'Undefined' ble ikke lagret til InfluxDB som en gyldig verdi, så i InfluxDB (som er mitt "persistence storage") så var innbruddsswitchen fortsatt på. Når OpenHAB restarter, henter den forrige verdi på alle items/devices fra InfluxDB - og der var jammen innbrudsswitch på. Og expire-binding blir ikke aktivert når en item startes opp på denne måten, så da var det ingen regler igjen for å skru av blinkinga... Fikser i etterkant: Expire-binding bør sette tilstand til OFF, ikke bare til undefined, slik at OFF også lagres. Når blinkeregelen aktiveres, setter den også i gang sin egen timer på ett minutt som også skrur av modusen - dobbelsikring i tilfelle krøll med expire. Og med litt ekstra pushovermeldinger når blinking startes opp. Og som siste skanse: For øyeblikket er linjene som faktisk gjør blinking kommentert ut
    2 poeng
  4. TrådfriSeer (som dessverre må hete "TradfriSeer" i Updateren fordi amerikanere er amerikanere) er en plugin for Ikea sin Trådfri-serie av produkter. Ettersom ikea-pærene ikke lar seg så enkelt integrere i eksisterende løsnigner for Zigbee til HomeSeer, bruker vi (@Fermate og jeg) hub'en og snakker med den via CoAP. Foreløpig er det en enkel plugin med støtte for følgende: Enkel konfigurasjon (kun IP og "key" nødvendig) Styre alle lyskilder som Trådfri-hub'en støtter Henter alle lyspærer automatisk Styrer lyspærer med samme kommandoer som andre lyskilder i HomeSeer, og kan derfor lett integreres med HStouch, Alexa, etc. Følgende er planlagt: Auto-discovery av hub på nettverket Støtte for grupper Potensiell mulighet for flere hub'er (enten for å dekke flere boliger, f.eks. hytte på fjellet, eller øke dekningsforholdene i et større hus)
    1 poeng
  5. Dette scriptet brukes f.eks. hvis du vil øke lyset gradvis fra 0% til 100% over en halv time. Da trenger du et script som trigger hvert 18. sekund, og som kjører dette scriptet: IncrementLight.vb Public Sub Main(ByVal _deviceRef As Object) '© Moskus Dim deviceRef As Integer = Integer.Parse(_deviceRef) Dim deviceValue As Integer = hs.DeviceValue(deviceRef) 'Exit if the device is already at maximum, i.e. "On" If hs.CAPIGetStatus(deviceRef).Status = "On" Then Exit Sub 'Find the correct CAPI control to execute. I really miss Linq!!! For Each cc As HomeSeerAPI.CAPIControl In hs.CAPIGetControl(deviceRef) If cc.ControlValue = (deviceValue + 1) Then 'Set the correct dim level hs.CAPIControlHandler(cc) 'We're done, so let's exit! Exit Sub End If Next End Sub IncrementLightCustom.vb Ulempen med de fleste dimmere er at de ikke er lineære. De første 1-20% gir en mye større relativt forskjell enn de siste 80-99%. Det gjør det følgende scriptet med, men du trenger en "counter" som må settes til 0 før du starter. Parameter: 100#counter name ... der 100 er device ref til lampen du skal styre, og "counter name" selvfølgelig er navnet på counteren. Public Sub Main(ByVal _deviceRefAndCounter As Object) '© Moskus Dim deviceRef As Integer = Integer.Parse(_deviceRefAndCounter.ToString.Split("#")(0)) Dim countervalue As Integer = hs.CounterValue(_deviceRefAndCounter.ToString.Split("#")(1)) Dim modifier As Integer = 4 Dim dimvalue As Integer = Math.Ceiling(countervalue ^ (modifier) / 100 ^ (modifier - 1)) 'Exit if the device is already at maximum, i.e. "On" If hs.CAPIGetStatus(deviceRef).Status = "On" Then Exit Sub 'Find the correct CAPI control to execute. I really miss Linq!!! For Each cc As HomeSeerAPI.CAPIControl In hs.CAPIGetControl(deviceRef) If cc.ControlValue = dimvalue Then 'Set the correct dim levelQ hs.CAPIControlHandler(cc) 'We're done, so let's exit! Exit Sub End If Next End Sub IncrementLightRGB.vb Hvis man istedenfor har en RGB-stripe eller lampe, og man først vil ha lyset rødt, så gult, og deretter hvitt, kan man bruke dette. Du må endre de fire første linjene for å passe til ditt oppsett. Public Sub Main(ByVal _nothingreally As Object) '© Moskus Dim deviceR As Integer = 990 Dim deviceG As Integer = 991 Dim deviceB As Integer = 992 Dim countervalue As Integer = hs.CounterValue("Sunshine soverom") Dim modifier As Integer = 2 Dim dimvalue As Integer = Math.Ceiling(countervalue ^ (modifier) / 100 ^ (modifier - 1)) 'Exit if the device is already at maximum, i.e. "On" 'If hs.CAPIGetStatus(deviceR).Status = "On" Then Exit Sub 'Red If countervalue <= 100 Then 'Find the correct CAPI control to execute. I really miss Linq!!! For Each cc As HomeSeerAPI.CAPIControl In hs.CAPIGetControl(deviceR) If cc.ControlValue = dimvalue Then If hs.CAPIGetStatus(deviceR).Status <> "On" Then hs.CAPIControlHandler(cc) Exit For End If Next End If 'Green If countervalue > 100 AndAlso countervalue <= 200 Then For Each cc As HomeSeerAPI.CAPIControl In hs.CAPIGetControl(deviceG) If cc.ControlValue = countervalue - 100 Then If hs.CAPIGetStatus(deviceG).Status <> "On" Then hs.CAPIControlHandler(cc) Exit For End If Next End If If countervalue = 150 Then Dim capi As HomeSeerAPI.CAPIControl = hs.CAPIGetSingleControl(deviceB, True, "off", False, False) hs.CAPIControlHandler(capi) End If 'Blue If countervalue > 150 Then For Each cc As HomeSeerAPI.CAPIControl In hs.CAPIGetControl(deviceB) If cc.ControlValue = countervalue - 150 Then If hs.CAPIGetStatus(deviceB).Status <> "On" Then hs.CAPIControlHandler(cc) Exit For End If Next End If End Sub Generelt oppsett av eventer:
    1 poeng
  6. 1 poeng
  7. Jeg kom over et script på hs forumet for å beregne trend på co2, temp eller lignende. Kan legge det ut senere Sent from my iPhone using Tapatalk
    1 poeng
  8. https://nrkbeta.no/2018/03/03/batteriet-alle-har-men-ingen-har-hort-om/
    1 poeng
  9. 1 poeng
  10. Jeg er også interessert @Erling Jeg har ikke gjort alt dette i dag, men denne måneden: Montert 5 PIR-sensorer (gang, spisestue, 2x kjøkken og på bad). Montert 1 IR-sender. Integrert Verisure (igjen). Oppgradert openHAB-Alexa skill. Med dette har jeg fått følgende funksjonalitet: PIR: Lys i gang slår seg på/av automatisk. Lys over kjøkkenbenk slår seg på/av automatisk. Lys i spisestue slår seg på automatisk med min superavanserte regel at det må være bevegelse 4 ganger innenfor 60 sekunder Lys i hele etasjen slår seg på automatisk. Lys på bad slår seg på/av automatisk. IR: Jeg kan styre alle funksjonene på kjøkkenventilatoren (viftehastighet + lys). Verisure: Lys slår seg av automatisk når alarm går på. openHAB-Alexa skill: Jeg fikk endelig funksjonaliteten jeg savnet for ett år siden, å få Alexa til å lese av mine egne temperatursensorer. "Alexa, what is the garage temperature?" I tillegg har jeg puttet mine DOT'er i enkelte grupper så jeg kan bruke hurtigkommandoene: "Alexa, turn on light" og "Alexa, dim light to 50%" så gjør hun det på alle lysene i den gruppen. NB! En DOT kan bare være med i en gruppe.
    1 poeng
  11. Med utgangspunkt i @Moskus sitt IncrementLight.vb har jeg laget en "v2", som bare krever ett event (ellers ikke så mye annerledes ?): Sub Main (ByVal params as Object) ' @Author: Sven-Ove Bjerkan and Moskus ' @Version: 2 (2017-10-07) ' IMPORTANT! ' 1. Create this event as a "disabled" event and trigger it once from another event! ' 2. Set the trigger for this event to "The event will automatically trigger every..." E.g: 6 seconds will dim the light from 0 to 100 in 10 min ' @Syntax: deviceid|this_event_name|stoplevel ' deviceid: lamp deviceid ' this_event_name: The name of this exact event - very important! ' stoplevel: optional, will increment to 100 if not supplied Dim parameters() as String = params.ToString.Split("|") Dim deviceRef As Integer = parameters(0) Dim eventName As String = parameters(1) Dim stopValue As Integer = 100 If parameters.length = 3 Then stopValue = parameters(2) End If Dim deviceValue As Integer = hs.DeviceValue(deviceRef) deviceValue = deviceValue + 1 If deviceValue > 100 Then deviceValue = 100 End If If deviceValue < 1 Then deviceValue = 1 End If hs.EnableEvent(eventName) 'Exit if the device is already at maximum, i.e. "On" If hs.CAPIGetStatus(deviceRef).Status = "On" Or deviceValue > stopValue Then hs.DisableEvent(eventName) Exit Sub End If 'Find the correct CAPI control to execute. I really miss Linq!!! For Each cc As HomeSeerAPI.CAPIControl In hs.CAPIGetControl(deviceRef) If cc.ControlValue = deviceValue Then 'Set the correct dim level hs.CAPIControlHandler(cc) 'We're done, so let's exit! Exit Sub End If Next End Sub
    1 poeng
  12. Sitter og setter opp event for å sakte øke lysnivået, som et slags "oppvåkningslys", basert på scriptet til @Moskus. Sitter i stua og tester på lyset over spisebordet. Lyset er avslått, men det hender samboeren slår det av om kvelden, så tenker ikke noe mer over det. Trigger eventet, ingen feilmeldinger, men heller ikke noe lys! Ser i devicelisten at lysnivået stiger, men "power" veksler mellom 0 og 0.1 watt. 30% og fortsatt like mørkt! Tenker for meg selv at dette problemet som jeg har, tydeligvis er "verre" en jeg trodde. Tester så lysbryteren, nei, det blir fortsatt ikke lys. Ikke ved dobbelklikk heller! Spør henne om hun har slått av lyset i kveld, men hun er litt usikker... Så da sjekker jeg (halogen)pæra og tror du ikke den j****elen har gått! ?? Akkurat i kveld, når jeg skulle scripte og teste noe nytt mot akkurat det lyset! Satt i en halvtime og rev meg i håret og debugget!
    1 poeng
Vinnerlisten er satt til Oslo/GMT+01:00
×
×
  • 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.