# ── MCUboot 日志 ── # 裁掉多余驱动后有 ~14KB 余量,恢复 INF 日志方便排障(usart3 调试口可见) CONFIG_LOG=y CONFIG_MCUBOOT_LOG_LEVEL_INF=y # ── Serial Recovery 配置(Nordic 教程 Step 3.1)── CONFIG_MCUBOOT_SERIAL=y CONFIG_BOOT_SERIAL_UART=y # 禁用 UART console,避免与 Serial Recovery 争用 UART(Nordic 教程 Step 3.2) # 注意:教程里 console 和 serial recovery 共用同一个 UART 才需要禁。 # 本板 console 在 usart3(调试口)、serial recovery 在 usart1(协议口), # 两个 UART 互不冲突,打开 console 才能看到 MCUboot 的启动日志,便于排障。 CONFIG_UART_CONSOLE=y # 禁用 GPIO 按钮检测(我们通过升级命令触发,不需要按钮) CONFIG_BOOT_SERIAL_ENTRANCE_GPIO=n # 等待 mcumgr 命令触发进入 serial recovery CONFIG_BOOT_SERIAL_WAIT_FOR_DFU=y CONFIG_BOOT_SERIAL_WAIT_FOR_DFU_TIMEOUT=3000 # 喂狗(避免升级过程中看门狗复位) CONFIG_BOOT_WATCHDOG_FEED=y # ── 签名验证 ── # 签名类型由 sysbuild.conf 的 SB_CONFIG_BOOT_SIGNATURE_TYPE_ECDSA_P256 决定 # (写在这里的 CONFIG_BOOT_SIGNATURE_TYPE_* 会被 sysbuild 强制覆盖,无效) # ── 优化 ── CONFIG_BOOT_ERASE_PROGRESSIVELY=y # ── 裁掉板级 dts 引入、但 MCUboot 用不到的外设驱动 ── # MCUboot 只需要 UART(serial recovery)+ GPIO(pinctrl)+ FLASH + WATCHDOG(喂狗), # 其余驱动(ADC/SPI/PWM/传感器/灯带/协议栈等)全部关掉,把体积压进 48KB boot 分区。 CONFIG_ADC=n CONFIG_SPI=n CONFIG_PWM=n CONFIG_SENSOR=n CONFIG_LED=n CONFIG_LED_STRIP=n CONFIG_LED_STRIP_INDICATOR=n CONFIG_RTC=n CONFIG_HWINFO=n CONFIG_INPUT=n CONFIG_GODTEK_TEMP_UART=n CONFIG_UART_COM_PROTOCAL=n CONFIG_UART_COM_SIMPLE_PROTOCAL=n CONFIG_UART_COM_NORMAL_PROTOCAL=n CONFIG_UART_COM_MODBUS_BRIDGE_PROTOCAL=n