Hero

Features

Shape

The FeatherS2 is a power house!

16 MB of Flash means you'll never run out of space for code or storage.

8 MB of SPI based external RAM - Insane!

2x 3.3V Regulators? Really?

Yup! The first one is for the general operation of the board and the ESP32-S2, RAM and Flash.

The second LDO is for you to use to connect external 3V3 modules, sensors and peripherals, and it has programmable EN control tied to GPIO21 + it’s connected to the deep sleep capabilities of the S2, so if the S2 goes into deep sleep, the 2nd LDO is automatically shut down for you!

Both regulators are ultra low noise and have ultra low quiescent current, and both support a maximum of 700mA output.

Shape

The FeatherS2 uses the new ESP32-S2 microcontroller from Espressif. It's one of their new generation of Sx MCUs that has the newer Xtensa LX7 core running at 240MHz, a RISC-V ultra low power co-processor, WiFi and built in USB. It's pretty slick!

Code & Schematic

Shape

The FeatherS2 currently ships with the current Release Candidate 0 version of CircuitPython 6.0 that supports the ESP32-S2.

It also now ships with the UF2 bootloader, so you can easily update your FeatherS2 with the latest CircuitPython firmware, whenever you desire.

Just plug your FeatherS2 into your computer and it will appear in your filesystem as a USB flash drive! Just copy your code over, or edit your code directly on the drive. Coding a microcontroller has never been easier!

As newer versions of CircuitPython are released, you are able to update as you require from circuitpython.org

Shape Shape

There is also early ESP-IDF and Arduino support if you prefer coding in C++.

Shape

FAQ

The red power LED doesn't light up when running off battery

That is by design! The power and charge LEDs and corresponding 2K resistors drain the battery, so they have been isolated to the 5V power domain, so they will only light up and draw power when the board is either being power by the USB plug, or by a 5V power source connected to the 5V header pin.

The orange charge LED blinks when no battery is connected

That is the correct behaviour! The charge IC can’t tell the difference between a full battery and no battery, so it cycles between trying to charge and not charge.

Sometimes my battery doesn't start charging when I plug it in

If you have 5V power connected to your FeatherS2 before you plug your battery in, sometimes it might not start charging. Just unplug and re-plug in the 5V source and it should start charging correctly. This is a common issue with PMICs (Power Management ICs).

Devices powered from the 2nd LDO power down when the ESP32 goes into deep sleep

That's correct! The second LDO is tied to both GPIO21 and VDD for the Flash/PSRAM, so when the ESP32 goes into deep sleep, it automatically shuts down the LDO for you, so you don't have to remember to do it yourself.

RX & TX pins are not coupled with the internal USB, what are they used for?

RX & TX are still connected to UART0, and still used with the USB when in CDC (download mode). Otherwise, you can use them as UART0 when connecting a module that uses serial, or use them as general IO, it's up to you.

How can I flash my FeatherS2 in Arduino or IDF?

If you currently have CircuitPython installed and you would like to use your device in the Arduino IDE or with the ESP-IDF, the first time you flash your board you will need to put it into download mode by holding BOOT, pressing RESET and then releasing BOOT. That will enable the CDC USB in ROM and you will be able to select the device to flash it.

How can I get my FeatherS2 into UF2 bootloader mode?

If your FeatherS2 shipped with the UF2 bootloader, you can press [RESET] then [BOOT] to get it into the UF2 bootloader mode. You will then see the RGB LED on your FeatherS2 turn Red while the device is unmounted, and then once mounted, it will turn green.

A drive will appear in your filesystem called UFTHRS2BOOT. From here you can re-flash the latest CircuitPython firmware by copying over the firmware.uf2 file for the version you want to install.

My FeatherS2 doesn't go into UF2 bootloader mode!

If you can't get your FeatherS2 into UF2 bootloader mode, it means your board shipped to you prior to the UF2 bootloader being ready for the ESP32S2. Sorry!

It is possible to flash your FeatherS2 with the latest UF2 bootloader by following the instructions I have put together in this guide.

If you have any trouble getting this to work, make sure you have joined the Unexpected maker discord server and ping the #FeatherS2 channel, and folks there will be able to help guide you through the process as many have already done it.

 

Buy FeatherS2

You can currently purchase your very own FeatherS2 from