cancel
Showing results for 
Search instead for 
Did you mean: 

NUCLEO-WB09KE + Zephyr: CONFIG_BT=y may cause intermittent boot failure

Eyck-Huang
Associate II

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()
5 REPLIES 5
Imen.D
ST Employee

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".
Thanks
Imen
Eyck-Huang
Associate II

Hi @Imen.D ,

Yes, I’ve checked all the configurations you mentioned above. This issue only occurs when CONFIG_BT=y. If CONFIG_BT=n, everything works normally.

Hi @Eyck-Huang ,

Did you try to run another project on the same boards, not a zephyr one. This is to identify if it is a hardware issue or a Zephyr issue. You cant try a BLE example from CubeWB0 package.

What is the error log that you have?

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

Hi @Imen.D ,

I have tried running the STM32 PAwR example, and I did not encounter any issues. So I suspect the problem is related to Zephyr.

Are you using latest release of STM32CubeWB0 MCU package?

Maybe you have issue with Zephyr, so try with the revision shared in github. 

 

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