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: No reset IRQ received in sl_Start

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

Hi,

    I am now porting the CC3120 host driver on my device.

    By following the CC3100 Host Interface document, I call the "sl_Start(0, 0, 0)" function to do the following things to initialize the CC3120.

    1. sl_IfOpen() to get the CC3120 handler.

    2. sl_DeviceDisable() to set nHIB line low.

    3. sl_IfRegIntHdlr() to register the interrupt handler.

    4. sl_DeviceEnable() to set nHIB line high.

    5. Wait for the interrupt from CC3120.

    However, the interrupt was never asserted.

    What should be the possible problems that will block the interrupt?

    By the way, could I remove the external flash at the first stage? Since the ROM firmware will handle the wireless and network operation, I just wish to make sure the host interface(SPI) between MCU and CC3120 is correct in the beginning.

    Thanks.

        Todd

  • Hi Todd,

    The external flash must be connected as the boot-loader requires the existence of certain system files
    The latest service pack should be on the file system.
    If the external flash is available and programmed (using uniflash), you should poll the nHIB line (to make sure it behaves as expected) and the Interrupt line (to check if it toggled without the SW response).

    Br,
    Kobi
  • Hi Kobi,

    Thanks for your information.

    From the document swru469b, user can use the Uniflash tool to create the image file including the Service Pack, configuration file(AP or STA) and certification. The service Pack provides the patch to CC3120's ROM firmware. Since user could configure CC3120 to run as AP or STA through the Simple Link API, I am wondering whether I could test the host interface function without connecting the external flash.

    By the way, the local agent told me that CC3120 would access the flash after sending out the reset interrupt. Does it mean that the no detection of interrupt issue might have nothing to do the external flash?

    Thanks.

    Todd
  • Hi Todd,

    The external flash is mandatory.
    It is needed for the bootloader to complete the initialization.
    Nothing is expected to work without it.

    Br,
    Kobi
  • Hi Kobi,

    Thanks for your information.

    I use the UniFlash tool to create the binary image(*.bin) containing the Service Pack only and program this image into the external flash using an offline programmer. Is it sufficient for CC3120's bootloader to work?

    By the way, how to check if the binary image in the external flash is valid for CC3120's operation?

    Thanks.

    Todd
  • Hi Kobi,

    Is there any pins of the CC3120 I could use as a console port to see what's wrong with the CC3120?

    Thanks.

    Todd
  • Hi Kobi,

    After fixing some HW issues by our engineer, host MCU can now receive the IRQ from CC3120. Then, my host driver sent the sync pattern 0x65 0x87 0x78 0x56 to CC3120.

    Unfortunately, host MCU couldn't receive the response from CC3120. We did use the scope to measure the SPI signals(SS, MOSI, MISO, SCLK), and it seemed that the signals were correct.

    What could be the possible reasons that the CC3120 doesn't respond the sync pattern?

    Thanks.

    Todd
  • Probably the SPI lines are not connected correctly.

    Br,
    Kobi
  • Hi Kobi,

    Since I can now receive the IRQ from CC3120, I will check the SPI issue now.

    Thanks for your help.

    Todd