Vandaag weer een nieuw Homeyduino project: de Homeyduino relay switch, met Google Assistent ondersteuning!

Dit project stond al langere tijd op de planning en hier was ondertussen ook al door meerdere mensen naar gevraagd. Het betaalbare alternatief voor de WiFi schakelaar met ondersteuning voor Google Assistent.

Geen Homey maar wel de Nest HUB of Google Home of Mini?

Geen probleem, dan kun je bijna hetzelfde met de zeer betaalbare SONOFF modules. Zo bieden ze onder andere WiFi Smart Switches als wandschakelaars, deze koppel je vervolgens eenvoudig aan Google Assistent om zo je apparaten of verlichting spraak-, app- of tijdgestuurd te maken.

Vorige keer de ‘Homeyduino Clapper Switch’ gemist? Schakel je verlichting of flows door in je  handen te klappen! 

 

10 stuks Sonoff Smart Home Wifi Switch Universal Remote Controller Wi-Fi DIY Modules | Gevonden op Aliexpress.com, thuisbezorgd en al voor € 45,-

!!! Waarschuwing !!! Werken met elektriciteit is gevaarlijk, zorg dat je alles deugdelijk aansluit en dat je nooit onder spanning werkt !!! Waarschuwing !!!

 

Benodigdheden:

 

Wemos D1 mini – Mini NodeMcu 4M bytes | Gevonden op Aliexpress.com, thuisbezorgd en al voor € 1,77

 

1Channel Relay Module voor Arduino | Gevonden op Aliexpress.com, thuisbezorgd en al voor € 0,96


Relay Module Speciaal voor de  WeMos D1 Mini ESP8266 | Gevonden op Aliexpress.com, thuisbezorgd en al voor € 0,94

Geen tijd of geduld om op levering uit China te wachten? Conrad heeft het ook en levert direct vanuit Nederland!

Aansluitschema  

Volg onderstaand schema op de sensoren aan te sluiten op je board. Voor de volledigheid:

Relay Wemos D1 Mini pin
IN / S D0
VCC / + 5V
GND / – GND

 

Aansluitschema Homeyduino relay | Huisvanvandaag.nl

Aansluitschema Homeyduino relay

Homeyduino relay | Huisvanvandaag.nl

Arduino IDE

Installeer Arduino IDE, dit is de software die nodig is om de code op je Wemos D1 Mini board te kunnen zetten. Eerst moeten we hiervoor de Homeyduino Library installeren.

Open een nieuw venster, klik op de bovenste balk op Schets > Bibliotheek gebruiken > Bibliotheken beheren.

Arduino IDE, eerst de Homeyduino library installeren | Huisvanvandaag.nl

Arduino IDE, eerst de Homeyduino library installeren

In het scherm dat nu opent zoek je op Homeyduino en vervolgens installeer je deze.

Hetzelfde doe je ook met de volgende termen: ESP8266 en Relay (Relay.h) deze zoek en installeer je ook.

Wemos D1 Mini board

Waarschijnlijk moet je dit board eerst ook nog installeren voordat je het kunt gebruiken, dit doe je dan ook als volgt:

Ga naar: Hulpmiddelen > Board > Board Beheer.

Board installeren Arduino | Huisvanvandaag.nl

In het zoekvenster zoek je vervolgens op Wemos D1 mini en deze installeer je.

Board installeren Arduino | Huisvanvandaag.nl

 

Homeyduino Code

Wanneer je de bovenstaande stappen hebt gevolgd open je een nieuw scherm van Arduino IDE en vervang je de tekst door onderstaande code. Let er even op dat je hier de juiste netwerk gegevens invult (zie rode tekst)

Wanneer je van plan bent meerdere relais in je huis te plaatsen is het belangrijk dat je ze allemaal een unieke naam geeft, zodat Homey ze als verschillende relais herkent.

// Code aangepast voor Homeyduino door Domoticablog https://huisvanvandaag.nl. 
// Kijk op de site voor meer Homeyduino en andere Smart Home gerelateerde posts.
// Origineel afkomstig van: https://github.com/athombv/homey-arduino-library

#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <Homey.h>
#include <Relay.h> 

#define PIN_RELAY   D0 // PIN was cruciaal hier, met D2 werkte niet, met D0 wel 

void wifi() {
  if (WiFi.status() != WL_CONNECTED) {
    WiFi.begin("<SSID>", "<PASSWORD>");
    uint8_t timeout = 30;
    while (WiFi.status() != WL_CONNECTED) {
      delay(500);
      Serial.print(".");
      if (timeout<1) break;
    }
    if (WiFi.status() == WL_CONNECTED) {
      Serial.print("Verbonden met WiFi! (");
      Serial.print(WiFi.localIP());
      Serial.println(")");
    }
  }
}

bool state = false;
unsigned long previousMillis = 0;
const unsigned long interval = 100; //Interval in milliseconds

void setup() {
  Serial.begin(115200);
  pinMode(PIN_RELAY, OUTPUT); //Set relay pin to output
  digitalWrite(PIN_RELAY, LOW); //Turn output off
    
  Homey.begin("Relay"); // vul hier de gewenste unieke naam in 
  Homey.setClass("socket");
  Homey.addCapability("onoff", setState);
  Homey.addAction("output", setState);
  Homey.addCondition("state", getState);
}

void loop() {
  wifi();
  Homey.loop();
  unsigned long currentMillis = millis();
  if(currentMillis - previousMillis > interval) {
    previousMillis = currentMillis;
  }
}

void setState() {
  state = Homey.value.toInt();
  applyState();
}

void applyState() {
  digitalWrite(PIN_RELAY, state);
 
  Serial.println("applyState(): new state is "+String(state));
  Homey.setCapabilityValue("onoff", state);
  Homey.trigger("state", state);
}

void getState() {
  Serial.println("getState(): state is "+String(state));
  return Homey.returnResult(state);
}
Homeyduino relay

Koppelen aan Homey

Via de Homey app kun je nu de sensor koppelen aan Homey, hoe je dat doet lees je hier!

Bedienen relay

De relay kun je bedienen via een schakelaar in de Homey app, toepassen in flows of, zoals in de titel al aangegeven, bedienen via Google Home.

Na je ‘Ok, Google’ commando zeg je gewoon: ‘Schakel <naam relay> aan/uit’. Vandaar dat het handig is om, indien je meerdere relais maakt, ze allemaal een unieke naam te geven.

Vorige keer de ‘Homeyduino Clapper Switch’ gemist? Schakel je verlichting of flows door in je  handen te klappen! 

Eindresultaat 

Hieronder enkel foto’s van het eindresultaat van mijn eerste relais. Zoals je in het filmpje kon zien gebruik ik deze momenteel om de televisie in de tuin te kunnen bedienen. Voorheen had ik hier een schakelaar op Radio Frequentie tussen zitten.

Maar omdat ik de TV enkel met stem bedien (Netflix of YouTube) wilde ik de televisie op eenzelfde manier kunnen in- en uitschakelen.

Over enige tijd ga ik aan de slag met een meerkanaals relais schakelaar.

Ga je ook aan de slag met dit project? Laat het me weten en graag zou ik foto’s zien van je eindresultaat!

Homeyduino relay | Huisvanvandaag.nl

De Wemos D1 mini en relais veilig weggewerkt in een plastic container van de bouwmarkt.

 

Homeyduino relay | Huisvanvandaag.nl

Wanneer de deksel erop zit is het een net en veilig opgeborgen geheel.

 

 

Enthousiast geworden? Deel het dan!