Discuss here different C compiler set ups, and compiling executables for the ESP8266

User avatar
By noop
#2500 The flash upload failed before on Nov 3 repo, and remains nonfunctional as of Nov 10.
:(

These detailed pics may help identify any hardware differences.
problem_esp8266ex_module.jpg
You do not have the required permissions to view the files attached to this post.
User avatar
By mcgr3g0r
#2691 HI,

I have set buid enviroment as described in this post. After the build I have flashed 0x00000.bin and 0x40000.bin to the appropriate flash regions.
The esp8266 module remained dead after reboot. Futher investigation showed, that the flasher wipes entire flash, so flashing 0x00000.bin and 0x40000.bin
is simply not enough. I've managed to merge 0x00000.bin, 0x40000.bin, esp_init_data_default.bin, filling the blank gaps between memory regions. The result
file size was 520192 bytes as for example the firmware file "v0.9.2.2 AT Firmware.bin" - after flashing the merged file, the module booted up and seem to work properly.


Best Regards,
McGr3g0r
User avatar
By clinkme
#2704
mcgr3g0r wrote:HI,
I've managed to merge 0x00000.bin, 0x40000.bin, esp_init_data_default.bin, filling the blank gaps between memory regions.


Would you like to report the exact command's sequences?

There are some other files in SDK bin folder, like blank.bin and boot_v1.1.bin.
We need include them also?
User avatar
By mcgr3g0r
#2709 Hello guys,

I've wrote a basic bash script that merges 0x00000.bin, 0x40000.bin, esp_init_data_default.bin renamed to 0x7C000_esp_init_data_default.bin, blank.bin renamed to 0x7E000_blank.bin.

My folder before script executions looks like this:

Code: Select all0x00000.bin
0x40000.bin
0x7C000_esp_init_data_default.bin
0x7E000_blank.bin
firmware.sh



and after


Code: Select all0x00000.bin
0x08280_blank.bin
0x40000.bin
0x64590_blank.bin
0x7C000_esp_init_data_default.bin
0x7C080_blank.bin
0x7E000_blank.bin
firmware.sh
out.fw



Since the esptool wipes the entire flash before flashing (not only the region for specific file) it's better to flash one big file instead.

The out.fw file is a firmware binary ready to flash with (mind the paths):

Code: Select all/opt/espressif/flashtool/esptool/esptool.py --port /dev/ttyUSB0 write_flash 0x00000 ./out.fw


Please see the attachement:

firmware.sh.gz
.

EDIT:
If you have more binaries in your SDK like the mentioned "boot" and your output binaries does not overwrite this file memory region but are located after that one, then
I think you will have to merge it with aprioperiate offsets. For example boot adress is 0x00000, your output is probably 0x01000 and so on ...


Best Regards,
McGr3g0r
You do not have the required permissions to view the files attached to this post.