Rename EchoEar to ESP-VoCat (#1827)
This commit is contained in:
@ -255,13 +255,13 @@ elseif(CONFIG_BOARD_TYPE_ESP_HI)
|
||||
set(BOARD_TYPE "esp-hi")
|
||||
# Set ESP_HI emoji directory for DEFAULT_ASSETS_EXTRA_FILES
|
||||
set(DEFAULT_ASSETS_EXTRA_FILES "${CMAKE_BINARY_DIR}/emoji")
|
||||
elseif(CONFIG_BOARD_TYPE_ECHOEAR)
|
||||
set(BOARD_TYPE "echoear")
|
||||
elseif(CONFIG_BOARD_TYPE_ESP_VOCAT)
|
||||
set(BOARD_TYPE "esp-vocat")
|
||||
set(BUILTIN_TEXT_FONT font_puhui_20_4)
|
||||
set(BUILTIN_ICON_FONT font_awesome_20_4)
|
||||
set(DEFAULT_EMOJI_COLLECTION twemoji_64)
|
||||
set(EMOTE_RESOLUTION "360_360")
|
||||
# set(EMOTE_EXTERNAL_PATH "${CMAKE_CURRENT_SOURCE_DIR}/boards/echoear/assets")
|
||||
# set(EMOTE_EXTERNAL_PATH "${CMAKE_CURRENT_SOURCE_DIR}/boards/esp-vocat/assets")
|
||||
elseif(CONFIG_BOARD_TYPE_ESP_SENSAIRSHUTTLE)
|
||||
set(BOARD_TYPE "esp-sensairshuttle")
|
||||
set(BUILTIN_TEXT_FONT font_puhui_basic_16_4)
|
||||
|
||||
@ -185,8 +185,8 @@ choice BOARD_TYPE
|
||||
config BOARD_TYPE_ESP_P4_FUNCTION_EV_BOARD
|
||||
bool "Espressif ESP-P4-Function-EV-Board"
|
||||
depends on IDF_TARGET_ESP32P4
|
||||
config BOARD_TYPE_ECHOEAR
|
||||
bool "EchoEar"
|
||||
config BOARD_TYPE_ESP_VOCAT
|
||||
bool "Espressif ESP-VoCat"
|
||||
depends on IDF_TARGET_ESP32S3
|
||||
config BOARD_TYPE_KEVIN_BOX_2
|
||||
bool "Kevin Box 2"
|
||||
@ -653,7 +653,7 @@ choice DISPLAY_STYLE
|
||||
config USE_EMOTE_MESSAGE_STYLE
|
||||
bool "Emote animation style"
|
||||
depends on BOARD_TYPE_ESP_BOX || BOARD_TYPE_ESP_BOX_3 \
|
||||
|| BOARD_TYPE_ECHOEAR || BOARD_TYPE_LICHUANG_DEV_S3 \
|
||||
|| BOARD_TYPE_ESP_VOCAT || BOARD_TYPE_LICHUANG_DEV_S3 \
|
||||
|| BOARD_TYPE_ESP_SENSAIRSHUTTLE
|
||||
endchoice
|
||||
|
||||
@ -754,7 +754,7 @@ config USE_DEVICE_AEC
|
||||
|| BOARD_TYPE_WAVESHARE_ESP32_S3_TOUCH_AMOLED_2_06 || BOARD_TYPE_WAVESHARE_ESP32_S3_TOUCH_LCD_4B || BOARD_TYPE_WAVESHARE_ESP32_P4_WIFI6_TOUCH_LCD_4B || BOARD_TYPE_WAVESHARE_ESP32_P4_WIFI6_TOUCH_LCD_7B \
|
||||
|| BOARD_TYPE_WAVESHARE_ESP32_P4_WIFI6_TOUCH_LCD_3_4C || BOARD_TYPE_WAVESHARE_ESP32_P4_WIFI6_TOUCH_LCD_4C || BOARD_TYPE_ESP_S3_LCD_EV_Board_2 || BOARD_TYPE_YUNLIAO_S3 \
|
||||
|| BOARD_TYPE_WAVESHARE_ESP32_P4_WIFI6_TOUCH_LCD_7 || BOARD_TYPE_WAVESHARE_ESP32_P4_WIFI6_TOUCH_LCD_8 || BOARD_TYPE_WAVESHARE_ESP32_P4_WIFI6_TOUCH_LCD_10_1 \
|
||||
|| BOARD_TYPE_ECHOEAR || BOARD_TYPE_WAVESHARE_ESP32_S3_TOUCH_LCD_3_49 || BOARD_TYPE_WAVESHARE_ESP32_S3_RLCD_4_2 || BOARD_TYPE_ZHENGCHEN_CAM || BOARD_TYPE_ZHENGCHEN_CAM_ML307 \
|
||||
|| BOARD_TYPE_ESP_VOCAT || BOARD_TYPE_WAVESHARE_ESP32_S3_TOUCH_LCD_3_49 || BOARD_TYPE_WAVESHARE_ESP32_S3_RLCD_4_2 || BOARD_TYPE_ZHENGCHEN_CAM || BOARD_TYPE_ZHENGCHEN_CAM_ML307 \
|
||||
|| BOARD_TYPE_WAVESHARE_ESP32_S3_TOUCH_LCD_4_3C)
|
||||
help
|
||||
To work properly, device-side AEC requires a clean output reference path from the speaker signal and physical acoustic isolation between the microphone and speaker.
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
# EchoEar 喵伴
|
||||
# ESP-VoCat 喵伴
|
||||
|
||||
## 简介
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
<a href="https://oshwhub.com/esp-college/echoear"><b> 立创开源平台 </b></a>
|
||||
</div>
|
||||
|
||||
EchoEar 喵伴是一款智能 AI 开发套件,搭载 ESP32-S3-WROOM-1 模组,1.85 寸 QSPI 圆形触摸屏,双麦阵列,支持离线语音唤醒与声源定位算法。硬件详情等可查看[立创开源项目](https://oshwhub.com/esp-college/echoear)。
|
||||
ESP-VoCat 喵伴是一款智能 AI 开发套件,搭载 ESP32-S3-WROOM-1 模组,1.85 寸 QSPI 圆形触摸屏,双麦阵列,支持离线语音唤醒与声源定位算法。硬件详情等可查看[立创开源项目](https://oshwhub.com/esp-college/echoear)。
|
||||
|
||||
## 配置、编译命令
|
||||
|
||||
@ -25,11 +25,11 @@ idf.py menuconfig
|
||||
分别配置如下选项:
|
||||
|
||||
### 基本配置
|
||||
- `Xiaozhi Assistant` → `Board Type` → 选择 `EchoEar`
|
||||
- `Xiaozhi Assistant` → `Board Type` → 选择 `Espressif ESP-VoCat`
|
||||
|
||||
### UI风格选择
|
||||
|
||||
EchoEar 支持多种不同的 UI 显示风格,通过 menuconfig 配置选择:
|
||||
ESP-VoCat 支持多种不同的 UI 显示风格,通过 menuconfig 配置选择:
|
||||
|
||||
- `Xiaozhi Assistant` → `Select display style` → 选择显示风格
|
||||
|
||||
@ -63,7 +63,7 @@ EchoEar 支持多种不同的 UI 显示风格,通过 menuconfig 配置选择
|
||||
- **适用**: 喜欢微信风格的用户
|
||||
- **类**: `SpiLcdDisplay`
|
||||
|
||||
> **说明**: EchoEar 使用16MB Flash,需要使用专门的分区表配置来合理分配存储空间给应用程序、OTA更新、资源文件等。
|
||||
> **说明**: ESP-VoCat 喵伴使用16MB Flash,需要使用专门的分区表配置来合理分配存储空间给应用程序、OTA更新、资源文件等。
|
||||
|
||||
按 `S` 保存,按 `Q` 退出。
|
||||
|
||||
@ -75,7 +75,7 @@ idf.py build
|
||||
|
||||
**烧录**
|
||||
|
||||
将 EchoEar 连接至电脑,**注意打开电源**,并运行:
|
||||
将 ESP-VoCat 喵伴连接至电脑,**注意打开电源**,并运行:
|
||||
|
||||
```bash
|
||||
idf.py flash
|
||||
@ -2,7 +2,7 @@
|
||||
"target": "esp32s3",
|
||||
"builds": [
|
||||
{
|
||||
"name": "echoear",
|
||||
"name": "esp-vocat",
|
||||
"sdkconfig_append": [
|
||||
"CONFIG_USE_EMOTE_MESSAGE_STYLE=y",
|
||||
"CONFIG_MMAP_FILE_NAME_LENGTH=32",
|
||||
@ -24,7 +24,7 @@
|
||||
#include <freertos/semphr.h>
|
||||
#include <freertos/task.h>
|
||||
|
||||
#define TAG "EchoEar"
|
||||
#define TAG "ESP-VoCat"
|
||||
|
||||
|
||||
temperature_sensor_handle_t temp_sensor = NULL;
|
||||
@ -282,7 +282,7 @@ public:
|
||||
// Create touch interrupt semaphore
|
||||
touch_isr_mux_ = xSemaphoreCreateBinary();
|
||||
if (touch_isr_mux_ == NULL) {
|
||||
ESP_LOGE("EchoEar", "Failed to create touch semaphore");
|
||||
ESP_LOGE(TAG, "Failed to create touch semaphore");
|
||||
}
|
||||
}
|
||||
|
||||
@ -319,15 +319,15 @@ public:
|
||||
// Press event (transition from not touched to touched)
|
||||
press_count_++;
|
||||
event = TOUCH_PRESS;
|
||||
ESP_LOGI("EchoEar", "TOUCH PRESS - count: %d, x: %d, y: %d", press_count_, tp_.x, tp_.y);
|
||||
ESP_LOGI(TAG, "TOUCH PRESS - count: %d, x: %d, y: %d", press_count_, tp_.x, tp_.y);
|
||||
} else if (!is_touched && was_touched_) {
|
||||
// Release event (transition from touched to not touched)
|
||||
event = TOUCH_RELEASE;
|
||||
ESP_LOGI("EchoEar", "TOUCH RELEASE - total presses: %d", press_count_);
|
||||
ESP_LOGI(TAG, "TOUCH RELEASE - total presses: %d", press_count_);
|
||||
} else if (is_touched && was_touched_) {
|
||||
// Continuous touch (hold)
|
||||
event = TOUCH_HOLD;
|
||||
ESP_LOGD("EchoEar", "TOUCH HOLD - x: %d, y: %d", tp_.x, tp_.y);
|
||||
ESP_LOGD(TAG, "TOUCH HOLD - x: %d, y: %d", tp_.x, tp_.y);
|
||||
}
|
||||
|
||||
// Update previous state
|
||||
@ -380,7 +380,7 @@ private:
|
||||
SemaphoreHandle_t touch_isr_mux_;
|
||||
};
|
||||
|
||||
class EchoEar : public WifiBoard {
|
||||
class EspVocat : public WifiBoard {
|
||||
private:
|
||||
i2c_master_bus_handle_t i2c_bus_;
|
||||
Cst816s* cst816s_;
|
||||
@ -471,7 +471,7 @@ private:
|
||||
while (true) {
|
||||
if (touchpad->WaitForTouchEvent()) {
|
||||
auto &app = Application::GetInstance();
|
||||
auto &board = (EchoEar &)Board::GetInstance();
|
||||
auto &board = (EspVocat &)Board::GetInstance();
|
||||
|
||||
ESP_LOGD(TAG, "Touch event, TP_PIN_NUM_INT: %d", gpio_get_level(TP_PIN_NUM_INT));
|
||||
touchpad->UpdateTouchPoint();
|
||||
@ -509,7 +509,7 @@ private:
|
||||
gpio_config(&int_gpio_config);
|
||||
gpio_install_isr_service(0);
|
||||
gpio_intr_enable(TP_PIN_NUM_INT);
|
||||
gpio_isr_handler_add(TP_PIN_NUM_INT, EchoEar::touch_isr_callback, cst816s_);
|
||||
gpio_isr_handler_add(TP_PIN_NUM_INT, EspVocat::touch_isr_callback, cst816s_);
|
||||
}
|
||||
|
||||
void InitializeSpi()
|
||||
@ -612,7 +612,7 @@ private:
|
||||
#endif // CONFIG_ESP_VIDEO_ENABLE_USB_UVC_VIDEO_DEVICE
|
||||
|
||||
public:
|
||||
~EchoEar() {
|
||||
~EspVocat() {
|
||||
// Stop tasks
|
||||
if (charge_task_handle_ != nullptr) {
|
||||
vTaskDelete(charge_task_handle_);
|
||||
@ -627,7 +627,7 @@ public:
|
||||
delete display_;
|
||||
// Note: backlight_ (PwmBacklight) and camera_ (EspVideo) are not deleted here
|
||||
// because their base classes (Backlight, Camera) don't have virtual destructors.
|
||||
// Since EchoEar is a singleton that lives for the device lifetime, this is acceptable.
|
||||
// Since EspVocat is a singleton that lives for the device lifetime, this is acceptable.
|
||||
|
||||
// Remove GPIO ISR handler
|
||||
gpio_isr_handler_remove(TP_PIN_NUM_INT);
|
||||
@ -640,7 +640,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
EchoEar() : boot_button_(BOOT_BUTTON_GPIO)
|
||||
EspVocat() : boot_button_(BOOT_BUTTON_GPIO)
|
||||
{
|
||||
InitializeI2c();
|
||||
uint8_t pcb_version = DetectPcbVersion();
|
||||
@ -693,4 +693,4 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
DECLARE_BOARD(EchoEar);
|
||||
DECLARE_BOARD(EspVocat);
|
||||
Reference in New Issue
Block a user