Agenda Internet of Things – What it is? Why Cloud? Azure IoT services Demo IoT Protocols Trend IoT Platforms Devices for IoT
The Internet of Things …
2020 Forecast*
IoT: gain value from Your Things
Evolution of IoT Earlier IoT systems Expensive on installing and maintaining Difficult implementation (No standard protocols, services etc..) Why IoT is booming? Cheaper hardware (sensors, processor boards, RF devices etc..) More standardization on Hardware platforms M2M protocols and easy connectivity of Heterogeneous systems
Devices interconnection
Why Cloud for IoT? Three parts of an IoT solution 1 Device connectivity & management 2 Analytics & operationalized insights 3 Presentation & business connectivity Easy to provision, use and manage Pay as you go, scale as you need Global reach, hyper scale End to end security & privacy Azure IoT
Telemetry system architecture
End-to-end stream processing architecture
Field Gateway Device Connectivity & Management IoT Device & Cloud Patterns Devices RTOS, Linux, Windows, Android, iOS Cloud Gateway Event Hubs Field Gateway Protocol Adaptation Event Hubs High scale telemetry ingestion service HTTP/AMQP protocol support Each Event Hub supports 1 million publishers 1GB/s ingress Generally available worldwide 18 Billion messages per day 60+ TB ingested per day
Demo on Event hubs
Azure Stream Analytics
Demo on Stream Analytics
IoT protocols trend
IoT Protocols trend MQTT ( http://mqtt.org/ ) Available in the industry for more than 10 Year Open standard by IBM and adopted by many org Extremely lightweight publish/subscribe messaging transport Support for Windows/WEC, .net Micro framework, Linux, Android, iOS , Broker (server)/ Client Mechanism https://m2mqtt.codeplex.com/ - .net code for MQTT
IoT Protocols trend Alljoyn ( https://allseenalliance.org/ ) Open source framework for IoT Initiated by Qualcomm and now it is growing bigger (Maintained by Allseen Alliance) SDKs available for Windows/WEC, Linux, Android, iOS , .net MicroFramework (Available soon) SDK types Standard SDK Thin client SDK – for resource constrained devices Microsoft adopting this as a service in Windows 10 (various versions)
Windows 10 IoT AllJoyn Device Network Internet/Cloud Windows can bridge AllJoyn to other proximal networks and remote device networks via the cloud Proximal Network AllJoyn Node Other Proximal Devices Windows IoT AllJoyn Cloud Bridge Wired Busses USB, UART, I2C, GPIO… 3 rd party device cloud AllJoyn Thin Client
Field Gateway Device Connectivity & Management What’s Next? Devices RTOS, Linux, Windows, Android, iOS Cloud Gateway Event Hubs Field Gateway Protocol Adaptation Additional IoT Needs Command & control Device identity Device registry Device management Coming with the Azure IoT Suite…
Field Gateway Device Connectivity & Management What’s Next? Devices RTOS, Linux, Windows, Android, iOS Protocol Adaptation Cloud Gateway Event Hubs & IoT Hub Field Gateway Protocol Adaptation IoT Hub Capability of the Azure IoT Suite Bi-directional device <-> cloud Up to 10 million devices Telemetry ingestion Command & control Device registry & identity Device Management HTTP/AMQP Extensible protocol support / MQTT
Solution Portal Provisioning API Identity & Registry Stores Stream Event Processor Analytics/ Machine Learning Data Visualization & Presentation Device State Store Gateway Azure IoT Services Reference Architecture Storage IP capable devices Existing IoT devices Low power devices Presentation Device and Event Processing Data Transport Devices and Data Sources Azure IoT Hub Agent Agent Agent
IoT Platform Convergence v6.5 Windows Embedded Handheld Windows Embedded Windows on Devices Windows Embedded Standard v8.1 Converged OS kernel Converged app model v7 Windows Embedded Compact Windows 10 v2013 Porting Tools v8 v7
Windows 10 IoT Editions + Microsoft Azure IoT Security & Identity Windows Updates Visual Studio & UWP Windows 10 IoT for industry devices Desktop Shell, Win32 apps, Universal apps and drivers Minimum: 1 GB RAM, 16 GB storage X86/x64 Windows 10 IoT for mobile devices Modern Shell, Mobile apps, Universal apps and drivers Minimum: 512 MB RAM, 4 GB storage ARM Windows 10 IoT Core Universal Apps and Drivers No shell or MS apps Minimum: 256MB RAM, 2GB storage X86/x64 or ARM Integrated Device Connectivity New User Interfaces
Windows 10 – For Small devices Sharks Cove Intel ® Atom™ Processor Z3735G, 2M Cache, 4 Core, 1.33GHz up to 1.88GHz Supports Connected Standby MinnowBoard MAX Intel® Atom™ E3800 processor Open Hardware Platform ( Gerbers & Layout) Qualcomm DragonBoard ™ 410C Qualcomm Snapdragon 410 (APQ8016) 1GB LPDDR3, 4GB eMMC
Raspberry Pi 2 Bringing the power of Windows to the Maker community Hardware specs: Broadcom 2836 900MHz quad-core ARM Cortex-A7 CPU 1GB LPDDR2 SDRAM MicroSD , Ethernet, USB, HDMI GPIO, I2C, I2S, SPI www.windowsondevices.com
Arduino What is Arduino? Arduino is an open-source electronics platform Based on easy-to-use hardware and software. It's intended for anyone making innovative projects. Boards, Off-The-Shelf Shields, IJW Software, Kits http://www.arduino.cc/ Hardware Variety of Implementations All implement the same hardware interface (or superset), same physical pin locations Arduino (various) ARM ATmega328 etc MPU .NET MF: Netduino Intel Galileo (Runs Headless version of Win 8.1) 86Duino (x86 Like Galileo but support Windows Embedded Compact)
Arduino Boards netduino plus 2 ( .net MF) 86Duino ZERO ( WEC2013) Intel Galileo ( Win 8.1)
Headers on both sides of board will mount a shield plug directly in Meant to be stackable IO Hardware physically implemented to plug into Arduino sockets Standard Drivers Same driver source will run shield on all variants of Arduino Sensors, Network, WiFi , Sensors, Actuators etc Shield List http://shieldlist.org/
Take a picture, scale and transform the picture, and send it to the LED Windows Remote Arduino
Use your Windows device like a stack of shields Windows Virtual Shield for Arduino
Connect The Dots Connect tiny devices to Microsoft Azure services to build IoT solutions www.connectthedots.io Open source project by Microsoft Open Technologies Multiple client platforms Windows Linux .NET microframework Arduino Azure-based services and front-end