IoTivity. Sungkyunkwan University. Presenter: Dzung Tien Nguyen Networking Laboratory,

Size: px
Start display at page:

Download "IoTivity. Sungkyunkwan University. Presenter: Dzung Tien Nguyen Networking Laboratory,"

Transcription

1 Sungkyunkwan University IoTivity Presenter: Dzung Tien Nguyen Networking Laboratory, Copyright Networking Laboratory 1/00

2 Current issues Incompatibility of platforms: Manufacturers are providing a large number of IoT devices. Those devices could be based on Linux, Android, Adruino, ios, etc. To let them work together requires a hub/controller to interpret (or translate ) the data, commands. Difficulty in cooperation between industries (smart home, automotive, industrial automation, healthcare etc.) IoTivity demo Networking Laboratory 2/37

3 IoTivity target To provide a common open source framework for Discovery and Connectivity. In addition to that, Device management and Data management are mentioned as services To ensure interoperability among products and services, regardless of maker and across multiple industries, e.g. Consumer, Enterprise, Industrial, etc. The interaction might be made between WIFI, Bluetooth, Zigbee, Z-wave devices and so forth To provide the common code bases/apis to accelerate innovation, besides the open standard and specifications Supporting Linux (compiled), Android (Compiled), Tizen, Adruino, Yocto, ios, Windows (unsuccessful) IoTivity demo Networking Laboratory 3/37

4 The framework IoTivity demo Networking Laboratory 4/37

5 The stack architecture IoTivity demo Networking Laboratory 5/37

6 Protocol: CoAP Is Constrained Application Protocol for constrained resource environment Is a simple and compact binary mapping of REST Provides asynchronous notifications, publish-subscribe, resource discovery Work in CLIENT/SERVER context Each entity can be both CLIENT/SERVER at the same time IoTivity is using CoAP IoTivity demo Networking Laboratory 6/37

7 More about CoAP Most IoT systems use UDP. However, since UDP is neither stable nor reliable, it needs to combine with another application protocol to improve the stability CoAP stands for Constrained Application Protocol, is a client-server application layer protocol designed for resource-constrained devices (i.e. low power, small, need to control remotely) CoAP is like HTTP (document transfer protocol), but with multicast, low overhead and simplicity. CoAP can easily be translated to HTTP. CoAP is built on top of UDP (not TCP) and supports the scalable web services IoTivity demo Networking Laboratory 7/37

8 Resource Discovery IoTivity demo Networking Laboratory 8/37

9 CoAP: observation CoAP extends the HTTP request model with the ability to observe a resource. When the observe flag is set on a CoAP GET request, the server may continue to reply after the initial document has been transferred. This allows servers to stream state changes to clients as they occur. Either end may cancel the observation. Example of a resource: a light controller, a garage door opener Resources might be organized in a hierarchical manner (tree form) E.g. /fridge/ Light1 Light2 Fan Sensor1 Sensor2 IoTivity demo Networking Laboratory 9/37

10 More on IoTivity Current release: 0.9.2, open source Getting started: Number of joined companies: 50+, including Intel, Samsung, Still in development phase, not a production-ready product Discussion forum: View is available Registering seems not open IoTivity demo Networking Laboratory 10/37

11 The virtual machine Ubuntu Username/passwd: mc2015/123 Gcc4.9 Eclipse with Android SDK v.19 / 20 / 21 (required); Android NDK, Gradle Dependencies: python2.7, scons Jre Boost, IoTivity demo Networking Laboratory 11/37

12 Build the framework Source code inside the VM is prebuilt with the following options: scons TARGET_OS=linux TARGET_ARCH=x86 TARGET_TRANSPORT=IP scons TARGET_OS=android TARGET_ARCH=armeabi TARGET_TRANSPORT=IP To add more source file (e.g. to folder resource/examples) and recompile: Inside the folder, modify Sconscript From root directory execute: scons resource/examples IoTivity demo Networking Laboratory 12/37

13 Before getting started Generating the doxygen doxygen g iotdoc vim iotdoc RECURSIVE=YES CREATE_SUBDIRS=YES GENERATE_LATEX=NO doxygen iotdoc IoTivity demo Networking Laboratory 13/37

14 Client/Server basis Server Init the configuration Register resource Entity handlers for handling request (GET/PUT/POST/OBSERVE) Client Client configuration Functions for PUT/GET/POST/OBSERVE and its callbacks IoTivity demo Networking Laboratory 14/37

15 InitOICStack config Initialize the configuration mode of the thing ServiceType: InProc, OutOfProc ModeType: Server/Client/Both IPAddress: means broadcast ClientConnectivityType: port number QualityOfService: LowQoS, MidQos, HighQos, NaQos (in OCApi.h) IoTivity demo Networking Laboratory 15/37

16 [SERVER] Define a resource Member variables Constructor IoTivity demo Networking Laboratory 16/37

17 [SERVER] Register the resource C++ API OCStackResult OC::OCPlatform::registerResource( ); OCEntityHandlerResult entityhandler(std::shared_ptr<ocresourcerequest> request) IoTivity demo Networking Laboratory 17/37

18 Application calls the library function On finishing the task, the library function trigger the associated callback at the same tier with the call IoTivity demo Networking Laboratory 18/37

19 Find Resource On the findresource(), the get() request is sent out (multicast) to all the vicinity IoT devices Each device processes the query and responds if it satisfies the request filter Parameters: "oic/res?rt=core.light" including URI path ( /oc/core ) and URI query ( rt=core.light ) /oic/res is the OIC Virtual resources supported by every OIC device (octypes.h) IoTivity demo Networking Laboratory 19/37

20 Scheme 1: Simple discovery myclient myserver findresource() Register resource OCResource foundresource() get() GET OCRepresentation ongetcallback() IoTivity demo Networking Laboratory 20/37

21 [CLIENT] Find Resource FindResource syntax std::ostringstream requesturi; requesturi << OC_RSRVD_WELL_KNOWN_URI << "?rt=core.light"; OCStackResult result = OCPlatform::findResource("", CT_DEFAULT, FindCallback); FindResource s Callback requesturi, void founddevice(std::shared_ptr<ocresource> resource){ if(resource){ std::cout << "Got one" << resource->host() << resource->uri() << std::endl; } } //host() return string coap://<m_devaddr.addr>:<m_devaddr.port> //source: OCResource.cpp IoTivity demo Networking Laboratory 21/37

22 [Client] Get Trigger GET request OCStackResult result = resource->get(getmap, g); if(oc_stack_ok!= result) { std::cout << "Get resource error!" << std::endl; } Process ongetcallback void ongetcallback(const HeaderOptions& ho, const OCRepresentation& rep, const int ecode){ if (ecode == OC_STACK_OK){ std::cout << "GET request was successful" << std::endl; std::cout << "\tpower value: " << rep.getvaluetostring("power") << std::endl; }else{ std::cout << "Error in GET callback" << std::endl; } } IoTivity demo Networking Laboratory 22/37

23 [SERVER] OnGetRequest On receiving GET request, the resource server get() its representation and sendresponse back to the requester using OCPlatform API if (requesttype == "GET") { std::cout << "\treceived GET request\n"; presponse->setresourcerepresentation(lightresource::get()); if(oc_stack_ok == OC::OCPlatform::sendResponse(pResponse)) { ehresult = OC_EH_OK; } } IoTivity demo Networking Laboratory 23/37

24 Scheme 2: PUT request myput myserver put() OCResource onputcallback() entityhandler (requesttype == PUT ) get() GET OCRepresentation ongetcallback() IoTivity demo Networking Laboratory 24/37

25 [CLIENT] PUT PUT is to send the next state to the resource Send the new desired state of type OCRepresentation to the resource //do the PUT OCRepresentation reptoput; reptoput.seturi("/a/light"); for (auto i = 0; i < 10; i++){ if (i%2 == 0) reptoput.setvalue("power", std::string("off")); else reptoput.setvalue("power", std::string("on")); put(myclient::lightresources, reptoput); sleep(3); } IoTivity demo Networking Laboratory 25/37

26 Scheme 3: OBSERVE request put() myput myobserverserver - entityhandler(requesttype == PUT ) - notifyobserver() myobserverclient findresource() and Observe() Get server s state change IoTivity demo Networking Laboratory 26/37

27 Usecase: send other In IoTivity, devices are in CLIENT/SERVER modes, and the connections are of type Client-Server The available messages are GET/PUT/POST/OBSERVE Look at the signature of those functions: OCStackResult OCResource::get(const QueryParamsMap &, GetCallback attributehandler) OCStackResult OCResource::put(const OCRepresentation & representation, const QueryParamsMap & queryparametersmap, PutCallback attributehandler) OCStackResult OCResource::post(const OCRepresentation & representation, const QueryParamsMap & queryparametersmap, PostCallback attributehandler) OCStackResult OCResource::observe(ObserveType observetype, const QueryParamsMap & queryparametersmap, ObserveCallback observehandler) In OCApi.h: typedef map::<string, string> QueryParamsMap; IoTivity demo Networking Laboratory 27/37

28 Back to OnGetCallback With OCRepresentation which will be sent back to the client, we can carry any data with user-defined field name In the example, power is the field name void ongetcallback(const HeaderOptions& ho, const OCRepresentation& rep, const int ecode){ if (ecode == OC_STACK_OK){ } std::cout << "\tpower value: " << rep.getvaluetostring("power") << std::endl; } else{ std::cout << "Error in GET callback" << std::endl; } IoTivity demo Networking Laboratory 28/37

29 Scheme 4: user-defined GET myquery Client myquery Server get() IoTivity demo Networking Laboratory 29/37

30 To be modified Add extra info to GET message QueryParamsMap getmap; getmap["energylevel"] = "100"; getmap["ip"] = myclient::myip4address; Add energy level to resource s representation l_rep.setenergy("energylevel", l_energy); IoTivity demo Networking Laboratory 30/37

31 Extract info From server side: calling API to get the queryparams of type std::map<string, string> std::string requesttype = request->getrequesttype(); std::map<std::string, std::string> queryparams = request->getqueryparameters(); auto requestrepresentation = request->getresourcerepresentation(); for(auto it = queryparams.cbegin(); it!= queryparams.cend(); it++) { std::cout << it->first << " : " << it->second << std::endl; // it->first = Text energylevel // it->second = the actual value } Client: Ocrepresentation.getValueToString( energylevel ) IoTivity demo Networking Laboratory 31/37

32 Approach to the project Creation of an array for storing resources in the vicinity Requesting residual energy from neighbors, selecting the highest (e.g. using GET) Utilizing the PUT message to send data to an end point Defining new field in the OCRepresentation (e.g. mode = aggregation / put ) On the server side: if (requesttype == "PUT") { recvmsg = request->getresourcerepresentation(); if (recvmsg.getvaluetostring("mode") == "aggregation") { //do something here } } Making your aggregation algorithms (e.g. taking average of all the Temperature received) and then sending to the sink IoTivity demo Networking Laboratory 32/37

33 Sungkyunkwan University Things-manager Extra example Copyright Networking Networking Laboratory 33/00

34 Guideline link Follow this link: _1 Path for android SDK: Iotivity/extlibs/android/sdk/android-sdk/ Path for android NDK: Iotivity/extlibs/android/ndk/android-ndk/ Link for installing android plugin for eclipse: IoTivity demo Networking Laboratory 34/37

35 Topology Context: All the devices connect to the Access point Light resources <mcl1> and <mcl2> registered Android clients interacts with the resources: PUT, OBSERVE Scheduled PUT IoTivity demo Networking Laboratory 35/37

36 IoTivity demo Networking Laboratory 36/37

37 IoTivity demo Networking Laboratory 37/37

Tizen/Artik IoT Practice Part 5 IoTivity Simple Server and Simple Client

Tizen/Artik IoT Practice Part 5 IoTivity Simple Server and Simple Client 1 Tizen/Artik IoT Practice Part 5 IoTivity Simple Server and Simple Client Sungkyunkwan University IoTivity Resource 2 In IoTivity, an entity(e.g. Sensor, Actuator) is being handled as a resource(ocf Resource

More information

Tizen/Artik IoT Lecture Chapter 7. IoTivity Connectivity Abstraction

Tizen/Artik IoT Lecture Chapter 7. IoTivity Connectivity Abstraction 1 Tizen/Artik IoT Lecture Chapter 7. IoTivity Connectivity Abstraction Sungkyunkwan University Contents 2 Architecture Routing Through Heterogeneous Connectivity Blockwise Transfer Call Path Sending Data

More information

IOTIVITY INTRODUCTION

IOTIVITY INTRODUCTION IOTIVITY INTRODUCTION Martin Hsu Intel Open Source Technology Center 1 Content may contain references, logos, trade or service marks that are the property of their respective owners. Agenda Overview Architecture

More information

IoTivity Programmer s Guide Protocol Plugin Manager for Linux

IoTivity Programmer s Guide Protocol Plugin Manager for Linux IoTivity Programmer s Guide Protocol Plugin Manager for Linux 1 CONTENTS 2 Overview... 3 2.1 Overall Flows... 3 3 Using Plugin Manager... 4 3.1 Setting Plugin Configuration... 4 3.2 Locating Plugin and

More information

OCF for resource-constrained environments

OCF for resource-constrained environments October 11 13, 2016 Berlin, Germany OCF for resource-constrained environments Kishen Maloor, Intel 1 Outline Introduction Brief background in OCF Core Constrained environment charactertics IoTivity-Constrained

More information

IoTivity Programmer s Guide Resource Encapsulation

IoTivity Programmer s Guide Resource Encapsulation IoTivity Programmer s Guide Resource Encapsulation 1 CONTENTS 2 Revision History... 4 3 Terminology... 5 4 Introduction to Resource Encapsulation... 6 4.1 Overall Architecture... 6 4.2 Iotivity Service

More information

IoTivity: The Open Connectivity Foundation and the IoT Challenge

IoTivity: The Open Connectivity Foundation and the IoT Challenge IoTivity: The Open Connectivity Foundation and the IoT Challenge Thiago Macieira Embedded Linux Conference / Open IoT Summit Berlin, October 2016 Who am I? 2 3 About the Open Connectivity Foundation 4

More information

OCF Specification Overview Core Technology Specification. OCF 2.0 Release June 2018

OCF Specification Overview Core Technology Specification. OCF 2.0 Release June 2018 OCF Specification Overview Core Technology Specification OCF 2.0 Release June 2018 Core Framework Topics Outline (1 of 2) Objectives RESTful Architecture OCF Roles Resources Basic Operations Organization

More information

Tizen/Artik IoT Lecture Chapter 10. IoTivity Resource Encapsulation

Tizen/Artik IoT Lecture Chapter 10. IoTivity Resource Encapsulation 1 Tizen/Artik IoT Lecture Chapter 10. IoTivity Resource Encapsulation Sungkyunkwan University Contents Resource Encapsulation Components Resource Client API: Key Objects Resource Encapsulation Components

More information

Tutorial Prototyping IoT devices on GNU/Linux

Tutorial Prototyping IoT devices on GNU/Linux Tutorial Prototyping IoT devices on GNU/Linux Embedded Linux Conference #LFELC, Berlin, Germany Philippe Coval / SRUK philippe.coval@osg.samsung.com 1 Hallo Welt! Philippe Coval Software engineer

More information

IP Based Architecture for the Internet of Things. IPV6 and Related Standards for IoT Interoperability November 20, 2014

IP Based Architecture for the Internet of Things. IPV6 and Related Standards for IoT Interoperability November 20, 2014 IP Based Architecture for the Internet of Things IPV6 and Related Standards for IoT Interoperability November 20, 2014 1 IoT Architecture Problems to Solve Interoperability In the way in which software

More information

Tizen/Artik IoT Lecture Chapter 13. IoTivity Cloud

Tizen/Artik IoT Lecture Chapter 13. IoTivity Cloud 1 Tizen/Artik IoT Lecture Chapter 13. IoTivity Cloud Sungkyunkwan University Contents 2 IoTivity Cloud Architecture Features IoTivity Cloud SW Stack IoTivity Cloud in Resource Model Source Tree IoTivity

More information

Mark Skarpness. Director of Embedded Software Intel Software and Services Group

Mark Skarpness. Director of Embedded Software Intel Software and Services Group Mark Skarpness Director of Embedded Software Intel Software and Services Group 50B DEVICES* * The Internet of Things is Intelligence Everywhere 44 ZETABYTES** Sensors Home/ Industrial Gateway Network DC/Cloud

More information

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center IOTIVITY AND EMBEDDED LINUX SUPPORT Kishen Maloor Intel Open Source Technology Center Outline Open Interconnect Consortium and IoTivity Software development challenges in embedded Yocto Project and how

More information

IoTivity Big Picture. MyeongGi Jeong Software R&D Center

IoTivity Big Picture. MyeongGi Jeong Software R&D Center IoTivity Big Picture MyeongGi Jeong 2016.11.17 Software R&D Center Contents Overview Features Messaging Security Service Q&A Copyright c 2016 SAMSUNG ELECTRONICS. ALL RIGHTS RESERVED Overview IoTivity?

More information

A Language-based Approach to Interoperability of IoT Platforms

A Language-based Approach to Interoperability of IoT Platforms COLLECTOR CoAP TEMPERATURE SENSOR HTTP/FTP/SMTP UDP Set Temperature 70 ºF Get Temperature 68 ºF END TO END PATTERN PUBLISH/SUBSCRIBE PATTERN HVAC COLLECTOR TEMPERATURE SENSOR HVAC TCP/UDP TEMPERATURE SENSOR

More information

Whitepaper. IoT Protocols. PAASMER Support for Protocols. Website:

Whitepaper. IoT Protocols. PAASMER Support for Protocols. Website: Whitepaper IoT Protocols PAASMER Support for Protocols Website: www.mobodexter.com www.paasmer.co 1 Table of Contents 1. Introduction 3 2. IoT Protocols 4 3. Connectivity Protocols 5 4. Application Layer

More information

Tizen/Artik IoT Lecture Chapter 14. IoTivity Easy Setup Manager

Tizen/Artik IoT Lecture Chapter 14. IoTivity Easy Setup Manager 1 Tizen/Artik IoT Lecture Chapter 14. IoTivity Easy Setup Manager Sungkyunkwan University Contents Easy Setup Use Cases Device Roles Easy Setup Resource Model Provisioning Resource WiFi Resource DevConf

More information

How to Route Internet Traffic between A Mobile Application and IoT Device?

How to Route Internet Traffic between A Mobile Application and IoT Device? Whitepaper How to Route Internet Traffic between A Mobile Application and IoT Device? Website: www.mobodexter.com www.paasmer.co 1 Table of Contents 1. Introduction 3 2. Approach: 1 Uses AWS IoT Setup

More information

INTEROPERABILITY ISSUES IN IOT

INTEROPERABILITY ISSUES IN IOT INTEROPERABILITY ISSUES IN IOT 4/8/2016 WHITEPAPER Interoperability is the key issue ailing the mass adoption of IoT devices. Standardization is the remedy. This paper talks about the inherent Interoperability

More information

Tizen/Artik IoT Lecture Chapter 11. IoTivity Resource Hosting & Resource Directory

Tizen/Artik IoT Lecture Chapter 11. IoTivity Resource Hosting & Resource Directory 1 Tizen/Artik IoT Lecture Chapter 11. IoTivity Resource Hosting & Resource Directory Sungkyunkwan University Contents 2 Resource Hosting Design Resource Hosting in IoTivity Discovery: OICStartCoordinate()

More information

Proposed Node and Network Models for M2M Internet

Proposed Node and Network Models for M2M Internet 2009-2012 NTT CORPORATION. All Rights Reserved. Proposed Node and Network Models for M2M Internet Yuminobu Igarashi NTT Information Sharing Platform Laboratories 2012 NTT Information Sharing Platform Laboratories

More information

Data and AI LATAM 2018

Data and AI LATAM 2018 El Internet de las Cosas para Desarrolladores Joaquin Guerrero Sr. Technical Evangelist Microsoft LATAM The Internet of Things isn t a technology revolution IoT is a business revolution, enabled by technology

More information

Common Service Discovery Scheme in IoT Environments

Common Service Discovery Scheme in IoT Environments , pp.28-32 http://dx.doi.org/10.14257/astl.2018.149.07 Common Service Discovery Scheme in IoT Environments Joosang Youn 1 * and TaeJin Lee 2 1 Dept. of Industrial ICT Engineering, Dong-Eui University 176,

More information

Khartoum, Sudan Dec 2017

Khartoum, Sudan Dec 2017 ITU-SUDACAD Regional Forum on Internet of Things for Development of Smart and Sustainable Cities Khartoum, Sudan 13-14 Dec 2017 Standardized architectures and important standards defining organizations

More information

Android App Development

Android App Development Android App Development Outline Introduction Android Fundamentals Android Studio Tutorials Introduction What is Android? A software platform and operating system for mobile devices Based on the Linux kernel

More information

B U I L D I N G O N T H E G A T E W A Y. Copyright 2015, Oracle and/or its affiliates. All rights reserved.

B U I L D I N G O N T H E G A T E W A Y. Copyright 2015, Oracle and/or its affiliates. All rights reserved. B U I L D I N G O N T H E G A T E W A Y Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated

More information

Interoperability Frameworks for RIOT-OS

Interoperability Frameworks for RIOT-OS Interoperability Frameworks for RIOT-OS @Mattia_Antonini m.antonini@create-net.org Università degli Studi INTEROPERABILITY Berlin, 15th July 2016 Stack Base Layer Service Layer Implementations Official

More information

Content. 1. Overview Setup Demonstration Linux Application Project on DE10-Nano Android Application Project...

Content. 1. Overview Setup Demonstration Linux Application Project on DE10-Nano Android Application Project... Content 1. Overview... 1 2. Setup Demonstration... 3 3. Linux Application Project on... 6 4. Android Application Project... 8 5. Appendix... 13 www.terasic.com 1. Overview This documents describe how to

More information

Teradici PCoIP Virtual Channel Software Development Kit

Teradici PCoIP Virtual Channel Software Development Kit Teradici PCoIP Virtual Channel Software Development Kit Version 1.1 Developers' Guide TER1502008-1.1 Document History The following table records changes and revisions made to this document since the inaugural

More information

Automated Development for Cross-Platform Internet of Things

Automated Development for Cross-Platform Internet of Things Automated Development for Cross-Platform Internet of Things Develop a secure, certified hardware prototype in 15 minutes Clarke Stevens Shaw Communications clarke.stevens@sjrb.ca What is the Open Connectivity

More information

Architecture Styles. Instructor: Yongjie Zheng February 7, CS 5553: Software Architecture and Design

Architecture Styles. Instructor: Yongjie Zheng February 7, CS 5553: Software Architecture and Design Architecture Styles Instructor: Yongjie Zheng February 7, 2017 CS 5553: Software Architecture and Design Architecture styles: a named collection of architecture design decisions that (1) are applicable

More information

ARM IoT Tutorial. CoAP: The Web of Things Protocol Zach Shelby. April 30 th, 2014

ARM IoT Tutorial. CoAP: The Web of Things Protocol Zach Shelby. April 30 th, 2014 ARM IoT Tutorial CoAP: The Web of Things Protocol Zach Shelby April 30 th, 2014 1 2 Introduction Evolution from M2M to IoT M2M Big Data Internet of Things Services Web The Web Little Data Things 3 3 CoAP:

More information

Lecture 04 Introduction: IoT Networking - Part I

Lecture 04 Introduction: IoT Networking - Part I Introduction to Industry 4.0 and Industrial Internet of Things Prof. Sudip Misra Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 04 Introduction: IoT Networking

More information

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore Android App Development Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore Mobile devices (e.g., smartphone, tablet PCs, etc.) are increasingly becoming an essential part of human life

More information

Welcome to IoTivity. Mike Richmond, Executive Director Open Interconnect Consortium

Welcome to IoTivity. Mike Richmond, Executive Director Open Interconnect Consortium Welcome to IoTivity Mike Richmond, Executive Director Open Interconnect Consortium Abstract This presentation will introduce today's track on IoTivity. The session will explain where the effort fits strategically

More information

onem2m AND SMART M2M INTRODUCTION, RELEASE 2/3

onem2m AND SMART M2M INTRODUCTION, RELEASE 2/3 onem2m AND SMART M2M INTRODUCTION, RELEASE 2/3 Presenter: Omar Elloumi, onem2m TP Chair, Nokia Bell Labs and CTO group omar.elloumi@nokia.com onem2m www.onem2m.org 2016 onem2m Outline Introduction to onem2m

More information

Assessing interoperability in Internet of Things ecosystems

Assessing interoperability in Internet of Things ecosystems Assessing interoperability in Internet of Things ecosystems Lars Bendik Dølvik Applied Computer Science Submission date: June 2017 Supervisor: Rune Hjelsvold, IDI Norwegian University of Science and Technology

More information

IoT on Fedora Using Fedora as a base for the IoT Revolution

IoT on Fedora Using Fedora as a base for the IoT Revolution IoT on Fedora Using Fedora as a base for the IoT Revolution Presented by Peter Robinson Fedora contriibutor, Red Hatter CC-BY-SA Overview Am I just going to talk ARM? HELL NO!! IoT is a LOT bigger than

More information

IoT usecase for Yocto Project

IoT usecase for Yocto Project IoT usecase for Yocto Project SUMMER SCHOOL Outline Yocto and IoT IoTivity ResinOS Test Questions 2 Yocto & IoT As of 2015: 25 billion connected devices By 2020: 50 billion connected devices Building the

More information

Interoperability. Luca Mottola slides partly by Simon Duquennoy. Politecnico di Milano, Italy and Swedish Institute of Computer Science

Interoperability. Luca Mottola slides partly by Simon Duquennoy. Politecnico di Milano, Italy and Swedish Institute of Computer Science Interoperability Luca Mottola slides partly by Simon Duquennoy Politecnico di Milano, Italy and Swedish Institute of Computer Science 2 Not just stand-alone systems 3 NES in business processes! Motivation

More information

DNS Naming Services for Service Discovery and Remote Control for Internet-of-Things Devices

DNS Naming Services for Service Discovery and Remote Control for Internet-of-Things Devices DNS Naming Services for Service Discovery and Remote Control for Internet-of-Things Devices Seokhwa Kim, Keuntae Lee, and Jaehoon (Paul) Jeong Department of Computer Science & Engineering, Sungkyunkwan

More information

ETSI M2M workshop Nov 2013

ETSI M2M workshop Nov 2013 Promoting the use of IP in networks of Smart Objects ETSI M2M workshop Nov 2013 Patrick Wetterwald IPSO President pwetterw@cisco.com IPSO Alliance use only @2013 Enabling the Internet of Things The IPSO

More information

Learning gem5 Part II Modifying and Extending gem5

Learning gem5 Part II Modifying and Extending gem5 Learning gem5 Part II Modifying and Extending gem5 Jason Lowe-Power http://learning.gem5.org/ https://faculty.engineering.ucdavis.edu/lowepower/ Jason Lowe-Power 1 A simple SimObject

More information

Embedded Web Services

Embedded Web Services Nov 1 st, 2011 Embedded Web Services Zach Shelby, Chief Nerd 1 Course Overview Powering M2M with the Internet of Things Industry examples What are Web Services? CoRE - Constrained RESTful Environments

More information

Linux SDK for UPnP Devices v1.4

Linux SDK for UPnP Devices v1.4 Linux SDK for UPnP Devices v1.4 Linux SDK for UPnP Devices v1.4 Contents 1 Introduction............................................................. 5 2 License...................................................................

More information

Internet of Things: An Introduction

Internet of Things: An Introduction Internet of Things: An Introduction IoT Overview and Architecture IoT Communication Protocols Acknowledgements 1.1 What is IoT? Internet of Things (IoT) comprises things that have unique identities and

More information

Security Monitoring of LwM2M Protocol

Security Monitoring of LwM2M Protocol Security Monitoring of LwM2M Protocol Technical Report FIT-TR-2017-16 Ondřej Ryšavý Marek Rychlý Ondřej Ryšavý Technical Report no. FIT-TR-2017-16 Faculty of Information Technology Brno University of Technology

More information

趙庸鎭 (Cho, Yong Jin)

趙庸鎭 (Cho, Yong Jin) Evolution to OS of Everything Tizen Micro profile for low-end IoT devices 趙庸鎭 (Cho, Yong Jin) drajin.cho@samsung.com Software Center, Samsung Elec. Contents Part I. OS of Everything in IoT Part II. Tizen

More information

Open Source Softwares for Gateway Design and Edge Computing

Open Source Softwares for Gateway Design and Edge Computing Open Source Softwares for Gateway Design and Edge Computing Rajesh Sola, Education Specialist ECoDe, KPIT Technologies Ltd. Copy Right Guidelines 2017 KPIT Technologies Limited, Pune, India. All Rights

More information

CoAP communication with the mobile phone sensors over the IPv6

CoAP communication with the mobile phone sensors over the IPv6 CoAP communication with the mobile phone sensors over the IPv6 Tomislav Dimcic *, Dejan Drajic *, Srdjan Krco * * Ericsson d.o.o., Belgrade, Serbia toma.dimcic@gmail.com, dejan.d.drajic@gmail.com, srdjan.krco@ericsson.com

More information

Jonas Green, Björn Otterdahl HMS Industrial Networks AB. February 22, 2017

Jonas Green, Björn Otterdahl HMS Industrial Networks AB. February 22, 2017 Resource-constrained Industrial Things Proposal for the Adaptation of CoAP to EtherNet/IP Jonas Green, Björn Otterdahl HMS Industrial Networks AB February 22, 2017 Connect all devices in a factory to EtherNet/IP

More information

An IoT-Aware Architecture for Smart

An IoT-Aware Architecture for Smart An IoT-Aware Architecture for Smart Healthcare System Presented By: Amnah Allboani Abstract Smart hospital system (SHS) relies on complementary technologies specifically RFID, WSN, and smart mobile, interoperating

More information

Using the tpm with iot

Using the tpm with iot Using the tpm with iot David Grawrock Security Architect, Senior Principle Engineer Agenda History Lesson What Does IoT Need How Does The Fulfill Needs Usage IoT Security 2 History Worked on the from 1999

More information

The world of BAOS. Easy connectivity for KNX with Bus Access and Object Server. Overview and applications

The world of BAOS. Easy connectivity for KNX with Bus Access and Object Server. Overview and applications The world of BAOS Easy connectivity for KNX with Bus Access and Object Server Overview and applications WEINZIERL ENGINEERING GmbH Achatz 3 DE-84508 Burgkirchen / Alz Germany Phone : +49 (0)8677 / 91 636

More information

UNIT TESTING OF C++ TEMPLATE METAPROGRAMS

UNIT TESTING OF C++ TEMPLATE METAPROGRAMS STUDIA UNIV. BABEŞ BOLYAI, INFORMATICA, Volume LV, Number 1, 2010 UNIT TESTING OF C++ TEMPLATE METAPROGRAMS ÁBEL SINKOVICS Abstract. Unit testing, a method for verifying a piece of software, is a widely

More information

Kepware Whitepaper. IIoT Protocols to Watch. Aron Semle, R&D Lead. Introduction

Kepware Whitepaper. IIoT Protocols to Watch. Aron Semle, R&D Lead. Introduction Kepware Whitepaper IIoT Protocols to Watch Aron Semle, R&D Lead Introduction IoT is alphabet soup. IIoT, IoE, HTTP, REST, JSON, MQTT, OPC UA, DDS, and the list goes on. Conceptually, we ve discussed IoT

More information

Harvesting IOT data. (Using IP networks) Ericsson 2014

Harvesting IOT data. (Using IP networks) Ericsson 2014 Harvesting IOT data (Using IP networks) Samita Chakrabarti ETSI M2M Workshop Ericsson 2014 overview The network society AGGREGATION AND CONVERGENCE IP BASED IOT AND M2M NETWORKS USECASES AND PROTOTYPE

More information

IoT CoAP Plugtests & Workshop November 27 th 2012

IoT CoAP Plugtests & Workshop November 27 th 2012 Building the Environment for the Things as a Service IoT CoAP Plugtests & Workshop November 27 th 2012 Introduction The BETaaS FP7 project Facts Start date: 1/10/12 End date: 31/3/15 (30 months) Cost:

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

Chapter 16 Networking

Chapter 16 Networking Chapter 16 Networking Outline 16.1 Introduction 16.2 Network Topology 16.3 Network Types 16.4 TCP/IP Protocol Stack 16.5 Application Layer 16.5.1 Hypertext Transfer Protocol (HTTP) 16.5.2 File Transfer

More information

OpenVL User Manual. Sarang Lakare 1. Jan 15, 2003 Revision :

OpenVL User Manual. Sarang Lakare 1. Jan 15, 2003 Revision : OpenVL User Manual Sarang Lakare 1 Jan 15, 2003 Revision : 1.8 1 lsarang@cs.sunysb.edu 2 Contents 1 Obtaining OpenVL 5 1.1 Understanding the version numbers............................ 5 1.2 Downloading........................................

More information

Installation Guide for Windows

Installation Guide for Windows Installation Guide for Windows Cisco IoT Data Connect - Edge and Fog Fabric (EFF) 1.0.1 Revised: August 25, 2017 These release notes provide an overview to Cisco IoT DataConnect Edge and Fog Fabric version

More information

Outline. Routing. Introduction to Wide Area Routing. Classification of Routing Algorithms. Introduction. Broadcasting and Multicasting

Outline. Routing. Introduction to Wide Area Routing. Classification of Routing Algorithms. Introduction. Broadcasting and Multicasting Outline Routing Fundamentals of Computer Networks Guevara Noubir Introduction Broadcasting and Multicasting Shortest Path Unicast Routing Link Weights and Stability F2003, CSG150 Fundamentals of Computer

More information

Embedded M2M Software Testing

Embedded M2M Software Testing Embedded M2M Software Testing Slide 1 Neratec Overview WLAN Products Industrial Wireless LAN Stations WLAN Outdoor Access Points WLAN Module high performance, long distance M2M/IoT and Wireless Sensor

More information

Programming Robots with ROS, Morgan Quigley, Brian Gerkey & William D. Smart

Programming Robots with ROS, Morgan Quigley, Brian Gerkey & William D. Smart Programming Robots with ROS, Morgan Quigley, Brian Gerkey & William D. Smart O Reilly December 2015 CHAPTER 23 Using C++ in ROS We chose to use Python for this book for a number of reasons. First, it s

More information

Eduardo

Eduardo Eduardo Silva @edsiper eduardo@treasure-data.com About Me Eduardo Silva Github & Twitter Personal Blog @edsiper http://edsiper.linuxchile.cl Treasure Data Open Source Engineer Fluentd / Fluent Bit http://github.com/fluent

More information

Distributed Pub/Sub Model in CoAP-based Internet-of-Things Networks

Distributed Pub/Sub Model in CoAP-based Internet-of-Things Networks Distributed Pub/Sub Model in CoAP-based Internet-of-Things Networks Joong-Hwa Jung School of Computer Science and Engineering, Kyungpook National University Daegu, Korea godopu16@gmail.com Dong-Kyu Choi

More information

Red Hat JBoss A-MQ 7.0- Beta Using the AMQP CPP Client

Red Hat JBoss A-MQ 7.0- Beta Using the AMQP CPP Client Red Hat JBoss A-MQ 7.0- Beta Using the AMQP CPP Client For use with A-MQ Clients 1.1.0 Red Hat Customer Content Services Red Hat JBoss A-MQ 7.0-Beta Using the AMQP CPP Client For use with A-MQ Clients

More information

IoTivity Programmer s Guide Soft Sensor Manager for Linux

IoTivity Programmer s Guide Soft Sensor Manager for Linux IoTivity Programmer s Guide Soft Sensor Manager for Linux 1 CONTENTS 2 Soft Sensor Manager (SSM) 3 3 Terminology 3 31 Physical Sensor App 3 32 Soft Sensor (= Logical Sensor, Virtual Sensor) 3 33 Soft Sensor

More information

for Multi-Services Gateways

for Multi-Services Gateways KURA an OSGi-basedApplication Framework for Multi-Services Gateways Introduction & Technical Overview Pierre Pitiot Grenoble 19 février 2014 Multi-Service Gateway Approach ESF / Increasing Value / Minimizing

More information

model (ontology) and every DRS and CMS server has a well-known address (IP and port).

model (ontology) and every DRS and CMS server has a well-known address (IP and port). 7 Implementation In this chapter we describe the Decentralized Reasoning Service (DRS), a prototype service implementation that performs the cooperative reasoning process presented before. We present also

More information

Programming with the Service Control Engine Subscriber Application Programming Interface

Programming with the Service Control Engine Subscriber Application Programming Interface CHAPTER 5 Programming with the Service Control Engine Subscriber Application Programming Interface Revised: July 28, 2009, Introduction This chapter provides a detailed description of the Application Programming

More information

RELEASE NOTES FOR THE Kinetic - Edge & Fog Processing Module (EFM) RELEASE 1.2.0

RELEASE NOTES FOR THE Kinetic - Edge & Fog Processing Module (EFM) RELEASE 1.2.0 RELEASE NOTES FOR THE Kinetic - Edge & Fog Processing Module (EFM) RELEASE 1.2.0 Revised: November 30, 2017 These release notes provide a high-level product overview for the Cisco Kinetic - Edge & Fog

More information

OCF Fundamentals. Ravi Subramaniam Principal Engineer, Intel Corporation

OCF Fundamentals. Ravi Subramaniam Principal Engineer, Intel Corporation OCF Fundamentals Ravi Subramaniam Principal Engineer, Intel Corporation 1 Fundamental Fundamentals OCF Resource Model Mapping onto Comms Transports 2 Many kinds of devices OIC Scope (current) Controller

More information

libqsearch A library designed for fast multiple pattern matching

libqsearch A library designed for fast multiple pattern matching libqsearch A library designed for fast multiple pattern matching Philippe Biondi FOSDEM 2003 February 8-9th, 2003 Outline 1 What is libqsearch? Presentation History Architecture

More information

Programming with the Service Control Engine Subscriber Application Programming Interface

Programming with the Service Control Engine Subscriber Application Programming Interface CHAPTER 5 Programming with the Service Control Engine Subscriber Application Programming Interface Revised: November 20, 2012, Introduction This chapter provides a detailed description of the Application

More information

Towards a Zero-Configuration Wireless Sensor Network Architecture for Smart Buildings

Towards a Zero-Configuration Wireless Sensor Network Architecture for Smart Buildings Towards a Zero-Configuration Wireless Sensor Network Architecture for Smart Buildings By Lars Schor, Philipp Sommer, Roger Wattenhofer Computer Engineering and Networks Laboratory ETH Zurich, Switzerland

More information

Iotivity Programmer s Guide Soft Sensor Manager for Tizen

Iotivity Programmer s Guide Soft Sensor Manager for Tizen Iotivity Programmer s Guide Soft Sensor Manager for Tizen 1 CONTENTS 2 Introduction... 3 3 Terminology... 3 3.1 Physical Sensor Application... 3 3.2 Soft Sensor (Logical Sensor, Virtual Sensor)... 3 3.3

More information

Programmazione di sistemi mobili e tablet

Programmazione di sistemi mobili e tablet Programmazione di sistemi mobili e tablet Android Development Carlo Menapace carlo.menapace@factorymind.com Jonny Fox WHO WE ARE Factory Mind is a young cooperative company formed by a team of engineers

More information

Lemonbeat smart Device Language (LsDL) Interest-Group Web of Things (WoT) 16. September 2015

Lemonbeat smart Device Language (LsDL) Interest-Group Web of Things (WoT) 16. September 2015 Lemonbeat smart Device Language (LsDL) Interest-Group Web of Things (WoT) 16. September 2015 RWE Effizienz 14/09/2015 PAGE 1 RWE is a successful provider of SmartHome solutions and an entrepreneur in the

More information

Internet of Things 2017/2018

Internet of Things 2017/2018 Internet of Things 2017/2018 LESHAN (pictures from standards docs & software descriptions in presentations) Johan Lukkien Leila Rahman John Carpenter, 1982 1 Guiding questions How does LESHAN support the

More information

DEVELOPMENT OF A SOFIA2 CLIENT (KP) FOLLOWING THE MODEL KP ARCHITECTURE

DEVELOPMENT OF A SOFIA2 CLIENT (KP) FOLLOWING THE MODEL KP ARCHITECTURE DEVELOPMENT OF A SOFIA2 CLIENT (KP) FOLLOWING THE MODEL KP ARCHITECTURE May 2016 Version 1 DEVELOPMENT OF KP MODEL Page 1/18 INDEX INDEX... 2 STEP 1 GETTING FAMILIAR WITH SOFIA2'S BASIC CONCEPTS... 3 STEP

More information

onem2m and its role in achieving interoperability in IoT

onem2m and its role in achieving interoperability in IoT REGIONAL STANDARDIZATION FORUM FOR BRIDGING THE STANDARDIZATION GAP (BSG) Riyadh, Saudi Arabia, 19 November 2017 onem2m and its role in achieving interoperability in IoT Dr. Omar Elloumi onem2m technical

More information

Introduction to Android Android Smartphone Programming. Outline University of Freiburg. What is Android? Background University of Freiburg.

Introduction to Android Android Smartphone Programming. Outline University of Freiburg. What is Android? Background University of Freiburg. Introduction to Android Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering October 19, 2015 Outline 1 What is Android? 2 3 Applications: A Quick Glimpse

More information

Tizen Connectivity Support. for IoT Devices. Steve(Taesoo) Jun, Ph.D. Copyright 2017 Samsung. All Rights Reserved.

Tizen Connectivity Support. for IoT Devices. Steve(Taesoo) Jun, Ph.D. Copyright 2017 Samsung. All Rights Reserved. Tizen Connectivity Support 1 for IoT Devices Steve(Taesoo) Jun, Ph.D. Principle Engineer Samsung Electronics 1 Copyright 2017 Samsung. All Rights Reserved. What you expect here Tizen 1.0 Tizen 2.0 Tizen

More information

Lesson 1 Key-Terms Meanings: Web Connectivity of Devices and Devices Network

Lesson 1 Key-Terms Meanings: Web Connectivity of Devices and Devices Network Lesson 1 Key-Terms Meanings: Web Connectivity of Devices and Devices Network 1 Application Application: A software (S/W) for an application, such as, creating and sending an SMS, measuring and sending

More information

Distributed Systems 26. Mobile Ad Hoc Mesh Networks

Distributed Systems 26. Mobile Ad Hoc Mesh Networks Distributed Systems 26. Mobile Ad Hoc Mesh Networks Paul Krzyzanowski pxk@cs.rutgers.edu 12/16/2011 1 Mesh Networks Mobile Ad-hoc networks, sensor networks, Decentralized networking No need for routers

More information

MOM MESSAGE ORIENTED MIDDLEWARE OVERVIEW OF MESSAGE ORIENTED MIDDLEWARE TECHNOLOGIES AND CONCEPTS. MOM Message Oriented Middleware

MOM MESSAGE ORIENTED MIDDLEWARE OVERVIEW OF MESSAGE ORIENTED MIDDLEWARE TECHNOLOGIES AND CONCEPTS. MOM Message Oriented Middleware MOM MESSAGE ORIENTED MOM Message Oriented Middleware MIDDLEWARE OVERVIEW OF MESSAGE ORIENTED MIDDLEWARE TECHNOLOGIES AND CONCEPTS Peter R. Egli 1/25 Contents 1. Synchronous versus asynchronous interaction

More information

Release Notes Cordova Plugin for Samsung Developers

Release Notes Cordova Plugin for Samsung Developers reception.van@samsung.com Release Notes Cordova Plugin for Samsung Developers Version 1.5 May 2016 Copyright Notice Copyright 2016 Samsung Electronics Co. Ltd. All rights reserved. Samsung is a registered

More information

ARCHITECTURING AND SECURING IOT PLATFORMS JANKO ISIDOROVIC MAINFLUX

ARCHITECTURING AND SECURING IOT PLATFORMS JANKO ISIDOROVIC MAINFLUX ARCHITECTURING AND SECURING IOT PLATFORMS JANKO ISIDOROVIC CEO @ MAINFLUX Outline Internet of Things (IoT) Common IoT Project challenges - Networking - Power Consumption - Computing Power - Scalability

More information

Distributed Real-Time Control Systems. Module 26 Sockets

Distributed Real-Time Control Systems. Module 26 Sockets Distributed Real-Time Control Systems Module 26 Sockets 1 Network Programming with Sockets Sockets are probably the most widely used objects in programming networked communications. What is a socket? To

More information

Lightweight Internet Protocols for Web Enablement of Sensors using Constrained Gateway Devices

Lightweight Internet Protocols for Web Enablement of Sensors using Constrained Gateway Devices 2013 International Conference on Computing, Networking and Communications, Workshops Cyber Physical System Lightweight Internet Protocols for Web Enablement of Sensors using Constrained Gateway Devices

More information

building automation system

building automation system building automation system THIS IS NOT JUST ANOTHER BUILDING AUTOMATION SYSTEM. THIS IS A BREAKTHROUGH! Grenton is a system which does everything other intelligent building systems do, but it does it in

More information

idigi Gateway Development Kit Getting Started Guide

idigi Gateway Development Kit Getting Started Guide idigi Gateway Development Kit Getting Started Guide 90001205_C 5/1/2012 2012 Digi International Inc. All rights reserved. Digi, Digi International, the Digi and idigi logos, the Digi and idigi web sites,

More information

Bringing Web Services to IoTivity

Bringing Web Services to IoTivity Bringing Web Services to IoTivity Opportunities, Challenges & Approaches Sanjeev BA Open Source Group Samsung Electronics Background Vertical Domains (Health, Manufacturing, Education, Consumer) Consumer

More information

CommonAPITests. Generated by Doxygen Tue May :09:25

CommonAPITests. Generated by Doxygen Tue May :09:25 CommonAPITests Generated by Doxygen 1.8.6 Tue May 20 2014 15:09:25 Contents 1 Main Page 1 2 Test List 3 3 File Index 5 3.1 File List................................................ 5 4 File Documentation

More information

WCCPv2 and WCCP Enhancements

WCCPv2 and WCCP Enhancements WCCPv2 and WCCP Enhancements Release 12.0(11)S June 20, 2000 This feature module describes the Web Cache Communication Protocol (WCCP) Enhancements feature and includes information on the benefits of the

More information

How onem2m fits into the landscape of IoT technologies

How onem2m fits into the landscape of IoT technologies How onem2m fits into the landscape of IoT technologies 3 rd onem2m Industry Day Bangalore, September 20 th 2017 Dr. Josef J. Blanz 20-Sep-2017 3rd onem2m Industry Day hosted by TSDSI 1 M2M/IoT: Surge of

More information

libknx Generated by Doxygen Wed Aug :37:55

libknx Generated by Doxygen Wed Aug :37:55 libknx Generated by Doxygen 1.8.1.2 Wed Aug 7 2013 01:37:55 Contents 1 KNX interface library 1 2 Namespace Index 3 2.1 Namespace List............................................ 3 3 Class Index 5 3.1

More information