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.

CC1200EMK-868-930: CC1201

Part Number: CC1200EMK-868-930
Other Parts Discussed in Thread: CC1200, MSP430F5438

Dear all,

is there any user friendly documentation or tutorial how to start programming CC1200EMK-868-930 via SPI interface?

This kit seems to be useless without additional board and extra commercial software to compile examples from TI page.

Thank you for any help.

Lukas

  • The SPI interface is explained in the UserGuide and in the examples. We don't have any other resources than that. 

    Note that you can get a trial license for IAR that should enable you to compile the examples if you want to run them. 

    CC1200 is a transceiver and need a MCU to setup and control it over the PSI interface. Have you looked into which MCU you want to use? For most TI MCUs you can also use CCS which you can download for free.  

    Have you only bought the EMs or have you also bought the TRXEB (https://www.ti.com/tool/SMARTRFTRXEBK)? 

  • Hi,

    my company bought only CC1200EMK-868-930 and wants to connect it to the Raspberry Pi.

    I have already made communication with the chip but now I would like to make some simple communication and send to second chip "hello world".

    But I can not find any useful example. Simple. Just with necessary code for this specific chip.

  • Does this mean that you have managed to read and write CC1200 registers? If that is the case you should be able to port this example: cc120x_easy_link  found in https://www.ti.com/lit/zip/swrc274 to the PI. Have you searched on raspberry forums for code examples? I have seen code for some of our parts doing a quick google search.

  • Yes, I can send to the chip for example command to read the chip type and read the answer. But in the documentation there is no word about making complex program, about error handling etc... The example cc120x_easy_link is written for different evaluation board. Has many constants values for used pinout on the evaluation board with LCD display. I was trying to port only necessary code but this is difficult for me becouse some of functions are from msp430.h and it's not available in the example package.

  • to be more precise, where I can find declaration of following function st and register UCB0RXBUF

    #define TRXEM_SPI_TX(x)                st( UCB0IFG &= ~UCRXIFG; UCB0TXBUF= (x); )
    #define TRXEM_SPI_RX()                 UCB0RXBUF
  • From this folder source\components\targets you can see that this code is written for the MSP430F5438 and UCB0RXBUF is a register on this device related to SPI. Since you are using a Raspberry and have written your own SPI functions you don't need to look at the register settings on the MSP side. 

    But: For your use you should only look at the cc120x_easy_link_tx.c/ cc120x_easy_link_rx.c files. 

    Looking at the tx files as an example, the two functions you need to port are registerConfig(); and runTX();

    For registerConfig(void) you need to replace cc120xSpiWriteReg with the ported SPI function you have written for the Raspberry.  The same for the rx side. The updateLcd() can be skipped or replaced by a printf or similar function.