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.

SimpliciTI BSP for MSP-EXP430F5529

Other Parts Discussed in Thread: SIMPLICITI, MSP430F2274, CC2500, MSP430F5529, MSP430FG4618, CC2500EMK

Hello all, I just wanted to share this BSP I was able to put together for the MSP-EXP430F5529. It allows use of the ez430-RF2500t on board. The files were mostly reworked using the original files for the CC430 and the ez430-rf2500. It allows the full TI User Experience Board Support for the msp-exp430f5529 to be used in conjuction with the SimpliciTI bsp. All other on board hardware is working as well. I do think this can be further optimized as far as the clock speed and PMM are concerned. NOTE: If you have the User Experience drivers installed and running for the MSP-EXP430F5529, you will need to edit each header file in use and replace <stdint.h> with "bsp.h"

Just unzip this file into \Texas Instruments\SimpliciTI_5529\Components\bsp\boards
6746.EXP5529.zip

The ez430-rf2500t you intend to use on the dev board will need to be reprogrammed to detect edges on P2.6 so the rf2500t LED can be used as a data toggle for SimpliciTI.
A grace project is attached to program the ez430-2500t. (This is only for the receiver.)
6874.2274_SimpliciTI_Toggle.zip

A very basic receiver application for the  MSP-EXP430F5529, it sets up the board and hardware then waits for a transmitter to connect. Once connected, the raw int from the transmitter's ADC 4 channels are displayed on the LCD (along with the time)
4135.5529_simpliciti_rx.zip.

Here's a simple TX application. You will need to create a standard SimpliciTI project for the ez430-rf2500t. It reads 4 analog channels using the DTC and transmits the message to the receiver.
8863.rf2500t_tx_example.zip

Hopefully someone will get some use from these files. I'm still learning my way around programming for the MSP430 and SimpliciTI.

Greg Whitmore
LI#18992
gwdeveloper.net 

  • Dear Greg,

    Thank you for this post. It is really helpful.

    However, I face few problems in setting up eZ43--RF2500 with the exp board.

    In the basic receiver application, you have included code for F5529 as well as SimpliciTI code.

    Why should we repeat the simpliciTI code again for F5529 when we use ez430-RF2500 module?

    Because if I implement this then the F5529 is not able to connect to RF2500 via SPI.

    Please provide your suggestions.

    Thanks & Regards,

    Vignesh.

  • Hello, the SimpliciTI code is not repeated anywhere. In my example, two ez430-RF2500T devices and one EXP430F5529 boards are used. One of the RF2500T is installed on the ez-RF header of the F5529 board. This RF2500T gets the 6874.2274_SimpliciTI_Toggle.zip program installed. This is a simple program that turns the cpu (MSP430F2274) off but sets interrupts on pins to allow for toggling the RF2500T's leds. Combined with the EXP430F5529 board getting 4135.5529_simpliciti_rx.zip installed to allow SPI access to the CC2500, a simple receiver is created.

    Another RF2500T will be used as the transmitter. This RF2500T gets 8863.rf2500t_tx_example.zip installed on it to TX values from the ADC10.

    So, yes, 3 MSP430 are programmed but only two are in use for the RF communications. Please let me know, in detail, how you have your hardware configured -I will help the best I can. In a short bit, I will post a youtube video of the demo functioning for review.

  • Dear Greg, 

    Thank you for your reply.

    In my case, actually I am trying to configure the EXP5529 as transmitter.However, I tried your code setup for a start. 

    When I Implemented the 5529_simpliciTI_rx.zip file, on the MSP430F5529 board,

    I had to refer many other simpliciTI header files that the bsp.h refers to.This is understandable.

    However, it throws various errors, for instance, ‘identifier MAX_APP_PAYLOAD is undefined’, etc. But I have referred all the header files properly.  I was just wondering is this the right way to program the EXP board? Please give your inputs. 

    Thanks & Regards,

    Vignesh.

  • The error you are seeing is due to your project not being configured properly. MAX_APP_PAYLOAD and others are defined in smpl_nwk_config.dat. See this http://www.43oh.com/forum/viewtopic.php?f=8&t=1953 for a quick howto on setting up a SimpliciTI project. In particular, see Step 4 and the last part of Step 6.

    If you start from my examples, there will be numerous changes needed to make the F5529 the transmitter. The example was provided to be an extremely simple proof-of-concept using the bsp created for the F5529.

  • Thanks Greg!

    I configured my project based on that link. It eliminated most of the errors.

    However, I am still getting an error 'identifier mrfiRadioState is undefined'. Also it shows many warnings regarding the methods in radio.c file. I actually copied the bsp, mrfi, nwk, nwk applications, folders in my project instead of linking them from SimpliciTI folder as given in the 43oh link. Please let me know if this is fine? Also I have included all the paths in the includes file.

    But still the mrfi related errors and warnings appear. I am actually using CCSv5.1 and adding the simpliciTI components to  the user experiment project that came along with the EXP430F5529 board.

    from few discussions it seems like a DEV_ROOT path need to be added to the linked resources. But the EXP board’s default project does not have this path included in it and it works anyway. 

    Please let me know if this error is due to CCSv or am I missing any configuration with regards to mrfi?

    Thanks,

    Vignesh.

     

  • I'm not sure of the errors you are seeing as you have changed the code for the F5529 to a transmitter. If you can, attach your project as a zip file and I can try to take a look at it.

    The DEV_ROOT linked resource is only needed for the demo projects that TI has offered. The examples I've posted and the tutorial at 43oh.com do not use the linked resource in order to provide some transparency to the file locations.

    Also, if you're adding the simpliciTI components to the F5529 User Experience demo, you must remove #include <stdint.h> from each of the F5529's driver files and replace it with #include "bsp.h". Or else, you will have a big mess of errors.

  • 5086.5529UE.rar

    Please find attached the zip file. 

    I am using the CCS_Code_Size_Limited project. Actually it throws some error in identfying the radio family.

    But I have included the MRFI_CC2500 in predefined symbols.

    Please let me know if I am missing any file.

    Thanks,

    Vignesh.

  • Hi,

    I implemented the sample receiver application based on your examples (as it is) creating a new CCS app.

    Still I am getting the mrfiRadioState undefined error. could you please tell me if this is due to any configuration issue?

    Thanks,

    Vignesh.

  • It is. I have not had a chance to look at your project, but...

    a project is attached for the EXP430F5529 board. You will have to open the project's properties to verify the linked resources for SimpliciTI are in the same location on your computer. It compiles and runs with no issues.

    2063.5529_simpliciti.zip

  • Dear Greg,

    Thanks for the code. It compiles without any errors.

     I've configured an RF2500t board using RF2500_Tx and I've reprogrammed the EXP430F5529 according to your 5529_simpliciti_rx code. The RF2500t board I've on the EXPF5529 board has the code 2274_SimpliciTI_Toggle. Now as I debug the EXP430F5529 it gets struck at the following step, 

    while (SMPL_SUCCESS != SMPL_LinkListen(&linkIDTemp))    // link to Tx

      {

           Board_ledToggle(LED1);                      // toggle red for not linked

      }

    So as per the code, the LED1 in the EXP430F5529 board keeps blinking (in red). Likewise if I debug the Transmitter code (RF2500 Tx), it gets struck at, 

      while (SMPL_SUCCESS != SMPL_Link(&linkIDTemp))    // link to Rx

      {

        BSP_TOGGLE_LED2();                      // toggle red for not linked

      } 

    Also the RF2500t on the EXP430F5529 board toggles GREEN. However, as I power the transmitter, (RF2500_Tx) and as I press the button, the red light toggles continuously indicating that it is trying to link. 

    But at the same time the Green led on the RF2500t on the EXP430F5529 board also toggles at the same frequency as the transmitting board. I don’t understand why this happens. Because the LED1 on the EXP430F5529 board still blinks in red, indicating that the link has not happened. Also regarding the 2274_SimpliciTI_Toggle code, is it the only code, the RF2500t on the EXP430F5529 board be programmed with? 

    Please give your inputs. 

    Thanks,

    Vignesh.

     

  • Not sure what's going on for you but there's one thing you could try...

    On the RX end of things, open SMPL_CONFIG.DAT and change --define=THIS_DEVICE_ADDRESS="{0x68, 0x56, 0x34, 0x12}" to --define=THIS_DEVICE_ADDRESS="{0x78, 0x56, 0x34, 0x12}" just to make sure they're both running different addresses. Save the file, clean the project and reprogram the F5529.

  • Thanks Greg! 

    It works now. your code samples were really helpful.

    Brilliant work. 

    Cheers,

    Vignesh.

  • Dear Greg,

    I have successfully used the CC2500EMK (the one connected to the RF header surrounding the SD Card )  based on the project you uploaded and simply changing the GD02 definition from P2.1 to P2.4 (that's the only difference on the CC2500EMK and the EZ430). I just wanted to say that it works just great and thanks for the help. I am actually transmitting from a customized board with the MSP430FG4618 + CC2500. 

    What I am trying to do now is to send the info received by the CC2500 to a PC and display it on a COM port. I will appreciate if you have any suggestion or if you can tell me if you achieved this with the 5529 EXP Board.

    Best regard,

    Efrain