How to download the bootloader.bin image using the UART?

Hello Everyone!
I have been following the bootloader example’s readme_bootloader.md which is guided kindly how to download bootloader.bin image to target using UART. I have tested the RSL10 COIN BDK and RSL10 SENSE BDK.

I would like to know the below relating with UART bootloader.bin download.
Q1. which DIO pin is used for CFG_nUPDATE_DIO in the RSL10 COIN BDK and RSL10 SENSE BDK bootloader?
I read the post KB: UART to update the firmware.
It tell me DIO5. Is it Right on the RSL10 COIN BDK and RSL10 SENSE BDK ?
Q2. which default pin is used for UART Tx and Rx pin on the RSL10 COIN BDK or RSL10 SENSE BDK bootloader?

Appreciate Advance.

eddy

image

Hello eddy,

These boards use different DIO pad configurations for the bootloader depending on the board layout. Not all all of them are designed to support update over UART and bootloader is there solely to enable FOTA functionality.

To find the bootloaderfor these boards navigate to the {$CMSIS_PACK_ROOT}\ONSemiconductor\BDK\1.18.0\Device\RSL10\bootloader_bdk folder for the project and bootloader_images for pre-built binaries.
The root folder is by default C:\Users\username\ON_Semicondutor\PACK

There in the config.h you can see the configurations:

excerpt from config.h
/* ----------------------------------------------------------------------------
 * Options - RSL10_COIN_GEVB
 * ------------------------------------------------------------------------- */

#elif RSL10_DEVICE == RSL10_COIN_GEVB

#ifdef _DEBUG
#define VER_ID                          "BL_COd"
#endif    /* ifdef _DEBUG */
#ifdef NDEBUG
#define VER_ID                          "BL_COr"
#endif    /* ifdef NDEBUG */

/*** TARG ***/
#define CFG_BUCK_COV                    1
/*** GPIO ***/
#define CFG_nUPDATE_DIO                 0
#define CFG_LED_RED_DIO                 11
/*** UART ***/
#define CFG_UART_BAUD_RATE              1000000
#define CFG_UART_RXD_DIO                4
#define CFG_UART_TXD_DIO                5
/*** Updater ***/
#define CFG_TIMEOUT                     1  /* in seconds, 0 = no timeout */
#define CFG_READ_SUPPORT                0

/* ----------------------------------------------------------------------------
 * Options - RSL10_COIN_GEVB
 * ------------------------------------------------------------------------- */

#elif RSL10_DEVICE == RSL10_SENSE

#ifdef _DEBUG
#define VER_ID                          "BL_SEd"
#endif    /* ifdef _DEBUG */
#ifdef NDEBUG
#define VER_ID                          "BL_SEr"
#endif    /* ifdef NDEBUG */

/*** TARG ***/
#define CFG_BUCK_COV                    1
/*** GPIO ***/
#define CFG_nUPDATE_DIO                 13
#define CFG_LED_RED_DIO                 2
/*** UART ***/
#define CFG_UART_BAUD_RATE              1000000
#define CFG_UART_RXD_DIO                7
#define CFG_UART_TXD_DIO                3
/*** Updater ***/
#define CFG_TIMEOUT                     1  /* in seconds, 0 = no timeout */
#define CFG_READ_SUPPORT                0

Best regards,
Lukas

1 Like

Hello Lukas,

Thanks for the quick and detailed reply.

BR,
eddy