Files
SmartSpeaker/HARDWARE_REFERENCE.md

82 lines
3.4 KiB
Markdown

# Hardware Reference: ESP32-S3-AUDIO-Board-EN
This document contains the hardware specifications, I2C device addresses, pinout mappings, and auxiliary information for the **UeeKKoo (Waveshare) ESP32-S3-AUDIO-Board-EN** (No Battery version).
---
## 1. System Specifications
* **Microcontroller:** Espressif ESP32-S3R8
* **CPU:** Dual-core Xtensa 32-bit LX7 CPU, running at 240 MHz.
* **ROM:** 384 KB
* **SRAM:** 512 KB
* **External Storage & Memory:**
* **Flash:** 16 MB external NOR Flash.
* **PSRAM:** 8 MB stacked PSRAM (connected via Octal SPI).
* **Connectivity:**
* **Wi-Fi:** 2.4 GHz (802.11 b/g/n).
* **Bluetooth:** Bluetooth 5.0 (LE).
* **Operating System:** FreeRTOS (standard in ESP-IDF).
* **Power Input:** USB Type-C (5V) & onboard lithium battery charging/discharging management.
* **USB Ports:** 1x Type-C port (USB-to-UART / Native USB).
---
## 2. Onboard Chips & I2C Addresses
The board utilizes a shared I2C bus on **SDA: GPIO 11** and **SCL: GPIO 10**.
| Peripheral / Chip | Model | I2C Address (7-bit) | Description |
| :--- | :--- | :--- | :--- |
| **GPIO Expander** | TCA9555 | `0x20` | Extends GPIO pins for keys, controls, and status lines. |
| **Audio DAC (Playback)** | ES8311 | `0x18` | Low-power mono audio codec chip driving the speaker. |
| **Audio ADC (Recording)** | ES7210 | `0x40` | High-performance 4-channel audio ADC for the digital mic array. |
| **Real-Time Clock (RTC)** | PCF85063 | `0x51` | Clock and timekeeper. |
---
## 3. Direct GPIO Pin Mappings
### I2S Audio Bus (Shared)
| Signal | GPIO Pin | Connected To |
| :--- | :--- | :--- |
| **I2S MCLK** | GPIO 12 | System Clock for ES8311 & ES7210 |
| **I2S BCLK** | GPIO 13 | Bit Clock for I2S |
| **I2S LRCK** | GPIO 14 | Left-Right/Word Select Clock |
| **I2S DIN** | GPIO 15 | Microphone input (data from ES7210 ADC) |
| **I2S DOUT** | GPIO 16 | Speaker output (data to ES8311 DAC) |
### Control Bus
| Signal | GPIO Pin | Description |
| :--- | :--- | :--- |
| **I2C SDA** | GPIO 11 | Shared I2C Data Line |
| **I2C SCL** | GPIO 10 | Shared I2C Clock Line |
### Onboard LEDs
| Signal | GPIO Pin | Description |
| :--- | :--- | :--- |
| **WS2812B DIN** | GPIO 38 | Data Line for 7-ring programmable RGB LEDs (GRB/RGB order) |
---
## 4. TCA9555 GPIO Expander Mappings (I2C Address `0x20`)
Peripherals such as the power amplifier enable and physical buttons are routed through the I2C-controlled **TCA9555 expander** to save ESP32-S3 physical pins.
| Expander Pin | Signal Name | Type | Description | Active State |
| :--- | :--- | :--- | :--- | :--- |
| **Pin 8** | `PA_CTRL` (PA_EN) | Output | Enables the onboard speaker power amplifier. Must be set high for sound. | High (`1`) |
| **Pin 9** | `KEY1` (Volume Down) | Input | Onboard physical push button (Key 1). | Low (`0` when pressed) |
| **Pin 10** | `KEY2` (Play/Pause) | Input | Onboard physical push button (Key 2). | Low (`0` when pressed) |
| **Pin 11** | `KEY3` (Volume Up) | Input | Onboard physical push button (Key 3). | Low (`0` when pressed) |
---
## 5. Expansion & Compatibility Interfaces
* **Display Interface:** Onboard 18-pin FPC header supporting SPI LCD screens:
* Compatible sizes: 1.47", 2", 2.8", 3.5" LCDs.
* **Camera Interface:** Onboard DVP camera header:
* Compatible camera sensors: OV2640, OV5640.
* **TF Card Slot:** Onboard MicroSD card slot for external audio asset storage and data logging.