The problem though with developing on an arduino is there’s not a real good way to debug it, other then lots of printing to the serial port. So, not a “problem” – unless you can’t get a computer near what you’re working or you want to air gap your very expensive laptop from the arduino. How to solve this?
JeeLabs has developed firmware for the esp-12s to turn it into a wifi serial platform. I think its out of active development at this point, but it still works – and pretty well at this point. So, I built a breakout to the esp-link. And feature creep occured.
This isn’t something I really want to sell or build or what have you. But I decided today while I was debugging the “LazyVac 31” with this that I would share it for everyone, for free. Because I can – and because I think its that useful. Since this post is for the developer amongst my readers I won’t deep dive to much. Instead, I’ll link the relevant components and share the schematics, stl, and some pictures of the finished project. If you need more details, feel free to ask in the comments.
- The USB A on board is for power only. I have a breakout board that plugs into a USB power supply so it makes sense to be able to power the breadboard.
- From what I can tell, the esp12-s is meant to run on 3.3VDC. So, since I had to include a 3.3VD rail it makes sense include a screw terminal for 3.3VDC powering.
- I added the silicone wire and clips after I built the schematic. I found out that being able to hook up the two wires with the test clips made my life super easy.
- I generally use my phone to connect to the esp-12s’ wireless access point and then connect to the serial terminal via JuiceSSH.
- The extra holes on the top of the carrier are meant to have 12mm magnets pressed in for retaining a cover but I’ve never needed the cover enough to design one.
- Test Clip
- Voltage Regulator
- Lithium 18650 Controller
- USB Micro B Breakout
- Screw Terminal
- Silicone Wire
- Frog Pin Programmer
Flashing the Firmware
This is the command I used to flash the firmware via my frog pin programmer. You’ll need to download the esptool package for your platform to flash the firmware. Its much easier then tying to get the Arduino IDE to flash the firmware via the programmer.
esptool-2.8/esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fs 4m -ff 40m 0x00000 esp-link-v3.0.14-g963ffbb/boot_v1.6.bin 0x1000 esp-link-v3.0.14-g963ffbb/user1.bin 0x7C000 esp-link-v3.0.14-g963ffbb/esp_init_data_default.bin 0x7E000 esp-link-v3.0.14-g963ffbb/blank.bin