When PD continuously sends libosdp events w/o interruption, reader will get bus fault

Describe the bug
I would like to inquire about an issue where when my PD (Peripheral Device) continuously sends commands without interruption, the PD encounters this error and reboot. However, if the PD sends commands with a 1-second interval, there are no problems. I would like to ask how to resolve this issue or how can I debug with this error.

Log

[INFO] (pd_build_reply:895) SC Active
[ERROR] (pd_translate_event:171) Unknown event type 0
E: ***** BUS FAULT *****
E: Precise data bus error
E: BFAR Address: 0x32000a3
E: r0/a1: 0x20009df0 r1/a2: 0x20020150 r2/a3: 0x00000001
E: r3/a4: 0x032000a3 r12/ip: 0x20013d70 r14/lr: 0x0003d5dd
E: xpsr: 0x81000000
E: Faulting instruction address (r15/pc): 0x00066b9a
E: >>> ZEPHYR FATAL ERROR 25: Unknown error on CPU 0
E: Current thread: 0x2000ac20 (osdp_thread)
E: Halting system
*** Booting nRF Connect SDK v2.9.0-7787b2649840 ***
*** Using Zephyr OS v3.7.99-1f8f3dc29142 ***

  • Sure,

    I finally find the root cause today....

    ## enable C++ support
    #CONFIG_CPP=y
    ## expect to be C++23
    #CONFIG_STD_CPP2B=y
    ## standard C++ library
    #CONFIG_GLIBCXX_LIBCPP=y
    The root cause is I enable the cpp config in my project.
    After I change my programming language from cpp to c, this bus fault will not happend again.

    Do you have any idea of this root cause?
    Regards,
    Kevin
Related