Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By ToSa
#8180 Hi,
I'm new to the ESP8266 world and struggling to get a couple of ESP-12 boards to work. I got five of these from an indiegogo campaign and don't exactly know what firmware is installed (maybe none?).
Reading a ton of different sites with mostly the same but sometimes conflicting information I ended up with the hardware setup described below.

Connecting with a terminal program at 77400 baud I'm able to see the boot message like "ets Jan 8 2013,rst cause:1, boot mode:(1,7)" with the values changing depending on power-up vs reset and depending on the state of GPIO0. I guess that means at least the ESP->PC direction of the communication is working fine. No matter what baud rate I chose (9600 / 57600 / 115200) I don't get any additional information on boot/reset.
I can't flash another firmware either:
- Connecting GPIO0 to GND and the powering up the module, then starting the nodemcu firmware programmer tool (latest version) it shows the two MAC addresses and then starts loading but at ~5% it stopps
- Connecting GPIO0 to GND and the powering up the module, then starting the flash program it starts with "deleting flash" but then after a few seconds shows the "invalid packet header" error message

Hardware:
CH340 based USB serial adapter switched to 3.3V - GND connected to power supply GND
separate power supply (1A USB phone charger at 5V connected through low drop voltage regulator with proper caps)
ESP-12:
- VCC/GND - connected to voltage regulator output with additional 100uF close to the module
- CH_PW - connected via 12k R to VCC
- REST - connected via 12k R to VCC and push-button to GND for reset
- TXD - connected to RXD of CH340
- RXD - connected to TXD of CH340
- GPIO0 - connected via 12k R to VCC and Jumper to GND for flash mode
- GPIO2 - connected via 12k R to VCC
- GPIO15 - connected via 12k R to GND
- all other pins floating
User avatar
By pietrushnic
#8201 I described my connection of ESP-12 here. Your configuration should work without problems. What you can try is
Code: Select allAT+RST<Ctrl-M><Ctrl-J>
on those different baud rates. For me boot messages appeared on 115200 and AT command interface was on 9600. This should cause module reset and give you "ready" prompt.

If this won't work you can use esp-open-sdk or esp8266 github wiki to build FW and burn new one. I had problem with some ESP-01 that came "broken" I tried to flash couple of times and now all modules works fine.
User avatar
By ToSa
#8316 Thanks for the reply.
I don't get any feedback in the terminal program (no matter what speed) so I tried typing the command below "blindly" - but nothing happened.
Not sure how building my own firmware would help as I mentioned that even in flash mode I'm stuck (flashing stops in a very early stage).

I did some further testing. The actual error message in the log file of the flash programmer tool happend when it's trying to set the base address. I ended up looking at the flash protocol and coded my own "programmer" to debug the single steps. I'm able to submit the "sync" message and get a positive response from the ESP-12, then I send the "set base address" message and nothing is returned. My guess at the moment is that the checksum calculation is incorrect (in my code) and the ESP-12 simply ignores the packet assuming it's invalid but that's really just a wild guess... wouldn't explain why the "official" nodemcu flash program stops at the same point as a lot of folks are successfully using this software ?!?

I'll report back on progress - any further suggestions very welcome!!!