ESP8266 upload Geschwindigkeit

Gast #5285652
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!
Gast #5285853
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.
#5285918
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
Gast #5286479
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.
Gast #5286574
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?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren