1-bit SDIO to kill the wedge-reboot loop; gong on cold boot only
Test, Build and Push / test-gateway (push) Successful in 10s
Test, Build and Push / release (push) Skipped
Test, Build and Push / build-gateway (push) Skipped

Night-watch caught the instability in the act at 7min uptime:
  E H_SDIO_DRV: sdio_write_task: Failed to send data: 258 (timeout)
  E H_SDIO_DRV: Unrecoverable host sdio state -> SW_CPU_RESET
i.e. esp-hosted-mcu#167. Known mitigation: 1-bit SDIO bus (#148),
still ~80x voice bandwidth. Also: recovery reboots no longer ring
the gong (esp_reset_reason gate) - a butler doesn't bong at 3am.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-15 01:19:52 +02:00
co-authored by Claude Fable 5
parent b8974ec84f
commit 7943e0e72a
2 changed files with 8 additions and 1 deletions
+4 -1
View File
@@ -5,6 +5,7 @@
*/
#include "esp_log.h"
#include "esp_system.h"
#include "bsp/esp-bsp.h"
#include "desklock.h"
@@ -57,7 +58,9 @@ void app_main(void)
face_init();
audio_init();
audio_play_gong();
if (esp_reset_reason() == ESP_RST_POWERON) {
audio_play_gong(); /* cold boot only — recovery reboots stay silent */
}
#if WIFI_DIAG_MODE
wifi_diag_start();
+4
View File
@@ -55,3 +55,7 @@ CONFIG_ESP_HOSTED_SDIO_CLOCK_FREQ_KHZ=20000
# headroom for diag event handlers that touch LVGL
CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE=4096
# 1-bit SDIO: fixes the "Unrecoverable host sdio state" wedge family
# (esp-hosted-mcu #167/#148); 2.5MB/s is ~80x what voice needs
CONFIG_ESP_HOSTED_SDIO_1_BIT_BUS=y