ci / test (pull_request) Successful in 1m13s
ci / firmware (wroom, sdkconfig.wroom, esp32) (pull_request) Successful in 4m39s
ci / firmware (jc4827w543, sdkconfig.s3, esp32s3) (pull_request) Successful in 4m41s
ci / test (push) Successful in 1m8s
ci / firmware (wroom, sdkconfig.wroom, esp32) (push) Successful in 4m9s
ci / firmware (jc4827w543, sdkconfig.s3, esp32s3) (push) Successful in 4m15s
1.4 KiB
1.4 KiB
STATUS: DONE
DEPENDS: I01
Notes: Poll API named hal_temp_tick (declared in hal_temp.h). idf.py build for both targets verified via CI run 38616 (no local IDF). S3 flash watchdog check not run — no device attached to this machine.
READ: docs/megaplans/INTEGRATION-MEGAPLAN.md, main/main.c, components/hal_temp/*
IN:
hal_temp: Generalizehal_temp.cto useboard_pin_temp()instead of hardcoded macros. Compile for both targets via CMake (IDF_TARGET esp32|esp32s3→ shared source,PRIV_REQUIRES board_wroom|board_jc4827w543).main.cbug fix:temp_taskcurrently callsautofilm_temp_tick()only#ifdef AUTOFILM_BOARD_WROOMand has novTaskDelay— on S3 it spins at priority 2 and starves the idle task (task-WDT risk). Move the tick loop into ahal_temp-level poll (e.g.hal_temp_tick()weak per-board) or addvTaskDelay(pdMS_TO_TICKS(750))on the non-WROOM path so the task always blocks.
OUT: Motor logic, audio logic. FORBIDDEN: Removing the watchdog, deleting the temp task.
VERIFY: idf.py build succeeds for both esp32 and esp32s3. Flash to S3 and verify no task watchdog panics occur in the console.
COMMITS:
Share onewire temp HAL across both boardsFix temp_task starvation bug on non-WROOM
DoD checkboxes:
hal_tempgeneralized to use board accessors.temp_taskstarvation bug fixed.- Build succeeds on both targets.