Note: GPIO 15 (TXD) must always be LOW during boot. This is why you can't just plug this into a USB-Serial adapter without a button circuit. The datasheet makes the ESP-01 look limited (only 2 usable I/O pins, needs level shifting, awkward boot sequence). And honestly, for a new project, you should probably buy an ESP32-C3 or an ESP8266 D1 Mini.
It’s a finicky, low-pin-count, voltage-sensitive pain in the neck. But when you finally get that "Hello World" printed over Wi-Fi from a board the size of a postage stamp, you’ll understand why this little blue module became a legend. esp-01 datasheet
| Mode | GPIO 0 | GPIO 2 | GPIO 15 (TXD) | | :--- | :--- | :--- | :--- | | | LOW | HIGH | LOW | | Flash Boot (Run Code) | HIGH | HIGH | LOW | Note: GPIO 15 (TXD) must always be LOW during boot