The Future of IoT
Zach Shelby VP Marketing, IoT Feb 3rd, 2015
1
Internet of (really nerdy) People – 1980s
2
Internet of (content silo) People – 1990s
3
Internet of (Web) People – 2000s
4
Internet of (really nerdy) Things – 1960s-1990s
5
Internet of (content silo) Things – 2000s
My Service
My Thing
6
Internet of (Web) Things – 2010s
Services
Web The Web
Things
7
By 2018, 50% of the IoT solutions will be provided by Companies which are less than 3 years old
Gartner Research, 2013
8
Innovation circa 2001
9
ARM - The Architecture for the Digital World® From sensors to servers 10 billon ARM-based chips, last year alone
10
Wide Range of Device Classes
CLASS 0 CLASS 1-2 CLASS 3 CLASS 4 ULTRA CONSTRAINED CONSTRAINED MAINSTREAM IOT RICH NODE / GATEWAY
CPU Radio CP Radi CPU Radio CP Rad U o U io
C I M 2 sh IO Fla RA SP I GP C 2 C h I O 2 SPI SPI C RAM I Flash SPI SPI GPIO GPIO GPI Flas 2 RAM I
SPI RAM Flash GPIO GPIO
ARM Cortex-M0+ ARM Cortex-M0+/3 ARM Cortex-M3/4/7 ARM Cortex-A7 16K RAM / 64K ROM 32-64K RAM / 128-256K ROM 128K RAM / 512K ROM 64MB RAM / 512MB ROM Requires gateway Direct to Internet via CoAP Direct to Internet High performance node with video Disposable, Swallowable End-to-end DTLS security Low-end 6LoWPAN router processing RTOS or bare metal Remote management End-to-end DTLS security Rich UI MBED OS support Remote management MBED Client, Java SE, Linux, Android MBED OS, Java ME 11
IoT Requires Scale & Diversity
26 Billion Installed Units by 2020* Volume Volume
Device Categories *Gartner
12
Two Key Goals for 2015
1. Create a global software ecosystem, with security!
2. Get open standards to lots of devices and services
13
The I in IoT: Web (and IP) Protocols to the Edge
IoT Application Device Management
Binary | JSON – IPSO Objects Application REST APIs
CoAP | HTTP Web Transfer DTLS | TLS
UDP | TCP Internet IPv4 | IPv6 | 6LoWPAN
Network
14
6LoWPAN Made Easy!
IoT connectivity for home automation
Access Point
- Low-power - Wide range of devices robust & - Mesh network easy to deploy infrastructure sharing - IP to the edge - Mature end-to-end security
15
CoAP - The Web of Things Protocol
§ Open IETF Standard (RFC7252) § Compact 4-byte Header § UDP, SMS, (TCP) Support § Strong DTLS Security § Asynchronous Subscription § Built-in Discovery § http://coap.technology
16
Project Kona
§ ARM and Oracle are bringing CoAP support to OpenJDK § Project Kona § Java APIs and protocols for IoT § Embedded devices in particular § CoAP contribution from ARM is planned for next week J § Project Lead: Riaz Aimandi (Oracle) § Lead Committer: Szymon Sasin (ARM)
17
A Keynote Challenge!
§ Write a CoAP client to interact with me in real time § Discover my question § GET the question § PUT your answer (and your name!) § Server location: coap://192.168.80.121 § Hint: Californium is great for Java Nerds § Hint: Copper is awesome, but cheating! § Free mbed IoT development board for first to finish
18
Common OS and Connectivity Across Markets
Smart Cities Smart Home Wearables
Application Application Application
Sub-GHz Zigbee IP-NAN BT Smart Thread BT Smart Connectivity Connectivity Connectivity
Provisioning Provisioning Provisioning Security Security Security OS + Drivers OS + Drivers OS + Drivers
19
Common OS and Connectivity Across Markets
Smart Cities Smart Home Wearables
Application Application Application Similar key connectivity standards
Sub-GHz Zigbee IP-NAN BT Smart Thread BT Smart Connectivity Connectivity Connectivity
Provisioning Provisioning Provisioning Security Security Security OS + Drivers OS + Drivers OS + Drivers Common software foundation
20
Device Device security Debug Debug Channel security Sensing Sensing Device Device management Connectivity Component Continuous Key/Session Device Management Integration Management Management Debug Firmware Algorithm CoAP Auth Keys Comms Update Test Admin & Unit Testing Bootstrap Automation Debug C IPv6/ Secure Boot Calibration DTLS Runtime UDP Storage loader Version Persistent Code Review CoAP Control connectivity Sensor Secure Boot MAC Crypto Flash HAL Driver Boot Load Toolchain Build System Clustering Balancing Device To o l s Server
21
22
mbed Device Server
Software that enables services to manage mbed Enabled things. mbed Ecosystem
Developers and partners making use of mbed mbed Web Services technology mbed OS
Free operating system for low-power ARM Cortex®-M devices. Just add App. -based MCU
23
The new mbed Partner Ecosystem: Join Us!
Cloud Partners
Ecosystem Partners
Silicon Partners
24
From Idea to Product
Developer Prototype Product Service
Ecosystem Partner
mbed OS App Cloud mbed OS Partner Drivers
Silicon Partner
25
Little Data Enables Big Data
mbed OS mbed Device Server IoT Service or App
IP and Web to the edge
End-to-End Security, Web, Data Objects & Management
Little Data BIG DATA
26 mbed OS Roadmap 2015
Community Applications Minimize time-to-market Libraries
mbed OS C++ APIs Low-power by design Communication Management Application: CoAP, HTTP, MQTT Device Management: LWM2M Security: TLS, DTLS Event Framework IPv4 IPv6, 6LoWPAN Complete security solution Tasks
CMSIS-Core Drivers CMSIS-DAP
Cryptobox Top connectivity standards Asset Protection, Crypto, Key Management, Secure Bootloader
ARM Cortex®-M Sensors Radio Built-in device management -based MCU
27 mbed OS Release Schedule
a1 a2 a3 b r r
Alpha 1 Alpha 2 Alpha 3 Beta Release 3.0 Release 3.1 mbed Partners mbed Partners mbed Partners Public Public Public
Dec ’14 Mar‘15 Jun‘15 Aug‘15 Nov‘15 Feb‘15
Apache 2.0
28
Java on mbed
Native C++
Application Application
Java ME
mbed OS mbed OS
29
Embedded software: Scaling with mbed and Java Drive platform consistency, developer productivity, and software intelligence
§ Reduce embedded platform fragmentation and time-to-market § Enable Java Embedded on a growing range of mbed-enabled devices § Combine the strengths of the mbed and Java communities and partners
30 30
Freescale FRDM-K64F Versatile, simple-to-use ARM Cortex-M4 MCU platform § Java ME Embedded 8.1 Developer Preview § Freescale FRDM-K64F § Kinetis K64F, 120 MHz, 256 KB RAM/1 MB Flash, ARM mbed § Arduino form-factor and pin-out. Approx. $25 street price § Brings Java 8 to Micro-Controllers § Optimized Java ME 8 runtime in 190 KB RAM, enabling highly functional Java Embedded applications on single-chip micro-controller systems § Java 8 language, core APIs, networking, device I/O, storage, and more § Simple installation and development via Java ME SDK 8.1, NetBeans and Eclipse IDEs § Complements existing Java ME 8 platforms such as Raspberry Pi, scaling Java ME 8 from large to small § Ideal for evaluation and prototyping § FREE download via Oracle Technology Network (OTN)
31 mbed Device Server
Straightforward integration mbed Device Server API
Periodic connectivity support Directory and Subscription Security, Admin and Multi-tenancy
Device Management and Data Flows - RESTful and Publish/Subscribe
Complete managed security mbed Device Interface - Open Web Standards Application Transfer Protocols – CoAP, HTTP, MQTT
Security Protocols – DTLS, TLS Leading open standards
Lightweight management
32
Toast and Espresso
Toaster
Weather Forecast Order
Analytics
Coffee Maker
33
Big Data Starts with Little Data
App Browser
100’s 100’s Servers Servers
Little Data Big Data User Sessions
mbed Java Application HTML Application Device Server Real Time Query Device Layer Data Layer Presentation Layer
34
Big Data Starts with Little Data 10,000,000’s Clients
App Browser
1,000,000,000’s 10’s 100’s 100’s Devices Servers Servers Servers
Little Data Big Data User Sessions
Java Application HTML Application mbed mbed OS Device Server Real Time Query Device Layer Data Layer Presentation Layer
35
So What Was the Future of IoT?
Yo u
36
Learn more!
http://mbed.com http://coap.technology http://threadgroup.org @zach_shelby
37