Støtt hjemmeautomasjon!
Vinnerliste
Populært innhold
Viser innholdet med mest poeng fra 07. aug. 2019 i alle områder
-
Går du via HomeSeer (som forøvrig anbefales) har det absolutt ingenting å si. omeSeer tar seg av all talekommunikasjon med Google Home, og HomeSeer sender så kommandoen til Hue Bridge eller Phoscon via JowiHue.3 poeng
-
Tester ut noen små display for bruk med smart huset https://esphome.io/cookbook/display_time_temp_oled.html?highlight=display3 poeng
-
Hei, nedenfor ser du programmet jeg har kjørt på GW. Dette er overhodet ikke effektivisert mtp. sendetid eller batteribruk. Men er enkelt å feilsøke og lesbart med MQTT Explorer når du jobber med det. Jeg har kun brukt det til å sende fra node og til GW, men skal fungere å sende begge veier, om du setter den i "lytte" modus når du ikke sender og dropper og bruke sleep funksjonen. Si ifra om det er noe du trenger hjelp med. Jeg har ikke sett på dette på en stund, men kan sette opp en test eller prøve å hjelpe om det er noe /* Receiver which receivers messages through a Hope RFM95 LoRa Module. It sends a feedback signal (checksum) to the receiver Copyright <2017> <Andreas Spiess> Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Based on the Example of the library */ #include <SPI.h> #include <LoRa.h> #define ESP8266 // comment if you want to use the sketch on a Arduino board #define MQTT // uncomment if you want to foreward the message via MQTT //#define OLED // comment if you do nto have a OLED display const long freq = 868E6; const int SF = 12; const long bw = 125E3; #ifdef OLED #include "SSD1306.h" SSD1306 display(0x3d, 4, 5); #endif #ifdef MQTT #include <PubSubClient.h> #include <ESP8266WiFi.h> //#include <credentials.h> #define TOPIC "LORA" #endif int counter, lastCounter; char mySSID[] = "XXXXX"; // Putt inn wifi detaljer char myPASSWORD[] = "XXXXX"; const char* server = "XXXXXXX"; // putt inn mqtt server #ifdef MQTT WiFiClient wifiClient; PubSubClient client(wifiClient); #endif void setup() { Serial.begin(9600); Serial.println("LoRa Receiver"); #ifdef ESP8266 LoRa.setPins(16, 17, 15); // set CS, reset, IRQ pin #else LoRa.setPins(10, A0, 2); // set CS, reset, IRQ pin #endif #ifdef OLED display.init(); display.flipScreenVertically(); display.setFont(ArialMT_Plain_10); display.clear(); display.setTextAlignment(TEXT_ALIGN_LEFT); display.setFont(ArialMT_Plain_16); display.drawString(0, 10, "Mailbox"); display.display(); #endif if (!LoRa.begin(freq)) { Serial.println("Starting LoRa failed!"); while (1); } LoRa.setSpreadingFactor(SF); // LoRa.setSignalBandwidth(bw); Serial.println("LoRa Started"); #ifdef MQTT WiFi.begin(mySSID, myPASSWORD); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); client.setServer(server, 19377); client.setCallback(callback); if (client.connect("LORAgw", "User", "Passord")) { // Putt brukernavn og pw på mqtt inn her client.publish(TOPIC"/STAT", "Mailbox live"); // client.subscribe("inTopic"); } Serial.println("MQTT Started"); #endif Serial.print("Frequency "); Serial.print(freq); Serial.print(" Bandwidth "); Serial.print(bw); Serial.print(" SF "); Serial.println(SF); } void loop() { // try to parse packet int packetSize = LoRa.parsePacket(); if (packetSize) { // received a packet String message = ""; while (LoRa.available()) { message = message + ((char)LoRa.read()); } String rssi = "\"RSSI\":\"" + String(LoRa.packetRssi()) + "\""; String jsonString = message; jsonString.replace("xxx", rssi); int ii = jsonString.indexOf("Count", 1); String count = jsonString.substring(ii + 8, ii + 11); counter = count.toInt(); if (counter - lastCounter == 0) Serial.println("Repetition"); lastCounter = counter; sendAck(message); String value1 = jsonString.substring(8, 11); // Vcc or heighth String value2 = jsonString.substring(23, 26); //counter #ifdef OLED display.clear(); display.setTextAlignment(TEXT_ALIGN_RIGHT); displayText(40, 0, value1, 3); display.setTextAlignment(TEXT_ALIGN_RIGHT); displayText(120, 0, String(LoRa.packetRssi()), 3); display.setTextAlignment(TEXT_ALIGN_CENTER); displayText(60, 35, count, 3); display.display(); #endif #ifdef MQTT if (!client.connected()) { reconnect(); } client.publish(TOPIC"/MESSAGE", jsonString.c_str()); #endif } #ifdef MQTT client.loop(); #endif } #ifdef MQTT void reconnect() { // Loop until we're reconnected while (!client.connected()) { Serial.print("Attempting MQTT connection..."); // Attempt to connect if (client.connect("Mailbox")) { Serial.println("connected"); // Once connected, publish an announcement... client.publish(TOPIC"/STAT", "I am live again"); // ... and resubscribe // client.subscribe("inTopic"); } else { Serial.print("failed, rc = "); Serial.print(client.state()); Serial.println(" try again in 5 seconds"); // Wait 5 seconds before retrying delay(5000); } } } void callback(char* topic, byte* payload, unsigned int length) { Serial.print("Message arrived ["); Serial.print(topic); Serial.print("] "); for (int i = 0; i < length; i++) { Serial.print((char)payload[i]); } Serial.println(); } #endif void sendAck(String message) { int check = 0; for (int i = 0; i < message.length(); i++) { check += message[i]; } // Serial.print("/// "); LoRa.beginPacket(); LoRa.print(String(check)); LoRa.endPacket(); Serial.print(message); Serial.print(" "); Serial.print("Ack Sent: "); Serial.println(check); } #ifdef OLED void displayText(int x, int y, String tex, byte font ) { switch (font) { case 1: display.setFont(ArialMT_Plain_10); break; case 2: display.setFont(ArialMT_Plain_16); break; case 3: display.setFont(ArialMT_Plain_24); break; default: display.setFont(ArialMT_Plain_16); break; } display.drawString(x, y, tex); } #endif Her er programmet jeg har kjørt på LoRa kortet: #include <SPI.h> #include <LoRa.h> #include <OneWire.h> #include <DallasTemperature.h> #include <LowPower.h> #define VBATPIN A9 const long freq = 868E6; const int SF = 12; const long bw = 125E3; long zeroAltitude; int counter = 1, messageLostCounter = 0; void setup() { Serial.begin(115200); delay(3000); // Debug message Serial.println("Starting..."); // put your setup code here, to run once: LoRa.setPins(8, 4, 7); // set CS, reset, IRQ pin Serial.println("HEI HEI"); if (!LoRa.begin(freq)) { while (1); } LoRa.setSpreadingFactor(SF); } void loop() { // put your main code here, to run repeatedly: char message[90]; int Vcc = readVcc()*100; int Temp = readTempDS18B20()*10; sprintf(message, "{\"Vcc\":\"%3d\",\"Count\":\"%03d\",\"Lost\":\"%03d\",\"Temp\":\"%3d\", xxx}", Vcc, counter, messageLostCounter,Temp); sendMessage(message); int nackCounter = 0; while (!receiveAck(message) && nackCounter <= 5) { LoRa.sleep(); delay(10); sendMessage(message); nackCounter++; } if (nackCounter >= 5) { messageLostCounter++; delay(10); } counter++; LoRa.sleep(); // 10min og 40 sek = 60x10+40 = 640 s // 640 s / 8 s = 80 unsigned int sleepCounter; for (sleepCounter = 80 ; sleepCounter > 0; sleepCounter--) { LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF); } delay(100); } void sendMessage(String message) { LoRa.beginPacket(); LoRa.print(message); LoRa.endPacket(); } bool receiveAck(String message) { String ack; bool stat = false; unsigned long entry = millis(); while (stat == false && millis() - entry < 2000) { if (LoRa.parsePacket()) { ack = ""; while (LoRa.available()) { ack = ack + ((char)LoRa.read()); } int check = 0; for (int i = 0; i < message.length(); i++) { check += message[i]; } if (ack.toInt() == check) { stat = true; } } } return stat; } float readTempDS18B20() { OneWire oneWire(10); DallasTemperature sensors(&oneWire); DeviceAddress thermometer; sensors.begin(); sensors.getAddress(thermometer, 0); sensors.setResolution(thermometer, 12); sensors.requestTemperatures(); float temp = sensors.getTempC(thermometer); Serial.println(temp); return temp; } float readVcc() { long result; float measuredvbat = analogRead(VBATPIN); measuredvbat *= 2; // we divided by 2, so multiply back measuredvbat *= 3.3; // Multiply by 3.3V, our reference voltage measuredvbat /= 1024; // convert to voltage result = measuredvbat; Serial.println(result); return measuredvbat; }2 poeng
-
For dere som kjører HomeSeer på Linux kan det være greit å vente med oppdatering til Mono 6.x (stable). Denne har en minnelekkasje som gjør at man må ta en restart 1-3 ganger i uka. Feilen er rettet i master-build, men det tar nok litt tid før den blir sluppet i «stable»-versjonen. Ref: https://forums.homeseer.com/forum/homeseer-products-services/system-software-controllers/1261742-linux-mono-and-aspx-page-compilation?p=1319356#post13193561 poeng
-
Begge deler er mulig. Jeg har riktignok mest erfaring med Alexa, men det burde fungere tilsvarende på Google Home etter de små testene jeg har gjort. Det som er nøye er at i Google Home (eller Alexa app'en) grupperer du selve Home'en og lys til et rom. Da kan du f.eks. si "Alexa, turn of the lights" så blir alle lys som er i rommet der taleassistenten står skrudd av. Du kan selvfølgelig også spesifisere andre lys med "Alexa, turn of the kitchen light". Men det er selvfølgelig en enorm fordel å være nøye med navngivingen og strukturen. I tillegg kan du benytte deg av HomeSeer sitt eget felt for talekommandoer. Jeg har alle navn på norks norsk, men Alexa er på engelsk, så jeg må spesifisere ekstra kommandoer.1 poeng
-
Både og. De fleste opererer med en høyere timespris om man stiller med materiell selv (hos meg var det 900 kr vs 1200 kr i timen). I tillegg er det det med reklamasjon. Kjøper du selv så må du leie inn elektriker to ganger (demontere/montere) for å levere inn det defekte produktet. Har du kjøpt alt fra elektriker så dekker de slike ting. Når det er sagt, jeg har kjøpt alt selv og fått det montert av elektriker... er det mye og gode tilbud, så kan man spare mange tusen. Da har man råd til å evt leie elektriker ved reklamasjon. Det er også litt gråsone i forbrukerkjøpsloven, om selger av produktet egentlig skal dekke elektrikerkostnaden ved reklamasjon - «avhjelp» skal være kostnadsfritt for kunden og om man må ha fagfolk inn når man skal reklamere så bør egentlig det omfattes av selgers plikter...1 poeng
-
Henter data fra Netamo til Home Assistant på denne, kjører både Hass og Homeseer for tiden. Men er nok ikke noe problem å skrive om slik Homeseer puliserer data til denne via MQTT, begynte i går kveld å se på det så er ikke kommet så veldig langt. ESPHome har MQTT, så er nok ganske lett å skrive om sensor til å hente info via MQTT i steden for en entity i Hass. Erstatte dette: sensor: - platform: homeassistant id: inside_temperature entity_id: sensor.netatmo_livingroom_temperature internal: true Med dette: sensor: - platform: mqtt_subscribe name: Temp Stue id: inside_temperature topic: Homeseer/temp_stue internal: true1 poeng
-
Nærhet til Homey-boksen har noe å si, men det "kommer litt an på". Hvis du ikke har mange andre Z-wave noder i nettverket kan distansen være et problem. I prinsippet har Z-wave minst 10 meter innendørs dekning, men det er under ideelle forhold. Z-wave er bruker imidlertid "mesh-nettverk" og noder kan videresende beskjeder; slik at hvis man har mange nok noder så har man ikke dekningsproblemer. Imidlertid under inkludering kan HeatIt-termostatene være litt kranglete, og spesielt hvis de skal legges til som "secure". Å flytte hub'en nærmere vil hjelpe, og hvis Homey kan la være å inkludere "sikkert" så prøv det (men siste google-søk viser at Homey ikke støtter det av en eller annen merkelig grunn).1 poeng
-
Hei, og takk for svar. Jeg tror nok også at de fleste elektrikere burde greie dette. Jeg tror til og med jeg skulle fått det til selv, men har blitt så voksen at jeg tror jeg vil ha samsvarserklringer og sånt på stell.. Og sist jeg snakket med en elektriker om automatisering, så var han veldig på å selge meg en eller annen ferdig-pakke for det var så inmari smut! Nå har jeg fått opp Home Assistant med både z-wave og rfxtrx (og markisa på verandaen går ned av seg selv når det blir for mye sol, men bare hvis det ikke blåser for mye, og opp igjen om kvelden helt av seg selv), så jeg tror ikke jeg er veldig klar for en sånn komersiell lock-in sak... Så jeg håpet kanskje det lurket noen elektrikere her som både hadde litt peiling, og greie priser, eller at noen her hadde gode (eller dårlige) erfaringer med noen.1 poeng
-
Ting tar tid, spesielt oppussing, og spesielt når en er petimeter og skal gjøre alt sjæl. Men nå begynner det rommet i huset som etter hvert har fått navnet "byggeplassen" å ligne et kjøkken, og håpet om å nå lyset i enden av den laaaange tunnelen vokser. Min bedre halvdel har vært vanskelig å imponere med smarthus-skrivebordseksperimentene mine, og det har vært lite engasjement for å bruke tid på å få smarthuset opp å gå, så lenge vaskerommet forsatt er vårt fungerende kjøkken. Men når høsten setter inn og samboeren har et nytt kjøkken og kose seg på, håper jeg at jeg endelig skal få tid til å sette med ned å lære meg Homeseer skikkelig og få smarthuset opp å gå I morra tenkte jeg å ta turen innom elektroimportøren for å kjøre en Fibrao Flood Sensor og kanskje en Popp aktuator til hovedstengekranen. Etter å ha lest litt om dette har jeg landa på at jeg prøver meg med en Fibaro sensor og waterguard sin sensortape i bunnen av skroget under vasken, i plastbakken under oppvaskmaskinen og på gulvet under begge deler. Noen som har en kvalifisert mening om hva som er forskjellen mellom den aktuatoren som elektroimportøren selger (Popp kr 1799,-) og den som Tronika har (Auto Valve - GR-105N kr 898,-) til halve prisen? Er det akkurat samme produktet rebrandet av Popp? Det blir også overgang fra en enkelt router med wifi til Ubiquiti Unifi router, switch og accesspunkter. Etter hvert skal accesspunktet opp på loftet, også blir det en vurdering om jeg kanskje skal sette opp flere for å få god dekning i hele huset og i garasje og verksted. Foreløpig står alt på en stol på teknisk rom. Planen er at alt som har en fast plass skal få egen nettverkskabel, så etter hvert blir det satt opp en større switch enn den på bildet til det.1 poeng
-
Sommerens automatiseringsprosjekt, Hagevanning fase 1: Vi har en hage med en del ulike vanningsbehov, alt for mange til at det kan handteres manuelt. Dessuten: Det som kan automatiseres, det skal automatiseres. Så derfor har jeg laget et system i Home Assistant og Node Red vha. en utrolig kjekk og funksjonsrik addon: ESPHome. Som fuktighetssensorer bruker jeg Mi Flora-sensorer som sender målinger via BLE. De måler også ledningsevne/saltinnhold, temperatur og lys, uten at jeg vet hvordan jeg skal utnytte disse foreløpig. I ESPHome har jeg brukt en ESP32 og laget styring av 8 releer som skaffer 12v til ventiler. Planen var opprinnelig at denne også skulle innhente fuktighetsmålingene, men det måtte jeg skrinlegge pga. litt kort rekkevidde på BLE-signalene. Den korte rekkevidden skyldes nok delvis at ventilstyring er plassert under verandaen, helt nede ved bakken siden det er der vannet er (og slanger, ledninger og ventiler oppe på veggen er ikke bra for WAF). Derfor måtte jeg lage to «satellitter» med egne ESP32-er som er plassert høyt i bokser på 5x7cm, og slik at de til sammen dekker alle de 7 sensorene. I og med den lave prisen på ESP32, ca. 45,- pr. stk., så gjør det ingenting å bruke flere. Den eneste «ulempen» er at de må ha 5 volt. Systemet har 8 kanaler, hvorav 6 vises på bildet. De to siste, en hekk og en dusj for fuglebadet får vann fra et annet sted. Kommunikasjon til/fra styringsenhet og satellitter går via WiFi. Selve automatiseringen skjer i Node Red. For hver kanal har jeg valget mellom Et antall minutter hver morgen. Automatisk noen minutter hvis fuktigheten er for lav. Antall minutter kan være forskjellig for hver kanal. Av/På Manuelt på i x minutter Hvis Yr melder regn de neste to timene, eller noen av Netatmostasjonene innenfor 300 meter fra meg melder regn (jeg har ikke Netatmo selv, så jeg "snylter" vha. Netatmos api), vannes det ikke, unntatt hvis planten står under tak. Delene som er brukt er nesten i sin helhet fra Aliexpress og eBay. Unntaket er stort sett styringsboksen som er en vanntett sak fra Clas Ohlson.1 poeng
-
Jeg har en 16V feed fra sikringsskapet av ukjent merke (var del av et gammelt Sonelco integrert lyd system som ble skiftet ut). De DC/DC konverterene jeg har brukt er disse, er veldig godt fornøyd med de, de generer veldig lite varme (blir ikke varme etter lang tids bruk som enkelte andre ble) og jeg har ikke antydning til støy (bruker de også for et integrert lydsystemet). De krever dog at du kan handtere loddebolt. https://www.aliexpress.com/item/Fine-6-24V-12V-24V-to-5V-3A-CAR-USB-Charger-Module-DC-Buck-step-down/32738093688.html?spm=a2g0s.9042311.0.0.27424c4dbPzqPW Har også brukt disse for videre konvertering fra 5V til 3V (har noen enheter som trenger 3V) https://www.aliexpress.com/item/3pcs-1A-DC-5V-6V-9V-12V-24V-to-3-3V-DC-DC-Step-Down-Buck/32765853201.html?spm=a2g0s.9042311.0.0.27424c4dDBulVa Dersom du ikke er komfortabel med bruk av loddebolt finnes det alternativer med skru-klemmer, men de har jeg ikke prøvd selv, f.eks https://www.aliexpress.com/item/DC-DC-Car-Power-12V-to-5V-3A-15W-Converter-Module-Micro-USB-Step-Down-Power/32839389732.html?spm=2114.10010108.1000014.3.6b35758a5mEDbc&gps-id=pcDetailBottomMoreOtherSeller&scm=1007.13338.128125.0&scm_id=1007.13338.128125.0&scm-url=1007.13338.128125.0&pvid=2f9f296c-8612-4760-8498-9fefee6ce10b Discalaimer: Jeg holder meg langt unna 220V utstyr kjøpt fra aliexpress. For lavspennings-utstyr er jeg mer komfortabel, men velger likevel å teste det over endel timer (ca 1 dag) med litt last for å sjekke at det ikke blir varmt (og ja, jeg har prøvd noen dårlige leverandører som jeg har brent fingeren på bokstavelig talt)1 poeng
Vinnerlisten er satt til Oslo/GMT+01:00