UART0 resource always busy after integrate MCU boot in our project

HI.

we're developing an application where we need to use 2 UART ports: UART: 0, 2, 3.

Before we added MCU boot in our project everything  worked well but after we integrated bootloader application cannot use the UART0. It's returning resource busy error every time when .

we try to transmit something. Configuration of UART 0 still works from application, only transmission fails.  

Snippet from prj.conf

config part for bootloader:

###########################################################
#Bootloader
###########################################################
CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_MCUBOOT_USE_ALL_AVAILABLE_RAM=y
CONFIG_MCUBOOT_IMG_MANAGER=y
# Enable MCUMGR
CONFIG_MCUMGR=y
# Enable MCUMGR management for both OS and Images
CONFIG_MCUMGR_GRP_OS=y
CONFIG_MCUMGR_GRP_IMG=y
# Configure MCUMGR transport to UART
CONFIG_MCUMGR_TRANSPORT_UART=y
# Dependencies
# Configure dependencies for CONFIG_MCUMGR  
CONFIG_NET_BUF=y
CONFIG_ZCBOR=y
CONFIG_CRC=y
# Configure dependencies for CONFIG_MCUMGR_GRP_IMG  
CONFIG_IMG_MANAGER=y

# Configure dependencies for CONFIG_IMG_MANAGER  
CONFIG_STREAM_FLASH=y
CONFIG_FLASH_MAP=y

# Configure dependencies for CONFIG_MCUMGR_TRANSPORT_UART
CONFIG_BASE64=y

CONFIG_BOARD_ENABLE_CPUNET=y

CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y

CONFIG_NRF53_UPGRADE_NETWORK_CORE=y
CONFIG_UPDATEABLE_IMAGE_NUMBER=2
CONFIG_ADD_MCUBOOT_MEDIATE_SIM_FLASH_DTS=y
# Enable the serial mcumgr transport.
CONFIG_UART_MCUMGR=y
###########################################################

There's certain action to do to free resources used by MCU boot?

Parents
  • Hello,

    Could you share which SDK version you are using here? I assume that you are using nRF5340 (let me know if this is not the case). Do you have any logs to share? MCUBoot might be configured to use UART0 for logging or debugging purposes, which can cause the "resource busy" error when your application tries to use the same UART peripheral. See your mcuboot.conf file and see whether UART0 has been enabled for logging or debugging.

    Try disabling the UART0 just for mcuboot. For this, create an overlay file inside the child image folder as mcuboot. overlay and disable the UART0 there, and see if this works. Make sure UART0 is enabled for the application.

     

    Kind Regards,

    Abhijith

  • Hi, we're using nrf5340 with SDK 2.4.0. I'm trying this option, I'll come back with results 

Reply Children
No Data
Related