Sonoff flashen funktioniert nicht richtig ESP8266

Begonnen von blubbla, 03 Februar 2017, 23:21:48

Vorheriges Thema - Nächstes Thema

blubbla

Hallo,

ich habe ein Problem. Ich bekomme die Sonoff Module nicht geflasht. Während des Flashvorgangs kommt es willkürlich zu folgender Fehlermeldung:

read 0, requested 1 warning: espcomm_send_command: didn't receive command response warning: espcomm_send_command(FLASH_DOWNLOAD_DATA) failed warning: espcomm_send_command: wrong direction/command: 0x01 0x03, expected 0x01  0x04

Kann mir bitte jemand sagen was hier schiefgelaufen ist, und wie ich das Problem beheben kann.

Ich habe die 3,3V Spannungsversorgung zusätzlich von einem Netzteil zugeführt, falls der FTDI nicht genung Strom liefern kann.
Ebenfalls habe ich das Flashen auf 2 PC versucht.
Jedoch beides ohne Erfolg.

Vielen Dank
blubbla


Reinhart

das sieht so aus als würde er während des Flashvorgangs die serielle Verbindung verlieren. Da du ja schon die Versorgung extern durchgeführt hast, kann eigentlich nur der FTDI Adapter oder das Modul selbst schuld daran sein.

Ich habe öfters das Problem, das ich einen anderen USB Anschluß am PC nehmen muss, weil nicht alle für höhere Stromentnahme geeignet sind und die Sonoff Module benötigen unterschiedliche Leistung.

Gute Erfahrung habe ich mit dem Flasher (esptool.exe) gemacht, der gelegentlich bei ESPEasy beigepackt ist. Der flasht auch hartnäckige Fälle.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

blubbla

Den FTDI-Adapter habe ich neu gekauft. Wie wahrscheinlich ist es das der nicht in Ordnung ist?
Ich habe die Stromaufnahme gemessen. Die liegt bei ca. 40mA. Ist für mich kein Problem, da ich ohne weiteres 200mA zur Verfügung stelle.
Mit dem ESPeasy Flasher habe ich das flashen auch schon versucht, hier bekomme ich genau dieser Fehlermeldungen.
Ich habe es aber auch schon geschafft das der Fehlerfrei durchgelaufen ist und ich trotzdem kein Wlan Access Point gefunden habe.

Ich habe jetzt auch mit der Arduino Umgebung einfachen Code geflasht. Dies hat mal funktioniert und mal wieder nicht. So habe ich es geschafft die GPIO 13 LED zum blinken zu bekommen.
Ganz kurios wurde es als ich ein folgenden Code geflasht habe:
/*********
  Rui Santos
  Complete project details at http://randomnerdtutorials.com 
*********/

#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>

MDNSResponder mdns;

// Replace with your network credentials
const char* ssid = "YOUR_SSID";
const char* password = "YOUR_PASSWORD";

ESP8266WebServer server(80);

String webPage = "";

int gpio13Led = 13;
int gpio12Relay = 12;

void setup(void){
  webPage += "<h1>SONOFF Web Server</h1><p><a href=\"on\"><button>ON</button></a>&nbsp;<a href=\"off\"><button>OFF</button></a></p>"; 
  // preparing GPIOs
  pinMode(gpio13Led, OUTPUT);
  digitalWrite(gpio13Led, HIGH);
 
  pinMode(gpio12Relay, OUTPUT);
  digitalWrite(gpio12Relay, HIGH);

  Serial.begin(115200);
  delay(5000);
  WiFi.begin(ssid, password);
  Serial.println("");

  // Wait for connection
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.print("Connected to ");
  Serial.println(ssid);
  Serial.print("IP address: ");
  Serial.println(WiFi.localIP());
 
  if (mdns.begin("esp8266", WiFi.localIP())) {
    Serial.println("MDNS responder started");
  }
 
  server.on("/", [](){
    server.send(200, "text/html", webPage);
  });
  server.on("/on", [](){
    server.send(200, "text/html", webPage);
    digitalWrite(gpio13Led, LOW);
    digitalWrite(gpio12Relay, HIGH);
    delay(1000);
  });
  server.on("/off", [](){
    server.send(200, "text/html", webPage);
    digitalWrite(gpio13Led, HIGH);
    digitalWrite(gpio12Relay, LOW);
    delay(1000);
  });
  server.begin();
  Serial.println("HTTP server started");
}

void loop(void){
  server.handleClient();
}


Es wurde jedoch kein Access Point mit dem Namen YOUR_SSID geöffnent sondern mit ESP9730B1. Ich gehe davon aus das der Name vom vorherigen Versuch das ESPeasy Build 146M zu flashen kommt. Der Access Point war auch nicht verschlüsselt, sondern offen. Es war aber nicht möglich sich mit dem Wlan zu verbinden.

Ich bin wirklich mit meinem Latein am ende.

Reinhart

Zitat von: blubbla am 05 Februar 2017, 14:20:18
Es wurde jedoch kein Access Point mit dem Namen YOUR_SSID geöffnent sondern mit ESP9730B1. Ich gehe davon aus das der Name vom vorherigen Versuch das ESPeasy Build 146M zu flashen kommt. Der Access Point war auch nicht verschlüsselt, sondern offen. Es war aber nicht möglich sich mit dem Wlan zu verbinden.

das ist ja korrekt, wenn sich der AP aktiviert nennt er sich ESP9730B1 und er muss offen sein! Wenn du nun mit dem Browser 192.168.4.1 verbindest, dann sollte du dich einloggen können. Wenn das flashen nicht geklappt hätte, dann wäre auch kein AP da. Ich vergebe mir dazu immer lokal am Laptop die IP 192.168.4.10 und verbinde dann mit dem Laptop.

Aber eigentlich hättest du das ausfüllen sollen und deine Daten einsetzen (SSID vom Wlan und Passwort), dann verbindet er sofort mit dem Wlan!

const char* ssid = "YOUR_SSID";
const char* password = "YOUR_PASSWORD";


LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

blubbla

Super danke für die Hilfe.
Ich habe die Module nun geflasht bekommen.