-
Innlegg
1 664 -
Ble med
-
Besøkte siden sist
-
Dager vunnet
98
Innholdstype
Profiler
Forum
Blogger
Nedlastninger
Artikler
Regler
Hendelser
Galleri
Store
Alt skrevet av SveinHa
-
I utgangspunktet vil jeg fortsette å bruke HSTouch men blir litt irritert på dårlig designer (WYSINWYG, What Yot See Is NOT What You Get). Kjører nå med både HSTouch og Node-Red Dashboard og det er ikke noe ideell løsning men begge har egenskaper som jeg trenger og som den andre ikke har... Den der Jon00 saken må jeg sjekke opp nærmere. Akkurat nå er det energisparing som har fokus så får det visuelle komme om litt...
-
Hvis en ikke har mulighet til gulvsensor så vil nok det være en grei tilnærming. I mine betonggulv med vannbåren varme tror jeg nok ikke en kommer unna uten gulvsensor (som jeg har) siden temperaturen på tilført vann vil variere en god del og flowen også ut fra hvilke og hvor mange gulvventiler som er åpne samtidig.
-
På leting etter en liten bug: Hele greiene funker supert i opptil mange timer men så slutter den å motta data via subscribe/callback... Har laget en publish av mottatt verdi så jeg ser AT det skjer men ikke funnet ut hvorfor enda.
-
Bruke entity attribute i Node red som condition?
SveinHa svarte på JohnMartin sitt emne i Home Assistant
En egen palette som bare inneholder show-value. Veldig hendig for å se hva som skjer, gjør ingenting annet. "Extract value" er cluet her. Meldingen fra MQTT inneholder flere parameter og jeg henter ut et og et av de jeg trenger, først temperatur og setter til fast 1 desimal: Så en gang til men henter ut "Humidity" denne gang: -
Bruke entity attribute i Node red som condition?
SveinHa svarte på JohnMartin sitt emne i Home Assistant
Er det noe slik du er på jakt etter: [{"id":"0e6151314d8e364b","type":"mqtt in","z":"93e65ebbbd15fba7","name":"","topic":"zigbee2mqtt/Nedis/TempFuktGarasjeloft","qos":"0","datatype":"json","broker":"6db118ed1b0c56de","nl":false,"rap":true,"rh":0,"x":170,"y":820,"wires":[["4a4241d770c80287"]]},{"id":"c4f4cc33f06aa00b","type":"show-value","z":"93e65ebbbd15fba7","name":"","path":"","x":330,"y":980,"wires":[["ca023a7789427639","275a3056d5843748"]]},{"id":"d76eb42e40a4c574","type":"show-value","z":"93e65ebbbd15fba7","name":"","path":"","x":330,"y":920,"wires":[["b2a1b8b3ef128344","0f6e868087594e4c"]]},{"id":"9aaa57d3011581b5","type":"function","z":"93e65ebbbd15fba7","name":"Extract Value","func":"var svar = \"\";\nvar value=msg.payload.temperature;\nsvar = {payload:value.toFixed(1)};\nreturn svar;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":170,"y":920,"wires":[["d76eb42e40a4c574"]]},{"id":"5b24f8649890e9df","type":"function","z":"93e65ebbbd15fba7","name":"Extract Value","func":"var svar = \"\";\nvar value=msg.payload.humidity;\nsvar = {payload:value.toFixed(1)};\nreturn svar;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":170,"y":980,"wires":[["c4f4cc33f06aa00b"]]},{"id":"4a4241d770c80287","type":"show-value","z":"93e65ebbbd15fba7","name":"","path":"","x":430,"y":820,"wires":[["9aaa57d3011581b5","5b24f8649890e9df"]]},{"id":"6db118ed1b0c56de","type":"mqtt-broker","name":"DaleMQTT","broker":"172.16.0.94","port":"1883","clientid":"","usetls":false,"protocolVersion":"5","keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","birthMsg":{},"closeTopic":"","closeQos":"0","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willPayload":"","willMsg":{},"sessionExpiry":""}] -
Bruke entity attribute i Node red som condition?
SveinHa svarte på JohnMartin sitt emne i Home Assistant
Dreven er vel å dra den litt langt men om du skal ha betingelser som A eller B eller C osv kan du gjøre slik: Øverste utgangen er sann ellers går du videre og sjekker neste... Om en eller annen i rekken er sann trenger du ikke bry deg om resten uansett... Betingelsene mine bruker flow.variabler som settes andre steder i flowen. -
Med MQTT i huset åpner mulighetene seg for alskens små IoT saker. Jeg har flere steder behov for 3 temperaturer og kanskje litt annet knask så jeg snekret sammen en Arduino med tempsensorer som sendes til min Mosquitto MQTT Broker og hentes derfra igjen av Node-Red og/eller HomeSeer4. Selve oppkoblingen er helt basis så ikke så mye å si om den men legger nå ved et bilde. Hadde egentlig tenkt en analog/PWM 0-10V utgang styrt av en 0-100 verdi fra MQTT men det ble en 4-trinns spenningsdeler i stedet, fikk ikke til 10v i farten. 4 trinn på varmepumpen er i alle fall langt bedre enn bare av/på. "UT-INV-U" er styreboksen til varmepumpen. #include <PubSubClient.h> //#include <WiFi.h> //ESP32 #include <WiFiNINA.h> //Arduino #include "arduino_secrets.h" #include <DS18B20.h> #define LED_BUILTIN 2 DS18B20 ds(2); //pin number of 1 Wire bus float temps[10] = {0.0, 0.0, 0.0}; //Array for storing temperatures int sensnum = 0; // counter int pinR25 = 3; int pinR50 = 4; int pinR75 = 5; int pinR100 = 7; int pinReset = 0; ///////please enter your sensitive data in the Secret tab/arduino_secrets.h char ssid[] = SECRET_SSID; // your network SSID (name) char pass[] = SECRET_PASS; // your network password (use for WPA, or use as key for WEP) char mqttid[] = SECRET_MQUI; char mqttpw[] = SECRET_MQPW; const char broker[] = "172.16.0.94"; int port = 1883; const char* mySysID = "TR1ID"; //MÅ være unik innen samme mqttBroker for at LWT skal virke const char* willTopic = "Teknisk/TR1/LWT"; const char* willMessage = "Offline"; byte willQoS = 0; boolean willRetain = true; //Liste over MQTT topics for publishing char *topics[] = {"Teknisk/TR1/TempBerederTopp", "Teknisk/TR1/TempBerederBunn", "Teknisk/TR1/TempTilfGulvvarme", " ", " ", " ", " ", " ", " ", "Teknisk/TR1/VPSP-TM", }; // Liste over topics for subscriptions char *topicr[] = {"Teknisk/TR1/VPSP", " ", " ", " ", " ", " ", " ", }; //set interval for sending messages (milliseconds) const long interval = 30000; const long rtimeout = 300000; unsigned long previousMillis = 0; unsigned long resetMillis = millis(); unsigned long lastrecvMillis = millis(); unsigned long currentMillis = millis(); char in_message[100]; int recvVPSP = 0; char pubs[20] = "0123.456"; // Hjelpevariabler for konvertering av format for mqtt, sett av rikelig plass til temperaturer String s1; WiFiClient wifiClient; PubSubClient mqttClient(wifiClient); void callback(char* topic, byte* message, unsigned int length) { digitalWrite(LED_BUILTIN, HIGH); String messageTemp; Serial.print("Message arrived on topic: "); Serial.print(topic); Serial.print(". Message: "); lastrecvMillis = millis(); //data mottatt, reset timer for automatisk restart for (int i = 0; i < length; i++) { //Serial.print((char)message[i]); messageTemp += (char)message[i]; } Serial.println(messageTemp); // Handle the received messages if (String(topic) == topicr[0]) { recvVPSP = messageTemp.toInt(); if (recvVPSP <8) { digitalWrite(pinR100, LOW); digitalWrite(pinR75, LOW); digitalWrite(pinR50, LOW); digitalWrite(pinR25, LOW); } if (recvVPSP >= 8 and recvVPSP <35) { digitalWrite(pinR100, LOW); digitalWrite(pinR75, LOW); digitalWrite(pinR50, LOW); digitalWrite(pinR25, HIGH); } if (recvVPSP >= 35 and recvVPSP <65) { digitalWrite(pinR100, LOW); digitalWrite(pinR75, LOW); digitalWrite(pinR50, HIGH); digitalWrite(pinR25, LOW); } if (recvVPSP >= 65 and recvVPSP <85) { digitalWrite(pinR100, LOW); digitalWrite(pinR75, HIGH); digitalWrite(pinR50, LOW); digitalWrite(pinR25, LOW); } if (recvVPSP >= 85) { digitalWrite(pinR100, HIGH); digitalWrite(pinR75, LOW); digitalWrite(pinR50, LOW); digitalWrite(pinR25, LOW); } PublishVPSP(); } delay(100); digitalWrite(LED_BUILTIN, LOW); } int count = 0; int ChkWiFi(){ if (WiFi.status() != WL_CONNECTED) { Serial.print("Attempting to connect to WPA SSID: "); Serial.println(ssid); while (WiFi.begin(ssid, pass) != WL_CONNECTED) { // failed, retry Serial.print("."); delay(5000);} Serial.println(); Serial.print("Connected to network: "); Serial.println(ssid); } } void ChkMQTT(){ while (!mqttClient.connect(mySysID, mqttid, mqttpw, willTopic, willQoS, willRetain, willMessage)) { Serial.print("MQTT connection failed! Error code = "); Serial.println(mqttClient.state()); delay(5000); } } void PublishVPSP(){ // Send TM til Broker (sjekk at der er liv i subscription) s1 = String(recvVPSP); s1.toCharArray(pubs,10); mqttClient.publish(topics[9], pubs); // Oppdater LWT mqttClient.publish(willTopic, "Online"); Serial.println("VPSP sent"); } void PublishAll(){ // Publiser temperaturer for(int i = 0; i < 3; i++){ s1 = String(temps[i]); s1.toCharArray(pubs,10); mqttClient.publish(topics[i], pubs); } // Send TM til Broker (sjekk at der er liv i subscription) s1 = String(recvVPSP); s1.toCharArray(pubs,10); mqttClient.publish(topics[9], pubs); // Oppdater LWT mqttClient.publish(willTopic, "Online"); Serial.println("Data sent"); } void LesDS18B20(){ // les temperaturer inn i array sensnum = 0; while (ds.selectNext()) { temps[sensnum] = ds.getTempC(); sensnum ++; } } void Watchdog(){ // Reset unit if ((currentMillis + 1000 - lastrecvMillis) >= rtimeout) { Serial.print("Unit RESET from program, last recv > "); Serial.print( rtimeout/1000); Serial.println(" seconds ago"); delay(1000); digitalWrite(pinReset, LOW); } } void setup() { Serial.begin(115200); pinMode(pinR25, OUTPUT); pinMode(pinR50, OUTPUT); pinMode(pinR75, OUTPUT); pinMode(pinR100, OUTPUT); pinMode(pinReset, OUTPUT); digitalWrite(pinReset, HIGH); pinMode(LED_BUILTIN, OUTPUT); mqttClient.setServer(broker, port); mqttClient.setCallback(callback); ChkWiFi(); ChkMQTT(); s1 = String(topicr[0]); s1.toCharArray(pubs,40); Serial.println(pubs); boolean r= mqttClient.subscribe(topicr[0]); // boolean r= mqttClient.subscribe(pubs); Serial.print("subscribe "); Serial.print(topicr[0]); Serial.println(r); lastrecvMillis = millis(); //init timer for automatisk reset } void loop() { currentMillis = millis(); ChkWiFi(); ChkMQTT(); mqttClient.loop(); //VIKTIG: Uten denne vil en ikke kunne motta subscriptions // Kjør program på spesifisert intervall if (currentMillis - previousMillis >= interval) { digitalWrite(LED_BUILTIN, HIGH); previousMillis = currentMillis; mqttClient.subscribe(topicr[0]); LesDS18B20(); PublishAll(); delay(100); digitalWrite(LED_BUILTIN, LOW); } Watchdog(); }
- 4 svar
-
- 2
-
Ja, greit alternativ det. Har noe forskjellig knask på vei derfra allerede... Har slitt VELDIG med i det hele tatt å få varer fra utlandet siste gode året, sist nå en pakke fra Amazon der jeg bare plutselig fikk pengene tilbake fordi jeg hadde benyttet meg av åpent kjøp!?!?! Jeg har ikke sett pakken...
-
Neida, det hadde jeg heller ikke forventet men om du likevel skal ha noe nytt så kan en jo tenke i de baner. Lenge siden jeg hadde Fibaro Home Center så vet ikke hvordan Zigbee integreres der men det er i alle fall greit å ha muligheten i bakhodet. Z-Wave modulen i HC2 var nå ikke særlig imponerende...
-
De fleste dimmere har mulighet for å sette "transition" time men de z-wave dimmerene jeg har (Qubino og Fibaro) dimmer da i synlige steg, Ikea og Philips HUE zigbee enheter har en myyyyyye bedre dimming over tid og transition time kan settes direkte i hver enkelt kommando. Jeg har en HUE LEDstripe og bevegelssensor under sengen og ved bevegelse dimmer den opp til 60 (av 250) i løpet av 5 sekund: {"brightness":60,"transition":5}, etter et minutt dimmer den ned til 0 i løpet av 2 minutt: {"brightness":0,"transition":120}. Funker heeeelt supert.
-
MQTT er blitt en velsignelse for både små og større prosjekt i heimen. En ting er Zigbee2MQTT som har vist seg å ha en heeeelt annen respons enn ZWave men så er det også alle de der smågreiene som der ikke finnes enkle ferdige løsninger på der MQTT er blitt en nøkkelkomponent, et universelt grensesnitt som du selv har kontroll over. Har i noen mnd hatt en Arduino MKR1010 WiFi med noen DS18B20 og litt annet småknask hengende rundt poolen for temperatur og nivåmåling og den har gjort en glimrende jobb. En og annen gang har den hunget seg men ikke særlig ofte. Gikk i går i gang med nytt Arduino MKR 1010 WiFi prosjekt: Luft/Vann varmepumpe har i dag kun av/på styring men kan styres trinnløst med 0-10V (fra leverandør styrt av termostat som bare gir 0V eller 10V). 3 stk DS18B20 plassert på strategiske plasser i bereder, gulvvarmekretser og analog utgang til styring av VP. For å få vite om evt. heng i systemet har mqtt en LWT funksjon (Last Will and Testamente) men mqtt biblioteket jeg brukte hadde ikke denne funksjonen implementert så jeg gikk over til PubSubClient. Brukte mesteparten av gårsdagen til å overkomme noen få små men vesentlige problem: Konvertere verdier i et float array til char som mqtt-bibloteket forstår og klare å få liv i mqtt subscribe... Trivielle enkle saker men det tok maaaange timer med leting på nett for å finne riktig løsning som virket... Temperaturmålingene er allerede oppegående men VP styringen ligger fremdeles på laben men kommer nok på plass i løpet av dagen (må en tur til han Kjell og bytte en komponent som ikke virket først). Legger ut koden og litt dokumentasjon i kategorien MQTT om noen dager når jeg har fått finpusset litt (når en sliter med å få ting til å virke blir en mengde greier testet og det blir lett en masse rot...). Han Kjell har jo som regel Arduino i hyllene men kan også shoppes rimelig fra https://www.elfadistrelec.no/ , sjelden mer enn 2 dagers leveringstid derfra.
-
Ser ikke for meg at jeg går den veien med mindre der finnes egnede hjelpemidler som forenkler prosessen. Kunne du fortalt litt mer detaljer, sånn prinsippmessig, hvordan du har gjort det?
-
Klippet fra NodeRed: Finner ikke noe som ligner på dette i HSTouch, finnes der utvidelser eller andre måter å få på plass lignende?
-
Joda, ikke meningen å sparke bein under andre tips men når zigbee2mqtt var nevnt så er jo HUE et godt valg som funker i den sammenhengen også.
-
Hue funker som et skudd med zigbee2mqtt også. Jeg har noe HUE utstyr og ser på zigbee2mqtt.io at det er en ganske lang rekke med HUE utstyr som er støttet.
-
En mulighet er jo zigbee2mqtt, RaspBee II og Mosquitto på en RPi. Den har støtte for alle enheter jeg har, bl.a. Nedis Klimasensor. Mener Nedisen har 3 min rapporteringsintervall men antar det også er litt avhengig av temperaturendringer.
-
Smart 👍 IR lys innebygget i kamera lager mye støy i bildet, der vil ALLTID være en edderkopp som koser seg der og det er nå veldig begrenset hvor lenge det er interessant å kikke i rompa på en edderkopp med flomlys... Regn lager også mye støy med innebygget lys. Jepp, synes den er vel verdt de kronene.
-
Styring etter effekt - noen som har dette?
SveinHa svarte på MrE sitt emne i Strømsparing og strøm-overvåkning
Jeg gjorde det slik: et event for å detektere stopp: og et for å detektere start igjen: Jeg bruker ikke den virtuelle variabelen til annet enn å indikere feil å alle HSTouch enhetene men det er jo fritt fram å finne på annet.- 31 svar
-
- 2
-
Automatisk strømsparing i praksis i går. Blått er forbruk, rosa er strømpris men siden jeg ikke får til å definere den kurven som step har jeg tegnet step inn på bildet manuelt med rødt så blir det litt riktigere. Den blå kladden like før kl 8 ser litt voldsom ut men det er bare espressomaskinen som kjører på med korte pulser på 1.5kW, slått av kl 07:58... Ut fra strømpris blir bereder toppvarme (hovedvarme til bereder kommer fra varmepumpe), varmepumpe, gulvvarme slått av i dyre perioder med litt varierende prioritet. Har ikke regnet på hva det spares i kroner men det er i alle fall i rette retningen.
-
Jeg har et par Aeotec Multisensor som ikke virker pålitelig så jeg har supplert med et par Nexa SP-816, disse har en oppgitt deteksjonsavstand på 10 meter men virker pålitelig opptil 15 meter hos meg. De ser jo litt harry ut og går på batteri men funker supert. https://www.jula.no/catalog/el-artikler-og-belysning/el-installasjon/plug-in-produkter/fjernstrombrytere/bevegelsessensor-004996/
-
Fotoutskrift med blekkskriver og varighet av farger.
SveinHa svarte på SveinHa sitt emne i Annen Elektronikk
Rant litt ut i sanden denne tråden så en liten oppdatering er på sin plass. Sjåppa meg en Epson Ecotank ET2751 A4 printer med scanner for normale utskrifter. Fant ut at å betale for en A3 printer neppe var særlig lurt siden det nok blir svært sporadisk det er aktuelt med slikt... Så dumpet jeg borti en storprinter på Finn.no/Gis bort fra et lokalt elektrofirma, en HP Designjet 500 ps med rullpapir på 60 cm. "ps" er nok PostScript og det rimer godt med Linux så jeg tok en sjangs og fikk monsteret i hus. Nåja, noen stor sjangs var det nå ikke siden den var gratis men likevel... Plugga inn i Linux PCen og den dukka opp som rett type med en gang. Etter litt kluring med papirformater og finne et egnet program for storformatutskrifter var det tut og kjør, helt supert. Det ble litt ekstra morsomt da jeg noen uker senere dumpet borti en av de jeg fikk den av i en butikk og han spurte: "Fikk du liv i printeren?" "Joda" sa jeg, "Funket som et skudd med en gang." "Vi kunne ikke bruke den med Windows lengre, hva bruker du?" "Linux" "Å, sånt leketøy altså..." sa han med et flir om munnen... "Nåja" sa jeg, "Det er nå DERE som har verktøy som ikke virker..." 😁- 2 svar
-
- 1
-
Kjenner ikke Homey så den kan jeg ikke si noe om men jeg vil nå tro at ALLE slike hjemmeautomasjonsprodukter har mulighet for en eller annen form for astrour slik at du har sunset, sunrise og slikt tilgjengelig for din lokasjon. Med det utgangspunktet du har ville jeg absolutt ikke satt noe koblingsur på utelysene. Jeg har dimmer på alle utelysene mine (3 bygninger) og litt forenklet slår de seg på 3% ved sunset, av kl 23 i ukedager og 24 i helg. Om morgenen på kl 07 og av ved sunrise. Ved bevegelse utendørs går de opp i 100% og blir stående der til 10 minutt etter siste bebegelse. Samme om natten, bevegelse slår på og utenfor normal "utelystid" slår de seg av etter bevegelse.