This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC3120: How to flash the service pack into the external flash of the CC3120 chip?

Part Number: CC3120
Other Parts Discussed in Thread: UNIFLASH,

Hi,

    We plan to use the CC3120 chip with the external flash on our device. In addition to porting the host driver, we need to flash the service pack firmware included in the SimpleLink_wifi_plugin package into the external flash. By checking the swru467a document, we need to install the Uniflash tool to program the CC3120 BoostPAck. Could we use a normal flash programmer to flash the .bin file directly into the external flash? Or we need to use the Uniflash utility to create the binary image to be flashed into the external flash?

    Thanks.

  • Hi Jan,

    Thanks for your information.

    Does it mean that we could use the Uniflash utility to create the gang image and flash it to the flash offline through the SPI programmer?

    Thanks.

    Todd
  • Hi Todd,

    Yes, you can. Or you can use UART and flash memory from you main MCU via Embedded programming.

    Jan
  • Hi Jan,

    Thanks for your confirmation.

    I also studied the swru469b Uniflash User Guide to learn how to use the Uniflash tool.

    In chapter 5.4, it mentions that the user can choose production or development mode. At the first stage, I will choose the production mode. Then, I will try follow what section 5.5 says to set device configuration in station role.

    However, what section 5.6 says confuses me. It says that the Service Pack is used to upgrade the device software, and the Service Pack isn't mandatory. At first, I thought that the Service Pack is the key WiFi firmware image that was used by the CC3120 to process all of the 802.11 protocol and packet Tx/Rx operation. Without flashing the Service Pack in the flash, the host driver couldn't request the CC3120 to do the WiFi operation. What kind of role Service Pack plays in the WiFi firmware image of CC3120?

    According to the swru469b, the device will use it's factory code if the Service Pack isn't added in the gang image. Does it mean that the Uniflash will create a gang image supporting all of the station mode functions(as configured by following section 5.5) even if the Service Pack image isn't added? If I only follow station 5.4 to select production mode and 5.5 to configure the device in station role, could I use the UniFlash
    tool to create the gang image to implement the WiFi station mode function without adding the Service Pack image?

    Thanks.

    Todd
  • Hi Todd,

    Usage of CC31xx/CC32xx devices without latest ServicePack is not a good idea. Explanation is very simple.

    CC31xx device or network processor in CC32xx device runs on TI proprietary firmware which do all WiFi stuff. This firmware is in ROM and cannot be changed by user. From this reason need to exist way how patch issues and security threats in this firmware. This way is a ServicePack which is provided by TI.

    In case you not upload ServicePack, you will be able communicate with CC3120 but your device will be affected by bug and security threats, which are fixed in ServicePack already. For example if you not upload ServicePack, your devices will be vulnerable to KRACK attack. I think you don't want that...

    Jan
  • Hi Jan,

    It's clear to me.

    The CC3120 runs the firmware in ROM to perform all WiFi stuff. The gang image flashed in external flash is used to configure the device and patch for any new updates from TI. Please correct me if I am wrong.

    We plan to use the CC3120 as the WiFi network processor and connect with our MCU through the SPI interface. Does it mean that the CC3120 chip shipped to us already has the WiFi image doing all WiFi stuff in ROM? By the way, is there any TI's document describing the architecture of the ROM image of the CC3120?

    Thanks.

    Todd
  • Hi Todd,

    Not 100% correct, but it works approximately by that way. Gang image works slightly by different way. You should imagine gang image as a "installation file".

    At runtime content of sFlash (external flash) is formatted to TI proprietary filesystem. This filesystem contains different types of files. We can talk about:
    - ServicePack
    - Device configuration
    - Temporary files
    - Webfiles
    - User files (your files)

    At first startup of CC3120 is gang image unpacked and filessytem is created. After that CC3120 works with filesystem. ROM itself does not contain image, it contains firmware itself.

    Important source of information about CC3120:
    - datasheet ( www.ti.com/.../cc3120 )
    - description of sl_ APIs ( www.ti.com/.../swru455 )
    - production line guide ( www.ti.com/.../swra569 )
    - sFlash guide ( www.ti.com/.../swra515.pdf )
    - how to use Uniflash ( www.ti.com/.../swru469b.pdf )
    - design files, check-list, etc.

    Jan
  • Hi Jan,

    Thanks for your clarification. It seems that I had confused the firmware with the image. What CC3120's ROM contains is firmware instead of the image.

    I had better installing the UniFlash utility and trying it by myself.

    Thanks for your help.

    Todd