Hi, we're trying to run our nRF52832 without having to connect the RTT console debugger to launch the main application loop. So that an other team could just power the board and interact with the bluetooth firmware using the nRF Connect for Mobile app.
We managed to get the internal clock working and the nRST pin is switched from LOW to HIGH at the board boot (validated using a multimeter).
There's one last thing in our way, we absolutely need to connect to the RTT terminal to launch the main loop. That happens even when the debug option is turned off in the build configuration.
Is there a flag missing from our configuration?
Hardware:
- J-Link programmer
- USI AzureSphere combo module evaluation board (combines an Azure Sphere and an nRF52832 BLE chip)
Software:
- nRF Connect SDK v2.3.0
- nRF Toolchain v2.3.0
- nRF Connect for VS Code
We started from the following example https://github.com/zephyrproject-rtos/zephyr/tree/main/samples/bluetooth/peripheral
proj.conf:
# Enable Bluetooth peripheral CONFIG_BT=y CONFIG_BT_PERIPHERAL=y CONFIG_DEBUG=n # Config logger CONFIG_LOG=n CONFIG_BT_DEBUG_LOG=n CONFIG_CONSOLE=n CONFIG_USE_SEGGER_RTT=n CONFIG_BT_DEBUG_MONITOR_RTT=n CONFIG_LOG_BACKEND_RTT=n CONFIG_LOG_BACKEND_UART=n CONFIG_LOG_PRINTK=n # Power management CONFIG_PM=n # Drivers and peripherals CONFIG_I2C=n CONFIG_WATCHDOG=n CONFIG_PINMUX=n CONFIG_SPI=n # Boot CONFIG_BOOT_BANNER=n CONFIG_BOOT_DELAY=0 # Increased stack due to settings API usage CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048 # Enable Secure Connections Only mode # CONFIG_BT_SMP=y # CONFIG_BT_TINYCRYPT_ECC=y # CONFIG_BT_SMP_SC_ONLY=y # CONFIG_BT_SMP_ENFORCE_MITM=y # Use settings for BLE bonding CONFIG_BT_SETTINGS=y CONFIG_SETTINGS=y CONFIG_FLASH=y CONFIG_FLASH_PAGE_LAYOUT=y CONFIG_FLASH_MAP=y CONFIG_FCB=y # CONFIG_BT_SIGNING=y # CONFIG_BT_PRIVACY=y CONFIG_BT_ATT_PREPARE_COUNT=5 ## Battery Service CONFIG_BT_BAS=y ## Device Information Service CONFIG_BT_DIS=y CONFIG_BT_DIS_PNP=n ### Manufacturer CONFIG_BT_DIS_MANUF="Motion Composites inc." ### Model CONFIG_BT_DIS_MODEL="Newton Power Assist" ### Revision CONFIG_BT_DIS_HW_REV=y CONFIG_BT_DIS_HW_REV_STR="Rev. C" ### Serial number CONFIG_BT_DIS_SERIAL_NUMBER=n CONFIG_BT_DIS_SERIAL_NUMBER_STR="" ### Powered Wheelchair CONFIG_BT_DEVICE_APPEARANCE=3265 ## Naming options CONFIG_BT_DEVICE_NAME="NPA" ### Allows to set a name at runtime (ex: with a random id) CONFIG_BT_DEVICE_NAME_DYNAMIC=y CONFIG_BT_DEVICE_NAME_MAX=10 # CONFIG_BT_BONDING_REQUIRED=n ## Used to hide the BT device after connection to a central device. # CONFIG_BT_FILTER_ACCEPT_LIST=y # CONFIG_BT_KEYS_OVERWRITE_OLDEST=y ## Required to set a non random key # CONFIG_BT_FIXED_PASSKEY=y CONFIG_NVS=y CONFIG_BT_GATT_DYNAMIC_DB=y # TODO: Disable for Release build CONFIG_ASSERT=n # This configures the SDK for the BLE NRF chip # You can find the documentation for each setting here: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/kconfig/index.html # Search for the setting in the KConfig search engine CONFIG_CLOCK_CONTROL=y CONFIG_CLOCK_CONTROL_NRF=y CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=n CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC_CALIBRATION=y CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM=y