ESP8285 board ESP-1 / solderless flashing

All ESP8266 boards running MicroPython.
Official boards are the Adafruit Huzzah and Feather boards.
Target audience: MicroPython users with an ESP8266 board.
Post Reply
HermannSW
Posts: 197
Joined: Wed Nov 01, 2017 7:46 am
Contact:

ESP8285 board ESP-1 / solderless flashing

Post by HermannSW » Fri Dec 03, 2021 11:35 am

The ESP-1 looks nearly identical to ESP8266 ESP-01 board, has same 4x2 pins.
I ordered it because the pins were not soldered.

I have two applications for (1MB) ESP8266/ESP8285 boards, needing RX/TX connection for MicroPython only once:
  1. flash ESP8266 MicroPython on it, for wireless use via WebREPL (module is AP, 192.168.4.1 by default)
  2. flash Arduino WifiToSerial.ino onto the module (standard demo uses station mode to connect to Wifi)
These are the two main differences I found between ESP8266 and ESP8285 boards wrt flashing:
  1. GPIO2 and GND need to be connected during all flash operations for ESP8285, only when powering for ESP8266
  2. ESP8285 needed dout flash mode for write_flash, ESP8266 not
In addition ESP8266 EN pin is LOW by default, while ESP8285 is HIGH (no soldering to that pin needed for me).

Since I need to flash ESP-1 module only once, I wanted a solderless solution (to avoid having to desolder once flashed).
And I found one:
  • use ESP-01 USB programmer, with switch below allowing to connect GPIO2 and GND when pressed
  • insert the unsoldered 4x2 male headers into the programmer
  • add ESP-1 onto the headers slanted
  • do a little pressure from top with finger for good contact, while other finger presses switch below programmer
  • connect programmer to USB port (keeping fingers as is)
  • with the other hand, either compile+flash with Arduino IDE
  • or do flash_id/erase_flash/write_flash for ESP8285 modules
    esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash --flash_size=detect -fm dout 0 esp8266-1m-20210902-v1.17.bin
20211202_235004.part.25%.jpg
20211202_235004.part.25%.jpg
20211202_235004.part.25%.jpg (16.12 KiB) Viewed 4771 times

After flashing, for MicroPython WebREPL use only GND and 3V3 pins need to be soldered.
For WifiToSerial.ino in addition RX/TX pins need to be soldered to controlled device TX/RX pins (GP0/GP1 for Pico).
While the module is 24.7mm long (too long for "smallest robot"), it is only 3.1mm high:
https://www.youtube.com/watch?v=uaIC_d-ZLuw
Pico4MLcbot.jacked_up.jpg
Pico4MLcbot.jacked_up.jpg
Pico4MLcbot.jacked_up.jpg (63.63 KiB) Viewed 4771 times
Pico-W Access Point static file webserver:
https://github.com/Hermann-SW/pico-w

Tiny MicroPython robots (the PCB IS the robot platform)
viewtopic.php?f=5&t=11454

webrepl_client.py
https://github.com/Hermann-SW/webrepl#webrepl-shell

Post Reply