catching the internet of things (iot) wave

44
Catching the IoT Wave

Upload: chuck-petras

Post on 10-May-2015

1.204 views

Category:

Engineering


3 download

DESCRIPTION

A Presentation at the July 2014 IEEE Palouse section meeting by Christian Légaré VP & CTO at Micrium and VP at the IPSO Alliance. From the announcement: "The Internet of Things is being assembled from a galaxy of different embedded devices. These devices range from wireless sensor nodes, edge nodes, gateways, and more. Christian Légaré's talk will describe the differences between these devices, and outline the technology choices available to you today." Video at https://www.youtube.com/watch?v=Bf_-astmdWQ Meeting notice here: https://meetings.vtools.ieee.org/meeting_view/list_meeting/27089

TRANSCRIPT

Page 1: Catching the Internet of Things (IoT) Wave

Catching the IoT Wave

Page 2: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 2© 2014 Micrium, All Rights Reserved www.micrium.com

A Connected Device SystemMy Definition of IoT

Page 3: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 3© 2014 Micrium, All Rights Reserved www.micrium.com

The Connected Devices

Connected = Communication

stack

Application = Programming

language

Requirements = Hardware resources

Page 4: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 4© 2014 Micrium, All Rights Reserved www.micrium.com

Connectivity

Source: HarborResearch.com

Page 5: Catching the Internet of Things (IoT) Wave

Mission

About IPSO

• The IPSO Alliance serves as a resource center and thought leader for the various communities seeking to establish IP as the foundation for connecting objects, and addressing application needs to turn the objects into Smart Objects.

• The IPSO Alliance is a global collaborative forum, including many Fortune 500 high tech companies, each a leading player in their industry segment. The IPSO Alliance provides a foundation for industry growth by providing education, promoting the industry, generating research, and creating a better understanding of IP and its role in the Internet of Things.

Vision

“Building a Smarter World through the Internet of Things”TM

Connecting people, businesses and environments securely and efficiently

Goals• Promote IP• Invest in Innovation• Uphold Standards• Interoperability www.ipso-alliance.org

Page 6: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 6© 2014 Micrium, All Rights Reserved www.micrium.com

IEEE steps in to sort out Internet of Things confusion The IEEE standards association has authorized both IEEE P2413’s Project Authorization Request (PAR) and the inaugural meeting of the project’s WG, allowing development efforts to begin. The first meeting of the IEEE P2413 Working Group (WG) will take place July 10 – 11, 2014, in Munich, Germany.

http://www.embedded.com/electronics-news/4431506/IEEE-steps-in-to-sort-out-Internet-of-Things-confusion?_mc=NL_EMB_EDT_EMB_weekly_20140626&cid=NL_EMB_EDT_EMB_weekly_20140626&elq=ef78919dbe434d4f94edd1650b718147&elqCampaignId=17756

IEEE

Page 7: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 7© 2014 Micrium, All Rights Reserved www.micrium.com

IoT Systems

Even though this industry is very young, we are starting to see the emergence of two types of IoT systems.

Patrick Morehead makes an attempt at such a definition. He differentiates between Human IoT and Industrial IoT.

7

Source: Patrick Morehead, Forbes, “Who Wins In The Industrial Internet Of Things (IIoT)?”, October 29 2013

Attribute Industrial IoT Human IoT

Market Opportunity Brownfield (known environment) Greenfield (unchartered domain)

Product Lifecycle Until dead or obsolete Whims of style and/or budget

Solution Integration Heterogeneous APIs Vertically integrated

Security Access Identity & privacy

Interaction Autonomous Reactive

Availability 0.9999 to 0.99999 (4–5 ‘9’s) 0.99 to 0.999 (2–3 ‘9’s)

Access to Internet Intermittent to independent Persistent to interrupted

Response to Failure Resilient, fail-in-place Retry, replace

Network Topology Federations of peer-to-peer Constellations of peripherals

Physical Connectivity Legacy & purpose-built Evolving broadband & wireless

Page 8: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 8© 2014 Micrium, All Rights Reserved www.micrium.com

In addition to the table in the previous slide, to plan for the software and hardware requirements, the Thing design must take into consideration the environment:

The variables to measure or control (analog interface) The frequency at which these variables processing needs to be done

(processor performance) The transport technology of these variables value and variable control

(wired or wireless) Sensing, processing and networking software memory requirement The availability for a device firmware upgrade (DFU)

– Bootloader RAM and Flash requirement– DFU can be remote (networking capabilities required)

The Thing

Page 9: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 9© 2014 Micrium, All Rights Reserved www.micrium.com

What is a Thing?

Types of Things

Sensor/Actuator nodes– With Wireless or Wired communication– Real-world environmental parameters

Temperature, Pressure, Humidity, PH, speed, color…

Edge nodes in Wireless Sensor Networks (WSN) & Gateways– Interface between one networking technology and another one

For example: WSN to Internet

Consumer– TVs, smartphones, sound systems, PVRs, BluRay players…

Is the NEST thermostat Industrial IoT or Consumer IoT?

Page 10: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 10© 2014 Micrium, All Rights Reserved www.micrium.com

Local Networking Technologies

Page 11: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 11© 2014 Micrium, All Rights Reserved www.micrium.com

In a WSN node, the networking technology is usually a short-range access link. There are other IoT end devices that do not use a WSN but other types of networking technology.

Wired Ethernet, EtherCAT, EtherIP Modbus, Profinet DASH7 HART HomePlug, GreenPhy,

G.hnn (HomeGrid) And more…

Wireless Bluetooth Wi-Fi Zigbee, Zigbee IP and other 802.15.4 capable

protocols such as 6LoWPAN ANT, Z-Wave DASH7 ISA100: Wireless Systems for Industrial Automation,

Process Control and Related Applications Wireless HART EnOcean Wireless M-Bus And more…

Local Networking Technologies

Page 12: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 12© 2014 Micrium, All Rights Reserved www.micrium.com

IoT Device / WSN NodeTwo-Processor Solution

ProcessorSensor/Actuator

Processor Communication

HW - 8/16 bit processor

SW - Foreground/Background Application

HW - 32 bit processor

SW - Real-Time KernelLAN or WAN

Page 13: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 13© 2014 Micrium, All Rights Reserved www.micrium.com

IoT Device / Sensor NodeOne-Processor Solution

Processor Communication

HW- 32 bit processor SW - Real-Time Kernel Application

LAN or WAN

Sensor/Actuator

Page 14: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 14© 2014 Micrium, All Rights Reserved www.micrium.com

Coordinator/Router - 116 kB flash 7 kB RAMEnd Device - 99 kB flash 3.8 kB RAM

Memory RequirementsA Few Examples

6LoWPAN stacks range in code sizes of 50-100 kB typically. RAM size depends on the buffer approach used, but it is typically a few kB of RAM.

Page 15: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 15© 2014 Micrium, All Rights Reserved www.micrium.com

Processor Selection

Power vs Performance

• 8/16-bit processors are still very popular for sensor devices because of their low power consumption

• 32 bit devices are required to integrate networking capabilities

• MCUs with integrated wireless radio are making their appearance

• ARM is designing a compatible Cortex-M0 with close to threshold voltage of CMOS transistors, and at clock frequencies of the order of tens of kilohertz.

Page 16: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 16© 2014 Micrium, All Rights Reserved www.micrium.com

Typical sensor processor

Without any consideration to packaging and peripheral selection    Part ROM RAM

Atmel AVR From ATtiny13 1 kB 64

  To AT94S405AL 20-32 kB 4-16kB

 Atmel 8051 From 89C1051 1K 64

  To 89C55 20K 256

 SiLabs 8051 From C8051T60x 1.5K 128

  To C8051F96x 128kB 8 kB

 maxim 8051 From DS89C430 16 kB 1 kB

  To C8051F96x - kB 4 kB

 Renesas RL78 From R5F100AAASP 16 kB 2 kB

  To R5F101FLAFP 512 kB 32 kB

 MSP43030 (16 bit) From MSP430F1101A 1 kB 128

  To MSP430F6659 512 kB 66 kB

 Microchip (12, 14 and 16 bit) From PIC10F200 384 16

  To PIC18F87K90 128 kB 4 kB

 PIC24 24 bit instructions, 16 bit address.   PIC24EP512GU814 52 kB 512

Page 17: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 17© 2014 Micrium, All Rights Reserved www.micrium.com

Explosion in 32-bit MCU

12 billon installed internet embedded devices by 2020 50% growth in MCUs with 32-bit driving majority of revenue growth 32-Bit MCU market forecasted to grow to $19.2bn by 2017

MCU Hardware is No Longer a Differentiator

Page 18: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 18© 2014 Micrium, All Rights Reserved www.micrium.com

A sensor node can be written as a foreground/background (single thread/single loop) system

When networking is involve, the use of a real-time kernel is highly recommended– Best usage of the processor time– Better software architecture– Simplified development– Simplified maintenance

Code mainly written in C

Java is also an option, but not from Oracle– The Oracle JVM is too large for an IOT device

End NodeSoftware architecture

Page 19: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 19© 2014 Micrium, All Rights Reserved www.micrium.com

Low Power (or not) IoT Device / WSN NodeOne-Processor Solution

Bluetooth radio Low Power Wi-Fi

Se

ns

ors

Ac

tua

tors

Application

Real-Time Kernel

Power Management

Remote Device Firmware Upgrade

6LowPAN

Typical:Cortex M0/M0+Cortex M3/M4

Low Power IoT Device/ WSN Node Icon

Bluetooth

TCP/IP Ethernet / Wi-Fi

Ethernet LAN One or Multiple LAN

LAN protocol

Page 20: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 20© 2014 Micrium, All Rights Reserved www.micrium.com

Consumer IoT Device

Bluetooth Radio / Wi-Fi Radio

Application

Real-Time Kernel

Power Management

Remote Device Firmware Upgrade

Bluetooth

Typical:Cortex-M3/M4Cortex-A

Ethernet

TCP/IP Ethernet/Wi-Fi

Java Virtual Machine

HTTP Client

MQTT Client

CoAP Client

Se

ns

ors

Ac

tua

tors

Vertical Market-Specific Protocol

3G/4G radio

Vertical Market-Specific Protocol

AllSeenHomePlug/HomeGrid

Continua Alliance2net

Industrial Internet

One of the Possible Protocols

Optional

Consumer IoT Device Icon

One of the Possible Networks

Page 21: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 21© 2014 Micrium, All Rights Reserved www.micrium.com

WSN Edge Nodeor Gateway

LAN6LoWPAN Bluetooth Wi-Fi Ethernet and more…

Communication

HW32 bit processor

SWReal-Time Kernel

WANAccess to Internet Service Provider:

Wi-Fi Ethernet

Cellular

Processor Communication

Page 22: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 22© 2014 Micrium, All Rights Reserved www.micrium.com

With LAN and WAN present in an edge node/gateway, it is even mandatory to use of a real-time kernel– Best usage of the processor time– Better software architecture– Simplified development– Simplified maintenance

Code mainly written in C

Java is also an option– With a Cortex-A class processor, Oracle JVM is possible– With a Cortex-M class processor, the Oracle JVM is too large.

Another solution is required and exist.

Edge Node/GatewaySoftware architecture

Page 23: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 23© 2014 Micrium, All Rights Reserved www.micrium.com

There are around 450,000 embedded software engineers using C/C++ There are 9 million Java developers in the world ARM, Oracle and Freescale believe Java is the solution to the creation of an

IoT ecosystem

Java ME Memory footprint (approximate)

From: 350KB ROM, 130 KB RAM (for a minimal, customized configuration)

To: 2000 KB ROM, 700 KB RAM (for the full, standard configuration)

It is too large for the typical IoT device processor Java virtual machines for smaller processor exist, but not from Oracle

Java Usage in IoT

Page 24: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 24© 2014 Micrium, All Rights Reserved www.micrium.com

TCP/IP in anEmbedded System

Implementing TCP/IP

Understanding TCP/IP

OSI Seven-Layer Model

Page 25: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 25© 2014 Micrium, All Rights Reserved www.micrium.com

TCP/IP

Options IPv4 Only IPv6 Only IPv4 & IPv6

TCP Enabled 66.5 kB 75.4 kB 93.8 kB

TCP Disabled 44.4 kB 53.2 kB 70.0 kB

Configuration IPv4 Only IPv6 Only IPv4 & IPv6

Minimum 16.7 kB 17.8 kB 18.5 kB

Typical 42.0 kB 44.2 kB 45.5 kB

ROM

RAM

Fully RFC compliantInterrupt driven

Page 26: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 26© 2014 Micrium, All Rights Reserved www.micrium.com

TCP/IP

Typical Configuration

5 TCP connection1 UDP connection1 IPv4 Address2 IPv6 AddressNo LoopbackNo Debug feature

Typical Buffer configuration (good performance):

10 RX buffer6 Large TX buffer2 Small TX buffer

Minimum Configuration

1 TCP connection1 UDP connection1 IPv4 Address2 IPv6 AddressNo LoopbackNo Debug feature

Minimum Buffer configuration (low performance):

4 RX buffer1 Large TX buffer1 Small TX buffer

Page 27: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 27© 2014 Micrium, All Rights Reserved www.micrium.com

Wireless LAN

WLAN Selection Criteria

Protocol Efficiency Power Efficiency

– How long will my battery last? Peak Power Consumption Performance Range Robustness Throughput Latency Coexistence

Page 28: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 28© 2014 Micrium, All Rights Reserved www.micrium.com

There are multiple ways to use Wi-Fi: Wi-Fi station Wi-Fi Access Point (AP, needs a DHCP server) Wi-Fi Direct (WD, needs a DHCP server) Wi-Fi Protected Setup (WPS) Wi-Fi stack typical footprint is about 200 KB

for AP, STA and WD

Wi-Fi

Wi-Fi radio

SDIO/SPI/UART driver

Wi-Fi driver

Wi-Fi stack

Station

Wi-Fi API

AP WD WPS

Telnet, FTP, TFTP, HTTP, BOOTP, DHCP, SNMP

Socket API

TCP, UDP

IP, ARP, ICMP

Network Interface

Page 29: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 29© 2014 Micrium, All Rights Reserved www.micrium.com

Wi-Fi

Wi-FiRadio

On-Board

Wi-FiModule

Off-Board

Running the Wi-Fi on-board or off-board? On-board requires the manufacturer

to FCC certify the product Using an off-board radio module is

more expensive but is certified A similar approach is applicable to

Bluetooth and other wireless interfaces

or

Solution 1 – Low volume Run the TCP/IP stack and Wi-Fi stack off

board

Solution 2 – Med volume Run the TCP/IP stack on the host target and

the Wi-Fi supplicant on the Wi-Fi module

Solution 3 – High volume Run the TCP/IP stack and Wi-Fi stack on

the target board

Page 30: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 30© 2014 Micrium, All Rights Reserved www.micrium.com

Bluetooth Classic

Bluetooth radio

Baseband

Link Manager / Link Controller

Host Controller Interface

L2CAP

RFCOM BNEPAVDTPAVCTP

SDP Audio

OBEX

Application Programming Interface

Applications

SDAP GAP

Medical Group

HDP

SPP Group

FTP,SYNC, OPP,

PBAP, SPP, MAP

Telephony Group

HSP, HFP, SAP, DUN

PAN Group

PAN

Audio Video Group

A2DP, AVRCP,

VDP

MCAP

300 to 400 KB is an average footprint (influenced by the number of profiles included, and required feature set)

Page 31: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 31© 2014 Micrium, All Rights Reserved www.micrium.com

Bluetooth Smart (BTLE)

Physical LayerLink Manager

Host Controller InterfaceL2CAP

Applications

HTP/HTS, HRP/HRS, BLP/BLS, GLP/GLS

Healthcare

CPP/CPS, CSCP/CSCS, RSCP,RSCS,

LNP/LNS

TIP, ANP/ANS, CTS, IAS,

RTUS, NDCS

SNP, PASP/PASS,

FMP, PXP

BAS, HOGP, ScPP/SCPS,

DIS, HIDS, LLS, TPS

Direct Test Mode

Security Manager Protocol Attribute ProtocolGeneric Access Profile GATT (Generic Attribute Profile)

Fitness TimeAlert

ProximityAuxilary

Bluetooth SmartAround 200 KB is an average footprintDependent on feature set

Page 32: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 32© 2014 Micrium, All Rights Reserved www.micrium.com

Cellular WAN

The Internet

Cellular

Cloud

Web browsers

Data analysis

Mobile Devices

Cellular modem for the WAN

TCP/IP stack requires PPP to connect to the cellular modem (small code and RAM add-on)

Modem needs to be approved by the cellular carrier

Some possible modems:• Telit• Gemalto• Sirerra Wireless• …

Page 33: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 33© 2014 Micrium, All Rights Reserved www.micrium.com

Wireless LANCoexistence

Bluetooth LE and Wi-Fi spectrum usageEach channel is 2MHz wide with no wasted spectrum

Each channel is 2MHz wide with a wasteful 5MHz spacing. In the presence of Wi-Fi, only 4 channels are likely to be available.

Zigbee and Wi-Fi spectrum usage

Source : CSR application note CS-213199-AN

Page 34: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 34© 2014 Micrium, All Rights Reserved www.micrium.com

Wireless LANLow Power Wireless Technology Target Markets

Source : CSR application note CS-213199-AN

LegendLE (Bluetooth low energy), A (ANT), A+ (ANT+), RF (RF4CE), Zi (ZigBee), Wi (Wi-Fi), Ni (Nike+), Ir (IrDA), NF (NFC).

The long term forecast puts Bluetooth LE and WiFi as the predominant WLAN technologies

Expect 6LoWPAN to run on Bluetooth radios.

Page 35: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 35© 2014 Micrium, All Rights Reserved www.micrium.com

The Internet

Page 36: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 36© 2014 Micrium, All Rights Reserved www.micrium.com

HTTP RESTful CoAP MQTT Websockets XMPP STOMP And more…..

Internet Protocols

Page 37: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 37© 2014 Micrium, All Rights Reserved www.micrium.com

Internet Protocols

Protocol CoAP XMPP RESTful HTTP MQTTTransport UDP TCP TCP TCP

Messaging Request/ResponsePublish/Subscribe Request/Response

Request/ResponsePublish/Subscribe Request/Response

2G, 3G, 4G Suitability (1000s nodes)

Excellent Excellent Excellent Excellent

LLN Suitability (1000s nodes)

Excellent Fair Fair Fair

Compute Resources

10Ks RAM/Flash 10Ks RAM/Flash 10Ks RAM/Flash 10Ks RAM/Flash

Success StoriesUtility Field Area Networks

Remote management of consumer white goods

Smart Energy Profile 2 (premise energy management,home services)

Extending enterprise messaging into IoT applications

Beyond MQTT: A Cisco View on IoT Protocols, Paul Duffy, April 30 2013

Page 38: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 38© 2014 Micrium, All Rights Reserved www.micrium.com

Gateway / WSN Edge NodeB

lue

too

th R

ad

io /

Wi-

Fi

Ra

dio

Application

Real-Time Kernel

Power Management

Remote Device Firmware Upgrade

Bluetooth

Typical:Cortex-M3/M4Cortex-A

Eth

ern

et

/ W

i-F

i /

3G

-4G

TCP/IP

Java Virtual Machine

HTTP Client

MQTT Client

CoAP Client

6LowPAN

One of the possible protocolsVertical Market Specific Protocol

Vertical Market-Specific Protocol

• AllSeen• HomePlug/HomeGrid• Continua Alliance• 2net• Industrial Internet

Gateway / WSN Edge Node

Page 39: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 39© 2014 Micrium, All Rights Reserved www.micrium.com

The Cloud

Page 40: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 40© 2014 Micrium, All Rights Reserved www.micrium.com

WSNIndustrial IoT

Nodes

Gateway

Cloud Service

Web Browsers

Data Analysis

Cloud Service Capabilities• Mobile device applications• Web browsers views• Data analysis

The Internet

Mobile Devices

Main IoT Protocols• HTTP - RESTful• MQTT• CoAP

Page 41: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 41© 2014 Micrium, All Rights Reserved www.micrium.com

Consumer IoT…

Cloud Service

Web Browsers

Data Analysis

Cloud Service Capabilities• Mobile device applications• Web browsers views• Data analysis

The Internet

Mobile Devices

Wi-

Fi

Dir

ect

Ethernet /Wi-Fi

Main IoT Protocols• HTTP - RESTful• MQTT• CoAP

Page 42: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 42© 2014 Micrium, All Rights Reserved www.micrium.com

Cloud implementation

Implementation Phase

Project PlanningUse case definitionFirmware / Embedded DevelopmentNew Protocol Parser if requiredEnable Dev Kit for Hardware CompanyIncoming (site installation Beacons/Apps)IOT Demo (trade show, workshop)Integration project (connect various data stores using platform)Web App DashboardPortal with login, group devices by users, multiple dashboardsMobile application developmentAnalytics / Business IntelligenceSmart Digital Signage (installation)

Page 43: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 43© 2014 Micrium, All Rights Reserved www.micrium.com

Catch the IoT Wave

IoT is More Than the Thing

Page 44: Catching the Internet of Things (IoT) Wave

CONFIDENTIAL 44© 2014 Micrium, All Rights Reserved www.micrium.com

Thank You

[email protected]