BOOTLOADER

Hi everyone,

I am trying to add a bootloader for the NORUB126 board.

Before adding the bootloader, my application did not use any bootloader and everything worked correctly. BLE connection worked, the LED turned on after connecting, and the ADC/SPI communication worked normally.

After enabling the bootloader, the application still boots and I can connect over Bluetooth, but after the BLE connection the LED does not turn on anymore. Also, the ADC does not read any data. It looks like the SPIM peripheral is no longer working, or as if it is not connected/configured correctly.

Has anyone seen this kind of issue before? Could this be related to pin configuration, devicetree overlays, partition manager, MCUboot configuration, or some peripheral conflict caused by the bootloader?

Here is conf that im using.

//mcuboot.conf
CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=n
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM=y
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC_CALIBRATION=y
CONFIG_SOC_ENABLE_LFXO=n

//mcuboot.overlay
&qspi {
    status = "disabled";
};

//prj.conf
CONFIG_GPIO=y
CONFIG_FPU=y
#timers
CONFIG_NRFX_TIMER0=y
CONFIG_NRFX_TIMER1=y
CONFIG_NRFX_TIMER2=y
#console
CONFIG_CONSOLE=y
CONFIG_PRINTK=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
#CONFIG_CONSOLE=n
#CONFIG_UART_CONSOLE=n
#CONFIG_LOG_BACKEND_UART=n
#spim
CONFIG_NRFX_SPIM1=y
CONFIG_NRFX_SPIM0=y
#i2c
CONFIG_I2C=y
#ble
CONFIG_BT=y
CONFIG_BT_PERIPHERAL=y
CONFIG_BT_DEVICE_NAME="Neuraskin_light"
#logging
CONFIG_LOG=y
CONFIG_LOG_BUFFER_SIZE=16384
CONFIG_LOG_MODE_DEFERRED=y
CONFIG_LOG_PROCESS_THREAD_STACK_SIZE=4096
#CONFIG_LOG_DEFAULT_LEVEL=4
# Button and LED library
CONFIG_DK_LIBRARY=y

CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=n
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM=y
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC_CALIBRATION=y
CONFIG_SOC_ENABLE_LFXO=n
#CONFIG_LOG_BACKEND_RTT=y

#logovanje preko usb-a
# Enable USB stack
CONFIG_USB_DEVICE_STACK=y
# Enable USB Initialize at boot
CONFIG_USB_DEVICE_INITIALIZE_AT_BOOT=y
# Set USB log level
#CONFIG_USB_DRIVER_LOG_LEVEL_INF=y
#CONFIG_USB_DEVICE_LOG_LEVEL_INF=y
CONFIG_USB_DRIVER_LOG_LEVEL_OFF=y
CONFIG_USB_DEVICE_LOG_LEVEL_OFF=y
CONFIG_USB_CDC_ACM_LOG_LEVEL_OFF=y

CONFIG_USB_CDC_ACM=y
#CONFIG_USB_CDC_ACM_LOG_LEVEL_INF=y

# povecanje MTU za slanje vise od 20 bajtova odjednom
#CONFIG_BT_BUF_ACL_RX_SIZE=251
#CONFIG_BT_BUF_ACL_TX_SIZE=251
#CONFIG_BT_L2CAP_TX_MTU=247
#CONFIG_BT_CTLR_DATA_LENGTH_MAX=251
CONFIG_BT_GATT_NOTIFY_MULTIPLE=y
#CONFIG_BT_ATT_PREPARE_COUNT=5
CONFIG_BT_USER_DATA_LEN_UPDATE=y

CONFIG_BT_BUF_ACL_RX_SIZE=502
CONFIG_BT_BUF_ACL_TX_SIZE=502
CONFIG_BT_BUF_ACL_TX_COUNT=10

CONFIG_BT_L2CAP_TX_MTU=498
CONFIG_BT_CONN_TX_MAX=10
CONFIG_BT_ATT_TX_COUNT=10
CONFIG_BT_ATT_PREPARE_COUNT=2
CONFIG_BT_BUF_EVT_RX_COUNT=11

CONFIG_BT_L2CAP_DYNAMIC_CHANNEL=y

CONFIG_BT_CTLR_DATA_LENGTH_MAX=251

#veci supervised timeout da ne bi gubio konekciju
CONFIG_BT_PERIPHERAL_PREF_MIN_INT=6
CONFIG_BT_PERIPHERAL_PREF_MAX_INT=6
CONFIG_BT_PERIPHERAL_PREF_LATENCY=0
CONFIG_BT_PERIPHERAL_PREF_TIMEOUT=800
CONFIG_BT_GAP_AUTO_UPDATE_CONN_PARAMS=y
CONFIG_BT_USER_PHY_UPDATE=y

# STEP 2.2 - Enable FOTA over Bluetooth LE
CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y
CONFIG_NORDIC_QSPI_NOR=n

CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048

Any suggestions on what I should check would be appreciated.

Thanks!

Related