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.

Problem with CC3200 hardware

Other Parts Discussed in Thread: CC3200, UNIFLASH, CC3100

Hello,

I am having problems with the CC3200 hardware that i have manufactured for my application.

I have used the CC3200R1 M2 chip and the same Serial Flash IC as the CC3200 LaunchXL launchpad.

For programming the device, i have shorted the Tx-Rx pins from the CC3200 LaunchXL launchpad to my hardware.

But i get the following log while performing Format, Program and GetVersion from UniFlash.

[10:34:41] Begin Format operation.
[10:34:41] INFO: > Executing Operation: Connect
[10:34:43] INFO: setting break signal
[10:34:43] INFO: --- please restart the device ---
[10:34:44] INFO: connection succeeded
[10:34:44] INFO: getting storage list
[10:34:49] INFO: > Executing Operation: Init
[10:34:49] INFO: reading version info
[10:34:51] ERROR: Error, version response should be 28 bytes, device is sending 65534
[10:34:51] INFO: DEVICE CC3100 ES1.34 and higher
[10:34:51] INFO: reading version info
[10:35:04] ERROR: Error, version response should be 28 bytes, device is sending 65534
[10:35:06] INFO: > Executing Operation: Disconnect
[10:35:07] Operation Format returned.


[10:35:10] Begin Program operation.
[10:35:10] INFO: > Executing Operation: Connect
[10:35:12] INFO: setting break signal
[10:35:12] INFO: --- please restart the device ---
[10:35:15] INFO: connection succeeded
[10:35:15] INFO: getting storage list
[10:35:19] INFO: > Executing Operation: Init
[10:35:19] INFO: reading version info
[10:35:23] ERROR: Error, version response should be 28 bytes, device is sending 14
[10:35:23] INFO: DEVICE CC3100 ES1.21
[10:35:23] INFO: reading version info
[10:35:25] ERROR: Error, version response should be 28 bytes, device is sending 65535
[10:35:26] INFO: > Executing Operation: Disconnect
[10:35:48] Operation Program returned. 


[10:36:54] Begin GetVersion operation.
[10:36:54] INFO: > Executing Operation: Connect
[10:36:56] INFO: setting break signal
[10:36:56] INFO: --- please restart the device ---
[10:37:06] INFO: connection succeeded
[10:37:06] INFO: getting storage list
[10:37:19] INFO: > Executing Operation: GetVersion
[10:37:19] INFO: reading version info
[10:37:26] ERROR: Error, version response should be 28 bytes, device is sending 157
[10:37:26] INFO: > Bootloader version: 42.243.96.0
[10:37:26] INFO: > NWP version: 64.0.0.64
[10:37:26] INFO: > MAC version: 0.0.129.208
[10:37:26] INFO: > PHY version: 4.239.107.0
[10:37:26] INFO: > Executing Operation: Disconnect
[10:37:40] Operation GetVersion returned. 



How do i program the Serial Flash of my hardware using the CC3200 LaunchXL launchpad ??

Kindly help.

Warm regards,

Abhishek.

  • P.S: And this is the log when i chose "Secure" and "Alert" options while formatting...

    [11:07:43] Begin Format operation.
    [11:07:43] INFO: > Executing Operation: Connect
    [11:07:45] INFO: setting break signal
    [11:07:45] INFO: --- please restart the device ---
    [11:08:02] INFO: connection succeeded
    [11:08:02] INFO: getting storage list
    [11:08:05] INFO: > Executing Operation: Init
    [11:08:05] INFO: reading version info
    [11:08:19] ERROR: Error, version response should be 28 bytes, device is sending 65534
    [11:08:19] INFO: DEVICE CC3100 ES1.34 and higher
    [11:08:19] INFO: reading version info
    [11:08:26] ERROR: Error, version response should be 28 bytes, device is sending 126
    [11:09:49] ERROR: only 36864/49588 bytes were written
    [11:10:20] FATAL: Error loading the bootloader. Error code: -3
    [11:10:20] INFO: > Executing Operation: Disconnect
    [11:10:35] Operation Format returned.
  • Hi,

    Although you can connect to the device, it seems you do not get the expected response from the device for all types of commands.

    Can you share the setup and the custom board?

    Do you have the option to probe the UART lines?

    Regards,

    Shlomi

  • Abhishek,

    Check your voltage levels & grounds on both programming-hardware and the target itself. I have only used 1MB/unchecked Secure/unchecked Alert. I cannot speak to this, but the messages you are seeing most likely indicate a problem with data transmission after sending the break signal. i am thinking based on my experience with this exact problem that it is voltage level or ground difference.

    PS: What threw me off was the Launchpad as a programmer was appearing to be supplying 3V rather than 3.3V I was expecting because my ground cable between LaunchPad "Programmer" and "Target" came loose. Worth double checking...

    Jon

  • Hello,

    Thank you Shlomi and Jonathan for replying.

    Actually i did some mistakes with the connections.

    Now i am providing supply to both, my custom board as well as the CC3200 LXL.

    Everything works fine now and my custom board is getting programmed as desired.

    Thank you for pointing out the right direction !!

    Warm regards,

    Abhishek.

  • Just one more thing,
    My chip is CC3200 (and not XCC3200).
    That means it is a production device.
    In that case, what should be the status of "Secure" and "Alert" options while formatting the device using UniFlash ??

    Kindly reply,

    Regards,
    Abhishek.
  • I just mentioned unchecking those options for isolating the problem.

    I have not reached that point in development yet, nor will I soon, but the http://processors.wiki.ti.com/CC31xx_%26_CC32xx_UniFlash_Quick_Start_Guide is the only location I have searched. The full Uniflash guide may have more information. I am actually surprised I have not run across more information about this yet.

  • Ok Jonathan,
    I will check the guide once again.
    Meanwhile, if u come across anything, please post here.

    Regards,
    Abhishek.
  • Abhishek,

    "secure" and "alert" should always be set as unchecked.

    These configurations are meant for pre-production devices in order to make a device secured.

    With production devices, there is a fuse in place to indicate it so there is no need for these configuration (you cannot bypass the fuse so it becomes meaningless if you set these options). However, please note that this is the case for CC3100. For CC3200 you must not check these options since the fuse is not there (i.e. it is an unsecured device).

    Shlomi

  • Hello,

    Thank you very much for replying.

    Now i am able to program the device using UniFlash.

    I am also able to connect the JTAG and "Download and Debug" from IAR workbench.

    But as soon as i press the run icon, the program runs upto osi_start() instruction, but after that "Communication Failed" error appears. (I have put a breakpoint at osi_start() in httpserver code.)

    What might be the problem ??

    Please help !!

    Warm regards,

    Abhishek.

    PS: The same code works perfectly on CC3200 LaunchXL launchpad.

  • Also, when my code runs without the "Communication Failed" error, it gets struck in static void
    FaultISR(void) or static void
    BusFaultHandler(void).
  •  Here's a screenshot of the above situation...

  •  And here's the communication error...

  • Hello all,
    I checked everything in my code and hardware.
    Although the code was correct, the actual problem was with the hardware.

    After checking the GPIO and Power connections, i found out that the 40MHz crystal was not soldered properly.
    As a result, the CC3200R1M2 chip was not working, and hence i was getting communication error.

    Now my problem is solved and i am able to execute my application.

    Thank you all for your help and support.
    It is really appreciated.

    Looking forward for getting the same help and support in future.

    Warm regards,
    Abhishek Ekhare.