WLAN Verbindung mit ESP-01 an Fritzbox 7490

Mehr
14 Jan 2019 15:13 #545 von wpwsaw
WLAN Verbindung mit ESP-01 an Fritzbox 7490
Hallo,

keiner eine neue Idee??

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
26 Jan 2019 11:04 #551 von RedBaron
WLAN Verbindung mit ESP-01 an Fritzbox 7490
Hallo wpwsaw,

poste doch einmal das Stück code, mit dem die Verbindung aufgebaut werden soll, einschließlich der dazu gehörigen Funktionen und Makros, wenn sie nicht im Standard sind.

Dann macht es vielleicht Sinn, zu Beginn des Sketches die alte konfiguration zu löschen. Etwa so:
ESP.eraseConfig();
WiFi.mode(WIFI_OFF);
WiFi.setAutoConnect(false);
WiFi.setAutoReconnect(false);
delay(500);

Viele Grüße
Ulli

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
26 Jan 2019 11:49 #553 von wpwsaw
WLAN Verbindung mit ESP-01 an Fritzbox 7490
Hallo,

hier mal das Programmchen


###################################################################################################

// CALLER



// Include Dateien
#include <ESP8266WiFi.h>
#include <tr064.h>

// Definitionen
#define TASTER 0
#define LED 2


// Router WLAN Zugang
const char* ssid = "SSID";
const char* password = "PASSWORT";

// Router Zugang Username Kennwort
const char* fuser = "TuerKlingel";
const char* fpass = "PASSWORT2";

// IP Adresse Router
const char* IP = "192.168.178.1";

// API Port Router muss 49000 für alle TR-064 Geräte
const int PORT = 49000;

// TR-064 connection
TR064 connection(PORT, IP, fuser, fpass);


void setup() {

Serial.begin(115200);
delay(10);

IPAddress ip(192, 168, 178, 2);
IPAddress gateway(192, 168, 178, 1);
IPAddress subnet(255, 255, 255, 0);
IPAddress dns(192, 168, 178, 1);
WiFi.config(ip, dns, gateway, subnet);



// WiFi aktivieren
WiFi.disconnect();
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED) {
delay(1000);
}
// Verbindung protokollieren
Serial.println("WiFi connected");
Serial.println(WiFi.localIP() );

// LED und Taster
pinMode(LED, OUTPUT);
digitalWrite(LED, HIGH);

// Wartezeit
delay(5000);
digitalWrite(LED, LOW);

// Taster aktivieren
pinMode(TASTER, INPUT_PULLUP); // Port as input
digitalWrite(LED, HIGH);
}


void loop() {

int taste = digitalRead(TASTER);
if (digitalRead(TASTER)== LOW)
{
Serial.println();
Serial.printf("Taste gedrückt");
digitalWrite(LED, LOW);

// Telefon 3x klingeln
callWahlhilfe();
delay (500);
callWahlhilfe();
delay(500);
callWahlhilfe();
delay(2000);
}
else
{
Serial.println();
Serial.printf("Taste nicht gedrückt");
digitalWrite(LED, HIGH);
delay(500);
}
}

// Unterprogramm für Telefon klingeln
int callWahlhilfe() {

// Wenn WLAN weg Versuch Neuverbindung
if ((WiFi.status() != WL_CONNECTED)) {
WiFi.begin(ssid, password);
while ((WiFi.status() != WL_CONNECTED)) {
delay(100);
}
}

// TR-064 Bibliothek
// (Re-) Initialize the TR-064 library - it is done every time, as maybe the connection has lost before
connection.init();

String params[][2] = {{"NewX_AVM-DE_PhoneNumber", "**701"}};//**701 the short dial number which contains the target number(s)
String req[][2] = {{}};

connection.action("urn:dslforum-org:service:X_VoIP:1", "X_AVM-DE_DialNumber", params, 1, req, 0);
delay (4000);//ca 2sek.
connection.action("urn:dslforum-org:service:X_VoIP:1", "X_AVM-DE_DialHangup");
}

######################################################################################################

es ist eine zusammengewürfelte Version aus anderen Programmen. Wie schon beschrieben, verbindet sich das Modul mit der Fritzbox nur wenn das SSID sichtbar ist.

Lade ich aber das oben genannte Programm "ESP_EASY" in das selbe Modul, verbindet sich das Modul immer mit der Fritzbox, ohne Probleme.

Gruß
wpw

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
26 Jan 2019 13:35 #554 von RedBaron
WLAN Verbindung mit ESP-01 an Fritzbox 7490
Eigenlich hatte ich schon eine Antwort geschrieben. Ist aber irgendwie nicht angekommen :-((

Ich habe eine Fritzbox 6490. Damit hatte ich am Anfang auch immer Probleme. War zum Verzweifeln! Dann auf einmal lief alles so, wie es sollte, ohne dass ich genau weiß, was ich gemacht habe.

Versuche wirklich einmal zuerst die bestehende WiFi-Konfiguration zu löschen. Den Code hatte ich gepostet. Das laden eines neuen Programms löscht diese Konfiguration nicht. Wer weiß, wer sich da wie verewigt hat. Ggf. das Modul wiederholt starten. Der ESP macht schon einiges bevor er setup() aufruft. Und das dann zunächst mit der alten Konfiguration.

Dann versuche es ohne WiFi.config(...). Vielleicht liegt das Problem bei der festen IP. Lass dir vom Router per DNS eine Adresse zuweisen und benutze zunächst die. Das geschieht intern sowieso. Danach erst einigen sich der ESP und der Router auf eine neu IP. Die Kommunikation bei dieser Einigung erfolgt über die DNS-vergebene IP.

Dann kannst du einmal schauen, wie ich das Problem angegegangen bin. Hat ziemlich lange gedauert, bis ich das stabil hinbekommen habe: ullisroboterseite.de/esp8266-UrsWiFi.html . Der Source-Code ist in der ZIP-Datei enthalten.

Dann der Code aus ESP_EASY:
WiFi.persistent(false); // Do not use SDK storage of SSID/WPA parameters
WiFi.setAutoReconnect(false);
setWifiMode(WIFI_OFF);

.... \\ diverse Methoden-Aufrufe tiefer

switch (wifi_connect_attempt) {
case 0:
if (lastBSSID[0] == 0)
WiFi.begin(ssid, passphrase);
else
WiFi.begin(ssid, passphrase, last_channel, &lastBSSID[0]);
break;
default:
WiFi.begin(ssid, passphrase);

Das ESP_EASY ist leider ziemlich unübersichtlich. Hat lange gedauer, bis ich die passenden Stellen gefunde habe.

Die Fummeln da irgenetwas mit einer persistierten BSSID. Das kann sein, das die diese BSSID noch aus vorhergehenden Verbindungsversuchen gespeichert haben. Ansonsten benutzen die auch den Standard-Aufruf zum Verbinden.

Viel Erfolg!
Ulli

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
26 Jan 2019 15:48 #555 von wpwsaw
WLAN Verbindung mit ESP-01 an Fritzbox 7490
Hallo Ulli,

danke für die Antwort. Und dein Modul läuft an einer Fritzbox mit versteckter SSID?

ich werde deine Tips mal ausprobieren. In den Quelcode von ESP_Easy hatte ich auch schon herum geschnüffelt, mit der gleichen Auffassung - sehr unübersichtlich - . Ist wohl Absicht.

Vielen Dank erst mal. Leider muss ich mich jetzt um meinen LKW kümmern und den Motor auseinander nehmen. Ich hoffe, es wird jetzt ein bisschen wärmer.

Dann habe ich wieder Zeit für Elektronik.

Gruß und Danke
wpw

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
26 Jan 2019 20:46 #556 von RedBaron
WLAN Verbindung mit ESP-01 an Fritzbox 7490
Nein, keine versteckte SSID. Ich habe nachvollziehbar gelesen, dass das nicht viel bringen soll. Ich befürchte, ich handle mir dann auch noch weitere Probleme ein.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Powered by Kunena Forum