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.

CCS/CC3220SF-LAUNCHXL: using common.syscfg to figure what are the core feature and resources that can be re-allocated based on the example chosen

Part Number: CC3220SF-LAUNCHXL
Other Parts Discussed in Thread: UNIFLASH, , CC3200

Tool/software: Code Composer Studio

Hi,

I am new to the TI, simple link, its tool chain as well as the wifi enabled ioT,  am looking at getting an application started. I have been through the device reference manual, simplelink academy, Uniflash tool usage etc. I did use the httpget example to get contents of txt file off a http server I hosted successfully using the CC3220SF-LaunchXL demo board and am keen to pursue the end application solution using this device and tool-chain. Need advise on a few questions.

I am looking at using the CC3220SF-LaunchXL to prototype for a headless device.

The reason for this chip is that it offers separate M4 MCU offloading the simple link wifi stack as I understand from block diagram uses another MCU.

The prototype device needs connectivity to an iOS/Andriod app, It does not need any data storage on the web, only a couple bytes of status with their date and time stamps, that needs to be updated both by the device and the app. The device is battery powered and needs to optimize on power usage.

The hardware resources required are as follows:

a. 2 DMA fed PWMs outputs with a PWM frequency of about 400kHz.

b. 2 regular pwms.

c. 2 ADC channels feeding DMA,

d. 2 GPIO's configured as inputs to wake up application mcu out of HIB mode.

e. 1 I2C channel i.e. SDA SCL

Also, I would like to keep the debugging serial interface and a couple of LEDs but am ready to part with other peripheral configurations. BTW is the SPI needed for the EEPROM that saves the SSID's? In that case it will have to remain.

I downloaded the new 3.10 SDK to open the httpget using the syscfg_preview, however, when I choose CCS compiler, project, it does not open the common.syscfg correctly. I found that the gcc compiler project does open the .syscfg file.

Question1. In the common.syscfg, most of the resources are already allocated and there is no scope of adding any hardware resources per my requirement, I am not clear on the existing assignments and whether they are required for the core application i.e. httpget to function. How do I figure what resources can I re-assign to achieve my requirement above. Or should I resort to the CC3200 and use an external host mcu?

Question2. I am thinking of using the httpget example with an idea that I could use httpget and httppost to get and set data on a hosted http server by both the device and the iOS/Andriod app.  Is hosting http server the correct/optimal connectivity option? A server feels like an overkill for few byte exchange. Can use this device as a server itself? Serial Wi-Fi example? In this case, how can the user configure it to connect to an AP? i.e. how do I change the serial wi-fi example to perform provisioning i.e. act as and AP and connect as a station once provisioned? Is there a third option? besides the httpget/ Serial Wi-fi? Of course some basic security should be enough. Latency of couple of seconds is not an issue.

Kindly advise.
SM

  • Shyam,

    Q1: Can you provide a screenshot of the issue you are having? I
    Q2: This is completely up to you and how you want to architect your design. I don't fully understand the network scheme you are looking to do. Is the device in AP mode, and a Mobile phone will connect to it? Or is the device a station connected to an AP for internet access, and you want to access this remotely? If we are the AP, then you can do simple UDP/TCP sockets to send and recieve between phone and device. If its over the internet, you are going to need a outside server that both devices can connect to, and exchange info with.

    BR,
    Vince
  • Hi Vince,

    Q1: Can you provide a screenshot of the issue you are having? I.

    See error below. I wanted to correct my earlier statement: both SDK 3.1 and 2.4 as well as the gcc version of SDK 3.1 came up with this error, the gcc version of SDK2.4 is what I could get working. However it did not offer the DMA option in the PWM configuration. Also, the information that is missing is how do I clear the resources used in demo and make sure I am not clearing resources to key features. Maybe a map of the hardware resources to the features e.g. UART0 for printf for debugging etc.

    Q2.

    The used case of the device is that the initial setup i.e. provisioning will be done in physical proximity and the device will have to be in the AP mode. Then it can revert to being in the sta mode and connect to the ssid provided in the AP mode (headless device i.e. no User interface), the sensor/device then needs to be connected to phone/s through the internet to update its status and receive command from phone/s.

    Is there anyway that a intermediary web server can be avoided? Given that the transfer of data from and to the device is only a few bytes (lets say less than 100)? Can the device act as a server? what kind http/mqtt/..... that I should look into? What will be the latency? 

    Thanks 
    Shyam

  • Shyam,

    What SDK version are you using? I don't think this is a issue in the latest SDK. Try updating and seeing if that fixes your issue.

    BR,
    Vince