SlideShare a Scribd company logo
1 of 36
Download to read offline
GENIVI+OCF Cooperation
May 11, 2017 | Connect your car to SmartHome & Wearables
Ziran Sun for Philippe Coval
Samsung Open Source Group / SRUK
ziran.sun@samsung.com
philippe.coval@osg.samsung.com
Samsung Open
Source Group
Agenda
2 | May 11, 2017 | Samsung Open Source Group
• IoT Vehicle demo
• Demo walk-through
o OCF and IoTivity
o GENIVI Development Platform (GDP)
o OCF Automotive
• Example codes and demos
• IoTivity cloud and services
• Q&A
Smart Home+Automotive IoT ShowCase
[CES 2017] Smart Home+Automotive IoT ShowCase
4 | May 11, 2017 | Samsung Open Source Group
https://www.youtube.com/watch?v=3d0uZE6lHv
o&feature=youtu.be#smarthome-ces2017
Who are playing parts?
• OCF and IoTivity: IoT SW platform
• Samsung/OSG: SmartHome, personal devices (Tizen)
• GENIVI: GDP (Yocto based OS), Automotive
• OCF Automotive: IoT & Automotive
• JRL, Intel, W3C…
5 | May 11, 2017 | Samsung Open Source Group
OCF and IoTivity
The Open Connectivity Foundation (OCF)
• An industry group with leading
companies at all levels to develop
standards and certification for IoT
devices.
• Focus on interoperability and
seamless connectivity between devices.
• Encourages users to collaboratively
develop data models for any IoT device
using online tool OneIoTA.
• Sponsor Open Source Implementation:
IoTivity (under Apache 2.0)
7 | May 11, 2017 | Samsung Open Source Group
OCF Membership Demographics by Geographic Region
8 | May 11, 2017 | Samsung Open Source Group
Interoperability in IoT
• OCF addresses Interoperability challenge in IoT
communications at all levels.
• Open specification that anyone can implement.
• “Brings Massive Scale to IoT Ecosystem” as quoted by press
Interoperability+ + =
Specification Implementation
OCF IoTivity
OCF Specification and Certification
• Specifications
Infrastructure including core framework, security and remote access etc.
Resource Model
Domain Specific Resource Specification
Bridging between OCF devices and other ecosystems
• Certifications
Conformance test - Each device proves conformance to specifications.
Interoperability test - Each device proves interoperability with other
devices.
9 | May 11, 2017 | Samsung Open Source Group
● Resource is identified by an URI
● Composed of properties
● Declared by a ResourceType
● Operations: CRUD+N
● Use existing known resource models
from oneIoTa.org repository or create
new ones
oic.r.sensor.illuminance.json
/* … */ "definitions": {
"oic.r.sensor.illuminance": {
"properties": {
"illuminance": {
"type": "number",
"readOnly": true,
"description":
"Sensed luminous flux in lux."
} } } /* … */
OCF Resources Data Models: oneIoTa
10 | May 11, 2017 | Samsung Open Source Group
IoTivity
• An open source communications framework for IoT, hosted by the
Linux Foundation, and sponsored by the OCF.
• Implementation follows OCF specification using Common
Protocols with RESTful architecture + Connectivity Abstraction +
high level services
• Rely on existing standards (CoAP, TLS), or OSS libs
• Rules: No unimplemented features in Specification
11 | May 11, 2017 | Samsung Open Source Group
IoTivity Architecture
Lite Device
Sensing/Control Application
Base Layer
Messaging
Discovery
Resource Introspection
CoAP
Multicast/Scan
Security
DTLS
SRM
Rich Device
API (C++/Java)
Base Layer
MessagingDiscovery Security
DTLS SRM
ProvisioningResource Introspection
Multicast Presence
CoAP
Messaging Remote
BWT
Service Layer
Device Management Low Power Management Data Management
Easy Setup
Group
Manager
Device conf. Resource
Hosting
Resource
Directory
Protocol
Bridge
Soft Sensor
Noti. Service
Resource Encapsulation Resource Container
Discovery (Multicast)/ Messaging (CoAP)
12 | May 11, 2017 | Samsung Open Source Group
Flow: Create, Read, Update, Delete, Notify
Local IP Network
IoTivity Server IoTivity Client(s)
Registration of resource
Handling new requests Set/Get/ing properties values
Initialization as server Initialization as client
Handling new clients Discovery of resource
POST/PUT/ GET
UDP Multicast
+ CoAP
Notify updated resource Observe resource change
& Handling propertiesOBSERVE
13 | May 11, 2017 | Samsung Open Source Group
IoTivity and GENIVI Integration
IoTivity and GENIVI Integration
• Yocto is Linux Foundation project to create custom GNU/Linux system
o Open Embedded community provides many OSS sorted in layers (named meta-*):
o Collections of recipes(package) to build package:
o ie: meta-oic layer is shipping IoTivity library
• GDP is GENIVI's Yocto based distro to provide full Automotive OS (IVI...)
o Integrates meta-oic for iotivity (c/c++) and meta-iot-web for (for iotivity-node)
o And supporting Board Support Packages (intel, renesas, rasbperrypi, etc)
15 | May 11, 2017 | Samsung Open Source Group
Timeline
• 2014-12-31: meta-oic 0.9.1 Initiated by Kishen Maloor (Intel) , (with demo for edison)
• 2016-01-31: FOSDEM: Presented how to use meta-oic on Tizen Yocto (Tizen fan)
• 2016-04-27: GENIVI AMM : Presented demos (fan+map+wearables on 1.1.1), +RVI
• 2016-05-08: meta-oic 1.1.1 integrated in GENIVI
• 2016-05-27: AGLF2F meeting, “ocf-automotive” project introduced
• 2016-09-14: meta-oic 1.1.1 Philippe Coval (Samsung) new contributor
• 2016-09-21: meta-oic 1.1.1 integrated in AGL
• 2016-12-20: meta-oic 1.2.0 integrated in GENIVI and AGL
• 2017-01-05: CES2017, GENIVI+Smarthome+Wearables demos
• 2017-02-04: FOSDEM: Presented “streetlight+cloud” use case on AGL 3.0
• 2017-02-15: GENIVI announced partnership with Open Connectivity Foundation
• 2017-03-20: meta-oic 1.2.1+ : Samsung OSG keeps maintaining it
16 | May 11, 2017 | Samsung Open Source Group
OCF Automotive
OCF Automotive profile's mission
● Provide OCF technology for connected cars, by proposing
o A common definition of vehicle resources
o A common way to interact with those (inside or outside vehicle)
o Based on or bridging to existing standards
● Cooperative effort with existing FLOSS Automotive projects:
Tizen, GENIVI, AGL, W3C, RVI ...
18 | May 11, 2017 | Samsung Open Source Group
What is “meta-ocf-automotive”
● Playground for OCF and Automotive R&D experiments
o connecting Automotive platforms such as GENIVI, AGL, Tizen etc
o on various hardware: SBC (Raspberry Pi {0,1,2,3}, ARTIK10…)
o to other products: SmartHome, Mobile, Wearable
● “Real world” integration/validation tests
o for spotting issues before release (on different OS: Yocto, Tizen etc)
● Tutorial of demo codes to learn IoTivity, Yocto, Tizen
● Entry point: https://wiki.iotivity.org/automotive
19 | May 11, 2017 | Samsung Open Source Group
Interaction with products
● Tizen is an Operating System based on FLOSS
● Shipped into consumer electronics products
● Tizen and IoTivity
 Tizen:3 contains as platform package (.rpm)
 Tizen:2 can ship shared lib into native app (.tpk)
o For Samsung Z{1,2,3} (Tizen:2.4:Mobile)
o Samsung GearS2, S3 (Tizen:2.3.2:Wearable)
20 | May 11, 2017 | Samsung Open Source Group
Example codes and demos
Check using samples apps
• Various examples are shipped from upstream:
– ls /opt/iotivity*
• Playback smart light example scenario on loopback
• Open 2 sessions (hint: use GNU screen)
– Server: cd /opt/iotivity/examples/resource/cpp/ && ./simpleserver
– Client: cd /opt/iotivity/examples/resource/cpp/ && ./simpleclient
• More
– https://wiki.iotivity.org/yocto
– https://wiki.iotivity.org/examples
22 | May 11, 2017 | Samsung Open Source Group
Base example: Resource discovery
• branch=example/master (src/example/master/README.md)
o Server register a “dummy” resource under “/ExampleResURI” endpoint
o Client discover and list all resources' endpoints served in local network
o GNUmake is used to build it
o Systemd service provided to start it once installed
• branch=example/packaging is based on previous one
o Yocto Bitbake recipe
o Tizen RPM spec file
o Debian/Ubuntu packaging files too (more welcome)
24 | May 11, 2017 | Samsung Open Source Group
Geolocation example: Observation
• Branch “geolocation/master” is based on “example/packaging” and adapted:
o “/GeolocationResURI” endpoint
o Uses OCF/OneIotA normalised resource type: oic.r.geolocation
o Fake GPS that update position continuously (back and forth)
• ./bin/server: is updating “fake” position and notifying it
o m_Representation.setValue(); OCPlatform::notifyAllObservers(…);
• ./bin/observer: observe changes (IoTObserver::onObserve)
o geolocation: 48.1043, -1.6715
• ./bin/client : get value using GET (m_OCResource->get)
25 | May 11, 2017 | Samsung Open Source Group
Derivate to Tizen app
• “geolocation/tizen/mobile/2.4/master”
• Port to tizen native app: support SDK build files, app manifest files
o + GUI using EFL's Elementary map widget (inspired from SDK sample)
• Need to rebuild IoTivity’s shared lib (to be bundled in tpk):
o Use helper script build rpm and unpack lib
o ./tizen.mk ; ls lib/*.so
o ./tizen.mk run # deploy on root device (ie TM1)
• More details: https://wiki.iotivity.org/tizen
26 | May 11, 2017 | Samsung Open Source Group
Switch Example
 “switch/master” subproject
o Shows actuator update using POST
 Port to Tizen devices
o Add ELM GUI, Tizen SDK build files, tizen-helper script (that rely on CLI SDK)
o To deploy on commercialized device use tizen-studio IDE SDK (+ cert eclipse plugin)
o Tizen Z, TM1: Branch “sandbox/pcoval/tizen/mobile/2.4/latest”
o GearS2 branch “sandbox/pcoval/tizen/wearable-2.3.1” (is based on previous one)
o GearS3 branch “sandbox/pcoval/tizen/wearable-2.3.2” (is based on previous one)
27 | May 11, 2017 | Samsung Open Source Group
OCResource::post(rep, callback);
onPost(...)
Switch Example: Resource update
OCPlatform::Configure(...);
OCPlatform::registerResource( …);
handleEntity(OCResourceRequest) {
switch entityHandlerRequest->method {
case 'POST: // Update resource
// update actuator resource (physically)
...
OCPlatform::sendRespone(response);
}}
OCPlatform::Configure(...);
OCPlatform::findResource(...);
onFind(... resource ...)
IoTivity Server IoTivity Client(s)
IP NetworkIP Network
●Client controls actuator:
–Set resource's value
●Server is handling request
–and responding
28 | May 11, 2017 | Samsung Open Source Group
Want more ?
A Vehicle to Infrastructure notification service
function handle(illuminance) {
if (gThreshold > illuminance) {
var data= { illuminance: illuminance,
latitude: gGeo.latitude, longitude: gGeo.longitude };
sender.send(data); // { ARTIK's client.post(url...); }
} }
client.on("resourcefound", function(resource) {
if ("/IlluminanceResURI" === resource.resourcePath) {
resource.on("update", handle);
} else if ("/GeolocationResURI" === resource.resourcePath) {
resource.on("update",
function(resource) { gGeo = resource.properties; });
} };
3
30 | May 11, 2017 | Samsung Open Source Group
FOSDEM2017: Devices to cloud
31 | May 11, 2017 | Samsung Open Source Group
https://youtu.be/3L6_DbMLJ1k#iotivity-
artik-20170204rzr
IoTivity Cloud and Services
IoTivity Clouds
● Cloud Interface
● Authentication
– OAuth2
● Message Queue
– Publish
– Subscribe
● Directory (RD)
33 | May 11, 2017 | Samsung Open Source Group
IoTivity Services
● A common set of functionalities to application development.
o Resource Container
o Notification
o Resource Encapsulation
o Scene Manager
o Easy setup
34 | May 11, 2017 | Samsung Open Source Group
Summary
• OCF targets Interoperability challenge in IoT by specifications and
certifications
• Open Source project IoTivity implements OCF specification
• meta-oic is the key for integrating IoTivity and it has currently been
maintained by Samsung OSG
• OCF-automotive project has provided “meta-ocf-automotive” to
encourage further R&D work in automotive domain
• IoTivity native cloud extends connectivity to global
• IoTivity Service make application development easier
35 | May 11, 2017 | Samsung Open Source Group
References
Entry points:
ohttps://openconnectivity.org/industries/automotive
ohttps://wiki.iotivity.org/automotive
ohttp://elinux.org/Category:Automotive
ohttps://wiki.tizen.org/wiki/Domains/Automotive
Contributions
ohttp://git.yoctoproject.org/cgit/cgit.cgi/meta-oic/log/?qt=author&q=coval
ohttps://github.com/GENIVI/genivi-dev-platform/pull/54
ohttps://news.samsung.com/global/samsung-contributes-to-open-iot-showcase-at-ces-2017
https://openconnectivity.org/press-releases/genivi-alliance-open-connectivity-foundation-collaborate-open-standards-
vehicle-connectivity
36 | May 11, 2017 | Samsung Open Source Group
Thank you!

More Related Content

What's hot

Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxSamsung Open Source Group
 
Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Pro...
Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Pro...Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Pro...
Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Pro...Samsung Open Source Group
 
Open Source Internet of Things 101 – EclipseCon 2016
Open Source Internet of Things 101 – EclipseCon 2016Open Source Internet of Things 101 – EclipseCon 2016
Open Source Internet of Things 101 – EclipseCon 2016Benjamin Cabé
 
Introduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential CollaborationIntroduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential CollaborationSamsung Open Source Group
 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceSamsung Open Source Group
 
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
Devoxx 2015 - Building the Internet of Things with Eclipse IoTDevoxx 2015 - Building the Internet of Things with Eclipse IoT
Devoxx 2015 - Building the Internet of Things with Eclipse IoTBenjamin Cabé
 
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivityIoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivitySamsung Open Source Group
 

What's hot (19)

Framework for IoT Interoperability
Framework for IoT InteroperabilityFramework for IoT Interoperability
Framework for IoT Interoperability
 
Easy IoT with JavaScript
Easy IoT with JavaScriptEasy IoT with JavaScript
Easy IoT with JavaScript
 
IoTivity on Tizen: How to
IoTivity on Tizen: How toIoTivity on Tizen: How to
IoTivity on Tizen: How to
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
 
Tizen Connected with IoTivity
Tizen Connected with IoTivityTizen Connected with IoTivity
Tizen Connected with IoTivity
 
IoT Meets Security
IoT Meets SecurityIoT Meets Security
IoT Meets Security
 
Development Boards for Tizen IoT
Development Boards for Tizen IoTDevelopment Boards for Tizen IoT
Development Boards for Tizen IoT
 
Iotivity atmel-20150328rzr
Iotivity atmel-20150328rzrIotivity atmel-20150328rzr
Iotivity atmel-20150328rzr
 
Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Pro...
Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Pro...Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Pro...
Connected Tizen: Bringing Tizen to Your Connected Devices Using the Yocto Pro...
 
tdc2015-strategy-devel-20150916
tdc2015-strategy-devel-20150916tdc2015-strategy-devel-20150916
tdc2015-strategy-devel-20150916
 
Internet of Smaller Things
Internet of Smaller ThingsInternet of Smaller Things
Internet of Smaller Things
 
Présentation du système d'exploitation RIOT-OS
Présentation du système d'exploitation RIOT-OSPrésentation du système d'exploitation RIOT-OS
Présentation du système d'exploitation RIOT-OS
 
Open Source Internet of Things 101 – EclipseCon 2016
Open Source Internet of Things 101 – EclipseCon 2016Open Source Internet of Things 101 – EclipseCon 2016
Open Source Internet of Things 101 – EclipseCon 2016
 
JerryScript on RIOT
JerryScript on RIOTJerryScript on RIOT
JerryScript on RIOT
 
Introduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential CollaborationIntroduction to Linux-wpan and Potential Collaboration
Introduction to Linux-wpan and Potential Collaboration
 
Iotivity tizen-fosdem-2015
Iotivity tizen-fosdem-2015Iotivity tizen-fosdem-2015
Iotivity tizen-fosdem-2015
 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
 
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
Devoxx 2015 - Building the Internet of Things with Eclipse IoTDevoxx 2015 - Building the Internet of Things with Eclipse IoT
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
 
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivityIoT: From Arduino Microcontrollers to Tizen Products using IoTivity
IoT: From Arduino Microcontrollers to Tizen Products using IoTivity
 

Similar to GENIVI+OCF Cooperation Explores Connecting Cars to Smart Homes

20170720 fiware lab_at_open_stack_days_tokyo
20170720 fiware lab_at_open_stack_days_tokyo20170720 fiware lab_at_open_stack_days_tokyo
20170720 fiware lab_at_open_stack_days_tokyostefano de panfilis
 
CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018Krishna-Kumar
 
VMUG22 Filip Verloy VIO
VMUG22 Filip Verloy VIOVMUG22 Filip Verloy VIO
VMUG22 Filip Verloy VIOFilip Verloy
 
OSGi on Google Android using Apache Felix
OSGi on Google Android using Apache FelixOSGi on Google Android using Apache Felix
OSGi on Google Android using Apache FelixMarcel Offermans
 
Mobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the CloudMobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the CloudDev_Events
 
Mobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the CloudMobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the CloudDev_Events
 
Appcelerator Titanium - An Introduction to the Titanium Ecosystem
Appcelerator Titanium - An Introduction to the Titanium EcosystemAppcelerator Titanium - An Introduction to the Titanium Ecosystem
Appcelerator Titanium - An Introduction to the Titanium EcosystemBoydlee Pollentine
 
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation EcosystemHow APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation EcosystemCisco DevNet
 
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, SmileOCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, SmileOCCIware
 
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017Marc Dutoo
 
OSGi DevCon 2009 Review
OSGi DevCon 2009 ReviewOSGi DevCon 2009 Review
OSGi DevCon 2009 Reviewnjbartlett
 
The complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, Paris
The complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, ParisThe complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, Paris
The complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, ParisOW2
 
The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)Samsung Open Source Group
 
Introduction to Open Source GIS
Introduction to Open Source GISIntroduction to Open Source GIS
Introduction to Open Source GISSANGHEE SHIN
 
20230110-Alibaba Cloud Developer Summit-Sony.v3.pptx
20230110-Alibaba Cloud Developer Summit-Sony.v3.pptx20230110-Alibaba Cloud Developer Summit-Sony.v3.pptx
20230110-Alibaba Cloud Developer Summit-Sony.v3.pptxTomoya Fujita
 
Cloud Computing Needs for Earth Observation Data Analysis: EGI and EOSC-hub
Cloud Computing Needs for Earth Observation Data Analysis: EGI and EOSC-hubCloud Computing Needs for Earth Observation Data Analysis: EGI and EOSC-hub
Cloud Computing Needs for Earth Observation Data Analysis: EGI and EOSC-hubBjörn Backeberg
 
Sphinx: An Industrial Strength Tool Platform Fostering Model-driven Developme...
Sphinx: An Industrial Strength Tool Platform Fostering Model-driven Developme...Sphinx: An Industrial Strength Tool Platform Fostering Model-driven Developme...
Sphinx: An Industrial Strength Tool Platform Fostering Model-driven Developme...Stephan Eberle
 
DevOps by examples - Continuous Lifecycle London 2017
DevOps by examples - Continuous Lifecycle London 2017DevOps by examples - Continuous Lifecycle London 2017
DevOps by examples - Continuous Lifecycle London 2017Giulio Vian
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_authlzongren
 

Similar to GENIVI+OCF Cooperation Explores Connecting Cars to Smart Homes (20)

Connected TIZEN
Connected TIZENConnected TIZEN
Connected TIZEN
 
20170720 fiware lab_at_open_stack_days_tokyo
20170720 fiware lab_at_open_stack_days_tokyo20170720 fiware lab_at_open_stack_days_tokyo
20170720 fiware lab_at_open_stack_days_tokyo
 
CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018
 
VMUG22 Filip Verloy VIO
VMUG22 Filip Verloy VIOVMUG22 Filip Verloy VIO
VMUG22 Filip Verloy VIO
 
OSGi on Google Android using Apache Felix
OSGi on Google Android using Apache FelixOSGi on Google Android using Apache Felix
OSGi on Google Android using Apache Felix
 
Mobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the CloudMobile, Open Source, and the Drive to the Cloud
Mobile, Open Source, and the Drive to the Cloud
 
Mobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the CloudMobile, Open Source, & the Drive to the Cloud
Mobile, Open Source, & the Drive to the Cloud
 
Appcelerator Titanium - An Introduction to the Titanium Ecosystem
Appcelerator Titanium - An Introduction to the Titanium EcosystemAppcelerator Titanium - An Introduction to the Titanium Ecosystem
Appcelerator Titanium - An Introduction to the Titanium Ecosystem
 
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation EcosystemHow APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
 
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, SmileOCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
OCCIware presentation at EclipseDay in Lyon, November 2017, by Marc Dutoo, Smile
 
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
Model and pilot all cloud layers with OCCIware - Eclipse Day Lyon 2017
 
OSGi DevCon 2009 Review
OSGi DevCon 2009 ReviewOSGi DevCon 2009 Review
OSGi DevCon 2009 Review
 
The complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, Paris
The complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, ParisThe complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, Paris
The complex IoT equation, and FLOSS solutions, OW2con'18, June 7-8, 2018, Paris
 
The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)The Complex IoT Equation (and FLOSS solutions)
The Complex IoT Equation (and FLOSS solutions)
 
Introduction to Open Source GIS
Introduction to Open Source GISIntroduction to Open Source GIS
Introduction to Open Source GIS
 
20230110-Alibaba Cloud Developer Summit-Sony.v3.pptx
20230110-Alibaba Cloud Developer Summit-Sony.v3.pptx20230110-Alibaba Cloud Developer Summit-Sony.v3.pptx
20230110-Alibaba Cloud Developer Summit-Sony.v3.pptx
 
Cloud Computing Needs for Earth Observation Data Analysis: EGI and EOSC-hub
Cloud Computing Needs for Earth Observation Data Analysis: EGI and EOSC-hubCloud Computing Needs for Earth Observation Data Analysis: EGI and EOSC-hub
Cloud Computing Needs for Earth Observation Data Analysis: EGI and EOSC-hub
 
Sphinx: An Industrial Strength Tool Platform Fostering Model-driven Developme...
Sphinx: An Industrial Strength Tool Platform Fostering Model-driven Developme...Sphinx: An Industrial Strength Tool Platform Fostering Model-driven Developme...
Sphinx: An Industrial Strength Tool Platform Fostering Model-driven Developme...
 
DevOps by examples - Continuous Lifecycle London 2017
DevOps by examples - Continuous Lifecycle London 2017DevOps by examples - Continuous Lifecycle London 2017
DevOps by examples - Continuous Lifecycle London 2017
 
Android dev o_auth
Android dev o_authAndroid dev o_auth
Android dev o_auth
 

More from Samsung Open Source Group

Rapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBRapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBSamsung Open Source Group
 
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesSamsung Open Source Group
 
Open Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategyOpen Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategySamsung Open Source Group
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...Samsung Open Source Group
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsJerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsSamsung Open Source Group
 
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devicesIoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devicesSamsung Open Source Group
 

More from Samsung Open Source Group (12)

Spawny: A New Approach to Logins
Spawny: A New Approach to LoginsSpawny: A New Approach to Logins
Spawny: A New Approach to Logins
 
Rapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USBRapid SPi Device Driver Development over USB
Rapid SPi Device Driver Development over USB
 
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
 
Open Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate StrategyOpen Source Metrics to Inform Corporate Strategy
Open Source Metrics to Inform Corporate Strategy
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Thin...
 
SOSCON 2016 JerryScript
SOSCON 2016 JerryScriptSOSCON 2016 JerryScript
SOSCON 2016 JerryScript
 
Run Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT NetworkRun Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT Network
 
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of ThingsJerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
JerryScript: An ultra-lighteweight JavaScript Engine for the Internet of Things
 
Clang: More than just a C/C++ Compiler
Clang: More than just a C/C++ CompilerClang: More than just a C/C++ Compiler
Clang: More than just a C/C++ Compiler
 
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devicesIoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
IoTivity Connects RVI from GENIVI's Develoment Platform to Tizen devices
 
Introduction to IoT.JS
Introduction to IoT.JSIntroduction to IoT.JS
Introduction to IoT.JS
 
6LoWPAN: An Open IoT Networking Protocol
6LoWPAN: An Open IoT Networking Protocol6LoWPAN: An Open IoT Networking Protocol
6LoWPAN: An Open IoT Networking Protocol
 

Recently uploaded

Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesKrzysztofKkol1
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsJean Silva
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...OnePlan Solutions
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolsosttopstonverter
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptxVinzoCenzo
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxRTS corp
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...OnePlan Solutions
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 

Recently uploaded (20)

Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero results
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration tools
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptx
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 

GENIVI+OCF Cooperation Explores Connecting Cars to Smart Homes

  • 1. GENIVI+OCF Cooperation May 11, 2017 | Connect your car to SmartHome & Wearables Ziran Sun for Philippe Coval Samsung Open Source Group / SRUK ziran.sun@samsung.com philippe.coval@osg.samsung.com Samsung Open Source Group
  • 2. Agenda 2 | May 11, 2017 | Samsung Open Source Group • IoT Vehicle demo • Demo walk-through o OCF and IoTivity o GENIVI Development Platform (GDP) o OCF Automotive • Example codes and demos • IoTivity cloud and services • Q&A
  • 4. [CES 2017] Smart Home+Automotive IoT ShowCase 4 | May 11, 2017 | Samsung Open Source Group https://www.youtube.com/watch?v=3d0uZE6lHv o&feature=youtu.be#smarthome-ces2017
  • 5. Who are playing parts? • OCF and IoTivity: IoT SW platform • Samsung/OSG: SmartHome, personal devices (Tizen) • GENIVI: GDP (Yocto based OS), Automotive • OCF Automotive: IoT & Automotive • JRL, Intel, W3C… 5 | May 11, 2017 | Samsung Open Source Group
  • 7. The Open Connectivity Foundation (OCF) • An industry group with leading companies at all levels to develop standards and certification for IoT devices. • Focus on interoperability and seamless connectivity between devices. • Encourages users to collaboratively develop data models for any IoT device using online tool OneIoTA. • Sponsor Open Source Implementation: IoTivity (under Apache 2.0) 7 | May 11, 2017 | Samsung Open Source Group OCF Membership Demographics by Geographic Region
  • 8. 8 | May 11, 2017 | Samsung Open Source Group Interoperability in IoT • OCF addresses Interoperability challenge in IoT communications at all levels. • Open specification that anyone can implement. • “Brings Massive Scale to IoT Ecosystem” as quoted by press Interoperability+ + = Specification Implementation OCF IoTivity
  • 9. OCF Specification and Certification • Specifications Infrastructure including core framework, security and remote access etc. Resource Model Domain Specific Resource Specification Bridging between OCF devices and other ecosystems • Certifications Conformance test - Each device proves conformance to specifications. Interoperability test - Each device proves interoperability with other devices. 9 | May 11, 2017 | Samsung Open Source Group
  • 10. ● Resource is identified by an URI ● Composed of properties ● Declared by a ResourceType ● Operations: CRUD+N ● Use existing known resource models from oneIoTa.org repository or create new ones oic.r.sensor.illuminance.json /* … */ "definitions": { "oic.r.sensor.illuminance": { "properties": { "illuminance": { "type": "number", "readOnly": true, "description": "Sensed luminous flux in lux." } } } /* … */ OCF Resources Data Models: oneIoTa 10 | May 11, 2017 | Samsung Open Source Group
  • 11. IoTivity • An open source communications framework for IoT, hosted by the Linux Foundation, and sponsored by the OCF. • Implementation follows OCF specification using Common Protocols with RESTful architecture + Connectivity Abstraction + high level services • Rely on existing standards (CoAP, TLS), or OSS libs • Rules: No unimplemented features in Specification 11 | May 11, 2017 | Samsung Open Source Group
  • 12. IoTivity Architecture Lite Device Sensing/Control Application Base Layer Messaging Discovery Resource Introspection CoAP Multicast/Scan Security DTLS SRM Rich Device API (C++/Java) Base Layer MessagingDiscovery Security DTLS SRM ProvisioningResource Introspection Multicast Presence CoAP Messaging Remote BWT Service Layer Device Management Low Power Management Data Management Easy Setup Group Manager Device conf. Resource Hosting Resource Directory Protocol Bridge Soft Sensor Noti. Service Resource Encapsulation Resource Container Discovery (Multicast)/ Messaging (CoAP) 12 | May 11, 2017 | Samsung Open Source Group
  • 13. Flow: Create, Read, Update, Delete, Notify Local IP Network IoTivity Server IoTivity Client(s) Registration of resource Handling new requests Set/Get/ing properties values Initialization as server Initialization as client Handling new clients Discovery of resource POST/PUT/ GET UDP Multicast + CoAP Notify updated resource Observe resource change & Handling propertiesOBSERVE 13 | May 11, 2017 | Samsung Open Source Group
  • 14. IoTivity and GENIVI Integration
  • 15. IoTivity and GENIVI Integration • Yocto is Linux Foundation project to create custom GNU/Linux system o Open Embedded community provides many OSS sorted in layers (named meta-*): o Collections of recipes(package) to build package: o ie: meta-oic layer is shipping IoTivity library • GDP is GENIVI's Yocto based distro to provide full Automotive OS (IVI...) o Integrates meta-oic for iotivity (c/c++) and meta-iot-web for (for iotivity-node) o And supporting Board Support Packages (intel, renesas, rasbperrypi, etc) 15 | May 11, 2017 | Samsung Open Source Group
  • 16. Timeline • 2014-12-31: meta-oic 0.9.1 Initiated by Kishen Maloor (Intel) , (with demo for edison) • 2016-01-31: FOSDEM: Presented how to use meta-oic on Tizen Yocto (Tizen fan) • 2016-04-27: GENIVI AMM : Presented demos (fan+map+wearables on 1.1.1), +RVI • 2016-05-08: meta-oic 1.1.1 integrated in GENIVI • 2016-05-27: AGLF2F meeting, “ocf-automotive” project introduced • 2016-09-14: meta-oic 1.1.1 Philippe Coval (Samsung) new contributor • 2016-09-21: meta-oic 1.1.1 integrated in AGL • 2016-12-20: meta-oic 1.2.0 integrated in GENIVI and AGL • 2017-01-05: CES2017, GENIVI+Smarthome+Wearables demos • 2017-02-04: FOSDEM: Presented “streetlight+cloud” use case on AGL 3.0 • 2017-02-15: GENIVI announced partnership with Open Connectivity Foundation • 2017-03-20: meta-oic 1.2.1+ : Samsung OSG keeps maintaining it 16 | May 11, 2017 | Samsung Open Source Group
  • 18. OCF Automotive profile's mission ● Provide OCF technology for connected cars, by proposing o A common definition of vehicle resources o A common way to interact with those (inside or outside vehicle) o Based on or bridging to existing standards ● Cooperative effort with existing FLOSS Automotive projects: Tizen, GENIVI, AGL, W3C, RVI ... 18 | May 11, 2017 | Samsung Open Source Group
  • 19. What is “meta-ocf-automotive” ● Playground for OCF and Automotive R&D experiments o connecting Automotive platforms such as GENIVI, AGL, Tizen etc o on various hardware: SBC (Raspberry Pi {0,1,2,3}, ARTIK10…) o to other products: SmartHome, Mobile, Wearable ● “Real world” integration/validation tests o for spotting issues before release (on different OS: Yocto, Tizen etc) ● Tutorial of demo codes to learn IoTivity, Yocto, Tizen ● Entry point: https://wiki.iotivity.org/automotive 19 | May 11, 2017 | Samsung Open Source Group
  • 20. Interaction with products ● Tizen is an Operating System based on FLOSS ● Shipped into consumer electronics products ● Tizen and IoTivity  Tizen:3 contains as platform package (.rpm)  Tizen:2 can ship shared lib into native app (.tpk) o For Samsung Z{1,2,3} (Tizen:2.4:Mobile) o Samsung GearS2, S3 (Tizen:2.3.2:Wearable) 20 | May 11, 2017 | Samsung Open Source Group
  • 22. Check using samples apps • Various examples are shipped from upstream: – ls /opt/iotivity* • Playback smart light example scenario on loopback • Open 2 sessions (hint: use GNU screen) – Server: cd /opt/iotivity/examples/resource/cpp/ && ./simpleserver – Client: cd /opt/iotivity/examples/resource/cpp/ && ./simpleclient • More – https://wiki.iotivity.org/yocto – https://wiki.iotivity.org/examples 22 | May 11, 2017 | Samsung Open Source Group
  • 23. Base example: Resource discovery • branch=example/master (src/example/master/README.md) o Server register a “dummy” resource under “/ExampleResURI” endpoint o Client discover and list all resources' endpoints served in local network o GNUmake is used to build it o Systemd service provided to start it once installed • branch=example/packaging is based on previous one o Yocto Bitbake recipe o Tizen RPM spec file o Debian/Ubuntu packaging files too (more welcome) 24 | May 11, 2017 | Samsung Open Source Group
  • 24. Geolocation example: Observation • Branch “geolocation/master” is based on “example/packaging” and adapted: o “/GeolocationResURI” endpoint o Uses OCF/OneIotA normalised resource type: oic.r.geolocation o Fake GPS that update position continuously (back and forth) • ./bin/server: is updating “fake” position and notifying it o m_Representation.setValue(); OCPlatform::notifyAllObservers(…); • ./bin/observer: observe changes (IoTObserver::onObserve) o geolocation: 48.1043, -1.6715 • ./bin/client : get value using GET (m_OCResource->get) 25 | May 11, 2017 | Samsung Open Source Group
  • 25. Derivate to Tizen app • “geolocation/tizen/mobile/2.4/master” • Port to tizen native app: support SDK build files, app manifest files o + GUI using EFL's Elementary map widget (inspired from SDK sample) • Need to rebuild IoTivity’s shared lib (to be bundled in tpk): o Use helper script build rpm and unpack lib o ./tizen.mk ; ls lib/*.so o ./tizen.mk run # deploy on root device (ie TM1) • More details: https://wiki.iotivity.org/tizen 26 | May 11, 2017 | Samsung Open Source Group
  • 26. Switch Example  “switch/master” subproject o Shows actuator update using POST  Port to Tizen devices o Add ELM GUI, Tizen SDK build files, tizen-helper script (that rely on CLI SDK) o To deploy on commercialized device use tizen-studio IDE SDK (+ cert eclipse plugin) o Tizen Z, TM1: Branch “sandbox/pcoval/tizen/mobile/2.4/latest” o GearS2 branch “sandbox/pcoval/tizen/wearable-2.3.1” (is based on previous one) o GearS3 branch “sandbox/pcoval/tizen/wearable-2.3.2” (is based on previous one) 27 | May 11, 2017 | Samsung Open Source Group
  • 27. OCResource::post(rep, callback); onPost(...) Switch Example: Resource update OCPlatform::Configure(...); OCPlatform::registerResource( …); handleEntity(OCResourceRequest) { switch entityHandlerRequest->method { case 'POST: // Update resource // update actuator resource (physically) ... OCPlatform::sendRespone(response); }} OCPlatform::Configure(...); OCPlatform::findResource(...); onFind(... resource ...) IoTivity Server IoTivity Client(s) IP NetworkIP Network ●Client controls actuator: –Set resource's value ●Server is handling request –and responding 28 | May 11, 2017 | Samsung Open Source Group
  • 29. A Vehicle to Infrastructure notification service function handle(illuminance) { if (gThreshold > illuminance) { var data= { illuminance: illuminance, latitude: gGeo.latitude, longitude: gGeo.longitude }; sender.send(data); // { ARTIK's client.post(url...); } } } client.on("resourcefound", function(resource) { if ("/IlluminanceResURI" === resource.resourcePath) { resource.on("update", handle); } else if ("/GeolocationResURI" === resource.resourcePath) { resource.on("update", function(resource) { gGeo = resource.properties; }); } }; 3 30 | May 11, 2017 | Samsung Open Source Group
  • 30. FOSDEM2017: Devices to cloud 31 | May 11, 2017 | Samsung Open Source Group https://youtu.be/3L6_DbMLJ1k#iotivity- artik-20170204rzr
  • 31. IoTivity Cloud and Services
  • 32. IoTivity Clouds ● Cloud Interface ● Authentication – OAuth2 ● Message Queue – Publish – Subscribe ● Directory (RD) 33 | May 11, 2017 | Samsung Open Source Group
  • 33. IoTivity Services ● A common set of functionalities to application development. o Resource Container o Notification o Resource Encapsulation o Scene Manager o Easy setup 34 | May 11, 2017 | Samsung Open Source Group
  • 34. Summary • OCF targets Interoperability challenge in IoT by specifications and certifications • Open Source project IoTivity implements OCF specification • meta-oic is the key for integrating IoTivity and it has currently been maintained by Samsung OSG • OCF-automotive project has provided “meta-ocf-automotive” to encourage further R&D work in automotive domain • IoTivity native cloud extends connectivity to global • IoTivity Service make application development easier 35 | May 11, 2017 | Samsung Open Source Group