4 years, 5 months ago.

Hard fault during BLE initialization on custom board.

I have been developing a custom board based on the NUCLEO-WB55RG dev board (Dual core micro with BLE stack running on dedicated core) and the GattClient BLE example. On the dev board everything works fine but when I try to run the identical firmware on my custom board (BLE, timing, and power hardware are copied from the dev board) I get a hard fault error and the BLE fails to initialize.

I am trying to isolate the source of the problem and I would appreciate any and all feedback. Does this sound like a hardware issue? I have included the error message and the crash parse results. Any insights you can offer would be welcomed as I am not sure how to interpret these error messages. Thanks!

++ MbedOS Fault Handler ++

FaultType: HardFault

Context: R0 : 00000000 R1 : 00000001 R2 : 00000000 R3 : 00000003 R4 : 00000003 R5 : 20000CAC R6 : 00000001 R7 : 2000087C R8 : 00000001 R9 : 20002860 R10 : FFFFFFFF R11 : 00000000 R12 : 0000000C SP : 20002590 LR : 08011193 PC : 08008DA4 xPSR : 21000000 PSP : 20002528 MSP : 2002FFD0 CPUID: 410FC241 HFSR : 40000000 MMFSR: 00000082 BFSR : 00000000 UFSR : 00000000 DFSR : 00000000 AFSR : 00000000 MMFAR: 00000008 Mode : Thread Priv : Privileged Stack: PSP

MbedOS Fault Handler

Crash Info: Crash location = TL_BLE_SendCmd [0x08008DA4] (based on PC value) Caller location = ble::vendor::cordio::BLE::BLE() [0x08011193] (based on LR value) Stack Pointer at the time of crash = [20002590] Target and Fault Info: Processor Arch: ARM-V7M or above Processor Variant: C24 Forced exception, a fault with configurable priority has been escalated to HardFault Data access violation. Faulting address: 00000008

Be the first to answer this question.