I developed a BLE application for the nRF52832 using NCS v3.0.0. The application runs correctly when flashed to the nRF52 DK.
However, when flashing the same application to my custom board, it does not boot unless I open a J-Link RTT connection. After flashing, I open JLinkRTTClient, then in a new terminal tab I run JLinkExe -device nRF52832_xxAA -if SWD -speed 4000 -autoreconnect 1. As soon as the J-Link connection is established, the application starts running and continues working even after I close the RTT connection. However, if I power-cycle the board, the application does not reinitialize and again requires opening a J-Link RTT session to boot.
I'm flashing the custom board using the Debug Out port (P19) of the nRF52 DK, and flashing appears successful — I can see real-time sensor data when moving magnets near the sensors while the RTT connection is open.
Sharing my custom board's schematic in case this is a hardware issue:
Also attaching the application's prj.conf (note: RTT logging has been disabled here, so this is without the J-Link RTT workaround):
CONFIG_NCS_SAMPLES_DEFAULTS=y # Bluetooth CONFIG_BT=y CONFIG_BT_PERIPHERAL=y CONFIG_BT_DEVICE_NAME="test" CONFIG_BT_DEVICE_APPEARANCE=1157 # GATT services CONFIG_BT_GATT_DYNAMIC_DB=y CONFIG_BT_SETTINGS=y CONFIG_SETTINGS=y # Sensors CONFIG_ADC=y CONFIG_GPIO=y # Crystal Oscillator CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y # Disable UART and console CONFIG_SERIAL=n CONFIG_CONSOLE=n CONFIG_UART_CONSOLE=n CONFIG_LOG=n CONFIG_LOG_DEFAULT_LEVEL=0 # Disable all logging CONFIG_LOG=n CONFIG_LOG_DEFAULT_LEVEL=0 CONFIG_USE_SEGGER_RTT=n # Optimizations CONFIG_SIZE_OPTIMIZATIONS=y CONFIG_ASSERT=n
Thank you for any guidance in advance. Happy to share additional info.