141
An intro to the Internet of Things Simen Sommerfeldt, NDC Oslo 2014

An introduction to the Internet of things

Embed Size (px)

DESCRIPTION

First off, I describe how we can divide IoT (Internet of Things) in two versions: The Enterprise and for Consumers. After that, I describe what the IoT can really be in the future (read http://sommerfeldt.co/2014/05/01/internet-of-things-or-should-we-call-it-the-emperors-new-wearables/), using Illustrations that my 7 yo. daughter made for me. I then talk about the necessary enablers for this. I also show what the different vendors are offering in the space, and the most prominent protocols and standards. In the second part, I show how you can make your own home automation system using MQTT and node.red - two interesting IoT-related offerings. This is partly described here: http://blogg.bouvet.no/2014/03/10/an-internet-of-things-demo-using-raspberry-pi-arduino-minecraft-and-mqtt/

Citation preview

Page 1: An introduction to the Internet of things

An intro to the Internet of Things Simen Sommerfeldt, NDC Oslo 2014

Page 2: An introduction to the Internet of things

CTO, Bouvet Oslo Dataforeningen, HIOA, Lær Kidsa Koding! NoNog Oslo IoT meetup

@sisomm

Page 3: An introduction to the Internet of things
Page 4: An introduction to the Internet of things
Page 5: An introduction to the Internet of things

What the Internet of things is

Page 6: An introduction to the Internet of things

Some thoughts on how to get started in the enterprise

Page 7: An introduction to the Internet of things

What it can be for all of us

Page 8: An introduction to the Internet of things

Enablers

Page 9: An introduction to the Internet of things

What the vendors say

Page 10: An introduction to the Internet of things

Relevant standards

Page 11: An introduction to the Internet of things
Page 12: An introduction to the Internet of things
Page 13: An introduction to the Internet of things

Scare kids on Halloween

http://nspt4kids.com/wp-content/uploads/2011/10/scared-boy-on-halloween.jpg

Page 14: An introduction to the Internet of things
Page 15: An introduction to the Internet of things

A confusing topic

Page 16: An introduction to the Internet of things

So much information, so much happening!

Page 17: An introduction to the Internet of things

http://www.bishopmikelowry.com/wp-content/uploads/2013/03/drinking-from-the-firehose.jpg

Page 18: An introduction to the Internet of things

http://blogg.bouvet.no/2014/03/07/the-internet-of-things-keiserens-nye-wearables/

http://sommerfeldt.co/2014/05/01/internet-of-things-or-should-we-call-it-the-emperors-new-wearables/

Page 19: An introduction to the Internet of things

http://sommerfeldt.co/2014/05/01/internet-of-things-or-should-we-call-it-the-emperors-new-wearables/

Page 20: An introduction to the Internet of things

http://e24.no/digital/slik-blir-tingenes-internett/22807160

http://www.aftenposten.no/okonomi/De-lever-i-fremtiden-7552621.html

“says Norwegian Expert”

Page 21: An introduction to the Internet of things

http://dashingduchesses.com/wp-content/uploads/2013/04/presence-Luddites-textile-mill-2.jpg

An official luddite?

Page 22: An introduction to the Internet of things
Page 23: An introduction to the Internet of things

Så hva er “the internet of things?”

Page 24: An introduction to the Internet of things

The Internet of Things: By the Numbers

B 5 0 7 5 2 1 2

Slide copied from http://channel9.msdn.com/Events/Build/2014/2-511

Page 25: An introduction to the Internet of things

Animation copied from http://channel9.msdn.com/Events/Build/2014/2-511

“$8.9 trillion market in 2020, 212 billion connected things”

Huge numbers

- IDC, 2013

Page 26: An introduction to the Internet of things

“Internet of things: $8.9 trillion market in 2020, 212 billion connected things”

- IDC, 2013

http://www.zdnet.com/internet-of-things-8-9-trillion-market-in-2020-212-billion-connected-things-7000021516/

Page 27: An introduction to the Internet of things

“There are actually two different internet of things”

- Dionne Hinchcliffe

http://www.zdnet.com/is-the-internet-of-things-strategic-to-the-enterprise-7000030068/

Page 28: An introduction to the Internet of things

“One is the enterprise-grade version that has long been in place and is already helping us run our companies”

- Dionne Hinchcliffe

http://www.zdnet.com/is-the-internet-of-things-strategic-to-the-enterprise-7000030068/

Page 29: An introduction to the Internet of things

In the enterprise...

Page 30: An introduction to the Internet of things

Support for and extension of Business Processes

using Sensors, Big Data, Orchestration, Machine

Learning

Page 31: An introduction to the Internet of things

Microsoft & IBM: Enterprise-IoT

Page 32: An introduction to the Internet of things

Cloud-connected

Large

Mobile

Micro

Small

Azure M2M Device management Command & Control Data Analytics

Page 33: An introduction to the Internet of things
Page 34: An introduction to the Internet of things

“The other IoT is the emerging consumer-based cloud of connected products and services which has only been happening in a significant way in the last 2-3 years”

- Dionne Hinchcliffe http://www.zdnet.com/is-the-internet-of-things-strategic-to-the-enterprise-7000030068/

Page 35: An introduction to the Internet of things

Advice for enterprise systems

Page 36: An introduction to the Internet of things

“Involve Customer experience people, Architects, Partners, s Sales, CRM, Lawyers, Other

Stakeholders”

- Michele Pelino, Forrester Research

Page 37: An introduction to the Internet of things

Security, privacy, authentication

Page 38: An introduction to the Internet of things

Operations

Page 39: An introduction to the Internet of things

In consumer space...

Page 40: An introduction to the Internet of things

“Everything” gets connected

Page 41: An introduction to the Internet of things

We can orchestrate them all!

Page 42: An introduction to the Internet of things

Smart homes 6-Jun-14 46

Page 43: An introduction to the Internet of things
Page 44: An introduction to the Internet of things

What is it the Consumer IoT?

Page 45: An introduction to the Internet of things

“Does one vendor's product work with another's? Does a door lock by one vendor communicate with a light switch by another vendor, and do you want the thermostat to be part of the conversation?”

- Patrick Thibodeau

http://www.citeworld.com/article/2155401/internet-of-things/the-abcs-of-the-internet-of-things7.html?page=1

Page 46: An introduction to the Internet of things

Or is it “The internet AND things”?

Page 47: An introduction to the Internet of things

“An Electric Heater finds its place” ...sometime in 2030...

Page 48: An introduction to the Internet of things

•  Home automation •  Wearables •  Enterprise IoT •  Self-driving cars •  Intelligent cities •  Infrastructure ...to a bigger whole?

Page 49: An introduction to the Internet of things
Page 50: An introduction to the Internet of things
Page 51: An introduction to the Internet of things

Ingrid buys a panel oven

Page 52: An introduction to the Internet of things
Page 53: An introduction to the Internet of things

Ingrid on the bus

Page 54: An introduction to the Internet of things

Ingrid with family

Page 55: An introduction to the Internet of things

Enablers

Page 56: An introduction to the Internet of things

Device classification & Interoperability ? ?

? ?

?

Page 57: An introduction to the Internet of things

“On the internet, nobody knows that you are a toaster”

- Ross Mason, Mulesoft

Page 58: An introduction to the Internet of things
Page 59: An introduction to the Internet of things

Protocols

•  XMPP: Presence •  MQTT: Collection •  DDS: Distributed objects •  AMQP: Large volume brokers •  CoAP: REST Request/Response M2M •  Alljoyn: M2M Mesh network/device bus

Page 60: An introduction to the Internet of things
Page 61: An introduction to the Internet of things

“There is no vendor large enough to control the IoT, but

there are vendors large enough to make a mess of it.”

- Patrick Thibodeau

http://www.citeworld.com/article/2155401/internet-of-things/the-abcs-of-the-internet-of-things7.html?page=2

Page 62: An introduction to the Internet of things

Device classification & Interoperability

Connectivity & Address space ?

? ?

?

Page 63: An introduction to the Internet of things

Wifi, Mobile Data,

Bluetooth Low Energy, ZigBee Z-wave

Mesh Networks!

Page 64: An introduction to the Internet of things
Page 65: An introduction to the Internet of things

IPv4 is running out!

http://www.potaroo.net/tools/ipv4/plotvarcum.png

Page 66: An introduction to the Internet of things

Device classification & Interoperability

Connectivity & Address space

Security, Privacy, Authentication ? ?

?

Page 67: An introduction to the Internet of things

http://zapmed.com/Downloads/TOAST.jpg

Page 68: An introduction to the Internet of things

http://thehackernews.com/2011/12/cplc-chief-says-pakistan-safe-heaven.html

Page 69: An introduction to the Internet of things

http://www.engadget.com/2014/01/17/internet-of-things-hacked-malicious-email-phishing/

Page 70: An introduction to the Internet of things

http://berntolufsen.vg.no/2014/05/19/rapport-fra-staten-google/

Page 71: An introduction to the Internet of things

A hotel lobby today, Tomorrow..

Page 72: An introduction to the Internet of things
Page 73: An introduction to the Internet of things

Big Data Machine Learning

Internet of Things

Do we want this?

Page 74: An introduction to the Internet of things

Device classification & Interoperability

Connectivity & Address space

Security, Privacy, Authentication Open business

models ? ?

Page 75: An introduction to the Internet of things

Vendor lock-in

Page 76: An introduction to the Internet of things

Device classification & Interoperability

Connectivity & Address space

Security, Privacy, Authentication

User Experience

Open business models

?

Page 77: An introduction to the Internet of things

“Usability is like a joke. It’s bad if it needs to be explained”

- Jakob Nielsen(?)

Page 78: An introduction to the Internet of things

Common for all five: Open Standards

Open Source

Page 79: An introduction to the Internet of things
Page 80: An introduction to the Internet of things

2020? 2030? Reality check with people from

Linux Foundation, IBM, Microsoft, Altibox, Eye

Networks and Forrester

Page 81: An introduction to the Internet of things

“It is happening fast in vertical businesses or specific markets because they have regulatory

bodies, protocols and standards”

- Michele Pelino, Forrester Research

Page 82: An introduction to the Internet of things

“The technology is there. The consumer version could be implemented quickly. But

competition, privacy concerns and mindset makes it hard to

implement”

- Michele Pelino, Forrester Research

Page 83: An introduction to the Internet of things

Consumer products

Page 84: An introduction to the Internet of things

http://www.homeautomationinfo.com/Drupal/HA_Company_Directory

Page 85: An introduction to the Internet of things

Lyse Smartly: 130.000 homes?

https://www.smartly.no/hjem#

Page 86: An introduction to the Internet of things
Page 87: An introduction to the Internet of things
Page 88: An introduction to the Internet of things

https://www.alljoyn.org/sites/default/files/alljoyn-alliance.pdf

Page 89: An introduction to the Internet of things

https://www.alljoyn.org/sites/default/files/alljoyn-alliance.pdf

Page 90: An introduction to the Internet of things

https://www.alljoyn.org/sites/default/files/alljoyn-alliance.pdf

Page 91: An introduction to the Internet of things

C++/Java on Andriod, Arduino, iOS, OS/X, Windows, Linux

Page 92: An introduction to the Internet of things
Page 93: An introduction to the Internet of things

http://mashable.com/2014/05/30/chill-bear/

Page 94: An introduction to the Internet of things

“Siri, turn on the lights in the living room”

Page 95: An introduction to the Internet of things

Apple’s Home kit & Health kit

Page 96: An introduction to the Internet of things

MQTT & Node.red Starting with IoT @ home or work

Page 97: An introduction to the Internet of things
Page 98: An introduction to the Internet of things

Demo

Page 99: An introduction to the Internet of things

how to do reliable messaging over

unreliable networks? ”

Page 100: An introduction to the Internet of things

Image: IBM

Page 101: An introduction to the Internet of things

http://iot-datamodels.blogspot.no

Page 102: An introduction to the Internet of things

Pub/Sub with topic paths

http://m.eet.com/media/1171446/0912embmqtt01.png

/container/address/devicetype/unique/status <payload> /minecraft/world/skull/250,72,211/status IS_ALONE Wildcards: # entire subtree, + a single level

Page 103: An introduction to the Internet of things

Multiple brokers

http://usuaris.tinet.cat/sag/mq_pubsub.htm

Page 104: An introduction to the Internet of things

IoT-friendly “Tricks”

•  Last will & testament •  Binary payload •  3 QoS levels •  Retained messages •  2 byte overhead •  Small footprint •  Low bandwidth

Page 105: An introduction to the Internet of things

Mobile: MQTT vs HTTPS

http://mobilebit.wordpress.com/2013/05/03/rest-is-for-sleeping-mqtt-is-for-mobile/ ”

Page 106: An introduction to the Internet of things

MQTT might be in your pocket now

Page 107: An introduction to the Internet of things

MQTT is so simple that my children instantly could follow the message flow and suggest

changes

Page 108: An introduction to the Internet of things

Can combined with REST to provide notifications

Page 109: An introduction to the Internet of things

Node.red

6-Jun-14 115

Page 110: An introduction to the Internet of things

http://www.infoq.com/resource/news/2014/05/ibm-node-red-qconlondon/en/resources/Node-RED-WS-Tweet-Demo-QCon-London-2014.png

Page 111: An introduction to the Internet of things

Inputs

Page 112: An introduction to the Internet of things

Functions & Social

Page 113: An introduction to the Internet of things

Storage, Analysis, “Advanced”

Page 114: An introduction to the Internet of things

“Node-RED is an intriguing open source solution for 'If This Then That' workflows. I've been able to construct an alerting workflow that pulls in data from our monitoring API and generates an alert when some condition is met, in less than two hours”

- David Laing

http://www.infoq.com/news/2014/05/ibm-node-red-qconlondon

Page 115: An introduction to the Internet of things

Can use other node.js packages & be embedded

Page 116: An introduction to the Internet of things

Missing: Petri-net style transitions

http://www.jfsowa.com/ontology/causal.htm

Page 117: An introduction to the Internet of things

My Original Python Broker: ~20 hrs

Node Red:

1 hr

Page 118: An introduction to the Internet of things

My own setup

6-Jun-14 124

And how you can get started

Page 119: An introduction to the Internet of things

Arduino 1 + servo shield Logical level

converter Raspberry

Pi Arduino 2 Sonar Breadboard

power supply

Page 120: An introduction to the Internet of things
Page 121: An introduction to the Internet of things

Arduino sketch

Arduino sketch Python scripts Node.Red Mosquitto MQTT server

Minecraft client Bukkit Server Scriptcraft with MQTT plugin Javascript

Page 122: An introduction to the Internet of things

Broker

/container/address/devicetype/unique/status <payload> /minecraft/world/skull/250,72,211/status IS_ALONE /container/address/devicetype/unique/incoming <payload> /arduino/1/incoming SERVOS_MOVE,54,69

Page 123: An introduction to the Internet of things

6-Jun-14

! /arduino/2/sonar/Ping: 29 ! /minecraft/world/sonar/250,72,211 Ping: 9 ! /minecraft/world/skull/250,72,211/status HAS_COMPANY " /arduino/1/incoming LEDS_ON ! /minecraft/world/facetracker/250,72,211/status 0.038844700742, -0.100218465107 " /arduino/1/incoming SERVOS_MOVE,54,69 ! /minecraft/world/lever/-251,71,210/status 0 " /arduino/1/incoming LED,1,0 ! /minecraft/world/lever/-249,71,210/status 1 " /arduino/1/incoming LED,1,1 ! /minecraft/world/skull/250,72,211/status IS_ALONE " /arduino/1/incoming LEDS_OFF ! /minecraft/world/sonar/250,72,211 Ping: 20 ! /minecraft/world/block/-251,70,183/status BROKEN

Page 124: An introduction to the Internet of things
Page 125: An introduction to the Internet of things
Page 126: An introduction to the Internet of things

Presence detection

Moisture- meter

Relays Vibration-sensors

Servos Light-sensor

Temperature

Noise level

Video-surveilance

http://hackedgadgets.com/2009/05/20/automated-house-climate-control-whole-home-information-awareness/

Page 127: An introduction to the Internet of things

Over 18 million licenses sold Scriptcraft lets you control it with Javascript “Gateway drug” for getting kids interested in coding Has an MQTT plugin

Page 128: An introduction to the Internet of things

“Devices”

A skull that detects if the player is near

A sonar that tells the distance to a player

Redstone levers

block destruction alarm

A “Facetracker” giving the vector to the player

Page 129: An introduction to the Internet of things

“Devices”

Page 130: An introduction to the Internet of things

Code: make the skull move

Page 131: An introduction to the Internet of things

Sommerfeldt surveilance system?

Page 132: An introduction to the Internet of things

http://blogg.bouvet.no/2014/03/10/an-internet-of-things-demo-using-raspberry-pi-arduino-minecraft-and-mqtt/

Page 133: An introduction to the Internet of things

github.com/sisomm/iot-concepts

6-Jun-14 141

Page 134: An introduction to the Internet of things

Thanks to...

•  Loek Vredenberg & Andy Piper @ IBM •  Joe Speeds @ Linux Foundation •  Arif Shafique @ Microsoft •  Michele Pelino @ Forrester Research •  Jan Pedro Tumusok @ Eye Networks •  Ragnar Anfinsen @ Altibox •  Walter Higgins @ IBM for adding MQTT to

scriptcraft!

Page 135: An introduction to the Internet of things
Page 136: An introduction to the Internet of things

Questions?

Page 137: An introduction to the Internet of things

Thanks

Page 138: An introduction to the Internet of things

Some links

Andy S-C on IoT @TED: http://www.youtube.com/watch?v=s9nrm8q5eGg http://mobilebit.wordpress.com/2013/05/03/rest-is-for-sleeping-mqtt-is-for-mobile

http://www.slideshare.net/nivertech/zvi-mqtts-foreuc2013 http://jpmens.net/2013/02/25/lots-of-messages-mqtt-pub-sub-and-the-mosquitto-broker/

http://embeddedtek.blogspot.no/2013/02/internet-of-things-sous-vide-cooker.html http://nrkbeta.no/2013/09/18/uendelige-muligheter-med-internett-i-alt/

http://mqtt.org/wiki/doku.php/history http://public.dhe.ibm.com/software/dw/webservices/ws-mqtt/mqtt-v3r1.html#appendix-

https://www.eclipsecon.org/na2014/session/securing-internet-things-and-mqtt http://server.dzone.com/articles/controlling-house-50-miles

Page 139: An introduction to the Internet of things

MQTT servers

•  IBM MQ Series •  Mosquitto •  Eclipse Paho •  Eurotech Everywhere

Device Cloud •  Xively •  eMQTT •  m2m.io

•  RabbitMQ •  Apache ActiveMQ •  Apache Apollo •  Moquette •  HiveMQ •  Mosca •  Litmus Automation

Loop

Page 140: An introduction to the Internet of things

•  Mule •  Fuse ESB •  WSO2 •  IBM Websphere ESB •  Talend

ESB’s

Page 141: An introduction to the Internet of things

Security

•  Username/Password •  SSL connections •  ACL for topics •  Client authentication (Certificates) •  Encrypt messages