Skip to content

ESP8266_AT_Bin_V1.7 Not Working on ESP-WROOM-02 #168

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Quaqmire opened this issue Aug 29, 2018 · 24 comments
Closed

ESP8266_AT_Bin_V1.7 Not Working on ESP-WROOM-02 #168

Quaqmire opened this issue Aug 29, 2018 · 24 comments

Comments

@Quaqmire
Copy link

I cannot get the AT V1.7 binaries to work on my ESP-WROOM-02 (4MB version).

I followed the notes in the README.md file for the 32Mbit-C1 and used the flash loader tool to download:
boot_v1.2.bin to 0x00000
user1.2048.new.5.bin to 0x01000
esp_init_data_default_v05.bin to 0x3fc000
blank.bin to 0xfe000 & 0x3fe000

I have the download tool set for a 26MHz crystal, 40MHz SPI speed, QIO SPIO Mode, and a flash size of 32Mbit-C1.

I can erase the chip, and I can download the binaries with no issue.

However, when I reset the module, it will not communicate. I get no reaction from the terminal.

After experimenting with different boot binaries (v1.6 & 1.7) and a different default init data binary (v08), I still could not get it to work.

On a hunch, I downloaded both the V1.5 and V1.62 binaries.

Using the same set up as noted above, but by replacing the links to the binary files of past versions, the module will load and work fine for both the V1.5 and V1.62.

It appears to me that there is an issue with the V1.7 binaries.

@Quaqmire
Copy link
Author

Additional info:
I also noted a discrepancy between the README.md file and Version 3.0 of the ESP8266 AT Instruction Set.

On page 3 of the ESP8266 AT Instruction Set, section 1.1.2 shows that the blank.bin should also be downloaded to 0x3fb000. This is not shown in the README.md file.

I did try adding this, but it did not correct the issue.

@Quaqmire
Copy link
Author

Sorry...one more piece of information: The Flash Download Tool is V3.6.4 if that makes any difference...

@kriegste
Copy link

SYSTEM_PARTITION_PHY_DATA_ADDR for flash map 5 is at 0x1fc000, not 0x3fc000 according to
https://github.com/espressif/ESP8266_NONOS_SDK/blob/master/examples/at/user/user_main.c

@Quaqmire
Copy link
Author

Thank you for the reply.

I tried changing the address, but it did not work.

You referenced this address for flash map 5.

I have a 4MB ESP-WROOM-02 module, so I have been using flash map 6 (32MBit-C1). I am using the incorrect flash map? *** It works for ESP8266 AT Version 1.5 & 1.62.***

For flash map 6, the address of the SYSTEM_PARTITION_PHY_DATA_ADDR is 0x3fc000 in the link you posted.

Please let me know if I should be using a different setting.

@Quaqmire
Copy link
Author

Some additional information:
When I flash the chip with the flash download tool, it lists the following in the DETECTED INFO window:
flash vendor:
A1h: FM
flash devID:
4016h
QUAD;32Mbit
crystal:
26Mhz

I just put the ESP8266 AT 1.6.2 Binaries into the module again using the 32MBit-C1 flash map, and it comes up working.

@kriegste
Copy link

The user1.2048.new.5.bin you use is for flash map 5. The problem is (I guess) that the init data partition is no longer optional in the new SDK versions and it has to be at the correct address.

You can compile a new bin for flash map 6 or try to flash your module as if it only had 16MBit (I don't know if that works...).

@Quaqmire
Copy link
Author

@kriegste - Thanks again for taking the time to reply.

You seem very knowledgeable on this, and I appreciate your taking the time to answer my novice questions.

I tried flashing it as a 16Mbit-C1, and it did not work...I have read through the ESP8266 SDK Getting Started Guide, and I see what you mean about compiling a binary for flash map 6. However, I have a few more questions if you don't mind:

  1. The ESP8266 AT Instructions (V3.0) show on page 3 to use the user1.2048.new.5.bin for both the 16Mbit-C1 and the 32Mbit-C1. Is this just incorrect?

  2. I don't see anywhere that discusses the difference between the boot bin 1.2, 1.6, and 1.7 versions...can you point me to information on this?

  3. What is the difference between esp_init_data_default_v05. bin and esp_init_data_default_v08. bin?

I am thinking that it might just be easier to order the 2MB version of this module. I really don't have a good time of compiling these binaries...I did it for the ESP32 AT, and it worked, but I had issues with the AT+CIPSEND commands not working in server mode, so I backed up and went the route of the ESP8266.

Any information you can provide is appreciated.

@kriegste
Copy link

I know most of that only by trial and error. Here is some information ("changelog"):
https://github.com/espressif/ESP8266_NONOS_SDK/commits/master/bin
(expand by clicking "...")

I always use the latest versions for my projects, i.e. boot 1.7 and init no. 8 at the moment.

@Quaqmire
Copy link
Author

@kriegste - Thanks again!

Your suggestion to use the 16Mbit mapping and addresses ended up working...but I had to use the flash map from the AT Instruction Set pdf vs. the flash information in the README.md file included with the binaries.

If it helps anyone else, I used the 16Mbit flash map on page 3 of the ESP8266 AT Instruction Set V3.0 to flash the AT V1.7 onto an ESP-WROOM-02-4M (4MB version) with the Flash Download Tool set on 16Mbit-C1 :

boot_v1.2.bin ->0x00000
user1.2048.new.5.bin ->0x01000
esp_init_data_default_v05.bin -> 0x1fc000
blank.bin -> 0xfe000
blank.bin ->0x1fe000
blank.bin ->0x1fb000

@espressif - If anyone from Espressif is monitoring this, can you please put the binaries for flashing the 4MB chips in the binary zips? Also, I think it would be helpful to make some corrections in the README files that are included with the binaries...and is the user1.2048.new.5.bin the correct file to call out on the 32Mbit-C1 flash map info on page 3 of the ESP8266 AT Instruction Set V3.0?

@devanlai
Copy link

devanlai commented Sep 1, 2018

I've been trying to flash the version 1.7 bin onto an ESP-WROOM-02 module with 16Mbit flash, and I'm seeing the following error at boot:

mismatch map 5,spi_size_map 3
system_partition_table_regist fail

I'm using the following layout, uploaded via esptool:

Address Filename
0x00000 boot_v1.7.bin
0x01000 user1.2048.new.5.bin
0xfe000 blank.bin
0x1fc000 esp_init_data_default_v08.bin
0x1fb000 blank.bin
0x1fe000 blank.bin

@Quaqmire
Copy link
Author

Quaqmire commented Sep 1, 2018

I think the problem maybe the esp_init_data_v08.bin...I used the v05 file, and it worked for me on the 4MB module.

@xcguang
Copy link
Collaborator

xcguang commented Sep 1, 2018

@kriegste
The flash map selected when you compiling must be the same as the flash map when flashing.

@kriegste
Copy link

kriegste commented Sep 1, 2018

I know that. But it seems that might be @devanlai's problem: Tell your flash tool to flash using flash map 5.

@devanlai
Copy link

devanlai commented Sep 1, 2018

I can believe that the esptool autodetect might get confused when updating from a 16Mbit flash map to a 16Mbit-C1 flash map. I'll try overriding those settings when I get back in the office.

@xcguang
Copy link
Collaborator

xcguang commented Sep 2, 2018

I think you'd better specify flash size. Like

esptool.py --port /dev/tty.SLAB_USBtoUART --baud 921600 --chip esp8266 write_flash -z --flash_mode dio --flash_freq 40m --flash_size 2MB-c1 0x0 bin/boot_v1.6.bin 0x1000 bin/upgrade/user1.2048.new.5.bin 0xfc000 bin/esp_init_data_default.bin

@devanlai
Copy link

devanlai commented Sep 4, 2018

@xcguang Specifying the flash size (2MB-c1) did the trick, thanks.

For the benefit of others, this is what my esptool parameters ended up looking like:

python esptool.py --port COM8 --baud 1000000 --chip esp8266 write_flash --flash_size 2MB-c1 0x00000 boot_v1.7.bin 0x01000 user1.2048.new.5.bin 0xfe000 blank.bin 0x1fc000 esp_init_data_default_v08.bin 0x1fb000 blank.bin 0x1fe000 blank.bin

@FayeY FayeY closed this as completed Sep 6, 2018
@EDSEngineering
Copy link

I had the same issue and came here and worked out a "quick fix". I have my ESP8266 design with the W25Q32(JVSSIQ). I had to use the following settings to make it think it was 16Bit-C1 (its what worked). Just some more detail, I my chip would boot up and spit out that "random data" then not respond to AT commands. I had it all working fine int he 1M and 4M versions but needed some other AT commands that were only available in the later verisons whic meant i needed to upgrade my flash chip.

here are the settings i used that worked with my 32Mbit flash:

C:...\ESP8266_NONOS_SDK-3.0\ESP8266_NONOS_SDK-3.0\bin\boot_v1.7.bin
0x00000
C:...\ESP8266_NONOS_SDK-3.0\ESP8266_NONOS_SDK-3.0\bin\at\1024+1024\user1.2048.new.5.bin
0x01000
C:...\ESP8266_NONOS_SDK-3.0\ESP8266_NONOS_SDK-3.0\bin\esp_init_data_default_v08.bin
0x1fc000
C:...\ESP8266_NONOS_SDK-3.0\ESP8266_NONOS_SDK-3.0\bin\blank.bin
0xfe000
C:...\ESP8266_NONOS_SDK-3.0\ESP8266_NONOS_SDK-3.0\bin\blank.bin
0x1fe000

I manually selected the 16Mbit-C1 and left the rest as autodetect.

Its always nice to find a post that actually helps!

@coisme
Copy link

coisme commented Sep 28, 2018

@Quaqmire Thanks! This worked for me with following command.

$ esptool.py -p /dev/tty.usbserial \
--chip esp8266 \
write_flash \
--flash_size 2MB-c1 \
0x00000 ./bin/boot_v1.2.bin \
0x01000 ./bin/at/1024+1024/user1.2048.new.5.bin \
0x1fc000 ./bin/esp_init_data_default_v05.bin \
0xfe000 ./bin/blank.bin \
0x1fb000 ./bin/blank.bin \
0x1fe000 ./bin/blank.bin

@kriegste - Thanks again!

Your suggestion to use the 16Mbit mapping and addresses ended up working...but I had to use the flash map from the AT Instruction Set pdf vs. the flash information in the README.md file included with the binaries.

If it helps anyone else, I used the 16Mbit flash map on page 3 of the ESP8266 AT Instruction Set V3.0 to flash the AT V1.7 onto an ESP-WROOM-02-4M (4MB version) with the Flash Download Tool set on 16Mbit-C1 :

boot_v1.2.bin ->0x00000
user1.2048.new.5.bin ->0x01000
esp_init_data_default_v05.bin -> 0x1fc000
blank.bin -> 0xfe000
blank.bin ->0x1fe000
blank.bin ->0x1fb000

@espressif - If anyone from Espressif is monitoring this, can you please put the binaries for flashing the 4MB chips in the binary zips? Also, I think it would be helpful to make some corrections in the README files that are included with the binaries...and is the user1.2048.new.5.bin the correct file to call out on the 32Mbit-C1 flash map info on page 3 of the ESP8266 AT Instruction Set V3.0?

@anudeepsekhar
Copy link

Hello guys i have followed every single instructions from this post but working and non working instructions but i still cant find a way to make my esp 01 work.. can someone help me out i have been on this for a week now.

The problem is after the download tool finish its download and i connect the esp-01 to putty i dont get any response its not even typing the at commands

@kriegste
Copy link

ESP-01 has 1MB flash or even only .5MB (the very old ones). The new AT BIN files will not work on these. It might be possible to compile new ones using another flash layout and a few tricks, mentioned here, though:
#162

@hazee007
Copy link

hazee007 commented Oct 4, 2018

@kriegste can u give tell which AT BIN version will work with them... thanks

@kriegste
Copy link

kriegste commented Oct 4, 2018

@gustavosinbandera1
Copy link

here the best solution, work for me https://unordered.org/timelines/5a0c6faccfc00000

@joshkeys19
Copy link

Huge thanks! I was also able to flash my ESP-WROOM-02 by using the settings mentioned above. Specifically:

boot_v1.7.bin ->0x00000
user1.2048.new.5.bin ->0x01000
esp_init_data_default_v08.bin -> 0x1fc000
blank.bin -> 0xfe000
blank.bin ->0x1fe000
blank.bin ->0x1fb000

16Mbit-C1

flashsettings

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests