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.

CC3230SF: UNIFLASH Issue

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

Tool/software:

When we flash our new product using CCS, the board works in debug mode without any problem.

When we flash our product using UNIFLASH after flashing it with CCS, it works fine without any problem.

But when we flash a new board using Uniflash for the 1st time, it doesn't respond. 

CCS 12.8.1 and uniflash 9.1.0 are used. please help

  • @Shlomi Itzhak

    could you please help with this issue. 

  • Hi,

    CCS has the image creator utility of Uniflash embedded so it should work with the offline Uniflash.

    I need more details of how you used the offline Uniflash to flash the device.

    Shlomi

  • Hi Shlomi Itzhak,

    1st of all, thank you so much for replying. I used multiple ways to flash using Uniflash. There are two known methods.

    1) Flash using .sli file created by CCS

    2) Create .sli from bin files from the project and the SDK.

    Neither worked! Method 1 is straightforward, so I don't think I need to show you that. Here is the workflow of method 2). 

    For method 1) I just use step 1 to 2 and 12 in the attached document. Please see what I'm missing in my method. I don't seem to be missing anything, but my board still doesn't work. You can't say my board is faulty because the board works fine when I flash using CCS in debug mode. Once CCS is used, the board works when flashed using UNIFLASH as well. Something is missing when I flash fresh boards using UNIFLASH. What is it? 

    Flashing Program Using Uniflash v5.pdf

  • Hi Shlomi Itzhak,

    The question below also applies to this, partly. We are also flashing a hardcoded LTE CA cert together in this code. i don't know if we need to add this LTE modem CA cert in the user files as you mentioned! 

    https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1500847/cc3230sf-assistance-required-for-uploading-mqtt-certificate-via-uniflash/5784895#5784895

  • It may be related to the SOP mode.

    As far as I recall, the SOP of 010 (only SOP1 is on), is for both, flashing and runtime.

    If you release SOP1, meaning SOP is 000, then it goes into JTAG mode so CCS would be able to flash.

    Can you leave SOP1 and check if Uniflash works?

  • Hi Shlomi Itzhak,

    if i recall correctly, if we just let alone the SOP1 for both flashing and runtime it will work only for the development mode. Otherwise, when the SOP is 000, we can't flash anything at all because it is not in the JTAG mode. So, what if the scenario is like

    - The product is need to use MQTT

    - All products previously in the development mode in the CCS able to see results in the MQTT terminal but for new products wont when direct flashing in the UNIFLASH

    - So far there's no error display when flashing using UNIFLASH

    - The required setting is production mode

    Best,

    Aiman

  • we tried and it doesnt work with SOP1 jumper placed. 

  • Hi,

    SOP1 is what I use and it is for both, debug via CCS and flashing via Uniflash.

    Are you saying the Uniflash is able to flash when SOP1 is on and the image is in development mode but not when it is in production mode? Uniflash starts from scratch so it does not make sense that there is a difference if the image is set to production or development.

    And when using Uniflash that does not work, is the process working? i.e. it takes time to flash like in a working case and does not provide any error?

    Shlomi

  • , UNIFLASH is able to flash both in development and production modes. UNIFLASH flashing has always been successful for us. When we flash using UNIFLASH, our LTE modem is unable to connect to MQTT. We think it's due to the issue with uploading the certificate. If you know anything about how to upload the LTE modem CA cert effectively, please let us know. We are using SIM7672G. 

    Our product, the LTE modem, can only connect to MQTT after we go into debug mode using CCS. In UNIFLASH, we won't be able to go into debug mode, which is why we think the MQTT connection is not successful. I believe in debug mode, code executed slowly, one by one, and I think maybe that's why it's successful in debug mode. 

    We tested certificate upload, which is always successful in debug mode. But the fresh/New board will never connect to MQTT when we flash using CCS (compiler) or UNIFLASH and test in production mode. If we debug the board, it will become good and never become bad because once the CA Cert is stored in the MCU memory, the certificate is always there for the LTE modem to download. So, if we debug a bad/new/fresh board, it will be good.

  • Hi,

    This was the original question that I could not understand, regarding the certificate.

    Where is this certificate resides? is it on the file system of simplelink, or somewhere else?

    I am asking since in the other thread you described that this certificate is flashes only during CCS debug.

    there is no reason that it should not work via Uniflash so clearly you do something on the CCS that is different from Uniflash.

    I need to get more details in order to help here.

    Regards,

    Shlomi

  • Hi Shlomi Itzhak

    Where is this certificate resides? is it on the file system of simplelink, or somewhere else?

    answer: The CA certificate is burned together with the code into the CC3230SF's flash memory. The CA certificate is hardcoded into the code. Hard-coded, meaning we open the CA certificate, copy its content, and paste it into the code. 

    I am asking since in the other thread you described that this certificate is flashes only during CCS debug.

    Answer: This is what we are predicting. The MQTT connection is only successful after we debug each board, which tells us that the CA certificate is getting flashed properly when we debug the board. 

    we are really stuck now so your help is really appreciated.

    https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1500847/cc3230sf-assistance-required-for-uploading-mqtt-certificate-via-uniflash/5787745#5787745

    I will answer questions from the thread above here because both are related. we can close the above thread.

    How does this Simcom LTE modem work?

    Answer: From the CA cert perspective, the MCU issues a command to download the CA certificate from the MCU flash memory into the LTE Modem. Once the download is completed, it will be able to connect to MQTT using the CA cert. 

    Does it read from the same file system?

    Answer: All the code and CA cert will be burned into the flash memory. We know the command that the LTE modem will download the CA cert. We are just issuing that command. It should be getting the CA cert from the MCU flash memory. 

    I need more information on the architecture to be able to answer it.

    If you need the schematic or software architecture, could you please send me a PM or email? 

  • Hi,

    So if I understand correctly, the certificate is part of the code itself and does not reside on the file system. Maybe this was my confusion.

    I assume this SIM7672G modem has its own network stack and you operate it via UART? AT commands?

    if my assumption are correct, the M4 application processor on CC32xx just acts as the main processor controlling the cellular modem and does not use its internal network processor or Wi-Fi capabilities. Is that correct?

    if all is correct, and you are able to connect in debug and not runtime, you can maybe print the content of the certificate before connecting to make sure it is flashed OK.

    Not sure what else you can do. We usually use air sniffers to see what is going on in the air but for cellular I am not familiar with air sniffers.

    Let me know what you think.

    Shlomi

  • hi Shlomi Itzhak

    So if I understand correctly, the certificate is part of the code itself and does not reside on the file system. Maybe this was my confusion.

    Answer: correct. It's part of the code and does not reside in the file system. 

    I assume this SIM7672G modem has its own network stack and you operate it via UART? AT commands?

    Answer: correct for both questions. 

    If my assumption is correct, the M4 application processor on CC32xx just acts as the main processor controlling the cellular modem and does not use its internal network processor or Wi-Fi capabilities. Is that correct?

    Answer: Correct.

    if all is correct, and you are able to connect in debug and not runtime, you can maybe print the content of the certificate before connecting to make sure it is flashed OK.

    Answer: There is no command to print the content of the CA cert from the LTE modem. 

    Could you please explain the air sniffers?

    We are currently able to see the UART_PRINT (AT COMMAND responses) after flashing with uniflash, and we found out that the certificate download command is not getting an OK message, which is the root cause of this problem. 

  • Hi,

    Not sure what can be done to debug it as it seems that the AT commands to the SIM module is not successful.

    Maybe probe the UART lines to see what is going on the lines (I assume the AT commands are over UART)?

    Shlomi

  • hi ,

    You are right. We are looking at UART Print or AT COMMAND response via UART. The debugged board behaves differently from a board that has never been debugged before. We are trying to solve this issue by looking at the UART Print. 

  • UART print and also UART lines themselves using a logic analyzer.