The ESP32-S3-Leaf is a series of low-powered microcontrollers designed for IoT development and Maker DIY board.It supports 2.4 GHz Wi-Fi and Bluetooth® LE dual-mode wireless communication, the peripheral is compatible with low-power hardware design, and the power consumption is only 10uA in deep sleep mode.
The main controller supports two power supply inputs: USB and external 3.7V lithium battery, both can be interchangable freely. The battery could also be charged while USB is plugged in. Compact size, various interface, easy to use, and can be directly applied to low-power IoT projects.
In terms of programming, the Leaf-S3 supports ESP-IDF, Arduino, micropython and other methods.
The IO pins on Leaf-S3 are identical to the Espressif ESP32-S3-DevKitC-1, developers can add peripherals that are supported by DevKitC-1 onto the Leaf-S3, and can also combine it onto a breadboard.
Dev Board | ESP32-S3-Leaf |
---|---|
GPIO Pins | 36 |
3.3v Pins | 3 |
5v Pins | 1 |
GND Pins | 4 |
ARGB LEDs | 1 on GPIO48 |
Chip Internal USB | USB-C Connector x 1 |
UART TTL to USB | None |
External Battery Socket | 3.7v Li-ion Battery dock |
Battery Charging | 500mA Charging Current |
JST SH 1mm 4-Pin Socket | 1 |
The amount, numeric order, and spacing of IO pins on Leaf-S3 are identical to the Espressif ESP32-S3-DevKitC-1.
The Leaf-S3 dev board no longer equips traditional UART TTL to USB converter chip and its dedicated USB port. This is due to the ESP32-S3 chip's internal USB function were improved, supporting CDC-ACM virtual serial port and JTAG interface, which is capable of software development and firmware management feature, that makes the external converter chip redundant.
Compared to ESP32-S3-DevKitC-1 dev board, the Leaf-S3 adds an external battery socket and a charging circuit, capable of charging the battery via USB. When a 3.7v battery is connected, unplugging the USB will not cause the program to break, making it fit for multiple applications.
Leaf-S3 dev board is equipped with an I²C 4 pin dock, this stabalizes connection to other I²C peripherals. This dock is not only restricted to I²C connection, any module that requires a 3.3v pin, a GND pin, one or two data pin can also be connected to the Leaf-S3 via this 4 pin dock.
ESP32-S3 is a dual-core XTensa LX7 MCU, capable of running at 240 MHz. Apart from its 512 KB of internal SRAM, it also comes with integrated 2.4 GHz, 802.11 b/g/n Wi-Fi and Bluetooth 5 (LE) connectivity that provides long-range support. It has 45 programmable GPIOs and supports a rich set of peripherals. Compared with ESP32, it supports larger, high-speed octal SPI flash, and PSRAM with configurable data and instruction cache.
What follows is a description of the most important features of ESP32-S3.
ESP32-S3-Leaf-S3 Spec | |
---|---|
SoC | ESP32-S3,Xtensa® dual-core 32-bit LX7 microprocessor |
Clock Frequency | 240MHz MAX |
Operating Temperature | -40℃~+85℃ |
Internal ROM | 384 KB |
Internal SRAM | 320 KB |
Onboard FLASH ROM | 8MB |
On-chip PSRAM | 2MB |
WIFI | IEEE 802.11 b/g/n ,2.4Ghz,150Mbps |
Bluetooth | Bluetooth 5 ,Bluetooth mesh |
GPIO | BPI-Leaf-S3 has led out 36 available gpios |
ADC | 2 × 12-bit SAR ADCs, up to 20 channels |
Touch Sensor | 14 |
SPI | 4 |
I2C | 2 |
I2S | 2 |
LCD | 1 × LCD interface (8-bit ~16-bit parallel RGB, I8080 and MOTO6800) |
CAMERA | 1 × DVP 8-bit ~16-bit camera interface |
UART | 3 |
PWM | 8 channels 14 bits |
MCPWM | 2 |
USB | 1 × full-speed USB OTG,female Type-C socket |
USB Serial/JTAG controller | 1,CDC-ACM ,JTAG |
Temperature Sensor | 1,ranging from -20 °C to 110 °C |
SD/MMC | 1 × SDIO host controller with 2 slots,SD 3.0,SD 3.01,SDIO 3.0,CE-ATA 1.1,MMC 4.41,eMMC 4.5,eMMC 4.51 |
TWAI® controller | 1 ,compatible with ISO 11898-1 (CAN Specification 2.0) |
General DMA controller (GDMA) | 5 transmit channels and 5 receive channels |
RMT | 4 TX channels,4RX channels.Eight channels share a 384 x 32-bit RAM |
Pulse Count Controller | 4 independent pulse counters (units).Each unit consists of two independent channels |
Timers | 4 × 54-bit general-purpose timers. 1 × 52-bit system timer. 3 × watchdog timers |
External crystal oscillator | 40Mhz |
RTC and LowPower Management | Power Management Unit (PMU) + Ultra-Low-Power Coprocessor(ULP) |
Deep-sleep consumption current | 10uA |
Operating Voltage | 3.3V |
Input Voltage | 3.3V~5.5V |
Maximum discharge current | 2A@3.3V DC/DC |
USB charge | Support |
Maximum charging current | 500mA |
Neopixel LED | 1 |
ESP32-Leaf-S3 Dimensions | |
---|---|
Pin spacing | 2.54mm |
Mounting hole spacing | 23mm/ 62.25mm |
Mounting hole size | bore 2mm/outside 3mm |
Motherboard size | 26 × 65.25(mm)/1.02 x 2.57(inches) |
board thickness | 1.2mm |
The pin spacing is breadboard compatible for easy application debugging.
ESP32-Leaf-S3 GPIO Pin define | ||
---|---|---|
Peripheral Interface | Signal | Pin |
ADC | ADC1_CH0~9 | GPIO 1~10 |
ADC2_CH0~9 | GPIO 11~20 | |
Touch sensor | TOUCH1~14 | GPIO 1~14 |
JTAG | MTCK | GPIO 39 |
MTDO | GPIO 40 | |
MTDI | GPIO 41 | |
MTMS | GPIO 42 | |
UART | The pins are assigned by default, and can be redefined to any GPIO | |
U0RXD_in | GPIO 44 | |
U0CTS_in | GPIO 16 | |
U0DSR_in | any GPIO | |
U0TXD_out | GPIO43 | |
U0RTS_out | GPIO 15 | |
U0DTR_out | any GPIO | |
U1RXD_in | GPIO 18 | |
U1CTS_in | GPIO 20 | |
U1DSR_in | any GPIO | |
U1TXD_out | GPIO 17 | |
U1RTS_out | GPIO 19 | |
U1DTR_out | any GPIO | |
U2 | any GPIO | |
I2C | any GPIO | |
PWM | any GPIO | |
I2S | any GPIO | |
LCD | any GPIO | |
CAMERA | any GPIO | |
RMT | any GPIO | |
SPI0/1 | Used for FLASH and PSRAM | |
SPI2/3 | any GPIO | |
Pulse counter | any GPIO | |
USB OTG | D- | GPIO 19(on-chip PHY) |
D+ | GPIO 20(on-chip PHY) | |
VP | GPIO 42(external PHY) | |
VM | GPIO 41(external PHY) | |
RCV | GPIO21(external PHY) | |
OEN | GPIO 40(external PHY) | |
VPO | GPIO 39(external PHY) | |
VMO | GPIO38(external PHY) | |
USB Serial/JTAG | D- | GPIO 19(on-chip PHY) |
D+ | GPIO 20(on-chip PHY) | |
VP | GPIO 42(external PHY) | |
VM | GPIO 41(external PHY) | |
OEN | GPIO 40(external PHY) | |
VPO | GPIO 39(external PHY) | |
VMO | GPIO38(external PHY) | |
SD/MMC | any GPIO | |
MCPWM | any GPIO | |
TWAI | any GPIO | |
Neopixel LED | GPIO 48 |
ESP-IDF is the development framework for Espressif SoCs supported on Windows, Linux and macOS.
It is recommend that developers install ESP-IDF via IDE.
Or install manually based on operating system:
API:
To enable your BPI-Leaf-S3 device to flash via USB-CDC.
There are two ways to enter Bootloader mode:
The chip controls GPIO0 via BOOT button to choose between reset or cold boot.
Confirm the port of your BPI-Leaf-S3 device via device manager, it might display different port if you are on different modes.
Regardless of the programmer is a beginner or not, MicroPython is considered to be less difficult to develop than other MCU programming languages.
Its code is easy to understand compared to other programming languages, and it has various resources accumulated over the years by the open source community.
Just like Python, it has strong vitality and application value.
Forum resources
CircuitPython Repo header logo.jpg
CircuitPython is a programming language designed to simplify experimenting and learning to code on low-cost microcontroller boards.
CircuitPython programming with Mu editor is the easiest way to get started. Install the software and connect the device to start using it.
BPI-Leaf-S3 CircuitPython Download Page
How to install tinyUF2 firmware:
To enable your BPI-Leaf-S3 device to flash via USB-CDC.
Connect it to the computer via USB, hold BOOT button, press RST button once, then release BOOT button.
In the Install, Repair, or Update UF2 Bootloader section at the bottom of the page, follow its instructions to download and install tinyUF2 firmware.
How to install CircuitPython firmware:
Click the DOWNLOAD .UF2 NOW button on the right side of the page to download the firmware to the local, and then copy it to the disk in BPI-Leaf-S3 UF2 Bootloader mode, and it can be used after automatic reset.
Supported by the adafruit/circuitpython GitHub repository
https://github.com/adafruit/circuitpython/pull/6904
Supported by the adafruit/tinyuf2 GitHub repository
Arduino is an open source embedded software and hardware development platform for users to create interactive embedded projects.
Supported by the arduino-esp32 GitHub repository
https://github.com/espressif/arduino-esp32/pull/7345
The board has been merged into the master branch.
ICBbuy: icbbuy.com
Aliexpress shop : https://www.aliexpress.com/item/1005004999548562.html?spm=5261.ProductManageOnline.0.0.44924edfrLDpJp
Tindie: https://www.tindie.com/products/adz1122/esp32-iot-development-with-wifi-bt-psram-flash/
OEM&OEM customized service : sales@icbbuy.com