My ESP-12F does not work with 1v95 and latest master

Posted on
of 2
/ 2
  • while it seems it works good with 1v94. It looks like 1v95 is too big and so writes wifi data to area with its code.

    I have just bought a few ESP8266 boards and try to use them the same way as Puck.js (I have a few)
    If I use 1v94 (for 4 Mb boards), it works.
    If I use 1v95 or latest file in ...../master, it works too but until poweroff. It works also after turned on (not sure about every time), but only if no wifi config is saved.
    If I call my boards stops working after power off, there are many unreadable symbols on COM port, and after reset to boot mode verify_flash shows that area of espruino_esp8266_user1 is broken.
    It looks like it writes wifi data to area with code.
    By the way, it is impossible to upgrade 1v94 to 1v95 via WIFI - says "Error flashing espruino_esp8266_user2.bin: firmware image too large"

  • which files did you use ? the _4mb version does strange things for me too. The basic package (without _4mb) works better on my esp8266 4mb.

  • I used _4mb version. I did not know if another one works with 4Mb boards, thank you. It is my first attempt to use ESP8266. In any case, 1v94 looks to be enough for my current goal - to let my children to control 8212B LED string using Blockly.

  • @MaBe

    Have you noticed that the 1.95 bin is any larger than the 1.94?

    I'm wondering if the checks for sizes are not quite right and the current images are too big?

    Do some feature needs to be dropped off, or the optomiser options changed?

  • I have this problem too with espruino_1v95_esp8266_4mb_combined_4096.­bin.

    I can flash the 4M image to my 4M NodeMCU, and reboot it as many times as I want, but as soon as I do a then reboot with require("ESP8266").reboot() then I get a serial console full of this over and over:

    Fatal exception (3): 
    epc1=0x401000b8, epc2=0x00000000, epc3=0x00000000, excvaddr=0x401000df, depc=0x00000000

    The wifi data is stored at the end of flash, so I thought it may be the end of my 4M flash was faulty, however I've tried pretending the flash layout is 2M and 1M with: --port /dev/ttyUSB0 --baud 115200 write_flash --flash_freq 40m --flash_mode qio --flash_size 2MB 0x0000 "boot_v1.6.bin" 0x1000 espruino_esp8266_user1.bin 0x1FC000 esp_init_data_default.bin 0x1FE000 blank.bin --port /dev/ttyUSB0 --baud 115200 write_flash --flash_freq 40m --flash_mode qio --flash_size 1MB 0x0000 "boot_v1.6.bin" 0x1000 espruino_esp8266_user1.bin 0xFC000 esp_init_data_default.bin 0xFE000 blank.bin

    and neither of these fixed the problem.

    I have tried both the combined image and the indvidual images as above, neither worked.

    I have tried the previous versions:

    • espruino_1v94_esp8266_4mb_combined_4096.­bin
    • espruino_1v92_esp8266_4mb_combined_4096.­bin
    • espruino_1v93_esp8266_4mb_combined_4096.­bin

    and all of these worked fine.

    So it seems there is some regression between 1v94 and 1v95 which breaks wifi save or load on ESP8266 4M.

    It might be worth noting that both MicroPython's boot/main files and Arduino sketches work fine on my board, though as I understand they don't store anything at the end of flash.

  • Hi,
    Where did you find command line addresses for the 4mb_combined ? I wanted to try it too, but didn't find the instructions.

    On my esp--12E, esp8266 4mb, I uses this image­master/espruino_1v95.13_esp8266.tgz, installed with

    python --port COM18 --baud 115200 write_flash --flash_freq 80m --flash_mode dio --flash_size 32m 0x0000 boot_v1.6.bin 0x1000 espruino_esp8266_user1.bin 0x3FC000 esp_init_data_default.bin 0x3FE000 blank.bin

    No problem saving code or saving wifi. Works perfectly, or almost, sometimes It freeze when I reset.

  • I just had a guess based on other instructions like MicroPython. Turns out it works fine: --port /dev/ttyUSB0 write_flash --flash_size=detect 0 espruino_1v95_esp8266_4mb_combined_4096.­bin
  • I have the same issue too. Any solution of it?

  • Hi, I tried with the same file and command line. I got the same problem: after I save wifi and replug, the led is continuously lit and the board only say garbage. The combined version 512 don't work at all, at least on my esp8266 4mb.
    I didn't even know about this combined release, before this post. The normal not "combined" version, i.e with separate files, works much better, and I am still using it. Not a solution, but a workaround.

  • Thanks for your response. I can't even get esp-12 starting after flashing. It constantly reboots with "combined" as well as with normal version. Will try to add capacitor between Vcc and Gnd as the last hope...

  • @tempos, that's strange for the normal version, mine is also an e12. Which command line did you use for flashing the separate files ? It happens only with the v1.95 or also v1.94 or c1.93?

  • @Polypod, I'm using such command: --port /dev/cu.SLAB_USBtoUART --baud 115200 write_flash \
      --verify --flash_freq 80m --flash_mode dio --flash_size 4MB \
      0x0000 "boot_v1.6.bin" 0x1000 espruino_esp8266_user1.bin \
      0x3FC000 esp_init_data_default.bin 0x3FE000 blank.bin

    This happens with the 3 latests versions

    I'm using esp-12e with this adapter

  • I see no reason why it doesn't work. Maybe the adapter. I use a nodemcu version with a different adapter (­06735_1.jpg)

  • I wondering if anyone at all was possible to run espruino on general esp8266 module.
    Anyway @Polypod thanks for help!

  • @tempos It is possible. Many have run it on bare boards even the ESP 8226-01.

    It is a while since I have used on ESP8226 (certainly I've not tried any >1.9 binaries) so can't offer much constructive help.

    But, things to try if you have not already:-

    1) Run "erase_flash" first. This always seemed to help get a clean flash of the binaries.
    2) Wiring. A couple of gotchas for me: "CH_PD" needs to be pulled high (3.3v) and GPIO 0 needs to be high for normal use but pulled low (GND) for the purpose of flashing. Also your need that capacitor you say you will try. Otherwise the power to the board from your FTDI style adapter just is not stable enough. These are a couple of annoyances you don't need to consider with Node MCU.

    You may have all this hand, but if not hope it helps.

  • Same problem...
    1.95 not work after and reboot

    1st erase flash command line:

    python --port COM7 erase_flash

    2nd flash esp12 4mb command line:

    python --port COM7 --baud 115200 write_flash --flash_freq 80m --flash_mode dio --flash_size 32m 0x0000 boot_v1.6.bin 0x1000 espruino_esp8266_user1.bin 0x3FC000 esp_init_data_default.bin 0x3FE000 blank.bin


    python "../esptool/" --port COM7 --baud 115200 write_flash --flash_freq 80m --flash_mode qio --flash_size 4MB 0x0000 boot_v1.6.bin 0x1000 espruino_esp8266_user1.bin 0x3FC000 esp_init_data_default.bin 0x3FE000 blank.bin
  • @Wilberforce,

    Yep: Espruino firmware is getting larger with every release.

    That is why there is a BOARD=ESP8266_4MB

    // used code to connect and save
    var Wifi = require('Wifi');
    Wifi.connect(SSID, {password:SSIDPASS}, function(err) { 
          if (err === null){ 
            console.log('Connected to AP YOURSSID');
            Wifi.setConfig({powersave : 'none'});

    press your reset button and then

     _____                 _
    |   __|___ ___ ___ _ _|_|___ ___
    |   __|_ -| . |  _| | | |   | . |
    |_____|___|  _|_| |___|_|_|_|___|
     1v95.3469 Copyright 2017 G.Williams
    Espruino is Open Source. Our work is supported
    only by sales of official boards and donations:
    Flash map 4MB:1024/1024, manuf 0xe0 chip 0x4016
      "ip": "",
      "netmask": "",
      "gw": "",
      "mac": "5c:cf:7f:c1:12:0b"
  • the flashsize 4MB_c1 is the key :-)

   --port <your port> --baud 460800 write_flash \
        --flash_freq 80m  --flash_mode qio --flash_size 4MB-c1  \
        0x0000 boot_v1.6.bin 0x1000 espruino_esp8266_user1.bin  \
        0x3FC000  esp_init_data_default.bin 0x3FE000 blank.bin
  • @MaBe,
    Bingo, it's works well)) Thanks!

  • Hm, I don't seem to be able to get 1.95 to work on my ESP12F's either. I'm flashing with

    Z:\ESPTOOL\espruino_1v95_esp8266_4mb>..\­ --port COM3 --baud 115200 write_flash --flash_freq 80m --flash_mode qio --flash_size 32m 0x0000 "boot_v1.6.bin" 0x1000 espruino_esp8266_user1.bin  0x3FC000 esp_init_data_default.bin 0x3FE000 blank.bin

    It works for the first time I start it, but then a power cycle, and it spews output on serial at an unknown baud rate. I tried 32m-c1 (though I don't know what this does, and never had to do it before) and 32m-c2, and got the same results. 4MB-c1 as suggested by MaBe was rejected by esptool. What am I doing wrong?!

  • I guess you have a older version of, I use v2.1.

    32m-c1 or 4MB-c1 creates a flash map 4MB 1024/1024, this allows to flash larger bin files

    Check issue 1294 for the latest issue with 1v95 on ESP8266.

    1 Attachment

    • 4MB_1024:1024.JPG
  • In your last comment on that issue you say it's a flash speed issue - can you elaborate? If that's the case, why wasn't it a problem before?

  • @DrAzzy tried to, check updates in issue 1294

  • Thanks - so it's just a matter of binary size? The key size seems awfully close to 512kb... I wonder if something else needs to be aware of the different flashmap?

    Anyway, is RELEASE=1 not used for the version in the download package?

    Towards the shortterm problem, do you happen to have a RELEASE=1 binary that you could share? I don't have an ESP8266 build environment set up, and I'd really like to take the new 1.95 features for a spin.


  • Anyway, is RELEASE=1 not used for the version in the download package?

    Yes, this is set for the distributed build , so choose the one from the official download page

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview

My ESP-12F does not work with 1v95 and latest master

Posted by Avatar for SergeP @SergeP