Top Banner
Embedded Software Lab. @ SKKU 17 1 IoTivity
17

Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Jan 02, 2016

Download

Documents

Janel Hart
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

1

IoTivity

Page 2: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

2

• An open source reference implementation of the OIC standard specifications– Linux Foundation Collaborative Project– Supported by Open Interconnect

Consortium(OIC)

• Goal– A new standard by which billions of wired and

wireless devices connect to each other and to the Internet

IoTivity

Page 3: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

3

• Base– Discovery & Connectivity– Resource Management

• Services– Soft(Virtual) Sensor Manager– Protocol Plugin Manager– Things Manager– Notification Manager(Resource Offloading)– Control Manager(Smart Home Protocol)

• Target: Generic Linux, Tizen, Yocto, Android• Source code is managed in Gerrit review

server

IoTivity Features

Page 4: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

4

• IoTivity Services– Soft Sensor, Protocol Plugin, Things,

Notification, Control Managers

• Resource API– based on OIC Resource Model– Interface between IoTivity service and base

• IoTivity Base– Abstract connectivity methods to Resource API– IoTivity base is included in service process and

application process as a library

IoTivity SW Stack

Page 5: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

5

• Interface between service/app and base• Support for constrained devices

– Provide only C SDK, use only CoAP-UDP/IP protocol– ex. Arduino

IoTivity SW Stack: Resource API

Page 6: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

6

• Collection – Resource – Property/Attribute

OIC Resource Model

Page 7: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

7

• Behaviors on Resource Model– Finding a resource– Querying, setting and observing resource state

OIC Resource Model

Page 8: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

8

• Registering a Resource– Given a service running on port 5683 in a device at IP address

192.168.1.1, – If the application registers a resource with a URI path

"/light/1", – The resulting fully qualified URI "oc://192.168.1.1:5683/light/1"

IoTivity Base Flow

Page 9: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

9

• Finding a resource– returns all resources of given type on the network service

IoTivity Base Flow

Page 10: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

10

• Querying resource state (GET)

IoTivity Base Flow

Page 11: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

11

• Setting resource state (PUT)

IoTivity Base Flow

Page 12: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

12

• Observing resource state

IoTivity Base Flow

Page 13: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

13

• Provides mechanism to represent non-OIC protocols within the OIC framework

• MQTT is supported as a protocol plug-in

Service: Protocol Plug-in Manager

Page 14: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

14

• Receive data from various sensors• Query-based sensor data request

Service: Soft Sensor Manager

Page 15: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

15

• Group creation and finding appropriate resources in network

Service: Things Manager

Page 16: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

16

• Discover controlee devices• Control controlee with Resource API• Subscription/notification functionality

– for monitoring the device operations or state changes• Runs both as client and server

Control Manager

Page 17: Embedded Software Lab. @ SKKU 17 1 IoTivity. Embedded Software Lab. @ SKKU 17 2 An open source reference implementation of the OIC standard specifications.

Embedded Software Lab. @ SKKU

17

17

• IoTivity is now ported on Tizen 2.3• IoTivity will be merged to Tizen– Tizen Communications Core API will provide

IoTivitiy functions.• As a part of Tizen Communications Core API

– Some IoTivity services have already been integrated:• SoftSensor Manager IoTivitiy Service

– Soft sensor functionality

• Notification Manager IoTivity Service– Notification functionality

IoTivity and Tizen