mirror of
https://github.com/78/xiaozhi-esp32.git
synced 2026-02-18 18:08:11 +00:00
* Update project version to 2.2.1 and refactor camera component handling - Incremented project version from 2.2.0 to 2.2.1 in CMakeLists.txt. - Removed legacy esp32_camera component and replaced it with esp_video for ESP32-S3 and ESP32-P4 boards. - Updated board implementations to utilize the new esp_video component, ensuring compatibility and improved functionality. - Cleaned up Kconfig options related to camera selection, streamlining the configuration process. - Enhanced camera initialization logic across various board files to support the new component structure. * Refactor camera handling in AtomS3R CAM/M12 EchoBase board - Replaced the legacy EspVideo component with the new Esp32Camera class for improved camera functionality. - Updated camera initialization logic to utilize a more structured configuration approach, enhancing clarity and maintainability. - Removed outdated comments and code related to the previous camera implementation in the README file. * Update camera configuration for atoms3r-cam-m12-echo-base - Removed outdated camera configuration options from config.json to streamline the setup. - Retained essential partition table configuration for improved clarity. * Enhance Esp32Camera functionality and memory management - Added esp_timer.h for improved timing functionality. - Streamlined camera initialization by removing redundant frame buffer setup and logging. - Improved memory allocation for JPEG encoding and added error handling for unsupported pixel formats. - Updated comments for clarity and consistency, ensuring better understanding of the code flow.
ESP-P4-Function-EV-Board
Board support for ESP-P4-Function-EV-Board. Wi‑Fi uses ESP‑Hosted via the on‑board ESP32‑C6. LCD is supported via the official MIPI‑DSI LCD adapter.
Features
- Wi‑Fi:
esp_wifi_remote+esp_hosted(SDIO) with ESP32‑C6 co‑processor - Display: 7" MIPI‑DSI LCD (1024×600) via adapter; can also run headless
- Audio: ES8311 codec with speaker and microphone support
- Touch: GT911 capacitive touch controller
- SD Card: MicroSD card support (MMC mode)
- Camera: MIPI-CSI camera interface with fallback DVP configuration (OV5647, SC2336 sensors supported)
- USB: USB host/device support
- SPIFFS: Built-in flash filesystem support
- Fonts: Custom font support with Unicode characters (Vietnamese, Chinese, etc.)
Configure
In menuconfig: Xiaozhi Assistant -> Board Type -> ESP-P4-Function-EV-Board
Ensure these are set (auto-set when building via config.json):
CONFIG_SLAVE_IDF_TARGET_ESP32C6=yCONFIG_ESP_HOSTED_P4_DEV_BOARD_FUNC_BOARD=yCONFIG_ESP_HOSTED_SDIO_HOST_INTERFACE=yCONFIG_ESP_HOSTED_SDIO_4_BIT_BUS=y
LCD Connection (from Espressif user guide)
- Connect the LCD adapter board J3 to the board’s MIPI DSI connector (reverse ribbon).
- Wire
RST_LCD(adapter J6) toGPIO27(board J1). - Wire
PWM(adapter J6) toGPIO26(board J1). - Optionally power the LCD adapter via its USB or provide
5VandGNDfrom the board.
These pins are pre-configured in config.h as PIN_NUM_LCD_RST=GPIO27 and DISPLAY_BACKLIGHT_PIN=GPIO26. Resolution is set to 1024×600.
Build (example)
idf.py set-target esp32p4
idf.py menuconfig
idf.py build
Tip: In menuconfig, choose Xiaozhi Assistant -> Board Type -> ESP-P4-Function-EV-Board.
If building a release via scripts, the config.json in this folder appends the required Hosted options.