Hallo,
ich habe gerade erst angefangen mit dem NodeMCU (damit meine ich die Hardware - nicht die Software) von LoLin (www.ebay.de/itm/272484194635) zu programmieren und als erstes per Webserver eine LED steuerbar gemacht. Es funktioniert auch von meinem PC aus (über Kabel mit dem Router verbunden) mit den Firefox die Seite aufzurufen und die LED zu steuern. Wenn ich das jedoch über mein Handy welches mit dem Router über WLAN verbunden ist versuche, so klappt dies nicht. Egal welcher Browser (Firefox, Chrome, Samsung Browser, Sony Browser). Auch wenn ich von einem PC außerhalb meines Netzwerks mit dem Firefox versuche die Seite zu öffnen (dynDNS und Portweiterleitung sind eingerichtet) dann klappt dies nicht. Also glaube ich nicht das es an den Browsern liegt.
Mein Vorgehen soweit war:
Arduino IDE für ESP8266 einrichten.
NodeMCU über USB Kabel verbinden.
>Baud 115200
>NodeMCU 1.0 (ESP-12E Module)
und folgendes Programm flashen (der Einfachheit halber habe ich die Steuerung der LED hier raus genommen und zeige nur einen Text an):
Ich habe ohne Erfolg versucht eine feste IP zu verwenden via:Code:#include <ESP8266WiFi.h> const char* ssid = "SSID"; const char* password = "passwort"; WiFiServer server(80); void setup() { Serial.begin(115200); delay(10); // Connect to WiFi network Serial.println(); Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected"); // Start the server server.begin(); Serial.println("Server started"); // Print the IP address Serial.print("Use this URL to connect: "); Serial.print("http://"); Serial.print(WiFi.localIP()); Serial.println("/"); } void loop() { // Check if a client has connected WiFiClient client = server.available(); if (!client) { return; } // Wait until the client sends some data Serial.println("new client"); while(!client.available()){ delay(1); } // Return the response client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println(""); // do not forget this one client.println("<!DOCTYPE HTML>"); client.println("<html>"); client.print("Hallo!"); client.println("</html>"); delay(1); Serial.println("Client disonnected"); Serial.println(""); }
Woran kann es liegen das ich mich nicht verbinden kann obwohl ich im selben LAN bin? Die ersten drei Teile der IP meines Handys, PCs und der NodeMCU sind gleich (192.168.2.XXX). Alle kommen in der DHCP Tabelle meines Routers vor (Telekom Speedport Smart Router). Auch kann ich problemlos mit dem Handy den Webserver meiner NAS erreichen. Jedoch antwortet das NodeMCU nicht auf Anfragen meines Handys - das klappt nur mit dem PC.Code:// config static IP IPAddress ip(192, 168, 2, xx); // where xx is the desired IP Address IPAddress gateway(192, 168, 2, 1); // set gateway to match your network Serial.print(F("Setting static ip to : ")); Serial.println(ip); IPAddress subnet(255, 255, 255, 0); // set subnet mask to match your network WiFi.config(ip, gateway, subnet);
Auch habe ich bereits zwei verschiedene NodeMCUs ausprobiert - gleiches Ergebnis.
Hatte schon jemand ein ähnliches Problem? Ich bin für jede Idee dankbar.
Grüße
Karl







Zitieren

Lesezeichen