Forum: Mikrocontroller und Digitale Elektronik Shelly Plus 1PM (esp8266) flashen schlägt fehl


von Frank S. (docemmetbrown)


Lesenswert?

Hallo Gemeinde,
ich habe mich mal hier angemeldet, weil ich die Beiträge hier für die 
besten Problemlösungen halte. Ich habe mir vor ein paar Monaten ein 
Balkonkraftwerk installiert. Deshalb habe ich mich danach viel mit 
Raspberry, Iobroker, Shellys, Tasmota und deren noch zugehörigen Themen 
beschäftigt. Da ich nun alle meine Geräte mit Tasmota laufen habe, 
wollte ich einen Shelly mit Tasmota Firmware flashen. Im Netz ist das 
100fach beschrieben und stellt sich ganz einfach dar. dazu habe ich mir 
erst einen USB - TTL  UART  RS232 Adapter mit PL2303HX gekauft. Laut 
Anleitung die Kontakte aufgesteckt. VCC 3,3V, GND, GPIO0 mit GND, RX auf 
TX, TX auf RX. Den Adapter den ich vorher über Win10 mit einem älteren 
Treiber versehen musste. (Nur Checkerei)Mit dem PC verbunden (com5), die 
Verbindung des GPIO0 nach dem anstecken getrennt um in den Bootloader zu 
kommen. Dann den Pfad tasmota32solo1.bin und den com Port in das 
Flashprogram (ich habe mittlerweile 5 verschiedene ausprobiert) 
eingetragen. Flash geklickt Fehlermeldung
Using 'COM10' as serial port.
Connecting......................................
Unexpected error: ESP Chip Auto-Detection failed: Failed to connect to 
Espressif device: No serial data received.
For troubleshooting steps visit: 
https://docs.espressif.com/projects/esptool/en/latest/troubleshooting.html
Das ganze habe ich dann auch mit des Raspberry probiert mit dem 
esptool.py. (Checkerei-Checkerei)
es ist aber das gleiche Ergebnis. Ich denke mir , dass ich den Shelly 
nicht in den Bootloader bekomme.
Dann habe ich ein neues Kapitel begonnen. Ich habe einen FTDI Board 
Adapter gekauft und es dann damit über Win10 probiert. Hier habe ich 
dann das Phänomen, dass nach der Treiberinstallation (musste ich manuell 
machen) der Adapter erkannt wird. Sobald ich den Adapter dann aber mit 
angestecktem Shelly den ich flashen möchte an USB anstecke verabschiedet 
sich der Adapter aus Win10 mit dem bekannte USB ton der für Verbindung 
und Verbindung abbrechen zu hören ist. Was ist denn das???Ich habe 
daraufhin meine Verkabelung zu dem Shelly nochmals überprüft, stimmt 
alles. Dann mit einem Ohmmeter auf Kurzschluss getestet, kein 
Kurzschluss vorhanden???

Hat dazu jemand eine Idee?

Frank

von Christian (christiankpunkt)


Lesenswert?

tasmota32*.bin ist für ESP32 nicht für ESP8266

Lad dir die bin hier herunter:
http://ota.tasmota.com/tasmota/release/
tasmota.bin oder tasmota-DE.bin

Und du hast den Shelly hoffentlich nicht an 230V angeschlossen, wenn du 
mit dem TTL-Adapter dran bist.

Und das Tool ist auch sehr hilfreich, da kann man fast nichts falsch 
machen https://github.com/tasmota/tasmotizer

: Bearbeitet durch User
von Frank S. (docemmetbrown)


Lesenswert?

Christian schrieb:
> tasmota32*.bin ist für ESP32 nicht für ESP8266

Klar, ich habe schon auf diese Antwort gewartet. Die Bin Datei die ich 
flashen will hat den namen (steht auch im Startthreat drin) 
tasmota32solo1.bin das ist die richtige Datei für den Shelly Plus 1PM.

Christian schrieb:
> Und du hast den Shelly hoffentlich nicht an 230V angeschlossen, wenn du
> mit dem TTL-Adapter dran bist.

Nein, der Shelly war niemals an 240V, wenn ich versucht habe ihn zu 
flashen.

Christian schrieb:
> Und das Tool ist auch sehr hilfreich, da kann man fast nichts falsch
> machen https://github.com/tasmota/tasmotizer

Dieses Tool habe ich ebenfalls bereits ausprobiert. Damit geht es auch 
nicht.
Ich glaube mittlerweile, dass es am Shelly liegt. Zweite noch mögliche 
Ursache wäre die Stromversorgung.

Nun zu meiner letzten und noch nicht beantworteten Frage. Warum verliert 
der FTDI Adapter die USB Verbindung vom PC, wenn ich den Shelly 
anstecke?

Frank

von Cyblord -. (cyblord)


Lesenswert?

Frank S. schrieb:
> Nun zu meiner letzten und noch nicht beantworteten Frage. Warum verliert
> der FTDI Adapter die USB Verbindung vom PC, wenn ich den Shelly
> anstecke?

Ich würde das mal als Red Flag ansehen. Sowohl was deinen aktuellen HW 
Aufbau als auch allgemein deine Fähigkeiten in diesem Bereich an geht.

> Zweite noch mögliche Ursache wäre die Stromversorgung.
Da drängt sich mir gleich die Frage auf, warum du eine korrekte Funktion 
des Shelly (und damit auch der Stromversorgung) nicht prüfst bevor du 
lustig irgendwas flasht?

von Stephan S. (uxdx)


Lesenswert?

Frank S. schrieb:
> Laut Anleitung die Kontakte aufgesteckt.
> VCC 3,3V, GND, GPIO0 mit GND, RX auf TX, TX auf RX

Und Du hast hoffentlich am Programmierport des Shelly die 3.3 Volt des 
UART-Adapters angeschlossen und nicht 5 Volt.

von Joachim F. (dinofr)


Lesenswert?

Hallo,

Die Brücke GPIO0 mit GND muss Gesteckt bleiben beim Anstecken am USB und 
Flashen.
mit tasmotizer Funktionierte es bei mir immer mit ERASE Flash , ich habe 
immer mit BACKUP geflasht damit ich das Original behalten konnte.
mal Probieren.

von Christoph K. (backdraft007)


Lesenswert?

Frank S. schrieb:
> (Nur Checkerei)Mit dem PC verbunden (com5), die
> Verbindung des GPIO0 nach dem anstecken getrennt um in den Bootloader zu
> kommen. Dann den Pfad tasmota32solo1.bin und den com Port in das
> Flashprogram (ich habe mittlerweile 5 verschiedene ausprobiert)
> eingetragen. Flash geklickt Fehlermeldung
> Using 'COM10' as serial port.
> Connecting......................................
> Unexpected error: ESP Chip Auto-Detection failed: Failed to connect to
> Espressif device: No serial data received.

COM5 != COM10

von Helmut -. (dc3yc)


Lesenswert?

Frank S. schrieb:
> Nun zu meiner letzten und noch nicht beantworteten Frage. Warum verliert
> der FTDI Adapter die USB Verbindung vom PC, wenn ich den Shelly
> anstecke?

Weil evtl. der Shelly mehr Strom zieht, als dein USB-Port bereitstellen 
mag. Da hilft ein USB-Extender mit eigener Stromversorgung, den man 
sowieso bei solchen Experimenten immer verwenden sollte. Der kostet 
nicht viel, falls der mal hopps geht. Ein Motherboard ist teurer.
Und da ist kein ESP8266 drin, sondern ein ESP32. Also ist 
tasmota32solo1.bin schon richtig. Siehe auch hier: 
https://andersgood.de/kurz-notiert/shelly-plus-1-und-1pm-mit-tasmota-flashen 
oder hier: https://templates.blakadder.com/shelly_plus_1PM.html

Und zum Testen, welche COM-Schnittstelle grade ausgewählt wurde, 
empfiehlt sich der Windows-Gerätemanager. Wenn man den während des 
Ansteckens des USB-Adapters laufen lässt, sieht man die neue 
COM-Schnittstelle sofort.

: Bearbeitet durch User
von Frank S. (docemmetbrown)


Lesenswert?

Cyblord -. schrieb:
> Ich würde das mal als Red Flag ansehen. Sowohl was deinen aktuellen HW
> Aufbau als auch allgemein deine Fähigkeiten in diesem Bereich an geht.

Warum glaubst du, dass ich hier ein Thema aufgemacht habe. Etwa deshalb 
weil ich schon alles weis und ich dich nur testen möchte. Das möchte ich 
hier ganz deutlich klarstellen. Ich habe dieses Thema hier erstellt weil 
ich mir keinen Reim mehr drauf machen kann. Nun kann es sein, dass hier 
jemand meine Fähigkeiten in abrede stellt.

Cyblord -. schrieb:
> Da drängt sich mir gleich die Frage auf, warum du eine korrekte Funktion
> des Shelly (und damit auch der Stromversorgung) nicht prüfst bevor du
> lustig irgendwas flasht?

Ich kann das höchstens ein Multimeter dran halten, aber (wer misst misst 
Mist) kennst du doch wohl auch. Zudem gehe ich davon aus, dass die 
Spannungen O.K. sind Knackpunkt wäre die Stromaufnahme beim flashen.

Wenn du hier die Nummer Eins in Beziehung dieses Themas bist, dann 
belehre mich aus dem Fundus deiner Reichhaltigen Erfahrungen.

Dürfte doch nicht schwer sein. IQ Aufbau???

Frank

von Frank S. (docemmetbrown)


Lesenswert?

Stephan S. schrieb:
>> Laut Anleitung die Kontakte aufgesteckt.
>> VCC 3,3V, GND, GPIO0 mit GND, RX auf TX, TX auf RX
>
> Und Du hast hoffentlich am Programmierport des Shelly die 3.3 Volt des
> UART-Adapters angeschlossen und nicht 5 Volt.

Immer mit 3,3V probiert

von Frank S. (docemmetbrown)


Lesenswert?

Joachim F. schrieb:
> Hallo,
>
> Die Brücke GPIO0 mit GND muss Gesteckt bleiben beim Anstecken am USB und
> Flashen.
> mit tasmotizer Funktionierte es bei mir immer mit ERASE Flash , ich habe
> immer mit BACKUP geflasht damit ich das Original behalten konnte.
> mal Probieren.

Das habe ich zigmal mit angestecktem GPIO0 und mit abgezogenem probiert. 
Immer das gleiche Ergebniss. Mit Tasmotizer und 5 anderen Flashtools.

von Christian (christiankpunkt)


Lesenswert?

Okay, der Shelly Plus 1PM hat einen ESP32 (dein Titel ist falsch), dann 
ist tasmota32solo1.bin richtig.

Nutzt dein TTL-Adapter auch 3V-Pegel und hat er auch 3V am VCC-PIN?

Während des PowerOn muss GPIO0 Mit GND verbunden sein, damit der ESP in 
den Programm-Modus geht. Danach kann GPIO0 wieder geöffnet werden.
Und du kannst den Flashvorgang starten.

Und Tasmotizer funktioniert leider nur mit ESP8266 nicht aber mit ESP32.

Dafür aber das Tool:
https://github.com/Jason2866/ESP_Flasher/releases

von Stephan S. (uxdx)


Lesenswert?

mach mal bitte ein Photo, auf dem die beiden USB-TTL-Adapter drauf sind

von Frank S. (docemmetbrown)


Lesenswert?

Christoph K. schrieb:
> COM5 != COM10

Ich kann nur den Com Port nehmen der mir im Win10 Gerätemanager 
angezeigt wird, für das Flastool verwenden. Oder hast du andere 
Möglichkeiten.

Helmut -. schrieb:
> Weil evtl. der Shelly mehr Strom zieht, als dein USB-Port bereitstellen
> mag. Da hilft ein USB-Extender mit eigener Stromversorgung, den man
> sowieso bei solchen Experimenten immer verwenden sollte. Der kostet
> nicht viel, falls der mal hopps geht. Ein Motherboard ist teurer.
> Und da ist kein ESP8266 drin, sondern ein ESP32. Also ist
> tasmota32solo1.bin schon richtig. Siehe auch hier:
> https://andersgood.de/kurz-notiert/shelly-plus-1-und-1pm-mit-tasmota-flashen
> oder hier: https://templates.blakadder.com/shelly_plus_1PM.html

Das habe ich mir auch gedacht, dass das die Ursache sein könnte. Wissen 
tue ich es aber nicht. Zum win10 Com Port kann ich nur sagen was in der 
letzten antwort auch schon drin steht. Dateimanager Comport anzeigen 
lassen und dann im Flashtool welches auch immer eintragen. Richtig. 
Richtig.

Helmut -. schrieb:
> https://andersgood.de/kurz-notiert/shelly-plus-1-und-1pm-mit-tasmota-flashen
> oder hier: https://templates.blakadder.com/shelly_plus_1PM.html

Die Anleitung von Andersgood war meine erste Informationsquelle. Nur 
leider hat das so nicht funktioniert. Die andere Möglichkeit von 
Blackadder funktioniert hervorragend (getestet). Aber ich möchte das es 
auf die alt hergebrachte Weise funktioniert.

Christian schrieb:
> Okay, der Shelly Plus 1PM hat einen ESP32 (dein Titel ist falsch), dann
> ist tasmota32solo1.bin richtig.
>
> Nutzt dein TTL-Adapter auch 3V-Pegel und hat er auch 3V am VCC-PIN?
>
> Während des PowerOn muss GPIO0 Mit GND verbunden sein, damit der ESP in
> den Programm-Modus geht. Danach kann GPIO0 wieder geöffnet werden.
> Und du kannst den Flashvorgang starten.
>
> Und Tasmotizer funktioniert leider nur mit ESP8266 nicht aber mit ESP32.
>
> Dafür aber das Tool:
> https://github.com/Jason2866/ESP_Flasher/releases

Beide TTL Adapter haben einen 3,3V Pin, So habe ich es auch probiert. 
GPIO0 bei Power on mit GND verbunden und dann wieder geöffnet. Nichts 
als Fehlschläge trotz 100% igem halten an die Anleitung. Das Tool was in 
dem Link von Github drin ist habe ich auch minestens 20x probiert. 
Wieder nichts.
Den ganzen Hack dann auch unter Raspberry versucht. Viel lernen, 
installieren, lernen mit der Komandozeile unter Linux umzugehen. 
Befehlsstrigs für epstoo.py probiert. Immer das gleiche. Schlauer bin 
ich schon geworden, das muss ich zugeben. Kann ja nicht schaden. Aber 
funktioniert hat es noch nicht.
Da ich nun den Shelly Plus 1PM mit der Blackadder Methode geflasht habe, 
werde ich noch einen Shelly Plus 1PM kaufen und versuchen den mit Hilfe 
eines aktiven USB Hubs zu flashen.

Mal sehen ob das funktioniert. Ich kann den, den ich mit Blackadder 
Methode geflasht habe hernehmen und versuchen nochmal die original 
Shelly Firmware zu flashen.

Frank

von Frank S. (docemmetbrown)


Angehängte Dateien:

Lesenswert?

Foto

von Helmut -. (dc3yc)


Lesenswert?

Das sind wahrscheinlich genau die gefälschten FTDI-Chips, die Windows 
(bzw der Treiber) nicht mehr mag und deswegen der Abschaltton kommt. 
Dafür brauchst du einen gepatchten Treiber.

von Frank S. (docemmetbrown)


Lesenswert?

Helmut -. schrieb:
> Das sind wahrscheinlich genau die gefälschten FTDI-Chips, die Windows
> (bzw der Treiber) nicht mehr mag und deswegen der Abschaltton kommt.
> Dafür brauchst du einen gepatchten Treiber.

Wie schon im Thema erklärt musste der Treiber für den PL2303HX win10 
genau ausgesucht werden. Man musste da einen älteren Treiber nehmen. 
Allerdings hat das ja funktioniert und der Adapter mit dem PL2303HX war 
im Dateimanager als Comport wählbar. Dieser fiel auch nicht aus sobald 
ich den Shelly angesteckt habe.

Der FTDI Adapter hat den original FTDI Chip. Den musste ich allerdings 
auch unter win10 manuell installieren. Danach war der auch mit Comport 
vorhanden. Der scheint den Treiber nicht mehr zu mögen und schaltet dann 
ab wenn ich den Shelly anstecke?? Und wenn der Shelly nicht angesteckt 
ist mag er den Treiber? Höschst unwahrscheinlich.
Da kann ich mir eher vorstellen, dass wie schon Helmut schrieb, 
möglicherweise zuviel Strom gezogen wird und deshalb der Port 
abgeschaltet wird. Allerdings habe ich gelesen, dass Windows dann eine 
Fehlermeldung ausgibt. Die bleibt allerdings aus.

Frank

von Stephan S. (uxdx)


Lesenswert?

flashe mal mit esptool am Raspi, da fällt die ganze Herumzickerei mit 
den Treibern weg, Raspbian (Linux) hat die ganzen Treiber im Kernel. 
esptool gibt es bei Raspbian als Anwendung
1
sudo apt update
2
sudo apt install esptool
Und schau nach ob der User (hier:pi) in der Gruppe dialout steht, sonst 
kommt der nicht an die Schnittstellen /dev/ttyUSB0 oder /dev/ttyACM0 
ran, ggf
1
sudo usermod -aG dialout pi

: Bearbeitet durch User
von Frank S. (docemmetbrown)


Lesenswert?

Stephan S. schrieb:
> flashe mal mit esptool am Raspi, da fällt die ganze Herumzickerei mit
> den Treibern weg, Raspbian (Linux) hat die ganzen Treiber im Kernel.
> esptool gibt es bei Raspbian als Anwendung

Habe ich alles schon probiert. War für einen Windows User der mal vor 20 
Jahren mit einer Komandozeile gearbeitet hat nicht grade einfach ist. 
Zumal ich von der Dateistruktur auch keine Ahnung hatte.

Aber wie gesagt, es kam die gleiche Fehlermeldung.

Sobald ich einen neuen Shelly und einen aktiven USB Hub habe melde ich 
mich hier nochmal. Den jetzigen habe ich nun mit der Drag und Drop 
Methode geflasht und der bleibt jetzt so.

Frank

von Stephan S. (uxdx)


Lesenswert?

Frank S. schrieb:
> Habe ich alles schon probiert. War für einen Windows User der mal vor 20
> Jahren mit einer Komandozeile gearbeitet hat nicht grade einfach ist.
> Zumal ich von der Dateistruktur auch keine Ahnung hatte.

Und erscheint der TTL-Adapter als /dev/ttyUSB0 bzw /dev/ttyACM0 ?

Falls nicht, dann liegt da der Hase im Pfeffer

von Frank S. (docemmetbrown)


Lesenswert?

Stephan S. schrieb:
> Und erscheint der TTL-Adapter als /dev/ttyUSB0 bzw /dev/ttyACM0 ?
>
> Falls nicht, dann liegt da der Hase im Pfeffer

Sorry das ich jetzt erst schreibe. Ich war diese Woche nicht zu Hause. 
Ja, ich habe die ganze Prozedur, das installieren der nötigen Pakete um 
mit dem esptool.py zu flashen aus dem Internet zusammengesucht. Und dann 
über Youtube die nötigen Infos bekommen wie das alles sein muss.
Der Adapter war zu erreichen.

Ich denke es liegt an der Stromversorgung des Shelly während des 
flashens.
Ich brauche da wohl einen aktiven USB Hub.
Bei Gelegenheit werde ich das nochmal probieren.

Frank

von Joachim B. (jar)


Lesenswert?

Frank S. schrieb:
> Ich denke es liegt an der Stromversorgung des Shelly während des
> flashens.

Eisenjumperkabel auf Steckbrett?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.