A Flashing ESP Chips Surprise

Well, you could have blown me away.  Tonight was making a little relay controller for the hot tub using a WEMOS board and relay board. I carefully soldered them together and plugged them into a USB connection on my PC, as I’ve done thousands of times.

Also as I’ve done thousands of times I flashed the board with my ESP8266 standard software which I have down to a single button-press in Eclipse.

Nothing. Dead. Thankfully my own terminal software has a 78Kbaud setting and so I went in and had a look. Checksum error. No matter how many times I flashed the board, the same result. I figured it was duff but before throwing it in the bin – I picked another of my boards, a NodeMCU clone and flashed that. Perfect.

I went back and tried the WEMOS again – duff.  I grabbed another WEMOS – duff.

This was getting to be beyond believe – two in a row? I even tried bolstering the usb power with a proper power supply – nothing.

I went looking for the checksum error and came across this post.


I noted something about changing programming modes. I figured they were talking nonsense as I’ve been blowing these chips for years without a hitch (though I HAVE had people tell me they have had difficulty blowing ESP8266 chips).   But hey, what did I have to lose. There is a line in my make file..


I changed it to dio instead of qio – something I’ve NEVER done  - and I’ve blown plenty of Wemos boards before as well.

My ESP8266 software for the Home Control Project“Imagine my surprise” when the board flashed successfully.  I plugged in the other “duff” board – THAT flashed successfully.

Could it be that there really ARE two types of Flash and for the first time ever I’ve been on the receiving end?

All’s well that ends well and I hope anyone having issues flashing boards benefits from this – but I certainly didn’t expect to be writing this!


12 thoughts on “A Flashing ESP Chips Surprise

    1. Doesn't really tell you much Philippe - and the boards that have that mode don't bring the pins out - also easyGPIO probably doesn't implement them (I don't use Arduino).

      But thanks for the info.

  1. Question not related the issue you encountered, but instead about the relay. I have been looking for some relays that can support some high resistive loads 15+ amps. What are you using on your hot tub? Is the relay to control the pump or to turn to heater on and off. My purpose is to control a pool pump and a hot tub pump. I tried some that claim they support up to 25A but they burn out in less than a month.

    Thank you


    1. Hi there

      I'm just controlling the pump - for something like the motors - may I suggest simply using a little relay - the type you get with Arduino- to control a CONTACTOR - you can get those as big as you like... usually 240v in to a coil then a honking great set of contacts - not expensive.

  2. I was prepared to trash my two Sonoff's that exhibited this problem, exactly as you describe it right down to the checksum error.

    Thanks to your prompting, the solution for me was quite simple. I use the Arduino IDE to program my esp's, and simply changing the "Flash Mode: DIO" to "DOUT" fixed it.

    1. I'm gonna go back and check my ESP8266s and Sonoffs tonight! I thought I had a bad/cheapie USB-TTL adapter... (well that still might be the problem, but!)

  3. I use always dio, it is slowly respect to qio,but you have two more pin usable.
    Many esp version module bring it out and many framework support it.
    Normally the flash have all 4 pin connected inside the esp module, so the two flash metod work always, but can be that some manufacturer only connect two flash pin to the esp chip, so in this case you can use only dio.
    It means QuadInputOutput - DualInputOutput

Leave a Reply

Your email address will not be published. Required fields are marked *