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.

AWS IOT with CC3200 - Bridging the gap

Other Parts Discussed in Thread: CC3200, UNIFLASH

Looking to understand how to connect CC3200 to AWS IoT Platform.

This is what i have going till date ...

  • Installed CCS, CC3200 SDK, Uniflash & Terra-Term
  • Am able to run Projects provided in SDK (example: wlan station) on the Device
  • Installed SmartConfig on Android. Am able to Discover and Connect device to my AP. 
  • Downloaded AWS SDK https://github.com/aws/aws-iot-device-sdk-embedded-c

I was not able to import this project into CCS either to start playing with it. I have an AWS account and have downloaded the certificates and the keys. But am not sure what to do from this point on. 

Any insights, links, tutorials which help bridging the gap between connecting CC3200 to AWS IoT will go a long way in learning this ecosystem.

Thanks everyone! 

  • Moving to TI-RTOS forum

    Regards,
    Gigi Joseph.
  • Humanesq,

    Have a look at the following link.

    http://www.ti.com/ww/en/internet_of_things/IoT-Amazon-Web-Services-for-SimpleLink-Wi-Fi.html

    Also, please clone aws-iot-device-sdk-embedded-c.git from the following link. This is the AWS SDK 1.1.1 with board support for the CC3200.

    https://git.ti.com/iotdev/aws-iot-device-sdk-embedded-c

    Read through the README_CC3200.md file for details on building the CC3200 AWS examples, obtaining the certificates, and flashing your CC3200 LaunchPad.

    Have a look at my post on this thread for a suggestion on how to integrate the AWS library into your CCS environment.

    https://e2e.ti.com/support/embedded/tirtos/f/355/p/502317/1855585#1855585

    ~Ramsey

  • Here is another page to help you get started.

    http://processors.wiki.ti.com/index.php/AWS_IoT_Development

  • Great leads. Thanks!
  • I am on line 100 of README file and trying to build the application
    git.ti.com/.../README_CC3200.md

    Am getting the following error:

    ----------------------------------------------------------------------------------------------------------------------

    C:\TI\iotdev-aws-iot-device-sdk-embedded-c\certs\platform_tirtos\cc3200>C:/TI/xd
    ctools_3_32_00_06_core/gmake all
    C:/TI/xdctools_3_32_00_06_core/xs --xdcpath="C:/TI/tirtos_cc32xx_2_16_01_14/prod
    ucts/ns_1_11_00_10/packages/;C:/TI/tirtos_cc32xx_2_16_01_14/products/bios_6_45_0
    2_31/packages;C:/TI/tirtos_cc32xx_2_16_01_14/packages;C:/TI/tirtos_cc32xx_2_16_0
    1_14/products/uia_2_00_05_50/packages;C:/TI/tirtos_cc32xx_2_16_01_14/products/ti
    drivers_cc32xx_2_16_01_13/packages" xdc.tools.configuro -c C:/TI/ccsv6/tools/com
    piler/ti-cgt-arm_5.2.5 -t ti.targets.arm.elf.M4 -p ti.platforms.simplelink:CC320
    0 -r release certflasher.cfg
    C:\TI\xdctools_3_32_00_06_core\C:/TI/xdctools_3_32_00_06_core/xs: error: can't c
    reate session manager: can't find a JVM; try setting the environment variable 'X
    DCTOOLS_JAVA_HOME' to the absolute path of any directory containing a 32-bit Jav
    a Runtime Environment (1.7 or greater); e.g., 'C:\Program Files (x86)\Java\jre7'
    .
    gmake: *** [certflasher/compiler.opt] Error 1

    ----------------------------------------------------------------------------------------------------------------------

    I tried setting the environment variable 'XDCTOOLS_JAVA_HOME' 'C:\Program Files (x86)\Java\jre7'
    but am still getting the same error. Any hints on what this error means and how i can resolve it?

    I have seen some other posts which call for re-installation of xdctools? Am assuming i have to reinstall CSS for that since it auto installs the xdctools?

    Thanks.
  • Problem resolved. Had to Reboot the PC for Environment Variable to take effect.
  • At the last stage of running the application. 

    The current time is incorrect on Serial Terminal. But my clock is set correctly i believe. What might be going on?

    Also, when successful, any instructions on what/where i expect to see this information on AWS IoT?

    Thanks. 

  • Called DATE and TIME on Cmd line and got right information. Ran application again and it shows right Date/Time and runs fine now!!

    Thanks for the links!!

  • Humanesq,

    Good job working through all the issues. It's not an easy path to follow.

    I'm not sure which example you are running. I think they all self-subscribe. In other words, they publish to a topic and also subscribe to the same topic. This way you can see the data make the full round trip. However, this is probably not a real application setup. The data is typically routed to the serial port. You should see some output in your terminal window (which is connected to some COM port).

    You can also use your web browser to login to your AWS account. Click on the IoT Console. Then click on MQTT Client. On that page, you can subscribe to a topic. You should see your published data there. You can also use the command line tool (described in the README_CC3200.md file) to achieve the same result.

    These examples illustrated the API usage but are not designed to be deployed IoT applications. Once you learn how AWS works, you would design your application from the ground up.

    ~Ramsey

  • Hi Ramsey, 

    Thank you so much for the links and information! They were exactly what i was looking for. Was able to see information from the device on AWS MQTT Client and push/publish messages as well. 

    I have a electro-mechanical device. Plan is connect TI CC3200 to the UART of the device to transmit sensor data to the cloud and to be able to turn actuator ON/OFF from the cloud. So it will be deployed IoT application and am not sure of the next steps to transition to a more mature demo.

    I am familiar with Web Development and will be attending a "AWS Technical Essentials" training mid-May in the hope of learning more about AWS. But it won't have any information specific to AWS IoT i reckon. If you have words of wisdom on how to traverse the path from here to a more deployable solution, will go a long ways!!

    Thanks a ton!

  • Humanesq,

    Good to hear you are making progress. Unfortunately, I don't have any more to offer. Our involvement is to make sure the AWS SDK examples run on TI devices. In other words, we provide the board support package. Developing a mature IoT application is beyond our expertise. I think Amazon and the AWS website will be more useful. My only suggestion is that any network application must be robust. Networks in general will fail. As such, your application needs to handle network errors. I've put my connect and disconnect code in separate functions. Anytime I get a network error, I disconnect and reconnect. This should be a fundamental part of your application design.

    As for provisioning, not clear how that will work. Amazon should provide guidance on that.

    ~Ramsey