Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:

THEMA: Alexa Skript ändern

Alexa Skript ändern 30 Nov 2017 10:20 #340

  • golfbubi
  • golfbubis Avatar
  • Offline
  • New Member
  • Beiträge: 2
  • Karma: 0
Hallo,

bin ein Neuling in der Arduino Szene und will gerne dazu lernen.

Ich habe ein Skript im Netz gefunden, das mir erlaubt Relais via Alexa zu steuert.

Gerne würde ich die Relais aber zeitaktiv steuern wollen, also nur circa 1-2 sec schliessen lassen.

Versucht habe ich schon ein Delay zwischen High und Low zu setzen, aber ist will nicht funktionieren.

Bitte um Hilfe...

hier ein Auszug des Skipt´s

if ( (strcmp(device_name, "TEST1") == 0) ) {
// adjust the relay immediately!
if (state) {
digitalWrite(RELAY_PIN1, HIGH);
} else {
digitalWrite(RELAY_PIN1, LOW);
}
}
if ( (strcmp(device_name, "TEST2") == 0) ) {
// adjust the relay immediately!
if (state) {
digitalWrite(RELAY_PIN2, HIGH);
} else {
digitalWrite(RELAY_PIN2, LOW);


zu finden ist das ganze Skript unter

itler.net/nodemcu-esp8266-mit-alexa-amazon-echo-steuern/
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Alexa Skript ändern 01 Dez 2017 11:10 #342

  • supporter
  • supporters Avatar
  • Offline
  • Premium Member
  • Beiträge: 98
  • Dank erhalten: 6
  • Karma: 0
Hallo golfbubi,

herzlich Willkommen im Forum!

DEIN(!) volles Skript ist hier wichtig :-)

Ehrlich gesagt verstehe ich Dein Problem nicht. Schalten die relais nicht ein? Nicht aus? Nicht lange genug ein oder aus?

Beschreibe bitte wo Du hin möchtest und versuche eine Frage zu definieren.

Viele Grüße

suppporter
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Rollosteuerung für Alexa anpassen 01 Dez 2017 12:22 #343

  • golfbubi
  • golfbubis Avatar
  • Offline
  • New Member
  • Beiträge: 2
  • Karma: 0
Hallo,

Also ich möchte das skript so ändern das, ich via Alexa die Relais ansteuern kann. Die Relais sollen für circa 1-2 sec schließen.

Ich möchte dasmit eine Rollosteuerung realisieren. Da meine Rollo´s via Funk im Rolling Code verfahren senden, ist das auslesen via rcswitch nicht möglich (oder?).

Somit nehme ich eine FB vom System und klemme dies dann an die Relais.

Da der Code nicht von mir stammt, hier ein kurzer Hinweis auf den Autor
itler.net/nodemcu-esp8266-mit-alexa-amazon-echo-steuern/

hier der Code/Skript

#include <Arduino.h>
#include <ESP8266WiFi.h>
#include "fauxmoESP.h"
#define SERIAL_BAUDRATE 115200
fauxmoESP fauxmo;

//
// Wifi definieren
//
#define WIFI_SSID "Testnetz"
#define WIFI_PASS "testpasswort"
//
// PINs definieren
//
#define RELAY_PIN1 13
#define RELAY_PIN2 15


void wifiSetup() {
// Set WIFI module to STA mode
WiFi.mode(WIFI_STA);

// Verbinden
Serial.printf("[WIFI] Connecting to %s ", WIFI_SSID);
WiFi.begin(WIFI_SSID, WIFI_PASS);

// Warten
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".");
delay(100);
}
Serial.println();

// Verbunden!
Serial.printf("[WIFI] STATION Mode, SSID: %s, IP address: %s\n", WiFi.SSID().c_str(), WiFi.localIP().toString().c_str());
}


void callback(uint8_t device_id, const char * device_name, bool state) {
Serial.printf("[MAIN] %s state: %s\n", device_name, state ? "ON" : "OFF");

//
// Abfragen definieren
//

if ( (strcmp(device_name, "TEST1") == 0) ) {
// adjust the relay immediately!
if (state) {
digitalWrite(RELAY_PIN1, HIGH);
} else {
digitalWrite(RELAY_PIN1, LOW);
}
}
if ( (strcmp(device_name, "TEST2") == 0) ) {
// adjust the relay immediately!
if (state) {
digitalWrite(RELAY_PIN2, HIGH);
} else {
digitalWrite(RELAY_PIN2, LOW);
}
}
}

void setup() {
//
// PINs setzen
//

pinMode(RELAY_PIN1, OUTPUT);
digitalWrite(RELAY_PIN1, LOW);
pinMode(RELAY_PIN2, OUTPUT);
digitalWrite(RELAY_PIN2, LOW);

// Init serial port and clean garbage
Serial.begin(SERIAL_BAUDRATE);
Serial.println();
Serial.println();
Serial.println("FauxMo Relay Setup");
Serial.println("Nach der Verbindung sage: Alexa schalte test / test2 an / aus .");

// Wifi
wifiSetup();

//
// Endgeraete Namen definieren
//
// Fauxmo
fauxmo.addDevice("TEST1");
fauxmo.addDevice("TEST2");
fauxmo.onMessage(callback);
}

uint8 _tj = 0;
void loop() {
fauxmo.handle();
}


Danke
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Diese Seite verwendet Cookies weche nach Ihrem Besuch automatisch gelöscht werden (sog.Session Cookies)! Durch die Nutzung dieser Website erklären Sie sich mit der Verwendung von Cookies einverstanden.
EINVERSTANDEN