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.

CC1125: Problems to connect the RF chip through SPI with Arduino

Part Number: CC1125

Hi to everyone!


I'm trying to use a CC1125 RF chip on an Arduino via SPI, but I do not get any response. I do not know what I'm doing wrong!
I have the Smart Transceiver Evaluation Board v1.7 and the EM chip, so I plug the pins into the MSP 430 I/O Header (CS in P3.0, MOSI in P3.1, MISO in P3.2, SCLK in P3. 3 and RESET in P8.0). The pins in the Breakout header do the same, right?
Now, on Arduino, I just want to do a simple test by reading the IOCFG3 address using a Single Register Access type. So I just have to send a Byte with the following bits:

  • First 1 (to read a register).
  • Then 0 (for a single access, not a burst).
  • And finally a 000000 (the address of IOCFG3)

Then the byte finally is 10000000.
And before sending that:

  • First, I configure the SPI on the Genuine Arduino 101 (Pin 8 for RESET, 10 for SS, 11 for MOSI, 12 for MISO and 13 for SCK).
    • I set the frequency to 8Mhz, MSB first and SPI_MODE0 (Rising data capture).
  • Then, reset the RF chip setting pin 8 to HIGH.
  • Lower the SS pin.
  • Waiting until MISO is low.
  • Sending the byte.
  • Waiting until I get the answer.
  • High SS pin.
  • And closing the SPI connection.

(When I run SmartRF Studio 7 I get, in the IOCFG3 register, the value 0xB0 in hexadecimal, so I expect that value or 176 in decimal.)
I have programmed and executed the following code in the Arduino:

https://pastebin.com/brBuHhES

But I always reach: "Sending: 128" and I never get an answer.
What could I be doing wrong? It could be a problem with voltage?
Thanks in advance!

  • If you look at the schematic for the TRXEB the SPI signals are connected directly from the MSP to the EM connectors. If you try to connect a SPI interface to the break out it will conflict with the SPI interface already in use.

    Does the Arduino IOs operate on 3.3 V?

    Why do you want to use a Arduino board when you have the TRXEB and can program the MSP on this board? For the TRXEB we have code examples and SPI library.
  • Ok, so I have to use the MSP conectors. Thank you!
    I think, not completly sure, this Arduino uses 3.3V in the output pins. Do I need 5V?
    I'm using Arduino because I have to program an embebbed board based on Arduino that will use the RF chip (and more devices) and will use the SPI protocol to comunicate to it.

    Soon I will put the code. There must be a limit of characters that doesn't allow me to publish the full post with the code because I exceed it.

    I just update the main post adding the code with a link.

  • Another cuestion:
    To disable USB MCU I set switch S2 in disable, but to disable MSP430 MCU will not work if I pull the Current Measure MCU jumper out, instead of short circuit the two MCU pins on RESET P4 header?

  • As I wrote: If you look at the schematic for the TRXEB the SPI signals are connected directly from the MSP to the EM connectors. If you want to connect Arduino to the EM, don't use the TRXEB.
  • I'm sorry, I didn't understand like that.
    I was trying to use the pins in the TrxEB because the EM connectors holes are very small and I don't have any wire with the extreme so thin that fits in them.
    Finally I found a way to make it work. I just use the Break Out P7 header to connect through SPI to the external MCU, disable the USB MCU setting the S2 switch in disable and take the MCU Board Current jumper and use it to short circuit the MCU P4 Reset pins.
    Now, when I want to power on the RF chip and comunicate to it I only have to power the TrxEB board.
    Again I'm sorry and thanks for your help!