Getting Started with the Internet of Things (IoT) using the Texas Instruments CC3200 Featuring: CC3200 SimpleLink Wi-Fi LaunchPad Monday, June 15 2:15 – 3:45 pm Room 606 Presenter: Dr. Thad B. Welch, P.E. But before we start - a quick survey • • • • • • • • Educator Teaching assistant Student You teach microprocessors You teach communications You teach a project-based course You own an IoT device None of the above … 2 Outline • Quickly … what is the IoT? • Hardware hands on with Energia … coding example to make an LED blink • How to configure your personal development system • Continued … what is the IoT? • TEMBOO Yahoo weather example • Weather example … extended • Creating a simple APP 3 Quickly … what is the IoT? A diverse collection of technologies and devices designed to connect everyday objects to the Cloud to keep track of people, assets and events effortlessly and in real-time, providing enhanced personal and societal awareness and control 4 Total number of things The Evolution of the IoT Internet of Things Things on the Internet 50 billion connected devices by 2020 Things talk to each other and the Internet Connected Things Things talk directly to the Internet Things No direct connection to the Internet Time 6 7 Hardware Hands On • Verify board configuration • Jumpers are correct • Plugged into the computer • Launch Energia • Run the example, File – Example – Basics – Blink • LED on the CC3200 should now be blinking • Let’s quickly look at the code Now you are a hardware ninja! 8 FYI … how to configure your personal development system • http://energia.nu/pin-maps/guide_cc3200launchpad/ • Have a CC3200, a micro USB cable, and a jumper wire • Install Energia version 15 • Verify all jumper connections • Update the CC3200 firmware (optional) • Install the CC3200 drivers, Allow the drivers to load … completely • Connect the CC3200 to your computer using the USB cable • Launch Energia • Set your device COM port (Tools – Serial Port – COMxx) • Select your hardware (Tools – Board – CC3200) • Select an example (File – Example – Basics – Blink) and “Upload” it 9 Only TI has all the IoT building blocks Nodes MCUs MCUs Processor s Wired & Sensors Wireless Connectivi ty Analog Signal Chain Gateway, Bridge or Router Power Manageme nt Cloud Multicore Processor s Processor s Wired & Wireless Connectivi ty Analog Signal Chain Analog Signal Chain Power Manageme nt Power Manageme nt Requirements for MCU to be ideal for IoT • Energy efficiency • Embedded architecture with a rich software ecosystem • Portfolio breadth to enable –Software scalability –Meet different levels of performance & a robust mix of I/O interfaces • Cost-effectiveness • Quality and reliability • Security 11 MCU in IoT system architectures MCU and RF SOC Architecture MCU as Host MCU + RF MCU Appl Appl MCU as Host and running Network Stack RF MCU MPU Appl Stack Stack RF MCU as Sensor Hub or Power management to Host MPU Stack Appl Stack MSP430 RF ULP task Example CC430 CC3200 CC3100 + MSP430 F5xx CC2560 + MSP430 F5xx; TRF79xx WL18xx + AM335x + MSP430 F5xx MCU Memory needs Max Min Max Task-dependent MCU Flexibility/ Scalability Min Max Middle Max MCU Cost $$$ $ $$ Task-dependent 12 Benefits for Internet of Things Industry standard BSD socket APIs for TCP/IP communication Small driver footprint down to 6KB host code HW crypto engine for TLS/SSL Internet security Low power radio and advanced low power modes SmartConfigTM Technology world’s best Wi-Fi® provisioning tool TI modules certified for WW regulatory and Wi-Fi Alliance Build Internet applications quickly, reuse industry available Internet code Enable integration with low-cost MCUs like MSP430 Establish TLS connection in 150mSec for fast and secured user experience Wi-Fi® sensors stay connected to the network for over a year using two AA batteries Enables customers to set up headless devices easily and fast Fast time to market Save customers over $50K of test cost and test time per product family 13 CC3200 Software Development Kit (SDK) Traditional Path • Use the SDK to get started quickly with over 50 C code examples and sample applications • http://processors.wiki.ti.com/index.php/CC 32xx_SDK_Sample_Applications Energia Path • Use the Energia WiFi library and other derived libraries to create application code using the Wiring framework • www.energia.nu/reference/wifi 14 Making MADE simple With the TI LaunchPad { } Hardware & Software 15 The LaunchPad Concept Rapidly Prototype TI Solutions with Modular Hardware, Intuitive Software, & Community Support 16 The LaunchPad Ecosystem Everything you need to start microcontroller development Hardware + Software + Community LaunchPads & BoosterPacks Development tools based on TI microcontrollers, including MSP430, C2000, TM4C, & Hercules. They are affordable & include everything you need to start microcontroller development! Plug-in modules for the LaunchPad add new functionality including capacitive touch, wireless, motor control, dynamic lighting, sensors & more. Intuitive Software Teach your LaunchPad new tricks using easy-to-use software tools. LaunchPad is supported by a wide range of software tools ranging from beginner-level software to full-featured professional development environments. Engaged Community Share projects and ask questions with LaunchPad community members and TI engineers located all over the world using online forums and communications tools. 17 • Low-cost LaunchPad kits from MSP430, MSP432, TM4C, C2000, Hercules & Connectivity starting at $9.99 • Open designs & modular hardware enables developers to create complete TI-enabled system solutions • Add power management, wireless capabilities, sensors, displays & more to your TI MCUbased LaunchPad by stacking multiple BoosterPacks. Ranging from $10-$60 • Hundreds of code examples to get up and running quickly using intuitive software tools 18 Why TI LaunchPad is better? • Performance and Variety • Price • Multiple supported SW paths • HW Debugger • TI online resources 19 LaunchPad is TI’s Common Denominator Modular hardware enables developers to explore new ideas quickly Sub-1GHz (CC110L) NFC/RFID (TRF7970A) WiFi (CC3100) ZigBee (CC2530) BLE (CC2541) Bluetooth (CC2564) Wireless BoosterPacks enabled by TI transceivers Thermocouple MEMS Temp Sensor BoosterPack BoosterPack (ADS1118) (TMP006) ePaper Display LiPo Battery SensorHub BoosterPack BoosterPack BoosterPack (RePaper) (BQ fuel gauge) (various sensors) Additional BoosterPacks for analog, sensors, displays & more from TI, Third Parties & Maker community. LaunchPad kits featuring TI MCUs & standardized BoosterPack interface 20 MSP430 TM4C C2000 Hercules CC3200 (Ultra-Low Power) (ARM Cortex M4F) (Real-time Control) (Safety) (MCU + WiFi) Want to see the LaunchPad in action? Check out these links: http://bit.ly/1imK8jw Scrolling Marquee with 8x8 LED Matrix BoosterPack ePaper BoosterPack for ultra-low power displays http://bit.ly/MqcL4g K-type Thermocouple BBQ Companion BoosterPack http://bit.ly/1eMWm0P http://bit.ly/1fFMBVc Monitor accelerometer wirelessly with CC110L SubGHz RF BoosterPack 21 www.launchyourdesign.com SimpleLink™ Wi-Fi® CC3200 LaunchPads ARM® Cortex™ M4 based SoC with integrated Wi-Fi connectivity Target MCU: CC3200 & CC3200MOD BoosterPack Pinout: 40-pin Specs: • 80MHz • external Flash support / 256 kB RAM • Wi-Fi 802.11b/g/n standards • Station, AP, and Wi-Fi Direct Roles • ADC, I2S, I2C,UART, SPI Why this LaunchPad? Connectivity for IoT Applications $29.99 All in one solution for Wi-Fi CC3200-LAUNCHXL & CC3200MODLAUNCHXL LaunchPad in the cloud Cloud-connected LaunchPads offer support for various cloud partners & protocols via WiFi or Ethernet. LaunchPad & IoT a bird’s eye view Cloud Service Provider TM4C129 (MCU + Ethernet) RF LaunchPad Booster Pack Ethernet LaunchPads - MSP430F5529 - MSP430FR596 - MSP430G2 - MSP432P401R - TM4C123G - TM4C1294 MCU LaunchPad BoosterPack Cloud services Access to data, dashboards, etc IoT Gateways Your portal to the cloud RF BoosterPacks - Zigbee - SubGHz RF - Bluetooth - 6LoWPan - NFC Wireless Nodes Connecting your devices CC3200 (MCU + WiFi SoC) RF LaunchPad Booster Pack WiFi MCU + RF SoC LaunchPad MCU + RF SoC LaunchPads - CC3200 MCU + WiFi CODE! For FREE! 25 LaunchPad Software Tools Making it easier & providing multiple points of entry Rapid Prototyping Energia Light-weight, Community-driven, Wiring-based IDE for quick evaluation Evaluation CCS Cloud Browser-based code editor and Resource Explorer Intuitive coding environment • Simplified interface provides an easy-to-use code editor, serial monitor & compiler Highly-abstracted API framework • Functional APIs make it easy for developers to start controlling hardware Fast start & no installation • Browser based code editing tool to get you started quickly (MSP430 and MSP432 supported at this time) Use Energia, TI-RTOS & more • Cross Platform and allows you to upload firmware using TI Cloud Agent Community-driven • Completely open source & driven by the community Resource Explorer integration • Access Resource Explorer to get the latest code examples, design files, and more. Advanced CCS & Pro Tools Fully-capable dev environments from TI & third parties Full debug capability & more • Set breakpoints, watch variables, step through code & more Import Energia projects • Need more features from your development environment? Seemlessly import your Energia sketches into Code Composer Studio! • IDE | Language | Community • Open source & community driven • Wiring-based code enabling multiarchitecture abstraction & source code compatibility across supported LaunchPads • Fork of the popular Wiring framework – the basis of the Arduino IDE • Robust collection of intuitive APIs for controlling your LaunchPad’s I/O • Immediately develop code for I2C, UART, PWM, ADCs, SPI & more 27 Complete documentation can be found at www.energia.nu Energia Abstraction Fly high above the bits & bytes { 1 Boils it down to line of code } The Energia Difference • Send & receive wireless data within minutes using simple APIs – Radio.begin(parameters); – Radio.Transmit(parameters); – Radio.receiverOn(parameters); • 100% source code compatibility/consistent APIs across MCU, including MSP430, MSP432, C2000 & TM4C LaunchPads • All with a simple & intuitive code editing tool • Start sending & receiving RF data for <$40 & <10 minutes. – 2 LaunchPads + 2 CC110L RF BoosterPacks + Energia 29 Code Composer Studio Cloud • Browser based code editing tool to get your started quickly • Access Resource Explorer to get the latest code examples, design files, and more. • Cross Platform and allows you to upload firmware using TI Cloud Agent • Supports MSP430 & MSP432 LaunchPads http://dev.ti.com 30 Code Composer Studio 6 • Eclipse-based IDE for professional firmware developers that supports all TI processors • CCS App Center allows you to stay current with the latest plugins and updates • Use tools such as Energy Trace, GRACE, and more to optimize your workflow and application • Resource Explorer exposes thousands of code examples and technical materials 31 Download CCS Desktop at ti.com/ccstudio Energia Import in CCSv6+ • • • • Import an Energia sketch into Code Composer Studio v6 & pick up right where you left off. CCS introduces full debug capability & other professional features to further optimize your design. Modularize your code & leverage Energia APIs & libraries within CCS Enable “hybrid” projects that leverage low-level C, assembly & even abstracted Energia APIs enabling a developer maximum flexibility during code development. 32 The Community www.43oh.com http://e2e.ti.com 33 The Community Get support from TI & the online community! • http://e2e.ti.com • Supported 24/7 by TI engineers! • Over 1 million Q&As available on-demand • Get support on TI’s complete portfolio from microcontrollers to analog to connectivity • www.43oh.com • ~20,000 active members • ~60 forum users online at any given time! • Active & friendly online community & blog for the LaunchPad ecosystem! • Home to much of the Energia community Cloud Demo(s) • • • • • • WiFi library - Simple Web Server Use Temboo to Get Yahoo Weather Report Use Temboo to query Wolfram Alpha Use Temboo to write to a Google spreadsheet Use Temboo to send an SMS using Twilio Use Temboo and Nexmo to control your LaunchPad with your phone Now you are a cloud ninja! 35 www.energia.nu/CC3200-LAUNCHXL 36 Weather … continued • Let’s prototype a pushbutton activated getWeather device that queries Yahoo Weather for data • Sign up for Temboo • Open the lab solution in Energia and modify for our Wi-Fi Access Point. Upload to the LaunchPad • When you push SW2 you will see the weather info in your serial monitor. Now you are a cloud ninja! 37 Thad’s discussion of … creating a simple iOS application TI Dragon … battery powered CC3200 with app controlled music and blinking LEDs 38 Where to go next: www.ti.com/launchpad TI’s official LaunchPad portal Get specs, order hardware, find software tools, and download datasheets and design files Sign up for a myTI account! 39 Appendix • Temboo Tutorial can be found at www.energia.nu/temboo • The Temboo website does an excellent job of explaining how to get started with the APIs and helps you generate Energia code. 40 Please come to the TI booth Thank you! www.ti.com/launchpad www.energia.nu www.temboo.com/hardware/ti Backup 42 CC110L Sub-1GHz RF BoosterPack (433, 868, 915MHz) Start developing wireless applications immediately! • Manufacturer: Anaren / TI • Part #: 430BOOST-CC110L • MSRP: $19.99 (includes 2 RF BoosterPacks!) • Feature List: – – – – – – Based on TI CC110L SubGHz RF transceiver SPI interface between RF module & MCU FCC/IC certified module Includes AIR BoosterPack Stack software Enabling Star network & p2p topologies Includes pre-programmed MSP devices • Learn more @ www.ti.com/boosterpacks 43 CC3100 SimpleLink Wi-Fi BoosterPack LaunchPad in the cloud • Manufacturer: Texas Instruments • Part #: CC3100BOOST • MSRP: $19.99 • Feature List: – CC3100 WiFi Transceiver • IEEE 802.11 b/g/n • Embedded IPv4 TCP/IP stack – Small form factor – Complete software solutions & features TI’s unique SimpleLink technology • Learn more @ www.ti.com/boosterpacks 44 Sharp ® Memory LCD BoosterPack Add capacitive touch and display capabilities with 1 board! • Manufacturer: Texas Instruments • Part #: 430BOOST-SHARP96 • MSRP: $19.99 • Feature List: – Sharp LS013B4DN04 Memory LCD • 1.3" inch screen offering 96 x 96 pixels • Ultra-Low-Power consumption • Display controlled serially using SPI – Software enabled by TI’s software libraries • Graphics Library Support • Capacitive Touch Library Support • Learn more @ www.ti.com/boosterpacks 45 Kentec QVGA TFT LCD BoosterPack Add resistive touch and display capabilities with 1 board! • Manufacturer: Texas Instruments • Part #: BOOSTXL-K350QVG-S1 • MSRP: $24.99 • Feature List: – Kentec TFT LCD (P/N: K350QVG-V2-F) – 3.5 inch QVGA (320x240 resolution) – SPI Interface – 4-wire resistive touch screen – White LED Backlight + driver circuit – Complies with the BoosterPack standard for use with 20 and 40 pin LaunchPads • Learn more @ www.ti.com/boosterpacks 46 Infrared (IR) BoosterPack Plug-in Module Start developing remote control applications today! • Manufacturer: TI • Part #: Boost-IR • MSRP: $20 • Feature List: – – – – IR LED transmitter IR receiver + demodulator 4x4 membrane keypad 20-pin BoosterPack standard for use with any LaunchPad – Compatibility with different IR signal generation methods • Learn more @ www.ti.com/boosterpacks 47 TRF7970A NFC BoosterPack Start developing with Near-Field Communication & RFID! • Manufacturer: DLP Design • Part #: DLP-7970ABP • MSRP: $25 • Feature List: – 13.56MHz HF RFID Reader/Writer – Supported by the NFCLink software library – Supports various modes: – RFID/NFC Reader – NFC Peer – Card-Emulation Mode – FCC/IC approved design • Learn more @ www.ti.com/boosterpacks 48 BoosterPack pinout standard (ti.com/byob) 49 BoosterPack pinout standard (ti.com/byob) The BoosterPack pinout standard enables: - Cross-compatibility between LaunchPads & BoosterPacks - BoosterPack stackability to create more complex solutions - The same BoosterPack can work across multiple LaunchPads - Learn more @ www.ti.com/byob - Build your own BoosterPack (BYOB) with templates, resources & more! 50 Breakthrough Sensor Technology www.ti.com/sensing Easily add RF for wireless applications! 52 CCS Cloud & Resource Explorer • Changing how developers engage their environment • Focus on Web and bringing all parts of the design process to the cloud • Instant evaluation of TI products 53 Try it now at dev.ti.com Quick demo recipes Enable customers to experience TI differentiation WiFi-enabled Meat Probe “iGrill”. Send a tweet when temp exceeds threshold. MSP430F5529 LaunchPad WiFi CC3100 BoosterPack + = CC3200 Wi-Fi LaunchPad Create a battery-powered WiFi-connected NFC/RFID tag reader = + + = + Sub-1GHz (CC110L) + TI Microcontroller LiPo Battery BoosterPack (BQ fuel gauge) NFC/RFID (TRF7970A) MSP430G2553 LaunchPad Create a multi-point SubGHz RF wireless temperature sensor network Thermocouple BoosterPack (ADS1118) MEMS Temp Sense BoosterPack (TMP006) + TI Wireless TI Analog Quick demo recipes Enable customers to experience TI differentiation WiFi-enabled Meat Probe “iGrill”. Send a tweet when temp exceeds threshold. WiFi CC3100 BoosterPack C2000 InstaSPIN LaunchPad + = CC3200 Wi-Fi LaunchPad Create a battery-powered WiFi-connected NFC/RFID tag reader = + Sensor Hub BoosterPack + MSP430G2553 LaunchPad Create a multi-point SubGHz RF wireless temperature sensor network = LiPo Battery BoosterPack (BQ fuel gauge) + Sub-1GHz (CC110L) + TI Microcontroller BLDC Motor BoosterPack (DRV8301) Stepper Motor BoosterPack (DRV8711) + TI Wireless TI Analog