SparkFun Forums 

Where electronics enthusiasts find answers.

By uncle4
#194750
I'm having a terrible time trying to get the WRL-13678 flashed.

I've tried external power to the ESP8266 and serial comms though
an FTDI232 (which seems to work, per se). The tx/rx lights
on both the ftdi and esp flash while the Arduino IDE shows
progress and ends with "closed bootloader". However, when
'run' (GPIO0 pull-up to 3.3v) the serial output of the ESP
(at 74880) shows:

ets Jan 8 2013,rst cause:2, boot mode:(3,4)

load 0x4010f000, len 1384, room 16
tail 8
chksum 0xef
csum 0xef
csum err
ets_main.c

I have GPIO2 floating (I have tried it with 3.3v and pull-up
to 3.3), GPIO0 to GND when programming, and pull-up to
3.3v (and 3.3v direct) when trying to 'run'). I'm using the
Arduino IDE to program it, using the "Generic ESP8266 Device"
entry from the ESP8266.com/arduino.igrr.me git repo.

As a sanity check, I just flashed the "blink" sketch to the
8266 Thing Dev board with no problems.

I've been at this for several days, and would _really_
like to find a way to successfully program the 13678.

(A couple of posts to the forums @ esp8266.com have gone
unanswered)

If there are ANY suggestions of how to trouble shoot/correct
this condition, I'd really appreciate your suggestion<s> insights.

Thanks!
#194802
GPIO02 needs to be pulled up high to program the flash chio. If it happens to be read as a low because of RF noise on the pin then it's trying to do SD-card boot. Definitely pull it up with a resistor to get that potential error out of the way first.

But the most important part, the FTDI232 internal voltage regulator does not supply sufficient power to the ESP8266. It gives 50 mA max. If you intend to program over the air with that as it's supply is definitely not going to suffice. The wifi radio is hungry. Adding a big capacitor between GND and 3.3 V to buffer might help. But I wouldn't want to skimp on it. Make sure it is reliably fed.
#194816
Right. I'm powering the 8266 with an external PSU (set for 3.4V, showing
a 60mV draw (max)).

Pin outs are:

FTDI 8266 PSU
GND GND GND
VCC POS3.3
CH_PD POS3.3
RX TX
TX RX
GPIO0 GND (to program)
GPIO2 POS3.3v
RST float

I'm using the esp8266.com Arduino library, the "Generic 8266 Device" board,
DIO and an upload speed of 115200.

I've tried with RST floating, GND and POS3.3

All combos give the same result:

ets Jan 8 2013,rst cause:2, boot mode:(3,0)

load 0x4010f000, len 1384, room 16
tail 8
chksum 0xef
csum 0xef
csum err
ets_main.c

(crc is _always_ 0xef)

From flash mode to run mode, the only pin I'm changing is GPIO0
(fm GND to float, respectively).

I've also tried with GPIO2 tied to POS3.3v and pulled up w/10k ohm
resistor.

Any other thoughts?
#194818
Sorry, your pin out table doesn't show right because of differing character widths, or not enough spaces. It is not aligned. So without certainty I emphasize the 8266 Vcc pin should not be connected to the 3.3 volt supply of the FTDI. I think you can leave that one disconnected. Instead connect it to your external supply and use that to source the pull-ups.
rst cause:2
That was a reset caused by the reset pin. So don't keep that 8266 pin floating either. Pull it up if you are uncertain of the presence of an internal pull up resistor.

See table 1-1 in https://espressif.com/sites/default/fil ... ses_en.pdf


Also, which Arduino IDE version are you using? I've had better flashing succes with version 1.6.12 in combination with the ESP8266 Arduino core. The latest, or 1.8.1, didn't always work correctly on my end.
#194826
Thanks, Valen.

Here's a better formatted table.

I've tried RST low/high/pulled high (10k ohm resistor)

Same cause (rst cause 2)

I've seen the reset cause list before, as well as the
mode values.

I'm using Arduino 1.8.1 -- I get the same results with
1.6.5 (r5) and 1.6.12
You do not have the required permissions to view the files attached to this post.
#194843
Did you try to add capacitors between Vcc and GND? There might be a very short supply voltage glitch. You won't see that on a multimeter. Other than that I'm out of ideas. If you have acces to a oscilloscope I suggest you analyse what happends to the voltages on the pin when it fails.
#201676
Hello uncle4,

Did you solved your issue? I am working with an ESP8266EX and have a very similar issue:

21:31:35.930 -> load 0x4010f000, len 1384, room 16
21:31:35.930 -> tail 8
21:31:35.930 -> chksum 0xef
21:31:35.930 -> csum 0xef
21:31:35.930 -> csum err
21:31:35.930 -> ets_main.c

thanks,