Standard "AT mode" firmware?

Schematics, Example Code and Q&A
vandys
Posts: 4
Joined: Tue May 02, 2017 10:03 pm

Standard "AT mode" firmware?

Unread post by vandys »

What's the easiest way to lay hands on the "classic" AT mode firmware? It seems like some boards come with it as their default
operation, but the ezsbc version appears to just come with a light blink.

Thanks in advance,
Andy
Daniel
Posts: 133
Joined: Tue Nov 13, 2012 2:10 pm

Re: Standard "AT mode" firmware?

Unread post by Daniel »

The ESP32 module does not ship with the AT command interpreter from the factory. It seems to just report the free memory and status when it boots up. In fact, till fairly recently their wasn't an AT interpreter available. The official version can be found here: https://github.com/espressif/esp32-at but it is source code. I found this http://iot-bits.com/esp32/esp32-flash-d ... -tutorial/ helpful in downloading firmware to the module, specially if you want to restore the factory code.

I'm not sure if the factory programs anything into the flash on the Wroom-32 module. It seems that the factory is not sure if the program anything into the flash memory . :D See this post github.com/espressif/esp-idf/issues/39 I love the chaos of engineering.

I would appreciate it if you can post a binary somewhere and put a link to it if you manage to get a working AT command interpreter going.

Edit:
Some further searching online found some posts that have links to a binary on the Espressif site but none of the links work.
vandys
Posts: 4
Joined: Tue May 02, 2017 10:03 pm

Re: Standard "AT mode" firmware?

Unread post by vandys »

I got it built from that github source; you *have* to use their copy of the devtool environment. If you use the latest, Wifi init fails.

With that, it's definitely working, but I can't talk AT to it yet--I suspect it's listening to the wrong UART pins. But I do see the
"soft AP" and can even associate with it, with log messages coming out on the console.

Andy
vandys
Posts: 4
Joined: Tue May 02, 2017 10:03 pm

Re: Standard "AT mode" firmware?

Unread post by vandys »

Ok, I've got it all working. Your console comes out the built-in USB UART, but the AT commands go to a UART on pins IO16 (hook to your extern USB-RS232 TX) and
IO17 (your external RX). 115200, and you have to enter each command with \r\n (enter, then control-J) to make it accept the command.

I flashed with:
esptool.py --chip esp32 --port "/dev/ttyUSB0" --baud 115200 --before "default_reset" --after "hard_reset" write_flash -z --flash_mode "dio" --flash_freq "40m" --flash_size detect 0x1000 bootloader.bin 0xf000 phy_init_data.bin 0x10000 esp-at.bin 0x8000 partitions_at.bin

I've pulled my compilation of these files and put it at (hmmm, let's see if the bboard will let me show a URL):
http://vatclip.net/vandys/esp32at.zip

I'd include the source, but it's unchanged from https://github.com/espressif/esp32-at

Enjoy!
Andy
Post Reply