Merge branch 'feat/add_board_esp32_p4x_function_ev' into 'master'

feat: add board esp32p4x function ev

See merge request ae_group/esp-claw!81
This commit is contained in:
Li Shenhang
2026-04-28 15:44:17 +08:00
6 changed files with 17 additions and 5 deletions
+3
View File
@@ -100,6 +100,9 @@ build_application_edge_agent:
- IMAGE: espressif/idf:release-v5.5
EXAMPLE_BOARD: esp32_p4_function_ev
EXAMPLE_TARGET: esp32p4
- IMAGE: espressif/idf:release-v5.5
EXAMPLE_BOARD: esp32_p4x_function_ev
EXAMPLE_TARGET: esp32p4
- IMAGE: espressif/idf:release-v5.5
EXAMPLE_BOARD: m5stack_sticks3
EXAMPLE_TARGET: esp32s3
+12 -1
View File
@@ -35,6 +35,11 @@ logger = logging.getLogger('idf_build_apps')
IDF_PATH = os.getenv('IDF_PATH', '')
BOARD_NAME = 'default'
# Virtual board variants -> (real board for gen-bmgr-config, extra sdkconfig.defaults snippet)
BOARD_VARIANTS: t.Dict[str, t.Tuple[str, str]] = {
'esp32_p4x_function_ev': ('esp32_p4_function_ev', '# CONFIG_ESP32P4_SELECTS_REV_LESS_V3 is not set\n'),
}
PROJECT_ROOT = Path(__file__).parent.parent.parent.absolute()
APPS_BUILD_PER_JOB = 30
IGNORE_WARNINGS = [
@@ -77,8 +82,14 @@ class CustomApp(CMakeApp):
os.remove(os.path.join(self.work_dir, 'dependencies.lock'))
board_name = BOARD_NAME.strip()
if board_name != 'default':
actual_board, extra_defaults = BOARD_VARIANTS.get(board_name, (board_name, ''))
if self.is_board_manager_project():
self._pre_hook(board_name)
self._pre_hook(actual_board)
if extra_defaults:
defaults = Path(self.work_dir) / 'components' / 'gen_bmgr_codes' / 'board_manager.defaults'
if defaults.is_file():
with open(defaults, 'a', encoding='utf-8') as f:
f.write('\n' + extra_defaults)
else:
logger.warning(
"Board '%s' specified but app '%s' has no esp_board_manager dependency; building as normal.",
@@ -55,7 +55,7 @@ peripherals:
sd_dither: 0
sd_dither2: 1
pins:
doubt: 9 # [IO] Data output pin
dout: 9 # [IO] Data output pin
invert_flags:
clk_inv: false
@@ -55,7 +55,7 @@ peripherals:
sd_dither: 0
sd_dither2: 1
pins:
doubt: 9 # [IO] Data output pin
dout: 9 # [IO] Data output pin
invert_flags:
clk_inv: false
@@ -79,7 +79,6 @@ Note that current auto-extraction is mainly based on user messages; whether devi
<Aside type="caution" title="Mind the source of truth">
In full mode, `MEMORY.md` is not the retrieval source of truth. Retrieval and updates are based on structured files (`memory_records.jsonl`, `memory_index.json`).
If the user explicitly asks "what do you remember" or asks to update/delete a remembered item, recall first, then answer.
</Aside>
## What to store where
@@ -79,7 +79,6 @@ ESP-Claw 不依赖向量数据库,而采用 **摘要标签** 机制实现轻
<Aside type="caution" title="注意数据来源">
在完整模式中,`MEMORY.md` 不是记忆检索的唯一事实来源;检索与更新以结构化文件(`memory_records.jsonl`、`memory_index.json`)为准。
若用户明确要求“查看你记得什么”“更新/删除某条已记住信息”,应先召回再回答。
</Aside>
## 使用建议