Skip to main content
Visitor II
April 18, 2026
Question

NUCLEO-WB09KE / STM32WB09 with Zephyr: enabling CONFIG_BT=y may cause intermittent boot failure before main()

  • April 18, 2026
  • 1 reply
  • 69 views

Board / SoC

  • Board: NUCLEO-WB09KE
  • SoC: STM32WB09

Software

  • Zephyr version: v4.4.0-rc2-41-g149c8b1758a8
  • Toolchain / build system: West + Zephyr standard build flow

Issue summary
When building a very small Zephyr application for NUCLEO-WB09KE, simply enabling:

CONFIG_BT=y

can cause intermittent boot failure.

The failure happens very early in boot:

  • no UART output
  • no boot banner
  • no application printk()
  • main() appears to never run in failed boots

This happens even when the application does not call any Bluetooth API.

Minimal application
main.c

#include <zephyr/kernel.h>
#include <zephyr/sys/printk.h>

int main(void)
{
 while (1) {
 printk("M\n");
 k_busy_wait(100000);
 }
 return 0;
}

Minimal project configuration
prj.conf

CONFIG_BT=y

CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_EARLY_CONSOLE=y
CONFIG_PRINTK=y

CONFIG_ASSERT=y
CONFIG_ASSERT_VERBOSE=y

CONFIG_LOG=n
CONFIG_PM=n

Observed behavior

  1. With Bluetooth disabled, the board boots and repeatedly prints:

    M
    M
    M
    ...
  2. With CONFIG_BT=y enabled, boot becomes intermittent:
    • successful boots: system starts normally
    • failed boots: absolutely no UART output at all
  3. In failed cases:
    • no printk("M\n")
    • no Zephyr boot banner
    • no log output
    • this strongly suggests failure occurs before main()

1 reply

Technical Moderator
April 27, 2026

Hello @Eyck-Huang ,

This may be caused by hardware bootloader activation.

Did you check the jumper settings and hardware reset sequence to ensure the bootloader is running and UART is enabled? 

"When your question is answered, please close this topic by clicking ""Accept as Solution"".ThanksImen"