Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:

THEMA: Wemos D1 mini http adresse ausführen???

Wemos D1 mini http adresse ausführen??? 12 Mai 2017 11:58 #181

  • Bluelinux
  • Bluelinuxs Avatar
  • Offline
  • New Member
  • Beiträge: 1
  • Karma: 0
Hallo liebe gemeinde der µC....

Als erstes möchte ich mich mal vorstellen... Benny aus Berlin und knackige 37 Jahre jung. Ich bin ganz frisch in dieser Scene und habe leider so keine Ahnung von der Programmiersprache und das ist der Grund wieso ich hier um Hilfe suche.

Problem und Wunsch: Alexa soll mein Beamer schalten!

Ich besitze ein Wemos D1 mini und auch Alexa. Alexa soll meinen Beamer ein- und ausschalten können. Der Beamer lässt sich mittels einem http: ateuern. Die Adressen sehen so aus:

AN:http://meineIP/cgi-bin/consoleON.cgi?D=%05%02%00%00%00%00

AUS: http://meineIP/cgi-bin/consoleR15.cgi?D=%05%02%01%00%00%00

Jetzt mein Anliegen:
Gibt es ein Befehl der diese Adresse senden kann und somit der Beamer an geht?

Als Anhang mal mein Code
/*
   Autor:   Christian Kronen
   Video:   https://youtu.be/48RW4JHMXUA , https://youtu.be/9KPloCNosIk
   Datum:   25.März 2017
   Version: 1.0
   Ort:     Aachen

   Verwendetes Board: NodeMCU.
   Weitere Teile: 433 MHZ Funksender und Empfängermodul MX-FM-5V
                  IR LED mit 940nm
                  IR Empfänger V38238
                  1 Widerstand (muss individuell berechnet werden - ca. 150 OHM)
                  Breadboard und Steckbrücken
                  Amazon Echo


   Ich bin nicht der Autor der verwendeten Bibliotheken:

      https://github.com/sui77/rc-switch/archive/master.zip
      https://github.com/me-no-dev/ESPAsyncTCP/archive/master.zip
      https://github.com/me-no-dev/ESPAsyncUDP/archive/master.zip
      https://github.com/me-no-dev/ESPAsyncWebServer/archive/master.zip
      https://bitbucket.org/xoseperez/fauxmoesp/downloads
      https://github.com/markszabo/IRremoteESP8266 by Ken Shirriff (C)

   Treiber für das Board: http://sparks.gogo.co.nz/ch340.html

   Ich übernehme keine Gewähr für die Richtigkeit, Vollständigkeit und Aktualität der bereitgestellten Inhalte.
   Die Nutzung und das nachmachen der Inhalte aus dem Video& der Beschreibung erfolgt auf eigene Gefahr des Nutzers.
   Schaue niemals in die IR LED!


*/

#include <ESP8266WiFi.h>
#include "fauxmoESP.h"

#include <IRremoteESP8266.h> //by Ken Shirriff (C) NEU

#define WIFI_SSID "************"
#define WIFI_PASS "***********"

fauxmoESP alexawifi;


IRsend IRLED(4); // IRLED angeschlossen am D2 Pin (GPIO4) - NEU


void wifiSetup() {

                           //******************************************************
                           //****                  W-Lan Setup                 ****
                           //******************************************************

  WiFi.mode(WIFI_STA);

  Serial.printf("Verbindungs zu %s wird aufgebaut ", WIFI_SSID);

  WiFi.begin(WIFI_SSID, WIFI_PASS);

  while (WiFi.status() != WL_CONNECTED) {
    Serial.print("*");
    delay(100);
  }
  Serial.println("");
  Serial.printf("Verbunden! SSID: %s, IP Adresse: %s\n", WiFi.SSID().c_str(), WiFi.localIP().toString().c_str());
}

void anfrage(uint8_t device_id, const char * device_name, bool state) {
  Serial.print("Gerät: ");
  Serial.println(device_name);
  Serial.print("Status: ");
//-----------------------------------------------------------------------------------------------------------------------------------------------
                           //*******************************************************
                           //****             Geräte EIN Schalten               ****
                           //*******************************************************

 if (state) {  
   if(device_id == 0) { //Beispiel IR Geräte schalten - NEU
    Serial.println("AN");

    //Samsung
    IRLED.sendSAMSUNG(0xE0E040BF, 32);        //Samsung Fernseher AN Schalten

    delay(50);
  }
else if (device_id == 1) {
    Serial.println("AN");

    //Samsung
    IRLED.sendSAMSUNG(0xE0E0E01F, 32);        //Samsung Fernseher lauter

    delay(50);
  }
 else if (device_id == 2) {
    Serial.println("AN");

    //Samsung
    IRLED.sendSAMSUNG(0xE0E0D02F, 32);        //Samsung Fernseher leiser

    delay(50);
  }
  else if (device_id == 3) {
    Serial.println("AN");

    //NEC Beamer
    IRLED.sendNEC(0x189710EF, 32, +100);      //NEC Beamer EIN Schalten
        
    delay(50);
  }
  else if (device_id == 6) {
    Serial.println("AN");

    //Harman Kardon
    IRLED.sendNEC(0x10E817E, 32);        //Receiver Radio

    delay(50);
  }
 }

                           //*******************************************************
                           //****             Geräte AUS Schalten               ****
                           //*******************************************************
else {


  if(device_id == 0) { //IR Geräte ausschalten
    Serial.println("AUS");

  //Samsung
  IRLED.sendSAMSUNG(0xE0E040BF, 32);             // Samsung Fernseher AUS Schalten

  delay(50);
  }
if(device_id == 3) { //IR Geräte ausschalten
    Serial.println("AUS");

  //NEC BEamer
  IRLED.sendNEC(0x189728D7, 32, +20);                // NEC Beamer AUS Schalten
  delay(50000);
    
  IRLED.sendNEC(0x1897E817, 32, +50);                // NEC Beamer ENTER zum AAUS Schalten
  delay(500000);
  Serial.println("Enter");
  }
if(device_id == 3) { //IR Geräte ausschalten
    Serial.println("AUS");

  //Harman Kardon Radio
  IRLED.sendNEC(0x10EF906, 32, +20);                // Harman Kardon Radio
  delay(50000);
    
  }
 }
}

void setup() {

  Serial.begin(115200,SERIAL_8N1,SERIAL_TX_ONLY);
  Serial.println("Nach dem Verbinden, sage 'Alexa, schalte <Gerät> an' oder 'aus'");

//  mySwitch.enableTransmit(5);

  IRLED.begin(); // NEU

  wifiSetup();
  geraete();
                //***************************************************
                //****             Geräteliste                   ****
                //***************************************************
 }
void geraete() {
  
  alexawifi.addDevice("Fernseher"); //ID 0  
  alexawifi.addDevice("TV Lauter"); //ID 1
  alexawifi.addDevice("TV Leiser"); //ID 2
  alexawifi.addDevice("Beamer"); //ID 3
  alexawifi.addDevice("Receiver"); //ID 4
  
  alexawifi.onMessage(anfrage);
  
 }
void loop(){

  alexawifi.handle();

Wenn mir dort jemand helfen kann wäre das super.... der rest klappt super... danke schon mal
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Wemos D1 mini http adresse ausführen??? 12 Mai 2017 23:16 #182

  • StefanL38
  • StefanL38s Avatar
  • Offline
  • New Member
  • Hobby-Elektroniker, Modellflieger
  • Beiträge: 8
  • Karma: 0
Hallo Benny,

mir ist noch nicht ganz klar wie das ganze funktioniert.

Du hast in deinem Posting geschrieben

Zitat "Der Beamer lässt sich mittels einem http: ateuern. "

Wie hast du denn das Ein/Ausschalten des Beamers getestet?

Hast du die http-Adresse am PC in deinen Browser eingeben?

http://meineIP/cgi-bin/consoleON.cgi?D=%05%02%00%00%00%00

Ist denn der Beamer selbst WLAN-fähig?

Dieser http-"Befehl" sieht aus wie eine Webanfrage ausgeführt von einem browser.

Dann bringst du noch Alexa und ein WeMos D1 mini ins Spiel.

Also das ganze funktioniert jetzt nicht so das man einfach zwei WLAN-fähige Komponenten im gleichen Zimmer aufstellt und dann Alexa was zuruft.

Das müsstest du schon näher erläutern wie die verschiedenen Komponenten Alexa, Wemos D1 Mini der zitierte code zusammenarbeiten sollen.

Beschreibe es so gut wie du eben kannst.

viele Grüße

Stefan Ludwig
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Wemos D1 mini http adresse ausführen??? 14 Mai 2017 09:37 #183

  • supportteam
  • supportteams Avatar
  • Offline
  • Administrator
  • Beiträge: 6
  • Karma: 0
Hallo Benny,

...und herzlich Willkommen im ESP-Forum :)

Eine Schaltung per Http-push mittels esp im WLAN zu realisieren ist bestimmt der erste Schritt und darauf würde ich mich als erstes stürzen.
Codes dafür gibt es im Netz mehr als genug.

Das Ansprechen des ESP mittels Alexa wäre dann der zweite Schritt. Hast Du da schon was ausprobiert?
Die 20 Seiten Code oben habe ich nicht auseinandergenommen.... Das war etwas zuviel des Guten ;-)

Viele Grüße

Jörg
Der Administrator hat öffentliche Schreibrechte deaktiviert.