I was able to flash my ESP01 (1MB of Flash) with micropython:
esptool.py --port $PORT erase_flash
esptool.py --chip auto --port $PORT write_flash -z 0x000000 $IMAGE
esptool.py v2.8
Serial port /dev/cu.usbserial-1463430
Connecting........_____....._____.....___
Detecting chip type... ESP8266
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: e8:db:84:a8:ba:f7
Uploading stub...
Running stub...
Stub running...
Erasing flash (this may take a while)...
Chip erase completed successfully in 1.9s
Hard resetting via RTS pin...
esptool.py v2.8
Serial port /dev/cu.usbserial-1463430
Connecting........_
Detecting chip type... ESP8266
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: e8:db:84:a8:ba:f7
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 1MB
Flash params set to 0x0020
Compressed 589912 bytes to 389772...
Wrote 589912 bytes (389772 compressed) at 0x00000000 in 37.8 seconds (effective 125.0 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
There was no error. I used both Thonny and "Mu Editor" in order to attempt to access the REPL but without luck.
I can connect to the device via picocom, but I am stuck on the following "screen":
port is : /dev/cu.usbserial-1463430
flowcontrol : none
baudrate is : 115200
parity is : none
databits are : 8
stopbits are : 1
escape is : C-a
local echo is : no
noinit is : no
noreset is : no
hangup is : no
nolock is : no
send_cmd is : sz -vv
receive_cmd is : rz -vv -E
imap is :
omap is :
emap is : crcrlf,delbs,
logfile is : none
initstring : none
exit_after is : not set
exit is : no
Type [C-a] [C-h] to see available commands
Terminal ready
I would expect to be able to "CTRL + C" here right into the python shell. But that does not work either.