v11 for TriJUG May 18 2015
The current hype around the Internet of Things (IoT) has led to a substantial amount of innovation thanks to open source software, open hardware, open standards, and community inspiration. In this session, we will explore how you can use open source software to incorporate the physical world (the “Things”) into your traditional enterprise IT infrastructure. We will walk the path from a typical enterprise developer’s current focus on web desktop applications to mobile and devices, specifically developer prototyping platforms like Raspberry Pi, Intel Edison, Arduino, Spark Core, and several others. Learn how to connect the physical world to your enterprise backbone via sensors and actuators.
6. Bluetooth +
WiFi
3 Possible Edge Architectures
Burr Sutter | @burrsutter
802.15.4 +
WiFi/Ethernet
Direct WiFi, Ethernet, Cell connectivity
7. History Lessons
ComputerWorld February 4, 1991
ComputerWorld January 8, 1990
Do remember you Novell's Netware IPX/SPX, Banyan Vines,
IBM's SNA?...and then came TCP/IP...and the rest are history
Burr Sutter | @burrsutter
CompuServe
Prodigy
AOL
Then...World Wide Web
8. Lots of standards, groups, affiliations, consortium
Organizations/Consortium:
● IPSO (www.ipso-alliance.org)
● IIC (www.industrialinternetconsortium.org)
● OIC (openinterconnect.org)
● Thread Group (www.threadgroup.org)
● Zigbee Alliance (www.zigbee.org)
● AllSeen Alliance (allseenalliance.org)
● IETF (www.ietf.org)
● IEEE
● 802.11 (WiFi)
● 802.15.1 Bluetooth
● 802.15.4 – mesh networking
● 6LoWPAN – IPv6 over 802.15.4
● Thread – based on 6LoWPAN
● ZigBee – based on 802.15.4
● AllJoyn – based D-Bus protocol
● IoTivity – layers on top of CoAP
● MQTT – messaging
● CoAP – RESTful
● REST
Wildcards:
● Apple Homekit
● Google Works-with-Nest
9. Decisions, decisions...requirements
1) Product – unlike infinitely flexible software, hardware is harder to change, think like a Product manufacturer/owner
2) Business Drivers: lower costs, improved analytics, increased customer satisfaction, reduced errors...
3) B2C, B2B, B2E, M2M internal, M2M with business partner – context, stakeholders
4) Hypothesis - what do you wish to prove/understand? Sensors
5) Timeliness – what business value is derived by knowing something now vs 30 days later?
6) Describe the inbound dataflow/stream, attempt to quantify its frequency, size and nature. Do you want readings from a person's blood
pressure every hour or the out-flow of a water pump every minute or video capture from a security camera every second?
7) Analytics: discovered, ingested, stored, visualized, etc
8) Actions: What would you do IF you could collect the data, in a timely fashion. Provide upper and lower boundaries on timeliness.
Actuators, business processes, alerting, etc.
9) Distribution: how far flung will your Thing be. Connectivity – wired or wireless, distance, bandwidth, latency
Ethernet, WiFi, Bluetooth, 802.15.4, Zigbee (Thread), 2.4 Ghz roll-your-own (nRF24L01)
10) Security: Both physical (someone opening the box, data a rest) and network (data transmission)
11) Environment: dust, vibration, humidity, water, cold, heat, pressure, etc.
12) Packaging: Related to environment, do you need an attractive rubberized casing for your customers (B2C)
13) Power – wired or battery – if battery, how long does it need to last, solar-recharging, etc
14) Maintenance – field deployment considerations, both initial and ongoing – cost of a “truck roll”
15) Device end-of-life planning
16) Application Connectivity to your enterprise architecture – MQTT, XMPP, REST, AMQP, DDS
Burr Sutter | @burrsutter
10. IoT Developer Hardware (from my perspective)
Microcontrollers: C, C++ Embeddable Linux: Python, Node.js, Java
Note: Images not scaled to relative sizing
Arduino Uno
Arduino Pro
Mini (<$10) SparkFun
Lilypad(<$25)
AdaFruit
Gemma (<$8)
Spark.io WiFi
Core ($39)
Photon ($19)
Electron (Kickstarter -
Cell)
LightBlue Bean
BLE -
Bluetooth
Smart ($30)
TI LaunchPad
CC3200-
LAUNCHXL
($29)
mbed
NXP
LPC1768 ($59)
Arduino
Teensy
(<$20)
Connectivity Add-On
Arduino Pro
Mini (<$10)
Includes Connectivity
Electric Imp
($29) – SD
card size
Intel Edison ($50)
Includes: WiFi,
BLE (Bluetooth Smart)
Yocto
Raspberry Pi 2 ($35)
+ WiFi ($10)
+ Bluetooth ($12)
Raspbian, Pidora,
Windows, etc
Onion Omega
Includes: WiFi
OpenWRT Linux
At Kickstarter
BeagleBone Black ($45)
+ WiFi ($10)
+ Bluetooth ($12)
Debian, Angstrom
Android, etc
MinnowBoard
Max ($145)
+ WiFi (?)
+ Bluetooth (?)
Angstrom, Android
Arduino Yun ($72)
Includes: WiFi
+ BLE ($12)
OpenWRT-Yun
Burr Sutter | @burrsutter
11. Connectivity is still a challenge – like in the 90's
ComputerWorld – March 20 1995
Burr Sutter | @burrsutter
Now, when someone rings my doorbell, the current goes to a scanner
that digitizes the audio impulses and sends the image to the PC where
it's converted to a Pict file. The image is then animated, compressed,
and sent via high-speed modem to an automated phone service that
sends an e-mail message back to tell me someone was at my door 40
minutes ago.