http://meetup.com/mmadnyc
“A computer in every pot and chicken.”
“A chicken in every pot.”
~ Henry IV of France – 17th Century
“A computer on every desk
and in every home.”
~ Bill Gates (1977)
Connectivity
is Pervasive
Development
is Easy
Hardware
is Cheap
New Innovative
Scenarios
1970 1980 1990 2000 2010
10,000,000,000
1,000,000,000
100,000,000
10,000,000
1,000,000
100,000
10,000
1,000
Transistors
Moore’s Law Metcalf‘s Law
And more importantly:
What can you do by combining and analyzing signals from all of these IoT devices?
Koomey’s Law
1.E+14
1.E+12
1.E+10
1.E+08
1.E+06
1.E+04
1.E+02
1.E+00
Computations
per KWh
1940 20101975
What if I could tell when it’s the best time for my things to _______ ?
What if my things could tell me when they go someplace they shouldn’t?
What if I simply knew where my things were?
What if I knew when my things were going to break before they did?
What if I could use device telemetry to improve next generation devices?
What insights could I find from all of my devices?
It all starts with a great idea…
Next comes a device…
And data from that device…
01001010100010101001010100101010101001010101010110101
And securing the device…
01001010100010101001010100101010101001010101010110101
And insights from that data…
01001010100010101001010100101010101001010101010110101
Then lots of devices and data…
0100101010001010100101010010101010100101010101011010
0100101010001010100101010010101010100101010101011010101010001
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010101010001011110101010101010100
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010
01001010100010101001010100101010101001010101010110101010101010
01001010100010101001010100101010101001010101010110101010101001001010110001010101010
010010101000101010010101001010101010010101010101101010101011000101001011
Then lots of devices and data…
0100101010001010100101010010101010100101010101011010
0100101010001010100101010010101010100101010101011010101010001
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010101010001011110101010101010100
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010
01001010100010101001010100101010101001010101010110101010101010
01001010100010101001010100101010101001010101010110101010101001001010110001010101010
010010101000101010010101001010101010010101010101101010101011000101001011
Then monitoring their data in real time…
0100101010001010100101010010101010100101010101011010
0100101010001010100101010010101010100101010101011010101010001
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010101010001011110101010101010100
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010
01001010100010101001010100101010101001010101010110101010101010
01001010100010101001010100101010101001010101010110101010101001001010110001010101010
010010101000101010010101001010101010010101010101101010101011000101001011
Then looking for patterns and insights in the data over time…
0100101010001010100101010010101010100101010101011010
0100101010001010100101010010101010100101010101011010101010001
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010101010001011110101010101010100
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010
01001010100010101001010100101010101001010101010110101010101010
01001010100010101001010100101010101001010101010110101010101001001010110001010101010
010010101000101010010101001010101010010101010101101010101011000101001011
Then managing and updating the software on these devices…
0100101010001010100101010010101010100101010101011010
0100101010001010100101010010101010100101010101011010101010001
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010101010001011110101010101010100
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010
01001010100010101001010100101010101001010101010110101010101010
01001010100010101001010100101010101001010101010110101010101001001010110001010101010
010010101000101010010101001010101010010101010101101010101011000101001011
And visualizing and managing all of these services…
0100101010001010100101010010101010100101010101011010
0100101010001010100101010010101010100101010101011010101010001
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010101010001011110101010101010100
0100101010001010100101010010101010100101010101011010101010101010100010101
010010101000101010010101001010101010010101010101101010
01001010100010101001010100101010101001010101010110101010101010
01001010100010101001010100101010101001010101010110101010101001001010110001010101010
010010101000101010010101001010101010010101010101101010101011000101001011
What is the Internet of Things?
Connectivity Data AnalyticsThings
Comprehensive solutions from device to cloud
IoT Editions Power a Broad Range of Devices
25 years of history in embedded devices
One Windows platform for all devices
Enterprise-ready, OEM-ready, Maker-friendly
Designed for today’s IoT environments
Scalable solutions from free Windows IoT Core to
Windows IoT Enterprise on PC-Like Devices
Cloud-Based IoT Services & Solutions
Easy to provision, use and manage
Pay as you go, scale as you need
Global reach, hyper scale
End-to-end security & privacy
Windows, Mbed, Linux, iOS, Android, RTOS and
wide hardware devices support
Azure IoT
Platform Services
Infrastructure Services
Web Apps
Mobile
Apps
API
Management
API Apps
Logic Apps
Notification
Hubs
Content
Delivery
Network (CDN)
Media
Services
BizTalk
Services
Hybrid
Connections
Service Bus
Storage
Queues
Hybrid
Operations
Backup
StorSimple
Azure Site
Recovery
Import/Export
SQL
Database
DocumentDB
Redis
Cache
Azure
Search
Storage
Tables
Data
Warehouse Azure AD
Health Monitoring
AD Privileged
Identity
Management
Operational
Analytics
Cloud
Services
Batch
RemoteApp
Service
Fabric
Visual Studio
App
Insights
Azure
SDK
VS Online
Domain Services
HDInsight Machine
Learning
Stream
Analytics
Data
Factory
Event
Hubs
Mobile
Engagement
Data
Lake
IoT Hub
Data
Catalog
Security &
Management
Azure Active
Directory
Multi-Factor
Authentication
Automation
Portal
Key Vault
Store/
Marketplace
VM Image Gallery
& VM Depot
Azure AD
B2C
Scheduler
Finish with your Internet of Your Things solutionStart quickly with pre-configured solutions
Modify existing rules and alerts
Fine-tuned to specific assets and processes
Integrate with back-end systems
Highly visual for your real-time operational data
Get started in minutes
Add your devices and begin trailering to your needs
Business
Process
ERP/CRMEvent Hub
Storage Blobs DocumentDB
Web App
Stream Analytics Logic Apps
Azure
Active Directory
IoT Hub Web Jobs
Devices
Azure IoT SDK (OSS)
Linux, RTOS, mBed, Windows,
Android, iOS
Power BI
https://azure.microsoft.com/en-us/suites/iot-suite/
https://azure.microsoft.com/
en-us/services/iot-hub/
Arduino 101
& Grove Base Shield
Resource Group
<name>group
Router w/
Internet Access
IoTHub
<name>iot
SEND / RECEIVE
SEND / RECEIVE
LAB ARCHITECTURE
LOCALRESOURCES
AZURERESOURCES
Temperature
Sensor
Buzzer
Rotary
Angle
Sensor
2 Row LCD Display
Intel NUC / IoT Gateway
Development
Workstation
(Windows / OSx / Linux)
Arduino 101
& Grove Base Shield
Resource Group
<name>group
EventHubNamespace
<name>ns
PowerBIEmbeddedWorkspaceCollection
<name>collection
PowerBIEmbeddedWorkspace
Dynamicallygeneratedguid
Report
TemperatureChart
AppServicePlan
<name>planFunctionApp
<name>functions
Function
TempAlert
WebApp
<name>web
SQLServer
<name>sql
SQLDb
<name>db
Router w/
Internet Access
StreamAnalytics
<name>job
EventHub
<name>alerts
IoTHub
<name>iot
INPUT
OUTPUT
DIRECT QUERY
QUERY
RECEIVE
RENDER
SEND CLOUD-TO-DEVICE MESSAGESSEND / RECEIVE
GET / POST
SEND CLOUD-TO-DEVICE-MESSAGES
SEND / RECEIVE
LAB ARCHITECTURE
LOCALRESOURCES
AZURERESOURCES
Temperature
Sensor
Buzzer
Rotary
Angle
Sensor
2 Row LCD Display
Intel NUC / IoT Gateway
Development
Workstation
(Windows / OSx / Linux)
OUTPUT
StorageAccount
<name>storage
READ / WRITE
Update Floor 1
Permissions: Group 1 Permissions: Group 2
Azure IoT Hub
Device Management APIs
Device Query API
Tags, Device and Service Properties
Device Jobs API
Create, Monitor, Cancel
LWM2M over CoAP/TCP
Device
DM Client
Library
Device App
(Your Code)
Registry Manager API
Create, Update, Delete Devices Application
Your Code
Azure IoT Suite
Device Management Objects
Device (Object)
Device State
Device Groups API
Groups CRUD, Add/Remote Devices,
Events, Access Control
Azure IoT HubDevice
Your code
on the device
IoT Hub DM
client library
Step 1
Step 2
Step 3
Device Job
Write Firmware
Package URI,
Trigger Client
Download
Package URI
Download
Package URI
Download Completed
Download the
firmware
Apply the
Update
Apply Update
Reconnect after restart
Monitor State
Changes and
Apply Update
Azure IoT Suite
Your code
in the cloud
Step 1:
Start Firmware
Update Job
providing the
Package URI
On Job
Completed:
Receive callback in
cloud
Anytime during
job execution:
Check the status of
the Job
How do I get started? What do I need?
Any good tutorials out there?
http://azure.com/iotstarterkits
https://github.com/dxcamps/MicrosoftIntelIoTCamp
Intel Grove Commercial IoT Developer Kit
Arduino 101
Node.js 4.x
Visual Studio Code
code.visualstudio.com
Git installed
PuTTY Bash on Ubuntu on Windows
(concurrent with Module 3)
(concurrent with Module 2)
http://thinglabs.io/azure/
https://github.com/ActiveNick/Arduino-Samples
https://github.com/ActiveNick/Windows10-IoT-Core-Demos
https://github.com/ActiveNick/Particle-Samples
https://github.com/arduino-libraries/AzureIoTHub
The Maker Show
Channel 9 show makers, hackers, builders
and disassemblers
Hands-on demos and know-how,
by makers for makers
http://themakershow.io
Follow @TheMakerShow
www.windowsondevices.com
Projects powered by hackster.io
https://microsoft.hackster.io
Check out the MS IoT GitHub for
more Windows IoT Core
samples:
https://github.com/ms-
iot/samples
https://github.com/ms-iot/samples
https://microsoft.hackster.io
www.hackaday.com
www.instructables.com
www.creativeapplications.net
http://themakershow.io
https://mva.microsoft.com/en-US/training-courses/
getting-started-with-the-internet-of-things-iot-16170
Slides are on Slideshare. Demos are on GitHub.
Slideshare: www.slideshare.net/ActiveNick
Blog: www.AgeofMobility.com
Twitter: @ActiveNick
Mobile Apps: www.bigbaldapps.com
LinkedIn: www.linkedin.com/in/activenick
GitHub: github.com/ActiveNick
Email: nick.landry@microsoft.com

Scaling IoT: Telemetry, Command & Control, Analytics and the Cloud

  • 2.
  • 5.
    “A computer inevery pot and chicken.” “A chicken in every pot.” ~ Henry IV of France – 17th Century “A computer on every desk and in every home.” ~ Bill Gates (1977)
  • 8.
  • 9.
    1970 1980 19902000 2010 10,000,000,000 1,000,000,000 100,000,000 10,000,000 1,000,000 100,000 10,000 1,000 Transistors Moore’s Law Metcalf‘s Law And more importantly: What can you do by combining and analyzing signals from all of these IoT devices? Koomey’s Law 1.E+14 1.E+12 1.E+10 1.E+08 1.E+06 1.E+04 1.E+02 1.E+00 Computations per KWh 1940 20101975
  • 11.
    What if Icould tell when it’s the best time for my things to _______ ? What if my things could tell me when they go someplace they shouldn’t? What if I simply knew where my things were? What if I knew when my things were going to break before they did? What if I could use device telemetry to improve next generation devices? What insights could I find from all of my devices? It all starts with a great idea…
  • 12.
    Next comes adevice…
  • 13.
    And data fromthat device… 01001010100010101001010100101010101001010101010110101
  • 14.
    And securing thedevice… 01001010100010101001010100101010101001010101010110101
  • 15.
    And insights fromthat data… 01001010100010101001010100101010101001010101010110101
  • 16.
    Then lots ofdevices and data… 0100101010001010100101010010101010100101010101011010 0100101010001010100101010010101010100101010101011010101010001 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010101010001011110101010101010100 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010 01001010100010101001010100101010101001010101010110101010101010 01001010100010101001010100101010101001010101010110101010101001001010110001010101010 010010101000101010010101001010101010010101010101101010101011000101001011
  • 17.
    Then lots ofdevices and data… 0100101010001010100101010010101010100101010101011010 0100101010001010100101010010101010100101010101011010101010001 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010101010001011110101010101010100 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010 01001010100010101001010100101010101001010101010110101010101010 01001010100010101001010100101010101001010101010110101010101001001010110001010101010 010010101000101010010101001010101010010101010101101010101011000101001011
  • 18.
    Then monitoring theirdata in real time… 0100101010001010100101010010101010100101010101011010 0100101010001010100101010010101010100101010101011010101010001 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010101010001011110101010101010100 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010 01001010100010101001010100101010101001010101010110101010101010 01001010100010101001010100101010101001010101010110101010101001001010110001010101010 010010101000101010010101001010101010010101010101101010101011000101001011
  • 19.
    Then looking forpatterns and insights in the data over time… 0100101010001010100101010010101010100101010101011010 0100101010001010100101010010101010100101010101011010101010001 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010101010001011110101010101010100 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010 01001010100010101001010100101010101001010101010110101010101010 01001010100010101001010100101010101001010101010110101010101001001010110001010101010 010010101000101010010101001010101010010101010101101010101011000101001011
  • 20.
    Then managing andupdating the software on these devices… 0100101010001010100101010010101010100101010101011010 0100101010001010100101010010101010100101010101011010101010001 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010101010001011110101010101010100 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010 01001010100010101001010100101010101001010101010110101010101010 01001010100010101001010100101010101001010101010110101010101001001010110001010101010 010010101000101010010101001010101010010101010101101010101011000101001011
  • 21.
    And visualizing andmanaging all of these services… 0100101010001010100101010010101010100101010101011010 0100101010001010100101010010101010100101010101011010101010001 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010101010001011110101010101010100 0100101010001010100101010010101010100101010101011010101010101010100010101 010010101000101010010101001010101010010101010101101010 01001010100010101001010100101010101001010101010110101010101010 01001010100010101001010100101010101001010101010110101010101001001010110001010101010 010010101000101010010101001010101010010101010101101010101011000101001011
  • 22.
    What is theInternet of Things? Connectivity Data AnalyticsThings
  • 24.
    Comprehensive solutions fromdevice to cloud IoT Editions Power a Broad Range of Devices 25 years of history in embedded devices One Windows platform for all devices Enterprise-ready, OEM-ready, Maker-friendly Designed for today’s IoT environments Scalable solutions from free Windows IoT Core to Windows IoT Enterprise on PC-Like Devices Cloud-Based IoT Services & Solutions Easy to provision, use and manage Pay as you go, scale as you need Global reach, hyper scale End-to-end security & privacy Windows, Mbed, Linux, iOS, Android, RTOS and wide hardware devices support Azure IoT
  • 26.
    Platform Services Infrastructure Services WebApps Mobile Apps API Management API Apps Logic Apps Notification Hubs Content Delivery Network (CDN) Media Services BizTalk Services Hybrid Connections Service Bus Storage Queues Hybrid Operations Backup StorSimple Azure Site Recovery Import/Export SQL Database DocumentDB Redis Cache Azure Search Storage Tables Data Warehouse Azure AD Health Monitoring AD Privileged Identity Management Operational Analytics Cloud Services Batch RemoteApp Service Fabric Visual Studio App Insights Azure SDK VS Online Domain Services HDInsight Machine Learning Stream Analytics Data Factory Event Hubs Mobile Engagement Data Lake IoT Hub Data Catalog Security & Management Azure Active Directory Multi-Factor Authentication Automation Portal Key Vault Store/ Marketplace VM Image Gallery & VM Depot Azure AD B2C Scheduler
  • 28.
    Finish with yourInternet of Your Things solutionStart quickly with pre-configured solutions Modify existing rules and alerts Fine-tuned to specific assets and processes Integrate with back-end systems Highly visual for your real-time operational data Get started in minutes Add your devices and begin trailering to your needs
  • 29.
    Business Process ERP/CRMEvent Hub Storage BlobsDocumentDB Web App Stream Analytics Logic Apps Azure Active Directory IoT Hub Web Jobs Devices Azure IoT SDK (OSS) Linux, RTOS, mBed, Windows, Android, iOS Power BI https://azure.microsoft.com/en-us/suites/iot-suite/
  • 31.
  • 34.
    Arduino 101 & GroveBase Shield Resource Group <name>group Router w/ Internet Access IoTHub <name>iot SEND / RECEIVE SEND / RECEIVE LAB ARCHITECTURE LOCALRESOURCES AZURERESOURCES Temperature Sensor Buzzer Rotary Angle Sensor 2 Row LCD Display Intel NUC / IoT Gateway Development Workstation (Windows / OSx / Linux)
  • 36.
    Arduino 101 & GroveBase Shield Resource Group <name>group EventHubNamespace <name>ns PowerBIEmbeddedWorkspaceCollection <name>collection PowerBIEmbeddedWorkspace Dynamicallygeneratedguid Report TemperatureChart AppServicePlan <name>planFunctionApp <name>functions Function TempAlert WebApp <name>web SQLServer <name>sql SQLDb <name>db Router w/ Internet Access StreamAnalytics <name>job EventHub <name>alerts IoTHub <name>iot INPUT OUTPUT DIRECT QUERY QUERY RECEIVE RENDER SEND CLOUD-TO-DEVICE MESSAGESSEND / RECEIVE GET / POST SEND CLOUD-TO-DEVICE-MESSAGES SEND / RECEIVE LAB ARCHITECTURE LOCALRESOURCES AZURERESOURCES Temperature Sensor Buzzer Rotary Angle Sensor 2 Row LCD Display Intel NUC / IoT Gateway Development Workstation (Windows / OSx / Linux) OUTPUT StorageAccount <name>storage READ / WRITE
  • 43.
  • 44.
    Permissions: Group 1Permissions: Group 2
  • 46.
    Azure IoT Hub DeviceManagement APIs Device Query API Tags, Device and Service Properties Device Jobs API Create, Monitor, Cancel LWM2M over CoAP/TCP Device DM Client Library Device App (Your Code) Registry Manager API Create, Update, Delete Devices Application Your Code Azure IoT Suite Device Management Objects Device (Object) Device State Device Groups API Groups CRUD, Add/Remote Devices, Events, Access Control
  • 47.
    Azure IoT HubDevice Yourcode on the device IoT Hub DM client library Step 1 Step 2 Step 3 Device Job Write Firmware Package URI, Trigger Client Download Package URI Download Package URI Download Completed Download the firmware Apply the Update Apply Update Reconnect after restart Monitor State Changes and Apply Update Azure IoT Suite Your code in the cloud Step 1: Start Firmware Update Job providing the Package URI On Job Completed: Receive callback in cloud Anytime during job execution: Check the status of the Job
  • 49.
    How do Iget started? What do I need? Any good tutorials out there?
  • 50.
  • 51.
    https://github.com/dxcamps/MicrosoftIntelIoTCamp Intel Grove CommercialIoT Developer Kit Arduino 101 Node.js 4.x Visual Studio Code code.visualstudio.com Git installed PuTTY Bash on Ubuntu on Windows
  • 52.
    (concurrent with Module3) (concurrent with Module 2)
  • 53.
  • 54.
  • 55.
    The Maker Show Channel9 show makers, hackers, builders and disassemblers Hands-on demos and know-how, by makers for makers http://themakershow.io Follow @TheMakerShow
  • 56.
    www.windowsondevices.com Projects powered byhackster.io https://microsoft.hackster.io Check out the MS IoT GitHub for more Windows IoT Core samples: https://github.com/ms- iot/samples
  • 57.
  • 58.
  • 59.
    Slides are onSlideshare. Demos are on GitHub. Slideshare: www.slideshare.net/ActiveNick Blog: www.AgeofMobility.com Twitter: @ActiveNick Mobile Apps: www.bigbaldapps.com LinkedIn: www.linkedin.com/in/activenick GitHub: github.com/ActiveNick Email: nick.landry@microsoft.com