Forum: Mikrocontroller und Digitale Elektronik ESP8266 upload Geschwindigkeit


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Holger74 (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ich habe ein ESP8266-Modul, das sich nur mit 9600Baud bespielen lässt. 
Wenn ich eine höhere Geschwindigkeit in der Arduino-IDE einstelle, 
bleibt die Übertragung trotzdem so langsam. Gibt es eine Möglichkeit die 
UpLoad-Geschwindigkeit des Moduls zu erhöhen?

von Heinz (Gast)


Bewertung
0 lesenswert
nicht lesenswert
9600Baud ist schon arg langsam.
Zu einem NodeMCU mit ESP8266-12E läuft es bei mir aus der Arduino-IDE 
heraus mit 921600baud.
Für die USB Anbindung ist bei meinem NodeMCU ein CP2102 verbaut.
Kontrolliere mal den für deinen USB-Chip installierten Treiber!

von Keller (Gast)


Bewertung
0 lesenswert
nicht lesenswert
ESP ist glücklicherweise programmierbar ;-)

Dass auch beim kleinsten Programmen der Chip komplett neu
geladen wird sollte nach fast 5 Jahren ESP langsam klar
sein.

von Michael U. (amiga)


Bewertung
1 lesenswert
nicht lesenswert
Hallo,

mit mehr als 9600 läuft es genauso langsam, bricht aber nicht mit 
Fehlern ab?
Welches ESP-Modul?
Stromversorgung des ESP?
Welcher USB-Adapter?
Alle meine ESP lassen sich mit 921600baud flashen, egel ob FTDI, CH340 
oder CP2101 am USB.

Gruß aus Berlin
Michael

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Ich glaube, die Baudrate die man in der Arduino IDE einstellt bezieht 
sich auf die serielle Kommunikation NACH dem Firmware Upload.

Die Geschwindigkeit des Firmware Uploads ist durch die Geschwindigkeit 
des Flash Speichers begrenzt.

So aus dem Bauch heraus würde ich schätzen, dass es etwa 10 Sekunden pro 
200kB dauert.

: Bearbeitet durch User
von Oliver J. (skriptkiddy)


Bewertung
0 lesenswert
nicht lesenswert
Hier kann ich über das python-modul esptool unter windows mit CH340 oder 
cp2102 auf 1500000 Baud (1.5 MegaBaud) gehen.
1
python -m esptool -c esp8266 -p //.//COM10 -b 1500000 --after soft_reset write_flash --flash_size=detect 0 "out\wemos_display.bin"
2
   text     data      bss      dec      hex  filename
3
 247913     3568    30208   281689    44c59  out\wemos_display.elf
4
esptool.py v2.0.1
5
Connecting....
6
Chip is ESP8266
7
Uploading stub...
8
Running stub...
9
Stub running...
10
Changing baud rate to 1500000
11
Changed.
12
Configuring flash size...
13
Auto-detected Flash size: 4MB
14
Flash params set to 0x024f
15
Compressed 255632 bytes to 184970...
16
17
Writing at 0x00000000... (8 %)
18
Writing at 0x00004000... (16 %)
19
Writing at 0x00008000... (25 %)
20
Writing at 0x0000c000... (33 %)
21
Writing at 0x00010000... (41 %)
22
Writing at 0x00014000... (50 %)
23
Writing at 0x00018000... (58 %)
24
Writing at 0x0001c000... (66 %)
25
Writing at 0x00020000... (75 %)
26
Writing at 0x00024000... (83 %)
27
Writing at 0x00028000... (91 %)
28
Writing at 0x0002c000... (100 %)
29
Wrote 255632 bytes (184970 compressed) at 0x00000000 in 2.3 seconds (effective 895.4 kbit/s)...
30
Hash of data verified.
31
32
Leaving...
33
34
11:45:17 Build Finished (took 5s.167ms)

Es muss also mit Arduino auch mehr als 9600 möglich sein.

BTW: Ich würde für den ESP8266 schon nur von den Buildzeiten her was 
anderes als die ArduinoSW empfehlen:
- Platform-IO (scons-basiert) zum Beispiel.

Das Arduino-Build-System braucht schon brutal lange um einen Sketch zu 
bauen und zu flashen. Arduino baut (so wars zumindest, als ichs vor 
glaube ich ca. nem halben Jahr mal ausprobiert hab) nur auf einem Kern. 
Da ist noch Luft nach oben.

Grüße Oliver

: Bearbeitet durch User
von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
> 255632 bytes in 2.3 seconds

Hui, das ist ja schnell.

> Das Arduino-Build-System braucht schon brutal lange um einen Sketch
> zu bauen und zu flashen

Ja beim ersten mal. Solange man es nicht schließt, werden danach nur die 
geänderten Dateien compiliert.

> Arduino baut nur auf einem Kern.

Das ist in der kommenden Version 1.9 verbessert.

von A.. P. (arnonym)


Bewertung
0 lesenswert
nicht lesenswert
Stefan U. schrieb:
>> 255632 bytes in 2.3 seconds
>
> Hui, das ist ja schnell.

Es sind nur 184970 Bytes in 2,3 s. und bei 1,5 MBaud ist das doch jetzt 
nichts großartiges.

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Aber immerhin etwa 10x schneller als ich es von der Arduino IDE gewohnt 
bin.

von Holger74 (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank an Euch alle für die Hinweise und Tipps!

Normalerweise verwende ich VS Code mit platformIO, weil die ArduinoIDE 
wirklich sehr langsam übersetzt und die ganze IDE für mich einfach nicht 
benutzbar ist. Die ArduinoIDE hatte ich nur zum probieren für die 
Übertragungsgeschwindigkeit genommen.

Aber zur UploadGeschwindigkeit:
Man kann in der platformio.ini einen Punkt "upload_speed = " einfügen.
Unter Linux funktionieren die 256000baud nicht, dafür die 230400 und 
alles bis 921600.

Nur der Vollständigkeit halber:
Wie lässt sich in der ArduinoIDE die uploadGeschwindkeit verändern?

von Kolja L. (kolja82)


Bewertung
0 lesenswert
nicht lesenswert
Holger74 schrieb:
> Wie lässt sich in der ArduinoIDE die uploadGeschwindkeit verändern?

Werkzeuge -> Upload Speed

von Holger74 (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Danke. Da sucht man ewig und am Ende isset ganz einfach....

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.