Steckdose schalten - bin noch ganz am Anfang

Hi,

ich bin noch ziemlich am Anfang, experimentiere noch, habe gegoogelt und rumprobiert und stecke jetzt fest.

Zustand: wenn ich per Browser folgendes abschicke:

http://192.168.178.36/relay/0?turn=on

schaltet sich meine Steckdose ein. Das soll in Zukunft auch mein nodeMCU können.

Die Wifi-Verbindung klappt, der nodeMCU lässt sich danach anpingen.

Dann versuche ich (quick and dirty, aber ich lerne ja noch), den im Browser funktionierenden Befehl per nodeMCU abzusenden. Hier bricht die Compilierung ab mit:

exit status 1
call to 'HTTPClient::begin' declared with attribute error: obsolete API, use ::begin(WiFiClient, url)

Weiteres rumprobieren war bisher erfolglos. Könntet ihr mir helfen? Mein Code ist:

#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>

void setup() {
  pinMode(12, OUTPUT); // Pin D6, gegen Ground
  Serial.begin(115200); 
  WiFi.begin("Netzwerkname", "Netzwerk-Passwort"); delay(200); 
  Serial.print("Connect to Wifi "); // bei delay <200 kein Print!?!
  while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.print("."); }
  Serial.println(""); Serial.print("WiFi connected. Own IP is: "); Serial.println(WiFi.localIP());

// bis hierhin läufts. Die Fehlermeldung kommt bezüglich der übernachsten Zeile

  HTTPClient http;                                                          //Declare an object of class HTTPClient
  http.begin("http://192.168.178.36/relay/0?turn=on");  //Specify request destination
  int httpCode = http.GET();                                            //Send the request

  if (httpCode > 0) {                            //Check the returning code
    String payload = http.getString();   //Get the request response payload
    Serial.println(payload);                   //Print the response payload
  }
  http.end();   //Close connection
}

void loop() {
  if (WiFi.status() == WL_CONNECTED) {
    digitalWrite(12, HIGH); delay(1000); 
    digitalWrite(12, LOW); delay(1000); //LED blinkt zur Bestätigung der Verbindung
  }
}

nimm den Beispielsketch der mit der Library mitversendet wird:

Arduino/BasicHttpClient.ino at master · esp8266/Arduino · GitHub

lies im Forum-How to nach, wie man korrekt Code in Code Tags postet, sodass ihn die anderen auch lesen können.
Wie man dieses Forum benutzt - bitte lesen - International / Deutsch - Arduino Forum
Editiere deinen Eingangspost entsprechend.

1 Like

Was willst du machen? Eine Steckdose schalten?
Nimm einen Shelly oder Sonoff.
Wenn dir das nicht reicht kannst du da auch TSmoto drauf flashen oder eine eigene Firmware bauen.
Aber du brauchst das Rad nich neu erfinden

Besten Dank. Das läuft.
Danke auch für den Hinweis mit den Code Tags. Post ist editiert.

Ich möchte Steckdosen in Abhängigkeit von Eingangsgrößen schalten, die sie nicht kennen. Ich denke, flashen hilft da nicht.

Was heisst das präzise?
Was für Eingangsgrößen?
Warum kennen sie die nicht?

Beschreibe mal was dein Ziel ist!

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.