Ai-Thinker ESP32-S2F Module (ESP-12H)
Ai-Thinker ESP32-S2F

Available from:


GPIO #Component
GPIO00 User
GPIO01 User
GPIO02 User
GPIO03 None
GPIO04 None
GPIO05 User
GPIO06 None
GPIO07 User
GPIO08 User
GPIO09 User
GPIO010 User
GPIO011 User
GPIO012 User
GPIO013 None
GPIO014 None
GPIO015 None
GPIO016 None
GPIO017 None
GPIO018 None
GPIO019 User
GPIO020 User
GPIO021 User
GPIO33 User
GPIO34 User
GPIO35 None
GPIO36 None
GPIO37 User
GPIO38 None
GPIO39 None
GPIO40 None
GPIO41 None
GPIO42 None
GPIO43 User
GPIO44 User
GPIO45 None
GPIO46 None
Configuration for ESP32-S2
This module can replace modules such as: BT3L, CB3S, CB3L, C-8138, ESP-12, FL_M93_V1, T103, TYWE3L, TYWE3S, XR3, WB3, WB3L, WB3R, WB3S, WB8, WR3, WR3E, WR3L, WR3N

Read my guide on replacing a compatible module.


Early line of ESP-12H modules has a labelling error. IO28 is supposed to be IO29. The image above is the correct pinout.


Flash using Tasmota Web Installer and select Tasmota ESP32-S2 option.

For esptool.py download i.e. tasmota32s2.factory.bin and run esptool.py write_flash 0x0 tasmota32s2.factory.bin

To put ESP32-S2 in flash mode GPIO0 needs to be pulled low.

You can purchase (AliExpress, Amazon, Banggood) a test board for effortless flashing.

Test Board


ESP32’s are power hungry on boot and the USB to serial adapter might not be able to provide enough power for that. Use a stable 3.3v power supply that can supply more than 500 mA.