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.

CC2520 SRXON Problem

Other Parts Discussed in Thread: CC2520

Greetings,

I'm working on your official reference guide with the source code made for MSP2618. I've created a working port of the interface for STM32F407VGT and currently trying to get the per_test.c project to work. I've printed a PCB board according to the TI reference design (almost the same as http://www.ti.com/tool/cc2520emk ) which is connected to the STM32F4. The transmitter is one STM32F4+CC2520 breakout, and the receiver is an another STM32F4 with its own CC2520 breakout board.

The entire project is -functional- with SPI commands working, register read, write instructions also working. I can configure CC2520-GPIO lines to any of the available exceptions/signals and so on.

But when I issue SRXON strobe command, I can see that the device is in RX mode (RX_ACTIVE flag on GPIO5 for me), but when I try to send another strobe over SPI, the entire chip resets - all internal registers are back to default state.  The EXCFLAGx registers inform me that RX_OVERFLOW and SPI_ERROR exceptions have appeared, but the RXFIFOCNT is 0x00 and no other indicators of successful RX have appeared. 

Is there a special treatment for SRXON command which should be taken into consideration? It seems like it messes up the SPI interface for the next command, whether I attempt to read from status registers, or request a SNOP strobe or anything else. 

To sum up:
When I send an SRXON strobe, chip enters RX mode.
After I send a new command over SPI ( after SRXON, instantly or after a certain delay), the chip resets completely - including the initial GPIOCTRLx configuration. 
Everything else works: All expected functionalities over SPI and related to GPIO lines.

How can I overcome this issue?

Kind regards,
Dominik Perkovic

  • Hi Dominik,
    There is no special requirement for SRXON strobe. If you have one-to-one correspondence viz-a-viz our SPI driver then I believe you will have to sniff the SPI lines and compare the signals on our board with the ones from ST driver to get a better picture.
  • Hi,

    Thank you for your response. The problem is now resolved, but I'll write my thought process, it might help someone:

    I was already sniffing the SPI lines and noticed smaller power oscillations when performing each SPI command. The oscillations were even larger when in RX_ACTIVE or TX_ACTIVE modes, so it made me rethink my power supply. I was previously powering the chips via STM32F407VGT Discovery board, and because the SPI communication was working, it didn't occur to me that I'm not getting enough current via STM32F4 power pins for RF-related commands:

    So I've added an external power supply ( Like this one: www.petervis.com/.../YwRobot_Breadboard_Power_Supply.html ) that is directily connected to VDD and GND pins, and the problem is fixed.

    Kind regards,
    Dominik Perković.