INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
ESP32 Deepsleep und FRITZ!Box 7590 WiFi probleme.
28.11.2018, 20:13 (Dieser Beitrag wurde zuletzt bearbeitet: 28.11.2018 20:23 von MeisterQ.)
Beitrag #1
ESP32 Deepsleep und FRITZ!Box 7590 WiFi probleme.
Hallo zusammen,

ich muss mich nochmal an euch wenden, weil ich ein Problem mit dem Wlan meiner Fritzbox habe.

Das Szenario:

Ich habe eigens kreierte Platinen in der Verwendung, die mir Temperaturdaten von überall im Batteriebetrieb über MQTT an mein node-red senden.

Die Sensoren wachen auf, verbinden sich mit WiFi, messen die Batteriespannung, holen sich die Daten von einem BME280, senden diese Daten an meinen MQTT Server auf meinen Raspberry und schlafen wieder ein.

Das ganze läuft im 10 Minuten Takt ab. 10 Minuten schlafen, 1200ms Wach bis Deepsleep.

Bisher haben sich die Sensoren mit einem bzw 2 TP-Link Routern, die nur 2.4GHz können, (damit ich einen größeren Bereich abdecken kann) verbunden. Beide Router haben die selbe SSID und das selbe Passwort. Sie liefen nur auf einem anderen Kanal.

Mein eigentlicher Router ist eine Easybox von Vodafone, ebenfalls das selbe Wlan. Nur dieser Router sendet zugleich auch 5GHz mit der selben SSID aus.

Ich habe mir jetzt allerdings eine Fritzbox 7590 inkl. 4 Repeatern zugelegt, um das ganze Haus, inkl. aussenbereich mit einem Mesh-Wlan zu versorgen. Geile sache. Das läuft echt perfekt. Kann ich jedem empfehlen.

Ich will natürlich die TP-Link Router weg machen, und alles über mein Mesh-Wlan laufen lassen. Das führt allerdings schon zu meinem Problemfall:

Ich hatte zuerst das Problem, dass sich meine ESPs NICHT mit dem WLan meiner Fritzbox (Andere SSID als mein altes Wlan) verbunden haben.

Dieses Problem habe ich behoben, indem ich (ich weiss es wird jetzt komisch) dem 5GHz Wlan eine andere SSID gegeben habe, oder es deaktiviert habe. Fragt mich nicht warum. Aber jetzt geht es.

Super dachte ich mir. Dann steht dem jetzt nichts im wege.

Nein, ca. 2-3 Stunden später fiel mir auf, dass ich keine MQTT-Messages mehr erhalten habe von den Sensoren, die auf dem Mesh-Wlan liefen.

Komisch. Habe mir die Teile dann wieder ran geholt, und erstmal wieder an den FTDI angeschlossen.

Der Sketch wird bis zum "if (WiFi.status() != WL_CONNECTED)" abgearbeitet, merkt dann aber: "Oh, ich bin ja garnicht verbunden" und resettet sich, bzw schläft wieder für 10 Sekunden ein.

Merkwürdig. Der ESP wird mir in den Aktiven Verbindungen gelistet, und wechselt dann kurze Zeit später in die Spalte "Ungenutze Verbindungen" bei der Fritzbox.

Nach einem restart der Fritzbox verbinden sich alle ESPs wieder.

Also habe ich ein wenig gegoogled. Ich kam natürlich schon auf einen Thread hier, oder im anderen Forum, weiss ich nicht mehr genau.

Da wurde gesagt ich sollte bei "WLan -> Funknetz -> Erfolglose Anmeldeversuche" schauen.

Die Liste ist leer.

Ebenfalls habe ich die Ungenutze Verbindungen Liste schon geleert.

Ich habe auch bei "Sicherheit" unter "WLan" ohne Verschlüsselung und mit WPA/WPA2 und WPA2(CCMP) ausprobiert. Keine veränderung.

Der Kanal war in dem moment auf 11. Gut, da gabs doch Probleme habe ich dochmal gelesen?

Habe den Kanal also ebenfalls geändert. Auf 6. Geht auch nicht.

Dann habe ich im Sketch die Feste IP raus genommen, und es mit DHCP probiert. Geht auch nicht.

Weiterhin kann sich mein ESP nicht verbinden, bis ich die Fritzbox restarte.

Gebe ich jetzt die SSID von meinem TP-Link WLan ein, läuft es ununterbrochen.

Lässt mich irgendwie auf die Fritzbox schließen.

Andererseits habe ich 2 Sonoffs im selben WLan permanent und problemlos laufen.

Liegt es an der häufigkeit der Verbindung? Blockt die Fritzbox da was, wenn der ESP sich zu oft versucht zu verbinden?

Die SSIDs und Passwörter unterscheiden sich, bevor jemand fragt wie folgt:

TP-Link: Großbuchstabe, ein paar Buchstaben, und am ende eine Zahl. Passwort besteht nur aus Buchstaben, alles klein.

Fritzbox: Großbuchstabe, ein paar Buchstaben. Passwort besteht aus Buchstaben mit 4 Zahlen am ende, alles klein geschrieben.

Alles ohne Sonderzeichen oder Leerzeichen

Ich habe den WiFiClient Sketch für den ESP32 auch aufs geringste reduziert, nur die Verbindung aufgebaut und mir den WiFi Status ausgeben lassen.

Die ganze Zeit war der auf 3. Irgendwann ist er auf 0 umgesprungen


Ich bin momentan etwas überfragt und hoffe mir kann jemand Helfen.

Fehlt noch was? Müsste ja ziemlich ausführlich sein..



Hier noch der Sketch, der momentan in einer echten "Test-Bastelphase" ist...

Setup und Loop

Code:
/*
  ESP-WROOM-32 Wetterstation MQTT Sketch


  Sketch für Platinen mit ESP-WROOM-32 zur Messung der Temperatur, Luftfeuchtigkeit und Luftdruck, sowie Messung der Batterispannung und Spannung einer Input Spannung zum Laden der Batterie.
  Der ESP verbindet sich nach Power-Up mit dem definierten WLan, misst die Spannungen, Fragt daten des BMEs ab, Verbindet sich mit dem MQTT Server, sendet alle Daten und schläft für 10 Minuten
  Der ganze Vorgang dauert ca. 1300ms und in der Zeit werden ca. 140mA benötigt. Im Sleepmode fließen ca. 11µA.

  Erstellt von MeisterQ
*/

// --------------------------------------------- Pins mit spezieller Nutzung
// Solar-Pin:      GPIO 33 (ADC1_5)
// Batterie-Pin:   GPIO 32 (ADC1_4)
// DS18B20:        GPIO 18
// Boot:           GPIO 0 (ADC2_1)
// --------------------------------------------- Freie Pins
// X1 4:           GPIO 34 (ADC1_6)
// X1 3:           GPIO 35 (ADC1_6)
// X1 2:           GPIO 25 (ADC2_8)
// X1 1:           GPIO 27 (ADC2_7)
// --------------------------------------------- Freie Pins
// X2 4:           GPIO 14 (ADC2_6)
// X2 3:           GPIO 12 (ADC2_5)
// X2 2:           GPIO 13 (ADC2_4)
// X2 1:           GPIO 15 (ADC2_3)
// --------------------------------------------- Freie Pins
// X3 4:           GPIO 2 (ADC2_2)
// X3 3:           GPIO 4 (ADC2_0)
// X3 2:           GPIO 16 (U2RXD)
// X3 1:           GPIO 17 (U2TXD)
// --------------------------------------------- Freie Pins
// X4 4:           GPIO 5
// X4 3:           GPIO 19
// X4 2:           GPIO 37
// X4 1:           GPIO 26 (ADC2_9)
// --------------------------------------------- Freie Pins
// X5 1:           GPIO 0 (ADC2_1)
// X5 2:           GND
// X5 3:           GND
// X5 4:           EN (Chip Enable)
// --------------------------------------------- Freie Pins
// X6 4:           GPIO 36 (Sensor_VP) (ADC1_0)
// X6 3:           GPIO 39 (Sensor_VN) (ADC1_3)
// X6 2:           SD 2
// X6 1:           SD3
// --------------------------------------------- I2C Kommunikation
// SDA:             GPIO 21
// SCL:             GPIO 22
// --------------------------------------------- Serielle Kommunikation
// RXD:             GPIO 3 (U0RXD)
// TXD:             GPIO 1 (U0TXD)
// --------------------------------------------- Nicht benutzt
// CMD
// CLK
// SD0
// SD1
// ---------------------------------------------

#include <WiFi.h>                   // WiFi Librarby
#include <Adafruit_Sensor.h>        // Library für Adafruit Sensoren
#include <Adafruit_BME280.h>        // Library für den BME280
#include <PubSubClient.h>           // MQTT Library
#include <ArduinoOTA.h>             // OTA Library
#include <esp_deep_sleep.h>

#define ausgabe

#define sleepTime 10 * 60   // In Minuten
#define sleepTime2 10       // In Sekunden
#define batteryPin 32       // Pin zum Messen der Batteriespannung
#define solarPin 33         // Pin zum Messen der Spannung der Solarzelle
#define BME280Pin 13        // Power-Pin des BME280
#define REEDPin 34          // Pin für Reed-Kontakt


/*
  -------------------- Mosquitto -----------------------
*/

const char* mqtt_server = "192.168.2.173";                        // MQTT Server IP

WiFiClient espClient;                                             // WiFi client
PubSubClient client(espClient);                                   // Client für MQTT

/* topics */
#define TEMP_TOPIC    "smarthome/Wohnzimmer_unten/temp"                 // Topic wo Temperatur gesendet wird
#define HUM_TOPIC     "smarthome/Wohnzimmer_unten/hum"                  // Topic wo Luftfeuchtigkeit gesendet wird
#define PRES_TOPIC    "smarthome/Wohnzimmer_unten/pres"                 // Topic wo Luftdruck gesendet wird
#define V_BAT_TOPIC   "smarthome/Wohnzimmer_unten/battery"              // Topic wo Spannung der Batterie gesendet wird
#define V_INPUT_TOPIC "smarthome/Wohnzimmer_unten/input"                // Topic wo Spannung der Solarzelle gesendet wird
#define RSSI_TOPIC    "smarthome/Wohnzimmer_unten/RSSI"                 // Topic wo WiFi Signalstärke gesendet wird
#define RUNTIME_TOPIC "smarthome/Wohnzimmer_unten/runtime"              // Topic wo die Runtime gesendet wird

char tempMsg[5];    // String für Temperatur
char humMsg[5];     // String für Luftfeuchtigkeit
char presMsg[6];    // String für Luftdruck
char vBatMsg[5];    // String für Batteriespannung
char vInMsg[5];     // String für Solarspannung
char RSSIMsg[5];    // String für RSSI
char runtimeMsg[5]; // String für Runtime

/*
  ----------------- BME280 Einstellungen --------------
*/

#define SEALEVELPRESSURE_HPA (1013.25)    // Luftdruck bei Normal-Null

Adafruit_BME280 bme; // I2C

float tF;   // Variable für Temperatur Float
float pF;   // Variable für Luftdruck Float
float hF;   // Variable für Luftfeuchtigkeit Float

/*
  ----------------- WLan Einstellungen --------------
*/

const char* ssid = "----";                  // WLan Name
const char* password = "----";          // WLan Passwort

IPAddress ip(192, 168, 2, 101);                   // IP mit der sich der ESP in das Netzwerk verbinden soll
IPAddress gateway(192, 168, 2, 1);                // Gateway des Netzwerks
IPAddress subnet(255, 255, 255, 0);               // Subnetmask

/*
  ----------------- Sonstige --------------
*/

int startSeconds = 0;           // Variable für Sekunden ab Start.
int startSeconds1 = 0;       // Variable für Sekunden ab Start.
bool reed = false;                    // Variable für Status des Reed-Kontakts

int r1 = 0;
const float Steigung1 = 3.28 / 1785;
float u1 = 0.0;

unsigned long previousMillis = 0;
const long interval = 1200;
unsigned long previousMillis2 = 0;
const long interval2 = 100;
bool MQTTsend = false;

void setup(void)
{
#ifdef ausgabe
  Serial.begin(115200);
#endif       // Serielle Verbindung starten

  pinMode(21, INPUT_PULLUP);        // PinMode für SDA
  pinMode(22, INPUT_PULLUP);        // PinMode für SCL
  pinMode(BME280Pin, OUTPUT);       // PinMode für BME280 Power
  pinMode(12, OUTPUT);
  digitalWrite(12, HIGH);
  digitalWrite(BME280Pin, HIGH);    // Schreibt Power-Pin des BMEs auf HIGH

  wifiSettings();                 // Wifi Konfigurieren
  mqttSettings();             // MQTT Konfigurieren
  bmeInit();                  // BME280 Initialisieren
  delay(50);
  yield();
  delay(50);
  BMEreadSensors();               // Lese Daten aus BME280
  voltage();                      // Messe die Spannungen
  digitalWrite(BME280Pin, LOW);           // Schalte Power-Pin des BMEs aus (LOW)
#ifdef ausgabe
  Serial.println("Booting");
#endif  // Serielle Ausgabe
  yield();
}

void loop(void)
{
  if (WiFi.status() != WL_CONNECTED)
  {
    ESP.deepSleep(sleepTime2 * 1000000);
  }
  else if (WiFi.status() == WL_CONNECTED && MQTTsend == false)
  {
    mqttHandle();                   // Sende Daten an MQTT Server

#ifdef ausgabe
    Serial.print("WiFi Connected");
    Serial.print(startSeconds);
    Serial.println();
    Serial.println("Loop fertig");
    Serial.flush();
espClient.flush();
    espClient.stop();
#endif
  }
  unsigned long currentMillis = millis();
  if (currentMillis - previousMillis >= interval) {
    previousMillis = currentMillis;
    ESP.deepSleep(sleepTime * 1000000);
  }
}

void bmeInit()
{
#ifdef ausgabe
  Serial.println(F("BME280 test"));
#endif
  if (!bme.begin()) {
    Serial.println("Could not find a valid BME280 sensor, check wiring!");
    ESP.deepSleep(sleepTime2 * 1000000);     // Schlafe 1 Minute
#ifdef ausgabe
    Serial.println();
#endif
  }
// bme.takeForcedMeasurement();              // Anweisung damit der BME nur eine Messung macht
}


BME Zeug

Code:
void BMEreadSensors()
{
  
// bme.takeForcedMeasurement();              // Anweisung damit der BME nur eine Messung macht
  tF = (bme.readTemperature());             // Schreibt die Temperatur in tF
  hF = bme.readHumidity();                  // Schreibt die Luftfeuchtigkeit in hF
  pF = (bme.readPressure() / 100.0F);       // Schreibt den Luftdruck in pF

#ifdef ausgabe
  BMEprintValues();                         // Ausgabe der Daten im Serial-Monitor
#endif
}

void BMEprintValues()
{
  Serial.print("Temperatur: ");             // Schreibt in Serial-Monitor
  Serial.print(tF);                         // Schreibt in Serial-Monitor
  Serial.write(0xb0);                       // Schreibt in Serial-Monitor
  Serial.println("C");                      // Schreibt in Serial-Monitor

  Serial.print("Luftdruck: ");              // Schreibt in Serial-Monitor
  Serial.print(pF);                         // Schreibt in Serial-Monitor
  Serial.println(" hPa");                   // Schreibt in Serial-Monitor

  Serial.print("Luftfeuchtigkeit: ");       // Schreibt in Serial-Monitor
  Serial.print(hF);                         // Schreibt in Serial-Monitor
  Serial.println(" %");                     // Schreibt in Serial-Monitor
}

Spannungsmessung

Code:
void voltage()
{
  r1 = analogRead(32);
  u1 = Steigung1 * r1;
  Serial.print("AR1: ");                              // Serielle ausgabe für Text "AR1:"
  Serial.println(r1);
  Serial.print("U1: ");                               // Serielle ausgabe für Text "U1:"
  Serial.println(u1);
  digitalWrite(12, LOW);
}


MQTT Kram

Code:
void mqttconnect() {
  while (!client.connected()) {
    Serial.print("MQTT connecting ...");
    String clientId = "ESP32WohnzimmerUnten";
    if (client.connect(clientId.c_str())) {
      Serial.println("connected");
      //      client.subscribe(LED_TOPIC);
    } else {
      ESP.deepSleep(sleepTime2 * 1000000);     // Schlafe 10 Minuten
    }
  }
}

void mqttHandle()
{
  if (!client.connected()) {
    mqttconnect();
  }
  /* this function will listen for incomming
    subscribed topic-process-invoke receivedCallback */
  client.loop();
  snprintf (tempMsg, 5, "%lf", tF);
  snprintf (humMsg, 5, "%lf", hF);
  snprintf (presMsg, 6, "%lf", pF);
  snprintf (vBatMsg, 5, "%lf", u1);
  snprintf (RSSIMsg, 5, "%ld", WiFi.RSSI());
  startSeconds = millis();
  snprintf (runtimeMsg, 5, "%ld", startSeconds);

  /* publish the message */
  client.publish(TEMP_TOPIC, tempMsg, true);
  client.publish(HUM_TOPIC, humMsg, true);
  client.publish(PRES_TOPIC, presMsg, true);
  client.publish(V_BAT_TOPIC, vBatMsg, true);
  client.publish(RSSI_TOPIC, RSSIMsg, true);
  client.publish(RUNTIME_TOPIC, runtimeMsg, true);
  MQTTsend = true;
}

void receivedCallback(char* topic, byte* payload, unsigned int length) {
  Serial.print("Message received: ");
  Serial.println(topic);

  Serial.print("payload: ");
  for (int i = 0; i < length; i++) {
    Serial.print((char)payload[i]);
  }
  Serial.println();
  /* we got '1' -> on */
  if ((char)payload[0] == '1') {
    //    digitalWrite(led, HIGH);
  } else {
    /* we got '0' -> on */
    //    digitalWrite(led, LOW);
  }
}

void mqttSettings()
{
  client.setServer(mqtt_server, 1883);
  client.setCallback(receivedCallback);
}

Und WiFi
Code:
void wifiSettings()
{
  WiFi.persistent(false);
  WiFi.mode(WIFI_STA);
  WiFi.config(ip, gateway, subnet);
  WiFi.begin(ssid, password);


#ifdef ausgabe
  Serial.print("Connected to ");
  Serial.println(WiFi.SSID());
  Serial.print("IP address:\t");
  Serial.println(WiFi.localIP());
  Serial.print("RSSI: ");
  Serial.println(WiFi.RSSI());
  Serial.print("MAC: ");
  Serial.println(WiFi.macAddress());
#endif
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
28.11.2018, 22:03
Beitrag #2
RE: ESP32 Deepsleep und FRITZ!Box 7590 WiFi probleme.
Moin,

Zitat: If calling persistent(false) before wifistart, credentials are not loaded, say in a library constructor
If changing persistent before begin(), credentials are not saved, wifista begin() esp_wifi_set_config, then calls esp_wifi_start() <-- oh and no persistent flag here
https://github.com/espressif/arduino-esp32/issues/1393

Es gab/gibt da diesen Bug, vlt ist das ne Möglichkeit, warum das dann nur bei der FB so ist... wer weiss.


Gruß

Nicht denken,...
...nachdenken... Rolleyes

Smarter - LiveData
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
28.11.2018, 22:10
Beitrag #3
RE: ESP32 Deepsleep und FRITZ!Box 7590 WiFi probleme.
(28.11.2018 22:03)Hilgi schrieb:  Moin,

Zitat: If calling persistent(false) before wifistart, credentials are not loaded, say in a library constructor
If changing persistent before begin(), credentials are not saved, wifista begin() esp_wifi_set_config, then calls esp_wifi_start() <-- oh and no persistent flag here
https://github.com/espressif/arduino-esp32/issues/1393

Es gab/gibt da diesen Bug, vlt ist das ne Möglichkeit, warum das dann nur bei der FB so ist... wer weiss.


Gruß


Also wenn ich das Auskommentiere wirds nicht besser. Das habe ich auch schon getestet. Das habe ich oben nicht erwähnt.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
29.11.2018, 01:58
Beitrag #4
RE: ESP32 Deepsleep und FRITZ!Box 7590 WiFi probleme.
Moin,
ich ziehe hier gerade auch einen ESP32 hoch den ich sowohl an einem Fritzchen 7590 oder einem Cisco-AP anmelden kann. Ziel ist es auch Daten von einem Bosch Sensor an eine DB zu liefern.
Als ich das gelesen habe mit dem Connect Problem zu Fritzchen habe ich mich erinnert das ich dieser Tage beim testen des Sketches öfters Connect Probleme zu Fritzchen im Monitor gesehen habe. Also habe ich eben mal zum Cisco-AP und wieder zurück zu Fritzchen gewechselt und dann jeweils öfters per Hardware Reset den ESP neu gestartet und geschaut ob er sich sofort im WLAN anmeldet. Und siehe da, egal ob Cisco oder Fritzi, hat er sich beim ersten mal sofort angemeldet und NTP Daten gezogen. Wohlgemerkt bei mir wird der ESP nie schlafen geschickt.
Die 5GHz Sache ist bei mir auch abgeschaltet - einfach weil keine Clients dazu da sind.
Schätze mal das hilft dir nicht weiter.
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
29.11.2018, 06:30
Beitrag #5
RE: ESP32 Deepsleep und FRITZ!Box 7590 WiFi probleme.
(29.11.2018 01:58)Bitklopfer schrieb:  Moin,
ich ziehe hier gerade auch einen ESP32 hoch den ich sowohl an einem Fritzchen 7590 oder einem Cisco-AP anmelden kann. Ziel ist es auch Daten von einem Bosch Sensor an eine DB zu liefern.
Als ich das gelesen habe mit dem Connect Problem zu Fritzchen habe ich mich erinnert das ich dieser Tage beim testen des Sketches öfters Connect Probleme zu Fritzchen im Monitor gesehen habe. Also habe ich eben mal zum Cisco-AP und wieder zurück zu Fritzchen gewechselt und dann jeweils öfters per Hardware Reset den ESP neu gestartet und geschaut ob er sich sofort im WLAN anmeldet. Und siehe da, egal ob Cisco oder Fritzi, hat er sich beim ersten mal sofort angemeldet und NTP Daten gezogen. Wohlgemerkt bei mir wird der ESP nie schlafen geschickt.
Die 5GHz Sache ist bei mir auch abgeschaltet - einfach weil keine Clients dazu da sind.
Schätze mal das hilft dir nicht weiter.
lgbk

Hm. Ja meine Sonoffs und Shellys, die auch nicht schlafen, sind problemlos mit meinem Fritz Wlan verbunden.

Seit ich gestern den Post gemacht habe, läuft einer meiner ESPs problemlos an meinem TP-Link WLan. Ein anderer in meinem Fritz Wlan meldet sich wieder überhaupt nicht..

Was hast du alles an deiner FB eingestellt?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
29.11.2018, 08:23 (Dieser Beitrag wurde zuletzt bearbeitet: 29.11.2018 10:21 von Bitklopfer.)
Beitrag #6
RE: ESP32 Deepsleep und FRITZ!Box 7590 WiFi probleme.
(29.11.2018 06:30)MeisterQ schrieb:  .....
Hm. Ja meine Sonoffs und Shellys, die auch nicht schlafen, sind problemlos mit meinem Fritz Wlan verbunden.

Seit ich gestern den Post gemacht habe, läuft einer meiner ESPs problemlos an meinem TP-Link WLan. Ein anderer in meinem Fritz Wlan meldet sich wieder überhaupt nicht..

Was hast du alles an deiner FB eingestellt?

Moin,
nun was das WLAN bzw. die ESP's angeht so habe ich denen unter dem Punkt
Heimnetz - Netzwerk und dann den ESP "bearbeiten" jeweils eine fixe IP vergeben sprich das Häkchen bei "Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen" gesetzt nachdem ich dem ESP eine IP außerhalbs vom DHCP Adress-Raum gegeben habe. Somit erkennt Fritzchen den ESP an der MAC Adresse und weist ihm immer die gleiche IP zu.
Das Häkchen bei "Selbstständige Portfreigaben für dieses Gerät erlauben." ist nicht gesetzt und mehr kann man da eh nicht einstellen... doch ja den Name'n habe ich auch noch selber vergeben was dann die Identifikation in der IDE erleichtert... aber dazu muß man diesen Namen auch im Sketch deklarieren.
Des weiteren nutze ich Fritzchen noch als NTP Server für den ESP. Das heißt wenn der ESP32 einen Reset bekommt bezieht er erst mal die Zeit von Fritzchen und danach dann alle 10 Minuten.


Nachtrag:
Habe deinen Sketch mal bei mir auf den Lolin32 geladen nachdem ich das was es bei mir nicht gibt auskommentiert habe und dann kommt beim übersetzen diese Warnung bei mir an:
Zitat:C:\Users\....\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.0/tools/sdk/include/esp32/esp_deep_sleep.h:26:2: warning: #warning esp_deep_sleep.h will be deprecated in the next release. Use esp_sleep.h instead. [-Wcpp]

#warning esp_deep_sleep.h will be deprecated in the next release. Use esp_sleep.h instead.

^

des weiteren scheint auch kein Connect zum AP zustande zu kommen... weder Fritzi noch Cisco.
Dann ist mir aufgefallen das du diesen Block drin hast:
Code:
IPAddress ip(192, 168, x, y);                   // IP mit der sich der ESP in das Netzwerk verbinden soll
IPAddress gateway(192, 168, x, 1);                // Gateway des Netzwerks
IPAddress subnet(255, 255, 255, 0);               // Subnetmask
den ich bislang nicht drin hatte...sollte aber auch nicht stören.

dafür fehlt bei mir dann diese Zeile:
Code:
WiFiClient espClient;

als ich dann noch die ganzen Sleep Anweisungen rauskommentiert hatte kamen auch die Ausgaben der Werte auf den Monitor... aber RSSI mit 0 wobei da eigentlich ein Wert von -60 bis -70 zu erwarten wäre.

Also irgendwie scheint es da grundsätzlich mehrere Wege nach Rom zu geben.

lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
29.11.2018, 08:35
Beitrag #7
RE: ESP32 Deepsleep und FRITZ!Box 7590 WiFi probleme.
Hallo,

ich weiß jetzt nicht, ob es noch aktuell ist: es gab einen Bug beim ESP32, daß das Passwort entweder leer sein konnte oder mindestens 8 Zeichen haben mußte.

Gruß aus Berlin
Michael
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
29.11.2018, 09:34
Beitrag #8
RE: ESP32 Deepsleep und FRITZ!Box 7590 WiFi probleme.
(29.11.2018 08:23)Bitklopfer schrieb:  
(29.11.2018 06:30)MeisterQ schrieb:  .....
Hm. Ja meine Sonoffs und Shellys, die auch nicht schlafen, sind problemlos mit meinem Fritz Wlan verbunden.

Seit ich gestern den Post gemacht habe, läuft einer meiner ESPs problemlos an meinem TP-Link WLan. Ein anderer in meinem Fritz Wlan meldet sich wieder überhaupt nicht..

Was hast du alles an deiner FB eingestellt?

Moin,
nun was das WLAN bzw. die ESP's angeht so habe ich denen unter dem Punkt
Heimnetz - Netzwerk und dann den ESP "bearbeiten" jeweils eine fixe IP vergeben sprich das Häkchen bei "Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen" gesetzt nachdem ich dem ESP eine IP außerhalbs vom DHCP Adress-Raum gegeben habe. Somit erkennt Fritzchen den ESP an der MAC Adresse und weist ihm immer die gleiche IP zu.
Das Häkchen bei "Selbstständige Portfreigaben für dieses Gerät erlauben." ist nicht gesetzt und mehr kann man da eh nicht einstellen... doch ja den Name'n habe ich auch noch selber vergeben was dann die Identifikation in der IDE erleichtert... aber dazu muß man diesen Namen auch im Sketch deklarieren.
Des weiteren nutze ich Fritzchen noch als NTP Server für den ESP. Das heißt wenn der ESP32 einen Reset bekommt bezieht er erst mal die Zeit von Fritzchen und danach dann alle 10 Minuten.
lgbk

Gut. Meine ESPs haben direkt eine feste IP im Sketch eingestellt.
Ansonsten scheint mir alles genau wie bei dir eingestellt zu sein.

Aber deine ESPs sind permanent aktiv, ohne Deepsleep?


(29.11.2018 08:35)amithlon schrieb:  Hallo,

ich weiß jetzt nicht, ob es noch aktuell ist: es gab einen Bug beim ESP32, daß das Passwort entweder leer sein konnte oder mindestens 8 Zeichen haben mußte.

Gruß aus Berlin
Michael

Mein Passwort besteht aus 7 Buchstaben und 4 Zahlen. Das TP-Link WLan hat über 10 Buchstaben.

Außerdem sind ja meine Nicht-Schlafenden ESPs permanent problemlos im WLan verbunden. Nur die, die sich alle 10 Minuten nur einmal melden sind das problem.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  ESP32 Analog Wert am Spannungsteiler ungenau vs Arduino Analog Wert Nick2245 1 218 16.06.2019 09:01
Letzter Beitrag: Fips
  ESP32: U8x8 und SoftwareSerial gleichzeitig markusw129 2 217 15.06.2019 12:06
Letzter Beitrag: markusw129
  ESP32 Webserver download mehrerer Dateien Eisvogel 1 236 11.06.2019 10:42
Letzter Beitrag: Tommy56
  Apple II Projekt Umzug von uno -> ESP32 / ESP8266 stevie72 22 1.509 30.05.2019 08:30
Letzter Beitrag: amithlon
  Boot-Schleife beim ESP32 - wie Lösbar? tho.schmidt 9 775 28.05.2019 20:24
Letzter Beitrag: Tommy56
Question ESP32 Daten per Bluetooth auf AppInventor App anzeigen mamo1234 2 478 23.05.2019 14:10
Letzter Beitrag: mamo1234
  ESP32 verbindet nicht mehr mit meiner Fritz Box spok1 12 1.072 21.05.2019 11:22
Letzter Beitrag: Hilgi
  MySQL mit ESP32 ohne PHP Waschbärbauch 8 1.329 02.05.2019 16:39
Letzter Beitrag: Tommy56
  Deepsleep und Powerbank sowerum 19 4.457 01.05.2019 12:09
Letzter Beitrag: Markus N.
  ESP32 mittels Keypad-Interrupt aus Deepsleep aufwachen lassen jalu4601 1 597 19.04.2019 20:13
Letzter Beitrag: jalu4601

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste