SWPA230A May   2017  – June 2018 CC3120 , CC3120MOD , CC3220MOD , CC3220MODA , CC3220R , CC3220S , CC3220SF

 

  1.   CC3120 and CC3220 SimpleLink™ Wi-Fi® Embedded Programming
    1.     Trademarks
    2. 1 Introduction
    3. 2 Embedded Programming Schemes
    4. 3 Setup
    5. 4 Bootloader Protocol
      1. 4.1 Overview
      2. 4.2 General Message Format
      3. 4.3 Commands
        1. 4.3.1 Get Status
        2. 4.3.2 Get Storage List
        3. 4.3.3 Raw Storage Write
        4. 4.3.4 Get Version Info
        5. 4.3.5 Raw Storage Erase
        6. 4.3.6 Get Storage Info
        7. 4.3.7 Execute from RAM
        8. 4.3.8 Switch UART to APPS MCU
        9. 4.3.9 FS Programming
      4. 4.4 Responses
        1. 4.4.1 Ack
        2. 4.4.2 Nack
        3. 4.4.3 Last Status
        4. 4.4.4 Storage List
        5. 4.4.5 Storage Info
        6. 4.4.6 Version Info
    6. 5 Embedded Programming Procedure
      1. 5.1 Overview
      2. 5.2 High-Level Flow Diagram
      3. 5.3 Image Programming in Detail
        1. 5.3.1  Step 1: Target Connection
        2. 5.3.2  Step 2: Target Detection
        3. 5.3.3  Step 3: MUX UART to the Network Processor
        4. 5.3.4  Step 4: Get SRAM Storage Info
        5. 5.3.5  Step 5: Raw Storage Erase – SRAM
        6. 5.3.6  Step 6: Raw Storage Write – SRAM
        7. 5.3.7  Step 7: Execute from RAM
        8. 5.3.8  Step 8: Get SFLASH Storage Info
        9. 5.3.9  Step 9: Raw Storage Erase – SFLASH
        10. 5.3.10 Step 10: Raw Storage Write – SFLASH
        11. 5.3.11 Step 11: FS Programming
        12. 5.3.12 Step 12: Device Reset
  2.   Revision History

Embedded Programming Schemes

Several schemes can leverage full image programming over the UART, as follows.

  • Embedded programming in production line – there are setups on the production line that do not include the PC. Instead, programmable devices such as the MCU, DSP, or FPGA are used.
  • Main external processor (other than the CC3220 MCU) – in many cases, CC3120 and CC3220 devices are just another component in the device enabling network communication. Such devices have main processors that usually control and schedule everything in the system. These cores must have the ability to upgrade and program CC3120 or CC3220 peripherals.