Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

31
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. John Rotach May 25, 2016 AWS IoT Getting Started

Transcript of Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Page 1: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

John Rotach

May 25, 2016

AWS IoTGetting Started

Page 2: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Today’s Webinar

Overview of AWS IoTBuild a Working DemoVideo

Page 3: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

AWS IoT

DEVICE SDKSet of client libraries to

connect, authenticate and exchange messages

DEVICE GATEWAYCommunicate with devices

via MQTT and HTTP

AUTHENTICATIONAUTHORIZATION

Secure with mutual authentication and

encryption

RULES ENGINETransform messages based on rules and

route to AWS Services

AWS Services- - - - -

3P Services

DEVICE SHADOWPersistent thing state

during intermittent connections

APPLICATIONS

AWS IoT API

DEVICE REGISTRYIdentity and Management of

your things

Page 4: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Security and Identity

AUTHENTICATIONSecure with mutual authentication and

encryption

Page 5: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Security and Identity

TLS Mutual AuthenticationFine-Grained Permissions through PoliciesStandard Web Security

Page 6: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Gateway

Page 7: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Gateway

Standard protocols – MQTT / HTTPAWS front-end for devicesScalable, long-lived connectionsSecure by default – X509 certs, TLS 1.2, WebSockets

Topic Based Architecturebuilding3/chillers/unit5building3/pickers/unit9building1/chillers/unit1

Page 8: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Registry

THING REGISTRYIdentity and Management of

your things

Page 9: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Registry$ aws --region us-east-1 iot describe-thing --thing-name pump1{ "attributes": { "MN": "AB776", "install_date": "12-23-2011", "SN": "225458854" }, "thingName": "pump1", "defaultClientId": "pump1"}

Page 10: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Shadows

THING SHADOWPersistent thing state

during intermittent connections

Page 11: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Shadows

{

"state" : {

“desired" : {

"lights": { "color": "RED" },

"engine" : "ON"

},

"reported" : {

"lights" : { "color": "GREEN" },

"engine" : "ON"

},

"delta" : {

"lights" : { "color": "RED" }

} },

"version" : 10

}

Thing

Report its current state to one or multiple shadowRetrieve its desired state from shadow

Mobile App

Set the desired state of a device Get the last reported state of the device Delete the shadow

Shadow

Shadow reports delta, desired and reported states along with metadata and version

Page 12: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Shadows{

"state" : {

“desired" : {

"engine" : "ON”,

“tires”: {

“LF”:40,

“RF”:38,

“LR”:37,

“RR”:39

},

“CCD”: {

“A”:0,

“B”:8,

“C”:7,

“D”:9

}

},

"reported" : {

"engine" : ”OFF”,

“tires”: {

“LF”:40,

“RF”:38,

“LR”:37,

“RR”:39

},

“CCD”: {

“A”:0,

“B”:8,

“C”:7,

“D”:9

}

},

"version" : 10

}

Page 13: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Shadows{

"state" : {

“desired" : {

"engine" : "ON”,

“tires”: {

“LF”:40,

“RF”:38,

“LR”:37,

“RR”:39

},

“CCD”: {

“A”:0,

“B”:8,

“C”:7,

“D”:9

}

},

"reported" : {

"engine" : ”OFF”,

“tires”: {

“LF”:40,

“RF”:38,

“LR”:37,

“RR”:39

},

“CCD”: {

“A”:0,

“B”:8,

“C”:7,

“D”:9

}

},

"delta" : {

”engine" : “ON”

} },

"version" : 10

}

"engine" : ”ON”

Page 14: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Shadows{

"state" : {

“desired" : {

"engine" : "ON”,

“tires”: {

“LF”:40,

“RF”:38,

“LR”:37,

“RR”:39

},

“CCD”: {

“A”:0,

“B”:8,

“C”:7,

“D”:9

}

},

"reported" : {

"engine" : ”OFF”,

“tires”: {

“LF”:40,

“RF”:38,

“LR”:37,

“RR”:39

},

“CCD”: {

“A”:0,

“B”:8,

“C”:7,

“D”:9

}

},

"delta" : {

”engine" : “ON”

} },

"version" : 10

}

"engine" : ”OFF”

Page 15: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Shadows{

"state" : {

“desired" : {

"engine" : "ON”,

“tires”: {

“LF”:40,

“RF”:38,

“LR”:37,

“RR”:39

},

“CCD”: {

“A”:0,

“B”:8,

“C”:7,

“D”:9

}

},

"reported" : {

"engine" : ”OFF”,

“tires”: {

“LF”:40,

“RF”:38,

“LR”:37,

“RR”:39

},

“CCD”: {

“A”:0,

“B”:8,

“C”:7,

“D”:9

}

},

"delta" : {

”engine" : “ON”

} },

"version" : 10

}

"engine" : "ON”

Page 16: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device Shadows{

"state" : {

“desired" : {

"engine" : "ON”,

“tires”: {

“LF”:40,

“RF”:38,

“LR”:37,

“RR”:39

},

“CCD”: {

“A”:0,

“B”:8,

“C”:7,

“D”:9

}

},

"reported" : {

"engine" : ”ON”,

“tires”: {

“LF”:40,

“RF”:38,

“LR”:37,

“RR”:39

},

“CCD”: {

“A”:0,

“B”:8,

“C”:7,

“D”:9

}

},

"version" : 10

}

"engine" : "ON”

Page 17: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Rules Engine

RULES ENGINETransform messages based on rules and

route to AWS Services

Page 18: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Rules Engine

building1/chillers/xx881building1/fans/aj982building3/chillers/ks434building1/radiators/ss243building2/chillers/fe324

"sql": "SELECT * FROM 'building1/#'""actions": [{ "dynamoDB":….

Page 19: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Rules Engine

building1/chillers/xx881building1/fans/aj982building3/chillers/ks434building1/radiators/ss243building2/chillers/fe324

"sql": "SELECT * FROM '+/chillers/+' WHERE coolant < 20""actions": [{"lambda":{"functionArn":... {"sns":{"topicArn":...

Page 20: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Rules Engine

Integrations

DynamoDB Kinesis Lambda S3 Elasticsearch* CloudWatch* (alarms + metrics) SNS Firehose SQS Republish

Transformations

round ceiling/floor trig – sin/cos/tan MD5 concatenation replace client ID topic tokens

Page 21: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Device SDKs

C-SDKRTOS, μControllers

JS-SDK Embedded Linux Platforms

Arduino YúnArduino

Mobile SDKsAndroid and iOS

Page 22: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Starter Kits

Page 23: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Demo Hardware

http://amzn.to/1RHEZGW

Arrow / QualcommDragonBoard 410c

http://amzn.to/1ZM5yu2

Seeed StudioBeagleBone Green

http://amzn.to/1Sdt8PM

IntelEdison

Page 24: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Demo Hardware

•Qualcomm® Snapdragon 410 processor, a Quad-core ARM® Cortex A53•WLAN 802.11b/g/n 2.4GHz, Bluetooth 4.1, On-board GPS•1GB LPDDR3 533MHz•Supports Android 5.1, Ubuntu Linux, Windows 10

Page 25: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Building an IoT Use Case

Page 26: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Use Case – Pool Pump

Actual customer story Control a device Intermittent connectivity Notification when synced

Page 27: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Use Case – Architecture Overview

AWS IoT

DeviceShadow

Rule SNS

Application (Console)

Device

Page 28: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Use Case – Pool Pump

Live walkthrough of building out this use case.

Page 29: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Video of Demo on Hardware

Page 30: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Questions After the Webinar?

General Pagehttp://aws.amazon.com/iot/

Developer Guidehttp://docs.aws.amazon.com/iot/latest/developerguide

AWS IoT Forumhttps://forums.aws.amazon.com/forum.jspa?forumID=210

Page 31: Getting Started with AWS IoT and the Dragon IoT Starter Kit - AWS May 2016 Webinar Series

Thank you!