SWRA466D February   2015  – August 2021 CC1310 , CC1310 , CC1352R , CC1352R , CC2538 , CC2538 , CC2620 , CC2620 , CC2630 , CC2630 , CC2640 , CC2640 , CC2640R2F , CC2640R2F , CC2640R2F-Q1 , CC2640R2F-Q1 , CC2642R , CC2642R , CC2642R-Q1 , CC2642R-Q1 , CC2650 , CC2650 , CC2650MODA , CC2650MODA , CC2652R , CC2652R , CC2652R7 , CC2652R7 , CC2652RB , CC2652RB , CC2652RSIP , CC2652RSIP

 

  1.   Trademarks
  2. 1Introduction
  3. 2ROM Bootloader
    1. 2.1 Configuring the Bootloader
      1. 2.1.1 CC2538
      2. 2.1.2 CC26x0
    2. 2.2 CC26x2
    3. 2.3 Communication Protocol
      1. 2.3.1 ACK/NACK
    4. 2.4 Interface Configuration
      1. 2.4.1 Hardware Pins
      2. 2.4.2 UART Configuration
      3. 2.4.3 Establishing Communication
      4. 2.4.4 Status Command
  4. 3Serial Bootloader Library (SBL)
    1. 3.1 SBL Return Values
    2. 3.2 SBL API
      1. 3.2.1 Device-Specific Functions
  5. 4Example Project
    1. 4.1 Hardware Setup
      1. 4.1.1 SmartRF06EB Virtual COM Port
        1. 4.1.1.1 External Serial Interface
      2. 4.1.2 LaunchPad Virtual COM Port
      3. 4.1.3 Bootloader Backdoor
    2. 4.2 Software Setup
      1. 4.2.1 Device Type
      2. 4.2.2 Baud Rate
    3. 4.3 Program Flow
      1. 4.3.1 Enumerate COM Ports
      2. 4.3.2 Create Device
      3. 4.3.3 Connect
      4. 4.3.4 Erase Flash Range
      5. 4.3.5 Write Flash Range
      6. 4.3.6 Calculate CRC32
      7. 4.3.7 Reset
  6. 5References
  7. 6Revision History

Hardware Pins

The hardware pins used by the ROM bootloader to communicate over UART and SPI are shown in Table 2-8 and Table 2-9.

Table 2-8 Serial Interface Configuration: Evaluation Module Kits
Signal CC2538 CC26x0 EM Pin
QFN48/7x7 QFN32/5x5 QFN32/4x4
UART_RX PA0 DIO2 DIO1 DIO1 1.07
UART_TX PA1 DIO3 DIO0 DIO2 1.09
SPI CLK PA2 DIO10 DIO10 DIO8 1.16
SPI CSn PA3 DIO11 DIO9 DIO7 1.14
SPI MOSI PA4 DIO9 DIO11 DIO9 1.18
SPI MISO PA5 DIO8 DIO12 DIO0 1.20
Table 2-9 Serial Interface Configuration: LaunchPad
Signal CC2640R2 (1) CC26x2R CC1312R CC1352x LaunchPad Pin
UART_RX DIO2 DIO2 DIO2 DIO12 3 (2)
UART_TX DIO3 DIO3 DIO3 DIO13 4 (2)
SPI CLK DIO10 DIO10 DIO10 DIO10 7
SPI CSn DIO11 DIO11 DIO11 DIO11 18
SPI MOSI DIO9 DIO9 DIO9 DIO9 15
SPI MISO DIO8 DIO8 DIO8 DIO8 14
The pinout is only valid for the QFN48/7x7 package.
Reverse order for the CC2640R2 LaunchPad.

The bootloader selects the first interface accessed by the external device. The inactive interface (UART or SPI) will be disabled. To switch to the other interface, the device must be reset using, for example, pin reset.