Skip to content

Commit d9effaa

Browse files
committed
feat(examples): update service_console
1 parent 692c74d commit d9effaa

39 files changed

+1402
-388
lines changed

.build-rules.yml

Lines changed: 22 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -31,83 +31,73 @@ products/speaker:
3131

3232
#
3333
# Test Apps
34+
# Common enable condition: IDF_TARGET in ["esp32s3", "esp32p4"]
3435
#
36+
# Define common enable condition as anchor
37+
_general_test_apps_enable: &general_test_apps_enable
38+
enable:
39+
- if: IDF_TARGET in ["esp32s3", "esp32p4", "esp32c5"]
40+
3541
# brookesia_lib_utils: check
3642
utils/brookesia_lib_utils/test_apps/check:
37-
enable:
38-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
43+
<<: *general_test_apps_enable
3944

4045
# brookesia_lib_utils: function_guard
4146
utils/brookesia_lib_utils/test_apps/function_guard:
42-
enable:
43-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
47+
<<: *general_test_apps_enable
4448

4549
# brookesia_lib_utils: describe_helpers
4650
utils/brookesia_lib_utils/test_apps/describe_helpers:
47-
enable:
48-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
51+
<<: *general_test_apps_enable
4952

5053
# brookesia_lib_utils: log
5154
utils/brookesia_lib_utils/test_apps/log:
52-
enable:
53-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
55+
<<: *general_test_apps_enable
5456

5557
# brookesia_lib_utils: memory_profiler
5658
utils/brookesia_lib_utils/test_apps/memory_profiler:
57-
enable:
58-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
59+
<<: *general_test_apps_enable
5960

6061
# brookesia_lib_utils: plugin
6162
utils/brookesia_lib_utils/test_apps/plugin:
62-
enable:
63-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
63+
<<: *general_test_apps_enable
6464

6565
# brookesia_lib_utils: state_machine
6666
utils/brookesia_lib_utils/test_apps/state_machine:
67-
enable:
68-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
67+
<<: *general_test_apps_enable
6968

7069
# brookesia_lib_utils: task_scheduler
7170
utils/brookesia_lib_utils/test_apps/task_scheduler:
72-
enable:
73-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
71+
<<: *general_test_apps_enable
7472

7573
# brookesia_lib_utils: thread_config
7674
utils/brookesia_lib_utils/test_apps/thread_config:
77-
enable:
78-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
75+
<<: *general_test_apps_enable
7976

8077
# brookesia_lib_utils: thread_profiler
8178
utils/brookesia_lib_utils/test_apps/thread_profiler:
82-
enable:
83-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
79+
<<: *general_test_apps_enable
8480

8581
# brookesia_lib_utils: time_profiler
8682
utils/brookesia_lib_utils/test_apps/time_profiler:
87-
enable:
88-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
83+
<<: *general_test_apps_enable
8984

9085
# brookesia_service_manager
9186
service/brookesia_service_manager/test_apps:
92-
enable:
93-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
87+
<<: *general_test_apps_enable
9488

9589
# brookesia_service_nvs
9690
service/brookesia_service_nvs/test_apps:
97-
enable:
98-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
91+
<<: *general_test_apps_enable
9992

10093
# brookesia_service_sntp
10194
service/brookesia_service_sntp/test_apps:
102-
enable:
103-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
95+
<<: *general_test_apps_enable
10496

10597
# brookesia_service_wifi
10698
service/brookesia_service_wifi/test_apps:
107-
enable:
108-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
99+
<<: *general_test_apps_enable
109100

110101
# Examples
111102
examples/service_console:
112-
enable:
113-
- if: IDF_TARGET in ["esp32s3", "esp32p4"]
103+
<<: *general_test_apps_enable

.github/workflows/launchpad.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ jobs:
8989
- esp_box_3
9090
- esp32_p4_function_ev
9191
- esp32_s3_korvo2_v3
92+
- esp_sensair_shuttle
9293
steps:
9394
- uses: actions/checkout@v3
9495
with:

.gitlab/ci/build.yml

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,38 @@
1111
WARNING_STR: ""
1212

1313
.build_examples_template: &build_examples_template
14+
<<: *build_template
15+
artifacts:
16+
when: always
17+
paths:
18+
- "**/build*/size.json"
19+
- "**/build*/build_log.txt"
20+
- "**/build*/*.bin"
21+
- "**/build*/*.map"
22+
- "**/build*/*.elf"
23+
- "**/build*/flasher_args.json"
24+
- "**/build*/flash_args"
25+
- "**/build*/flash_project_args"
26+
- "**/build*/config/sdkconfig.json"
27+
- "**/build*/bootloader/*.bin"
28+
- "**/build*/bootloader/*.elf"
29+
- "**/build*/partition_table/*.bin"
30+
- "**/build*/mmap_build/*.bin"
31+
- "**/build*/**/*.bin"
32+
- size_info.txt
33+
expire_in: 1 week
34+
variables:
35+
IDF_CI_BUILD: "1"
36+
# By configuring this macro, you can append the compiled configuration file.
37+
# For example, using "sdkconf.etc=default" specifies the default sdkconfig file.
38+
EXAMPLE_CONFIG: "sdkconfig.defaults=defaults;sdkconfig.ci.*=;=defaults"
39+
EXAMPLE_TARGET: "all"
40+
script:
41+
- pip install "idf-component-manager"
42+
- pip install idf_build_apps
43+
- python .gitlab/tools/build_apps.py ${EXAMPLE_DIR} --config ${EXAMPLE_CONFIG} -t ${EXAMPLE_TARGET} -vv
44+
45+
.build_examples_template_without_large_artifacts: &build_examples_template_without_large_artifacts
1446
<<: *build_template
1547
artifacts:
1648
when: always
@@ -192,7 +224,7 @@ build_test_apps_brookesia_service_wifi:
192224
# service_console
193225
build_examples_service_console:
194226
extends:
195-
- .build_examples_template
227+
- .build_examples_template_without_large_artifacts
196228
- .rules:build:examples_service_console
197229
# Using `-t all` directly will cause configuration failures for S3-related boards, so it is necessary to build them separately
198230
parallel:
@@ -203,6 +235,9 @@ build_examples_service_console:
203235
- IMAGE: espressif/idf:release-v5.5
204236
EXAMPLE_TARGET: "esp32p4"
205237
EXAMPLE_CONFIG: "sdkconfig.defaults=defaults;sdkconfig.ci.board.*=;=defaults"
238+
- IMAGE: espressif/idf:release-v5.5
239+
EXAMPLE_TARGET: "esp32c5"
240+
EXAMPLE_CONFIG: "sdkconfig.defaults=defaults;sdkconfig.ci.board.*=;=defaults"
206241
variables:
207242
EXAMPLE_DIR: examples/service_console
208243

.gitlab/ci/rules.yml

Lines changed: 34 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,13 @@
5151
- "agent/brookesia_agent_coze/CMakeLists.txt"
5252
- "agent/brookesia_agent_coze/idf_component.yml"
5353
- "agent/brookesia_agent_coze/Kconfig"
54+
# brookesia_agent_helper
55+
.patterns-component_brookesia_agent_helper: &patterns-component_brookesia_agent_helper
56+
- "agent/brookesia_agent_helper/include/**/*"
57+
- "agent/brookesia_agent_helper/src/**/*"
58+
- "agent/brookesia_agent_helper/CMakeLists.txt"
59+
- "agent/brookesia_agent_helper/idf_component.yml"
60+
- "agent/brookesia_agent_helper/Kconfig"
5461
# brookesia_agent_manager
5562
.patterns-component_brookesia_agent_manager: &patterns-component_brookesia_agent_manager
5663
- "agent/brookesia_agent_manager/include/**/*"
@@ -65,6 +72,23 @@
6572
- "agent/brookesia_agent_openai/CMakeLists.txt"
6673
- "agent/brookesia_agent_openai/idf_component.yml"
6774
- "agent/brookesia_agent_openai/Kconfig"
75+
# brookesia_agent_xiaozhi
76+
.patterns-component_brookesia_agent_xiaozhi: &patterns-component_brookesia_agent_xiaozhi
77+
- "agent/brookesia_agent_xiaozhi/include/**/*"
78+
- "agent/brookesia_agent_xiaozhi/src/**/*"
79+
- "agent/brookesia_agent_xiaozhi/CMakeLists.txt"
80+
- "agent/brookesia_agent_xiaozhi/idf_component.yml"
81+
- "agent/brookesia_agent_xiaozhi/Kconfig"
82+
#
83+
# Expression
84+
#
85+
# brookesia_expression_emote
86+
.patterns-component_brookesia_expression_emote: &patterns-component_brookesia_expression_emote
87+
- "expression/brookesia_expression_emote/include/**/*"
88+
- "expression/brookesia_expression_emote/src/**/*"
89+
- "expression/brookesia_expression_emote/CMakeLists.txt"
90+
- "expression/brookesia_expression_emote/idf_component.yml"
91+
- "expression/brookesia_expression_emote/Kconfig"
6892
#
6993
# Service
7094
#
@@ -78,8 +102,10 @@
78102
# brookesia_service_helper
79103
.patterns-component_brookesia_service_helper: &patterns-component_brookesia_service_helper
80104
- "service/brookesia_service_helper/include/**/*"
105+
- "service/brookesia_service_helper/src/**/*"
81106
- "service/brookesia_service_helper/CMakeLists.txt"
82107
- "service/brookesia_service_helper/idf_component.yml"
108+
- "service/brookesia_service_helper/Kconfig"
83109
# brookesia_service_manager
84110
.patterns-component_brookesia_service_manager: &patterns-component_brookesia_service_manager
85111
- "service/brookesia_service_manager/include/**/*"
@@ -447,14 +473,18 @@
447473
- <<: *if-trigger-job
448474
- <<: *if-dev-push
449475
changes: *patterns-build_system
450-
- <<: *if-dev-push
451-
changes: *patterns-examples_service_console
452476
- <<: *if-dev-push
453477
changes: *patterns-component_brookesia_agent_coze
454478
- <<: *if-dev-push
455479
changes: *patterns-component_brookesia_agent_manager
480+
- <<: *if-dev-push
481+
changes: *patterns-component_brookesia_agent_helper
456482
- <<: *if-dev-push
457483
changes: *patterns-component_brookesia_agent_openai
484+
- <<: *if-dev-push
485+
changes: *patterns-component_brookesia_agent_xiaozhi
486+
- <<: *if-dev-push
487+
changes: *patterns-component_brookesia_expression_emote
458488
- <<: *if-dev-push
459489
changes: *patterns-component_brookesia_service_audio
460490
- <<: *if-dev-push
@@ -469,6 +499,8 @@
469499
changes: *patterns-component_brookesia_service_wifi
470500
- <<: *if-dev-push
471501
changes: *patterns-component_brookesia_lib_utils
502+
- <<: *if-dev-push
503+
changes: *patterns-examples_service_console
472504

473505
# rules for products
474506
.rules:build:products_phone_m5stack_core_s3:

.gitlab/ci/target_test.yml

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,6 @@ variables:
4646
IDF_VERSION: "5.5"
4747
ENV_TAG: "generic,eco4"
4848

49-
.idf_target_version_matrix_p4_eco4_function_ev_board: &idf_target_version_matrix_p4_eco4_function_ev_board
50-
- IDF_TARGET: esp32s3
51-
IDF_VERSION: "5.5"
52-
ENV_TAG: "generic"
53-
- IDF_TARGET: esp32p4
54-
IDF_VERSION: "5.5"
55-
ENV_TAG: "generic,eco4,esp32p4_function_ev_board"
56-
5749
#
5850
# Test apps: brookesia_lib_utils
5951
#
@@ -319,7 +311,16 @@ components_test_brookesia_service_wifi:
319311
artifacts: true
320312
optional: true
321313
parallel:
322-
matrix: *idf_target_version_matrix_p4_eco4_function_ev_board
314+
matrix:
315+
- IDF_TARGET: esp32s3
316+
IDF_VERSION: "5.5"
317+
ENV_TAG: "generic"
318+
- IDF_TARGET: esp32s3
319+
IDF_VERSION: "5.5"
320+
ENV_TAG: "generic,octal-psram"
321+
- IDF_TARGET: esp32p4
322+
IDF_VERSION: "5.5"
323+
ENV_TAG: "generic,eco4,esp32p4_function_ev_board"
323324
tags:
324325
- ${IDF_TARGET}
325326
- ${ENV_TAG}
@@ -341,7 +342,13 @@ examples_test_service_console:
341342
artifacts: true
342343
optional: true
343344
parallel:
344-
matrix: *idf_target_version_matrix_p4_eco4_function_ev_board
345+
matrix:
346+
- IDF_TARGET: esp32s3
347+
IDF_VERSION: "5.5"
348+
ENV_TAG: "generic"
349+
- IDF_TARGET: esp32p4
350+
IDF_VERSION: "5.5"
351+
ENV_TAG: "generic,eco4,esp32p4_function_ev_board"
345352
tags:
346353
- ${IDF_TARGET}
347354
- ${ENV_TAG}

examples/service_console/README.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
| Supported Chips | ESP32-S3 | ESP32-P4 |
2-
| :-------------: | :------: | :------: |
3-
| |||
1+
| Supported Chips | ESP32-S3 | ESP32-P4 | ESP32-C5 |
2+
| :-------------: | :------: | :------: | :------: |
3+
| ||||
44

55
# Service Console Example
66

@@ -45,7 +45,7 @@ This example demonstrates how to run and test ESP-Brookesia service framework fe
4545

4646
### Hardware Requirements
4747

48-
**Basic Features**: Development boards with `ESP32-S3` or `ESP32-P4` chip and `Flash >= 8MB`
48+
**Basic Features**: Development boards with `ESP32-S3`, `ESP32-P4` or `ESP32-C5` chip and `Flash >= 8MB`
4949

5050
**Full Features** (Audio, Emote, Agent): Requires `esp_board_manager` component, supporting the following boards:
5151

@@ -55,6 +55,7 @@ This example demonstrates how to run and test ESP-Brookesia service framework fe
5555
| ESP32-S3-BOX-3 | [GitHub](https://github.com/espressif/esp-box) |
5656
| ESP32-S3-Korvo-2 | [Documentation](https://docs.espressif.com/projects/esp-adf/en/latest/design-guide/dev-boards/user-guide-esp32-s3-korvo-2.html) |
5757
| ESP32-P4-Function-EV-Board | [Documentation](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32p4/esp32-p4-function-ev-board/index.html) |
58+
| ESP32-C5-Sensair-Shuttle | [Documentation](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32c5/esp-sensairshuttle/index.html) |
5859

5960
### Development Environment
6061

@@ -95,6 +96,7 @@ Available `<board>` values:
9596
- `esp_box_3`
9697
- `esp32_p4_function_ev`
9798
- `esp32_s3_korvo2_v3`
99+
- `esp_sensair_shuttle`
98100

99101
For other boards:
100102

examples/service_console/README_CN.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
| 支持的芯片 | ESP32-S3 | ESP32-P4 |
2-
| :--------: | :------: | :------: |
3-
| |||
1+
| 支持的芯片 | ESP32-S3 | ESP32-P4 | ESP32-C5 |
2+
| :--------: | :------: | :------: | :------: |
3+
| | | | |
44

55
# 服务控制台示例
66

@@ -45,7 +45,7 @@
4545

4646
### 硬件要求
4747

48-
**基础功能**:搭载 `ESP32-S3``ESP32-P4` 芯片且 `Flash >= 8MB` 的开发板
48+
**基础功能**:搭载 `ESP32-S3``ESP32-P4``ESP32-C5` 芯片且 `Flash >= 8MB` 的开发板
4949

5050
**完整功能**(Audio、Emote、Agent):需配合 `esp_board_manager` 组件,支持以下开发板:
5151

@@ -55,6 +55,7 @@
5555
| ESP32-S3-BOX-3 | [GitHub](https://github.com/espressif/esp-box) |
5656
| ESP32-S3-Korvo-2 | [文档](https://docs.espressif.com/projects/esp-adf/zh_CN/latest/design-guide/dev-boards/user-guide-esp32-s3-korvo-2.html) |
5757
| ESP32-P4-Function-EV-Board | [文档](https://docs.espressif.com/projects/esp-dev-kits/zh_CN/latest/esp32p4/esp32-p4-function-ev-board/index.html) |
58+
| ESP32-C5-Sensair-Shuttle | [文档](https://docs.espressif.com/projects/esp-dev-kits/zh_CN/latest/esp32c5/esp-sensairshuttle/index.html) |
5859

5960
### 开发环境
6061

@@ -95,6 +96,7 @@ idf.py gen-bmgr-config -b <board> -c ./boards
9596
- `esp_box_3`
9697
- `esp32_p4_function_ev`
9798
- `esp32_s3_korvo2_v3`
99+
- `esp_sensair_shuttle`
98100

99101
使用其他开发板:
100102

examples/service_console/boards/esp32_s3_korvo2_v3/board_peripherals.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ peripherals:
6868
spi_port: SPI2_HOST # 0: SPI1_HOST, 1: SPI2_HOST, 2: SPI3_HOST
6969
mosi_io_num: 0 # MOSI_IO_NUM
7070
sclk_io_num: 1 # SPI Clock signal
71-
max_transfer_sz: 6400 # Maximum transfer size in bytes : width * 2 * 10
71+
max_transfer_sz: 5680 # Maximum transfer size in bytes : width * 2 * 10
7272

7373
# ADC for Button
7474
- name: adc_oneshot
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
config BOARD_ESP_SENSAIR_SHUTTLE
2+
bool

0 commit comments

Comments
 (0)