BPI-Leaf-S3

From Banana Pi Wiki
Revision as of 19:34, 7 March 2022 by Wind (talk | contribs) (Introduction)
Jump to: navigation, search


Introduction

BPI-Leaf-S3 with ESP32-S3
BPI-Leaf-S3 with ESP32-S3

BPI-Leaf-S3 banner.jpg

The Banana Pi Leaf series are low-power microcontrollers designed for the Internet of Things.

The Leaf-S3's onboard ESP32-S3 chip is powered by an Xtensa® 32-bit LX7 dual-core processor with a main frequency of up to 240 MHz.

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 modes: USB and external 3.7V lithium battery, which can realize the function of automatic power switching under dual power supply, and supports USB charging mode. Small size, convenient interface, easy to use, and can be directly applied to low-power IoT projects.

In terms of programming, Leaf-S3 motherboard supports ESP-IDF, Arduino, micropython and other methods for programming and development.

All IO pins corresponding to the chip are marked on the Leaf-S3 motherboard, which lowers the threshold for use.

Key Features

  • ESP32-S3,Xtensa® 32 bit LX7
  • External PSRAM , FLASH
  • Ultra-low power 10uA
  • 2.4G WIFI ,Bluetooth 5 ,Bluetooth mesh
  • GPIO , ADC , TOUCH , PWM , I2C , SPI , RMT , I2S , UART , LCD,CAMERA ,USB , JTAG
  • 1* 4pin I2C connector
  • 1 * USB Type-C
  • 1 * 2pin battery connector,support charging
  • 1 * Neopixel LED

Hardware

Hardware sketch map

Leaf-S3 board.png

Hardware Spec

BPI-Leaf-S3 Spec
SoC ESP32-S3,Xtensa® dual-core 32-bit LX7 microprocessor
Clock Frequency 240MHz MAX
Ambient Temperature -40℃~+85℃
Internal ROM 384 KB
Internal SRAM 320 KB
External FLASH ROM 8MB
External PSRAM 8MB
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,range of –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 Low­Power 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 [email protected] LDO
USB charge Support
Maximum charging current 500mA
Neopixel LED 1

Hardware Dimensions

Leaf-S3 board dimension.png

BPI-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.

Peripheral Pin Configurations

BPI-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

Software

MicroPython development

Mircopython.png

MicroPython is a lean and efficient implementation of the Python 3 programming language that includes a small subset of the Python standard library and is optimised to run on microcontrollers and in constrained environments.

Regardless of whether there is a programming foundation or not, MicroPython is definitely far less difficult to get started than other MCU programming languages.

Its code is easy to read, and it has rich resources accumulated over the years in the open source community.

Just like Python, it has strong vitality and application value.

Resources