iotivity: smart home to automotive and beyond
TRANSCRIPT
Samsung Open Source Group 1 #ID4YOU2017
Smart Home to Automotive and beyond
Philippe CovalSamsung Open Source Group / SRUK
ID4CAR, PSA#ID4YOU, Rennes, France <2017-06-22>
Samsung Open Source Group 2 #ID4YOU2017
Automotive to become data driven?
● Cars could become to transportation – What mobile phones became to oral communication (much more)
● What is car?– 4 wheels computer? a network of networks?
● An open development platform?– Non critical system to support services (IVI)
● No trade off in matter of security and safety
– Future proof APIs: stable models and operations● Longer life span than mobile (and related ecosystems, apps...)
– Seamless connectivity (local, offline, online, cloud etc)
?
Samsung Open Source Group 3
“Any sufficiently advanced technology is indistinguishable from magic.” ~ Arthur C. Clarke
4 #ID4YOU2017
SmartHome to Automotive #CES2017https://youtu.be/3d0uZE6lHvo
SmartHome to Automotive (#CES2017)https://youtu.be/3d0uZE6lHvo
Samsung Open Source Group 5
“Without trust there's no cooperation. And without cooperation there's no progress. History stops.” ~ Rick Yancey, The Last Star
Samsung Open Source Group 6 #ID4YOU2017
Open connectivity foundation's missions
● Provide software linking the Internet Of Things– Focus on interoperability and seamless connectivity between devices
● Write specification, establish a protocol (formerly named OIC) – Rely on existing standards (IETF: CoAP, Cbor..)
● Sponsor reference implementation:– OpenSource (Apache 2.0 license) use existing FLOSS libs
● Hosted by Linux Foundation (like kernel, Tizen etc)
– Rule: No unimplemented features in specification
● Certify products for over 300 members (join us!)
Samsung Open Source Group 7 #ID4YOU2017
Common technology for multiple domains
ArchitectureRESTfulCRUD-N
CommunicationIETF
(CoAP, Cbor)+Security
DTLS
SemanticsRAML
Smart Home: Zigbee Blue Tooth Personal Devices Wearables: BLE
Cloud: HTTP/ TCP
Mobilty Automotive
OBD-II* CAN* LIN* MOST* LTE* 802.11p*5G*...
Samsung Open Source Group 8Samsung Open Source Group
OCF Automotive profile's mission
● Provide OCF technology for connected cars, by proposing:– A common definition of vehicle resources
– A common way to interact with those (inside or outside vehicle)
– Based on (or bridging to) existing standards
● Cooperative effort of existing FLOSS Automotive projects– Tizen, GENIVI, AGL, W3C, RVI ...
Samsung Open Source Group 9Samsung Open Source Group
Open Automotive OSes & Relationships
● 2003: AUTOSAR AUTomotive Open System Architecture for ECUs (open to members)● 2009: GENIVI alliance created to standardize automotive
– OSS Supported by Car manufacturers, also members or AUTOSAR● 2019: Yocto project based on OpenEmbedded● 2012: Tizen:IVI is initiated by Intel from MeeGo (Nokia’s maemo + Moblin)
– GENIVI compliant, Rebased on Tizen:Common, Ported to Yocto Build system● 2014: Google announce Open Automotive Alliance (OAA) for Android● 2015: Automotive Grade Linux specifications published (Tizen:IVI fork)● 2016: AGL’s Unified Code base (Yocto+Tizen+GENIVI = UCB)● 2017: GENIVI announced partnership with Open Connectivity Foundation● 2017: IoTivity-1.3.0 supports Linux, Tizen, Yocto, GENIVI, AGL, Android and more
Samsung Open Source Group 11Samsung Open Source Group
Getting started with IoTivity
● Download or rebuild C/C++ library from sources:– For most GNU/Linux, Tizen, Yocto and others OS
– Details: https://wiki.iotivity.org/build
● Note: Security mechanism is enabled at build time– For fast prototyping, rebuild without (unsecured)
● Get inspired by tutorial examples: Switch, Geolocation...– http://git.s-osg.org/iotivity-example/plain/README.md
● Try related projects: IoTivity-node, IoTivity-constrained
12 #ID4YOU2017
Prototyping use cases
Monitoring defective street lights:
– Sensor reads luminance
– Micro controller switches front lamp on (if too dark)
– GPS unit updates geolocation continuously
– Gateway sends message to cloud● To bridge to online services?:
– Ie: PSA REST API, OSM, Uber...
– Using IoTivity Web Service Interface (WSI)
Samsung Open Source Group
11
2
3 5
47
13 #ID4YOU2017
IoTivity from sensor to ARTIKCloudhttps://youtu.be/3L6_DbMLJ1k
From sensor to ARTIKCloud (FOSDEM2017)https://youtu.be/3L6_DbMLJ1k
Samsung Open Source Group 14Samsung Open Source Group
https://api.artik.cloud/{ illuminance: 42, latitude: 52.165, longitude: -2.21}
/IlluminanceResURI{ illuminance: 42}
/GeoLocationResURI{ latitude: 52.165, longitude: -2.21,}
Behavior implementation in Javascript
client.on("resourcefound", function(resource) {
if ("/GeolocationResURI" === resource.resourcePath) { resource.on("update", function(resource) { gGeo = resource.properties; });
} else if ("/IlluminanceResURI" === resource.resourcePath) { resource.on("update", handle);}};function handle(illuminance) {
if (illuminance < gThreshold ) {
var data= { illuminance: illuminance, latitude: gGeo.latitude, longitude: gGeo.longitude };
sender.send(data); // { ARTIK's client.post(url...); }} }
1
2
3
1
Samsung Open Source Group 15 #ID4YOU2017
Summary
● OCF establishes a standard for interconnecting things – Cross markets: SmartHome, Automotive, Industrial...
– Common technology: Resource model & RESTful architecture
– Definitions must be shared to ensure interoperability
● Open Source project IoTivity – Implements it in C, C++, Java, Javascript...
– Ready to be used on Automotive OS and beyond
● Join community, any feeback is welcome!
Samsung Open Source Group 16 #ID4YOU2017
Q&A or extras ? …or ask me online: https://wiki.tizen.org/wiki/User:Pcoval
Samsung Open Source Group 17Samsung Open Source Group
OCF-W3C Translatorhttps://youtu.be/jKt_fPnqggo
https://youtu.be/jKt_fPnqggo#openconnectivity-lfals2017
18 #ID4YOU2017
IoTivity on Automotive Grade Linux (AGL)https://youtu.be/w_c0wxJfBsw
iotivity-agl-demo-platform-20160222rzrhttps://youtu.be/w_c0wxJfBsw
19 #ID4YOU2017
IoTivity on GENIVI demo platform:https://youtu.be/DJKYauaOmsc
tizen-genivi-20160424rzrhttps://youtu.be/DJKYauaOmsc
Samsung Open Source Group 20 #ID4YOU2017
References
● Entry points:– http://wiki.iotivity.org/automotive
– https://openconnectivity.org/industries/automotive
● Going further:– https://openconnectivity.org/resources/iotivity
– https://openconnectivity.org/resources/oneiota-data-model-tool
– https://news.samsung.com/global/samsung-contributes-to-open-iot-showcase-at-ces-2017
– http://tinyurl.com/omaocf2017
– https://wiki.tizen.org/wiki/Domains/Automotive
– http://elinux.org/Category:Automotive
● Keep in touch online:– https://wiki.iotivity.org/community (Wiki, Mailing list, IRC, Events ...)
– https://wiki.tizen.org/wiki/Meeting
– https://www.meetup.com/OCF-France/ (Local events worldwide, Soon in Rennes?)
– https://blogs.s-osg.org/author/pcoval/