I purchased some ESP01S ESP8266 based WiFi modules on eBay.
Above, the ESP01S is a basic module comprising an ESP8266 and 1MB SPI flash memory (~$2.50 on eBay).
The ones I received did not work… Chinese Quality (a bit of an oxymoron really).
Some difficulty was encountered loading new firmware. The flash memory (XT PN25F08B) reported code 0x4014 which would indicate a quad SPI flash… but in fact the thing would not work in quad mode, or DIO, but did work in DOUT mode. The Chinese are renowned fakers.
Above is an inexpensive adapter for programming the ESP01. Sadly it lacks buttons for FLASH and RESET. Unfortunately is uses a WCH34x serial chip (no markings) which experience has shown to be a bit fragile in Windows. It does not use the common convention of RTS and DTR to control the FLASH and RESET pins.
Above, the underside with two small momentary tactile switches added from flash and reset to ground. The idea is press both and roll the finger off the outside one first and it resets in flash mode.
Finding recent firmware is not easy. It comprises several files from the SDK, but not all the files for the most recent version that will fit on a 1MB chip are in the v2.2.1 SDK. (Whilst there are newer versions, they will not fit in a 1MB chip.)
Above, cobbling together the various files should make a firmware image that is recent and fits on the 1MB chip.
Combining the components makes for a simpler task.
When loaded, above is the AT+GMR response. Note that commands need CRLF termination in the later versions.
Download AT-v1.6.2.zip, requires 1MB flash module (ESP01S).