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.

BOOSTXL-CC3120MOD: boosterpack with MSP430FR5994 sl_Start() compiler error

Part Number: BOOSTXL-CC3120MOD
Other Parts Discussed in Thread: MSP430FR5994, , CC3120, CC3100, MSP430F5529

I am using the boostxl-cc3120mod booster pack on a MSP430FR5994 MCU.  I am trying to use the wifi module to communicate on the internet through the MSP430.  I have successfully provisioned it and can use the mobile app to make the wifi module ping another computer on my network. So, it has been provisioned successfully.   I am not using any type of RTOS.  When I put sl_Start() function in my code a compile give me error no matter what compiler I use.  For IAR the error is  "Undefined external 'sl_Start' referred in wifi"  The file is called wifi.c.  In the preprocessor section where I have to add the include directories I put the sdk wifi plugin 4.20.00.10 but that gave me more errors so I tried cc32xx sdk 5.30.00.08.  I have also tried to use the xdctool and I attached a picture of the results.  Here is my code for wifi.c

#include <ti\drivers\net\wifi\device.h>
#include "macros.h"
#include "msp430.h"

char wifi3120(void){
  char connection = NUM0;
  connection = sl_Start(NULL,NULL,NULL);               
 return connection;
}

  • Hi,

    No, you cannot use (compile) CC3120 with MSP430 like that. Communication between MCU and CC3120 is done via SPI or UART. From this reason you need to have hardware porting layer for your platform. Wifi plugin for CC3120 does not come with native support for MSP430. You you need to create this layer by yourself. Detail description you find at SWRU455 chapter 19 and appending D. As inspiration you can use CC3100 SDK which have support for MSP430. CC3100 SDK is NOT compatible with CC3120 devices but can be good inspiration for your host driver porting effort.

    Another option can be switch hardware to CC3100 which have native support for MSP430 (MSP430F5529) or you can switch MCU to MSP432 which is supported by CC3120 WiFi plugin.

    btw ... at your image above you trying to compile for Cortex-M4F with RTOS support. MSP430 is not a Cortex-M MCU.

    Jan

  • I have already setup UART, ports, timers and clocks on the MSP430.  I have also used the AT commands which also didn't work.

  • Hi,

    CC3120 does not support AT commands. If you want to use CC3120 connected via UART to your MSP430, you need to port host driver to your MCU as is described at SWRU455.

    Jan

  • What do you mean by port host driver to your MCU? 

  • Hi,

    Please read SWRU455 for deeper understanding.

    I have attached ZIP file which contains porting layer for MSP430 and CC3100. This files comes from CC3100 SDK. Be aware that this files are not compatible with CC3120.

    CC3100_MSP430.ZIP

    Jan

  • I read SWRU455 and have looked at the files.  I still don't understand why it won't compile even though sl_Start is the only error.  It does not complain about other things being undefined.  It also knows where the definition of sl_Start() is. 

  • Hi,

    Do you have ported driver for your platform (that means control of UART, control of nHIB a IRQ pin, implemented synchronization objects, implemented timeouts)? Without this porting you will not be able use CC3120 with MSP430.

    You are not able to compile your code because you are compiling code for wrong platform (your MSP430 is not a Cortex-M4 device). You should copy *.c and *.h files from of host driver into your project. You need to create porting layer similar like for CC3100 (zip file above).

    Jan