I do want to make an adjustment, make the arrows larger, they didn’t even show up on the silkscreen.
To start testing, I put a jumper in bypassing the lithium cell charger. I then installed the ESP-12E, the SPI RAM, The Crystal, the USB Serial Bridge, the voltage regulator, and the USB connector. Just enough to power up, load a program and test the basics.
First test was to connect to PC and run ESPlorer– it worked.
I got a message:
AT-based firmware detected.
AT version:0.40.0.0(Aug 8 2015 14:45:58)
Ai-Thinker Technology Co.,Ltd.
Build:18.104.22.168 Sep 11 2015 11:48:04
I then tried to install my test version of the software and it wouldn’t install. I went back to ESPlorer and started playing with the DTR and RTS to see what would happen. It turns out I got DTR and RTS backwards. So I cut the traces and added a couple of jumpers. This is the kind of mistake I was hoping to catch in the design review.
It programmed great with the wires swapped. My code crashed, back to a “Hello World” version.
Turns out the internal memory chip installed on the ESP-12E does not run at the settings I had specified with esptool.py. I found this out by setting it to 20MHz DIO mode which started working. I then switched it to QIO mode to see what happened. QIO worked, next I tried running at 40 MHz. That worked.
../esptool/esptool.py --port /dev/ttyUSB0 --baud 230400 write_flash -ff 40m -fm qio -fs 32m 0x00000 ../bin/eagle.flash.bin 0x40000 ../bin/eagle.irom0text.bin
I enabled HSPI Overlap mode by adding spiRamInit() to the end user_init(). Ran without crashing. When I started building for use, I discovered no SPI Master Read available. I saw something that looked correct for slave read, so I borrowed a line from it and did a write followed by that line– it built. I uploaded the code, and it ran, still no testing of the SPI Ram.
I added the function calls to write “Hello World” to the SPI RAM. and read back and put out to the console. and I got garbage back to the console. Not a surprise. Debugging with a logic analyzer next week.
Have you written code for the ESP8266. Have you worked with SPI before? I would love to Hear from you.