You can chat about native SDK questions and issues here.

User avatar
By deanrantala
#75785 I have been pulling my hair out with these 8266 modules and am almost at the point of buying the larger formal Arduino WiFi shield - so I hope someone can help me...

The drama of these guys started a couple weeks ago. I had a project that needed WiFi connectivity...

I purchased a new ESP8266 module (the one with the tiny 8 pin header) and instantly hit issues.

Garbled output.

Yes, I tried EVERY combination of serial buads/etc. Same thing. Garbled output. So I happened to stumble across a website that explained how some of these ship with flaky firmware, etc.. and one should re-flash the factory AT firmware as soon as one takes them out of the packaging to solve the issues.

Okay.. So I found an all-in-one firmware ZIP file from this guys site. It had a single "v0.9.2.2_AT_Firmware.bin" file that seemed WAY more sane and reasonable than having to flash 3 or 4 separate bin files. I flashed it using esptool like so:

esptool -v -cp /dev/ttyUSB0 -ca 0x00000 -cf v0.9.2.2_AT_Firmware.bin

Few minutes later.. it was working.. well.. I use that term loosely.

I initially flashed it using a simple voltage shifter for the 5-3.3 volt. The USB adapter is a quality Belkin F5U409 (not the cheapo usb-to-ttl outfits). I actually have TWO of these and the first one has been modified - bypassing the RS232 voltage chip - and tapping RX and TX directly to the ship for 5Vttl. From there, I used my resistor network for shifting down to 3.3. The flash worked great, but it would NOT work via Arduino serial console OR PuTTY.

Now here is the strange part.. the chip DID serve it's purpose.. because it WOULD talk with my Arduino Mega via the second serial port! (just not directly with the belkin adapter). Even though I could flash the esp8266 with the Belkin, I could not actually talk with it (garbage on the console is all I got).

So after some playing around with SerialPassThrough using the Arduino mega to interface me to the ESP8266.. I got the project done with the AT commands.

Well... here I am a couple weeks later and I have ANOTHER project that has come up and needs more Wifi. So, like an idiot... I purchased another headache.

This time, I wanted to ensure everything was correct - so I purchased a true hardware-based RS232-to-ttl adapter (plugs into the end of the Belkin) and lets you select 5/3.3v.

Hooked the Belkin up to the TTL adapter, TTL adapter to the ESP8266, and the TTL adapter and ESP8266 both up to a very good 3.3v power supply (using an LM317).

Thing worked like a champ. I scanned and joined my WiFi network, did a couple manual test TCP connections (all using AT commands over Arduino serial console connected directly to ESP8266 via the Belkin).

Referencing back to the issues I had with the last (and the fact that this module is going into something for production/daily use).. I did not want to risk bugs.... So I figured... "Let's re-flash the firmware like last time just be be safe".

I with I had not.

Using the same command as last time (esptool) but using the RS232-to-ttl adapter (vs my home-made resistor network)... the flash went just fine. Esptool completes the flash without issue. But since then, I have NEVER ONCE been able to communicate with the board since.

Basically, all I get now is kinda like the first chip started: garbage output on reset.. nothing after that. When the reset button is presset (or unit is initially powered on), I get garbled output (I assume would be the "AI thinker - ready" prompt) - and after that... nothing. Typing commands does not return anything. I have tried all baud rates. The same.

I tried flashing a couple different versions, as well. I downloaded the ESP8266_NONOS_SDK-2.2.0 directly from ESP and have re-flashed with this command:

esptool -cb 115200 -cp /dev/ttyUSB0 -ca 0x00000 -cf boot_v1.2.bin -ca 0x01000 -cf at/512+512/user1.1024.new.2.bin -ca 0x3fc000 -cf esp_init_data_default_v05.bin -ca 0x7e000 blank.bin -ca 0x3fe000 -cf blank.bin

I have substituted boot_v1.2.bin for the 1.6 and 1.7 versions as well... to no avail. I tried re-flashing the all-in-one version I originally had working on the first module (a couple times in fact).. still same thing.

This thing seems like it starts to boot up, spits some garbage out, and that is it. No response (not even garbled responses) to anything on any serial monitor after the initial garbled bootup output.

Gentlemen.. someone please help me out here. I am NOT buying cheap ebay parts here - I purchased these BOTH from Steren (I live in Mexico) and they are genuine esp modules free of defects. I have spent a LOT of time just trying to get this second one working.. Is there a better module perhaps I need to buy? Are these 8-pin versions mostly just useless? Any direction would help a lot.

- Dean
User avatar
By rudy
#75789 The ESP-01 is only half of what you need. The ESP-01 does not come with a 3.3 volt regulator or the required local bypass capacitors. WiFi is a power hungry pig at times. The average current may not be so much but there needs to be the capacity to deliver 300-500mA without voltage dips.

The first thing it does before trying to perform WiFi action (connect to an AP or create it's own) is to do a calibration cycle. And that is a worst case situation as far as power is concerned. And if there is a significant power dip then it resets and puts out some diagnostics information. The baud rate it uses is 74880. And if you are not set for this then it become gibberish.

What I recommend is to use a "development" board like the a NodeMCU or a WeMos. They are cheap. The should work without problems. Get familiar with the ESP8266 and then decide where to go next with it.

If you need to interface with 5 volt logic levels, use proper level shifter chips designed for that function.

I have used a number of different USB to serial converters and my favorite is this.

https://www.aliexpress.com/item/1PCS-CH ... 51759.html

Cheap and it works well. I have our purchaser at work buy them in 5s or 10s so that when the firmware programmers blow them up I have replacements ready. (after giving them sh*t again) They don't blow up fo me, but I'm not sloppy when it comes to live electronics.
User avatar
By deanrantala
#75824 So.. after seeing on a couple sites regarding people having issues with the ESP8266 on breadboards (one in particular thought he had bad EEPROM's and mentioned issues exactly like I was having).. I cleaned up my work.

To begin, YES - I had the bypass caps and all needed hardware. But everything was on a breadboard with jumper wires.

So... I moved everything to a permanent board and soldered everything:
Image

PLEASE: If the image above is not loading, please give it a day or two. For some reason, Google flagged my webserver as malware (nothing on it but my resume, few pics and couple test scripts). I have sent a review request, and the issue should be resolved soon.

Anyway.. got the entire deal soldered up and just like that: it took a flash and responds to AT commands.

So to conclude: I cannot stress enough the importance to have these finicky boards soldered up and securely in place. They are obviously not as tolerant as an Arduino board when feeding them power and interfacing with them.