Simple things about internet of things

Download Simple things about internet of things

Post on 15-Jul-2015




3 download

Embed Size (px)


<ul><li><p>Simple Things about </p><p>Internet of Things</p><p>Muhammad Hassan Nasr Senior Software Engineer </p><p>GISTIC</p><p>April 2015</p></li><li><p>About Me!</p></li><li><p>muhammadhassan</p></li><li><p>#Computer_Engineering @2004</p></li><li><p>Technical Lead</p><p>@</p></li><li><p>CoFounder</p><p>of</p></li><li><p>Senior Software Engineer</p><p>@</p></li><li><p>var experience = 10.years+</p></li><li><p>the network of physical objects or "uniquely identifiable things" </p><p>embedded with software, sensors and connectivity to enable it to </p><p> achieve greater value and service by exchanging data </p><p>without human interaction.</p><p>Internet of Things is </p></li><li><p>Shortly called IoT</p></li><li><p>Also called M2M(Machine to Machine)</p></li><li><p>AgendaWhy IoT? What is IoT? How to build IoT? Tips</p></li><li><p>Why IoT?</p></li><li><p>Internet is everywhere like electricity </p></li><li><p>wireless Internet is getting cheaper </p></li><li><p>Connectivity chips #wifi #3G </p><p>getting more affordable </p></li><li><p>On 2020 20-50 billion devices expected </p><p>to be connected 7 devices per person! </p></li><li><p>Huge Business Opportunity </p></li><li><p>IoT Takes Over Big Data As ?????????????? Technology </p><p>July 2014</p></li><li><p>Gartners 2012 Hype Cycle</p></li><li><p>Gartners 2013 Hype Cycle</p></li><li><p>Gartners 2014 Hype Cycle</p></li><li><p>What is IoT?</p></li><li><p>Why is IoT?</p></li><li><p>Real Life Examples</p></li><li><p>LG SMART THINQ</p></li><li><p>Works with Smart Grid</p></li><li><p>Works with</p></li><li><p>What if Apple made a Car?</p></li><li><p>Tesla Car</p></li><li><p>Detect repairs Schedule fix Autonomously </p><p>Connected Car</p></li><li><p>IoT Components</p></li><li><p>IoT ComponentsDevices</p><p>Sensors MCUs Small Computers/Smart Phones Gateways </p><p>NetworkMedia and Protocols </p><p>Middleware / IoT Platforms Cloud</p><p>Storage (SQL, NoSQL) Web apps, APIs, analytics, </p></li><li><p>Architecture of ARM mbed </p></li><li><p>How to Build IoT?</p></li><li><p>Devices</p></li><li><p>MCUs</p><p>Arduino </p><p>Microduino </p><p>TI Launch Pad </p></li><li><p>Spark Electron</p><p>Spark Electron</p><p>(IoT for folks)</p></li><li><p>Spark ElectronArduino-like cellular development kit Open Source HW &amp; SW $39/board $3/Month Data plan</p></li><li><p>Monitor soil moisture </p></li><li><p>Small ComputersRaspberry Pi 2</p><p>$35 900 MHZ quad-core 1 GB RAM HDMI, Big community</p></li><li><p>Small Computers</p><p>BeagleBone Black Intel Galileo (Arduino based) </p></li><li><p>OS for DevicesContiki-OS </p><p>Designed for IoT (Memory, Protocols, Battery) Open Source </p><p>Raspbian ARM mbed OS Linux/*nix,</p></li><li><p>Network</p></li><li><p>Network</p><p>Media and Protocols Wired? Wireless</p></li><li><p>Everything is going wireless So is </p><p>The Internet of Things</p></li><li><p>Wired Ethernet is almost obsolete!</p></li><li><p>Wireless NetworkingWiFi (Battery Hungry) BLE (Great for PAN) GSM </p><p>Works for many use cases $$ for large # of devices</p></li><li><p>Other Wireless NetworkingZ-Wave ZigBee 6LoWPAN LoRa </p></li><li><p>ZigBee Vs BLEZigBee </p><p>WLAN (Home Automation) Mesh topology covers unlimited # of nodes Sense &amp; Control apps </p><p>BLE PAN Star topology covers limited # of nodes Body and Peripherals</p></li><li><p>LoRaLong Range 2+ Miles Range In Dense Urban (NLOS) Low Power (Multi-Year Battery) One Gateway support 10(s)K Nodes Data Rates &lt; 300 kbps</p></li><li><p>Libelium's LoRa module </p><p>Non Line Of Sight (NLOS) Tests</p></li><li><p>Middleware</p></li><li><p>Agenda for MiddlewareProtocols </p><p>Data Transfer Device Management </p><p>IoT platforms Standardization</p></li><li><p>Data Protocols</p></li><li><p>Data ProtocolsHTTP MQTTCoAPAMQP, STOMP WebSocket </p></li><li><p>MQTTPublish/Subscribe Lightweight (than HTTP) </p><p>IBM says MQTT can send messages wirelessly using 10 times less battery power and 93 times faster" </p><p>Best for: Low Bandwidth Unreliable Network </p></li><li><p>CoAP</p><p>RESTful design Feels like HTTP Lighters than HTTP Best for: MCUs 10 KiB RAM</p></li><li><p>Device Management Protocols</p></li><li><p>Device Management Protocols</p><p>Manual Approach TR-069 OMA-DM OMA Lightweight M2M OSGi</p></li><li><p>Manual ApproachUpdate Device </p><p>SSH login/run script remote Or Pull changes using git </p><p>Device monitoring Send heartbeats to custom web service </p></li><li><p>Manual Approach</p><p>Prosvery lightweight </p><p>Consreliable, scalable?</p></li><li><p>OMA-DMProvisioning </p><p>Configuration of the device (including first time use) Enabling and disabling features </p><p>Device Configuration (change device settings &amp; parameters) Software Upgrades Fault Management (Report error, status) Open Source implementations available</p></li><li><p>OMA Lightweight M2MSimple, efficient protocol Banking class security (DTLS, ) Supports Cellular, 6LoWPAN, WiFi and ZigBee IP or any other IP-based devices Open Source Implementation</p></li><li><p>OSGiAn open standard service platform for Java Enables dynamic component model (bundles) Bundles can (remotely without a reboot) be: </p><p>installed/uninstalled started/stopped updated</p></li><li><p>OSGi Other Features</p><p>Run on low power hardware 156 MHz and 8 MB RAM onlyMany commercial/Open Source Implementations </p></li><li><p>Middleware</p><p>IoT Platforms</p></li><li><p>CommercialTelefonica $$$ Oracle IoT $$$ Bosch IoT Suite $$$ Temboo ARM mbed IBM IoT Thingworx $$$ Xively $$$$ PubNub </p></li><li><p>Open Source</p><p>Sentilo Kura Node-RED </p></li><li><p> project Policy-driven publishing system Abstracts developer from network complexity Default Messaging lib: </p><p>Eclipse Paho (MQTT) </p></li><li><p>KuraCloud Services - API to communicate with remote servers OSGi Remote Management Watchdog Service (Force system reset upon problem). Web-based management for gateway </p></li><li><p>Node-REDDeveloped by IBM A tool for wiring hardware devices, APIs and online services. Browser-based flow editing Lightweight runtime built on Node.js 120,000+ modules</p></li><li><p>IBM IoTUsing Open Standards like MQTT Part of IBM awesome cloud service Bluemix </p><p>Supporting many languages, VMs, Node-RED, </p><p>Open/Affordable Prices with 30 days trial Scalable</p></li><li><p>Parse.comBackend as a Service (Baas) Easy to use SDKs for iOS, Android, JS, SDKs for Arduino and Embedded C Generous free package</p></li><li><p>ARM mbedARM approach to IoT, they have built </p><p>their own Device OS and Device Server (middleware)</p></li><li><p>ARM mbed Case Study</p></li><li><p>mbed Smart City </p></li><li><p>Case Study</p><p>Faheem Traffic Monitoring</p></li><li><p>TraffiCloud</p><p>(DriveTimes Feature)</p></li><li><p>What is IoT?</p></li><li><p>Standardization</p></li><li><p>Standardization Fragmentation</p><p>Apple HomeKit OData AllJoyn OneM2M Open Interconnect Consortium</p></li><li><p>Tips</p></li><li><p>TipsThe IoT is Huge </p><p>Many challenges! Many technologies/protocols </p><p>Design for Best Fit Determine your hardest problem Choose the primary protocol/tool to solve it </p></li><li><p>Tips</p><p>A complex system can use more than one protocol/tool Support standard IoT protocols Use time series NoSQL/Big Data</p></li><li><p>Tips</p><p>Security is not an option Scalability &amp; APIs Sandbox/testing environment</p></li><li><p>Software And Hardware Together</p></li><li><p>iOS + iPhone vs</p><p>Android + LG +Samsung + </p></li><li><p>Questions</p></li><li><p></p><p></p></li><li><p>Thank you!</p></li></ul>