Tizen/Artik Iot Practice Part 3 Building Iotivity

Total Page:16

File Type:pdf, Size:1020Kb

Tizen/Artik Iot Practice Part 3 Building Iotivity 1 27 Tizen/Artik IoT Practice Part 3 Building IoTivity Sungkyunkwan University Embedded Software Lab. @ SKKU Contents 2 27 • IoTivity’s Target Platforms • How to Clone IoTivity Source Code • How to Clone IoTivity Source Code for Tizen • How to Build IoTivity – for Tizen/Artik – for Ubuntu/x86 – for Raspberry Pi 2 – for Android – for Arduino • How to Contribute to IoTivity Project Embedded Software Lab. @ SKKU IoTivity’s Target Platforms 3 27 • IoTivity’s Multi-Platform Support – Architectures: x86, x86_64, arm-v7a, arm, arm64 – OS: linux, android, tizen, arduino • Scons – IoTivity’s default build tool – Support for Multi-platform cross build – ex) $ scons TARGET_ARCH=arm TARGET_OS=android Embedded Software Lab. @ SKKU How to Clone IoTivity Source Code 4 27 1. Sign up and Log in IoTivity Gerrit server – Go to https://gerrit.iotivity.org/gerrit/ 2. Go to “Settings → SSH Public Keys” 3. Make SSH public/private keys – $ ssh-keygen – Press enter for the every questions Embedded Software Lab. @ SKKU How to Clone IoTivity Source Code 5 27 4. Copy the public key to the form – Copy “$ cat ~/.ssh/id_rsa.pub” to the form on the web site Copy! Embedded Software Lab. @ SKKU How to Clone IoTivity Source Code 6 27 5. Create or Edit SSH Config – $ gedit ~/.ssh/config – Add following text to ~/.ssh/config • Please fill <UserName> as your own IoTivity Gerrit ID. Host gerrit.iotivity.org Hostname gerrit.iotivity.org IdentityFile ~/.ssh/id_rsa User <UserName> Port 29418 6. Clone source code of IoTivity – $ git clone ssh://gerrit.iotivity.org/iotivity 7. Clone dependency library (tinycbor) – $ git clone https://github.com/01org/tinycbor.git extlibs/tinycbor/tinycbor Embedded Software Lab. @ SKKU How to Clone IoTivity Source Code 7 27 8. Trouble-shooting for tinycbor library – Add following code to extlibs/tinycbor/SConscript cbor_src = [ … os.path.join(cborDir,‘src/cborparser_dup_string.c’), ] Embedded Software Lab. @ SKKU How to Clone IoTivity Source Code for Tizen 8 27 • You should have an access right to review server for accessing Tizen source code. 1. Register a Tizen developer ID 1. Go to developer.tizen.org/ko. 2. You can log in Tizen review server (review.tizen.org). Embedded Software Lab. @ SKKU How to Clone IoTivity Source Code for Tizen 9 27 2. Review Server: Configuration 1. $ gedit ~/.ssh/config – Enter your Gerrit ID. Host tizen ~/.ssh/config Hostname review.tizen.org IdentityFile ~/.ssh/id_rsa User GerritID Port 29418 Host review.tizen.org Hostname review.tizen.org IdentityFile ~/.ssh/id_rsa User GerritID Port 29418 Embedded Software Lab. @ SKKU How to Clone IoTivity Source Code for Tizen 10 27 3. Sign up and Log in Tizen Gerrit server – Go to https://review.tizen.org 4. Go to “Settings → SSH Public Keys” 5. Make SSH public/private keys – $ ssh-keygen – Press enter for the every questions Embedded Software Lab. @ SKKU How to Clone IoTivity Source Code for Tizen 11 27 6. Copy the public key to the form – Copy “$ cat ~/.ssh/id_rsa.pub” to the form on the web site Copy! Embedded Software Lab. @ SKKU How to Clone IoTivity Source Code for Tizen 12 27 7. Create or Edit SSH Config – $ gedit ~/.ssh/config – Add following text to ~/.ssh/config • Please fill <UserName> as your own IoTivity Gerrit ID. Host gerrit.iotivity.org Hostname gerrit.iotivity.org IdentityFile ~/.ssh/id_rsa User <UserName> 8. Clone source code of IoTivity Port 29418 – $ git clone ssh://gerrit.iotivity.org/iotivity 9. Test ssh server connection – $ ssh tizen – $ ssh review.tizen.org Embedded Software Lab. @ SKKU How to Clone IoTivity Source Code for Tizen 13 27 10.Identify the URL of IoTivity Source Code for Tizen 1. Go to https://review.tizen.org/ 2. Projects List 3. Search “iotivity” 4. Click “platform/upstream/iotivity” (for Tizen 3.0) 11.CLone the IoTivity Source Code for Tizen 10. $ git clone git://git.tizen.org/platform/upstream/iotivity Embedded Software Lab. @ SKKU How to Build IoTivity for Tizen/Artik 14 27 • Assume to build it on x86_64 device running Ubuntu 16.04. 1. Add Tizen development tool repository to APT repository list. 1. $ sudo gedit /etc/apt/sources.list 2. Add below code /etc/apt/sources.list deb http://download.tizen.org/tools/pre-release/Ubuntu_16.04 / 3. $ sudo apt-get update 2. Install packages of GBS, MIC. 1. $ sudo apt-get install gbs mic Embedded Software Lab. @ SKKU How to Build IoTivity for Tizen/Artik 15 27 3. Edit .gbs.conf 1. $ vi ~/.gbs.conf [general] ~/.gbs.conf tmpdir=/var/tmp/ profile=profile.tizen3.0_artik [repo.tizen3.0_base] url=http://download.tizen.org/snapshots/tizen/base/latest/repos/arm/packages [repo.tizen3.0_artik] url=http://download.tizen.org/snapshots/tizen/common_artik/latest/repos/arm- wayland/packages [repo.tizen3.0_common_arm_wayland] url=http://download.tizen.org/snapshots/tizen/common/latest/repos/arm- wayland/packages [profile.tizen3.0_artik] repos=repo.tizen3.0_base, repo.tizen3.0_artik, repo.tizen3.0_common_arm_wayland Embedded Software Lab. @ SKKU How to Build IoTivity for Tizen/Artik 16 27 4. Build 1. $ gbs build -A armv7l --include-all – -A <architecture type>: i586, x86_64, armv7l – --include-all: option for building working directory Embedded Software Lab. @ SKKU How to Build IoTivity for Tizen/Artik 17 27 5. Connect Artik and PC with USB cable 6. Push the RPM package file to Artik 1. $ sdb push ~/GBS- ROOT/local/repos/tizen3.0_artik/armv7l/RPMS/iotivi ty-1.1.1-0.armv7l.rpm /sdcard/ 7. Install on Artik 10 1. $ sdb root on 2. $ sdb shell 3. $ rpm -ivh /sdcard/iotivity- 1.1.1-0.armv7l.rpm Embedded Software Lab. @ SKKU How to Build IoTivity for Tizen/Artik 18 27 • Many IoTivity-related packages are made after build. – iotivity-1.1.1-0.armv7l.rpm – iotivity-devel-1.1.1-0.armv7l.rpm – iotivity-service-1.1.1-0.armv7l.rpm – iotivity-test-1.1.1-0.armv7l.rpm Embedded Software Lab. @ SKKU How to Build IoTivity for Ubuntu/x86 19 27 • Assume to build it on x86_64 device running Ubuntu 16.04. 1. Install dependency packages – $ sudo apt-get install dos2unix libboost-thread-dev 2. Build – $ scons -j8 • -jX: build with X threads 3. Test – Open two terminal windows: $ cd out/linux/x86_64/release/resource/examples – On your first terminal window, enter: ./simpleserver – On your second terminal window, enter: ./simpleclient Embedded Software Lab. @ SKKU How to Build IoTivity for Raspberry Pi 2 20 27 • Assume to build it on Raspberry Pi 2 running Raspbian. 1. Install dependency packages – $ sudo apt-get install dos2unix scons build-essential libboost-dev libexpat1-dev libboost-thread-dev 2. Build – $ scons TARGET_ARCH=arm -j4 • -jX: build with X threads 3. Test – Open two terminal windows: $ cd out/linux/arm/release/resource/examples – On your first terminal window, enter: ./simpleserver – On your second terminal window, enter: ./simpleclient Embedded Software Lab. @ SKKU Expected Test Result 21 27 Terminal 1 Terminal 2 $ ./simpleserver $ ./simpleclient Created resource. <===Setting ObserveType to Observe and ConnectivityType to IP===> Added Interface and Type Waiting Finding Resource... 0: Finding Resource for second time... In entity handler wrapper: In foundResource In Server CPP entity handler: In foundResource requestFlag : Request Found resource 31313131-3131-3131-3131-313131313131/oic/sec/doxm requestType : GET for the first time on server with ID: In foundResource 0: In entity handler wrapper: GET request was successful In Server CPP entity handler: Resource URI: /a/light requestFlag : Request state: false requestType : PUT power: 0 state: 1 name: John's light power: 15 Putting light representation... PUT request was successful state: true power: 15 name: John's light Posting light representation... Embedded Software Lab. @ SKKU How to Build IoTivity for Android 22 27 • Assume to build it on x86_64 device running Ubuntu 16.04. 1. Install dependency packages – $ sudo apt-get install dos2unix libboost-thread-dev 2. Install Android SDK (API 21) – Option 1. Direct Setting of Android SDK System • Download Android SDK Bundle with Eclipse (32bit용, 64bit용) • $ <android-sdk-path>/tools/android • Choose both “Android SDK Build-tools (Rev. 20)” and “Android 5.0.1 (API 21) > SDK Platform” ”Install 2 packages” – Option 2. Download Preset Android Bundle • http://nyx.skku.ac.kr/iot-lecture/adt-android-21.tar.gz Embedded Software Lab. @ SKKU How to Build IoTivity for Android 23 27 3. Build – $ scons TARGET_OS=android TARGET_ARCH=armeabi-v7a ANDROID_HOME=<android-sdk-path> -j8 • Output: APK files (Install them with ’adb install’) – android/examples/*/build/outputs/apk/*.apk – $ find . –name “*.apk”: ./android/examples/simplebase/build/outputs/apk/simplebase-debug-unaligned.apk ./android/examples/simplebase/build/outputs/apk/simplebase-release-unsigned.apk ./android/examples/simplebase/build/outputs/apk/simplebase-debug.apk ./android/examples/simpleclient/build/outputs/apk/simpleclient-debug.apk ./android/examples/simpleclient/build/outputs/apk/simpleclient-release-unsigned.apk ./android/examples/simpleclient/build/outputs/apk/simpleclient-debug-unaligned.apk ./android/examples/devicediscoveryclient/build/outputs/apk/devicediscoveryclient-debug.apk ... Embedded Software Lab. @ SKKU How to Test IoTivity for Android 24 27 • A challenge in IoTivity for Android – Since most Android devices and network gateways do not support Wi-fi Multicast, multicast discovery may not work. • Enable Unicast Discovery for SimpleClient App 1. Check the IP address of device running SimpleServer 2. Edit SimpleClient Android App, and enter the server’s IP address (Refer to next page) 3. Rebuild IoTivity for Android Embedded Software Lab. @ SKKU How to Test IoTivity for Android 25 27 • android/examples/simpleclient/src/main/java/org/iotivity/base/exampl es/SimpleClient.java private void startSimpleClient() { … try { … OcPlatform.findResource(“192.168.0.123”, requestUri, EnumSet.of(OcConnectivityType.CT_DEFAULT), this ); … OcPlatform.findResource(“192.168.0.123”, requestUri, EnumSet.of(OcConnectivityType.CT_DEFAULT), this ); … } Embedded Software Lab. @ SKKU How to Build IoTivity for Arduino 26 27 • Assume that Arduino Due + Wi-fi Shield(32UC3A1512-U) is target, and host machine is Ubuntu PC.
Recommended publications
  • Demystifying Internet of Things Security Successful Iot Device/Edge and Platform Security Deployment — Sunil Cheruvu Anil Kumar Ned Smith David M
    Demystifying Internet of Things Security Successful IoT Device/Edge and Platform Security Deployment — Sunil Cheruvu Anil Kumar Ned Smith David M. Wheeler Demystifying Internet of Things Security Successful IoT Device/Edge and Platform Security Deployment Sunil Cheruvu Anil Kumar Ned Smith David M. Wheeler Demystifying Internet of Things Security: Successful IoT Device/Edge and Platform Security Deployment Sunil Cheruvu Anil Kumar Chandler, AZ, USA Chandler, AZ, USA Ned Smith David M. Wheeler Beaverton, OR, USA Gilbert, AZ, USA ISBN-13 (pbk): 978-1-4842-2895-1 ISBN-13 (electronic): 978-1-4842-2896-8 https://doi.org/10.1007/978-1-4842-2896-8 Copyright © 2020 by The Editor(s) (if applicable) and The Author(s) This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Open Access This book is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made. The images or other third party material in this book are included in the book’s Creative Commons license, unless indicated otherwise in a credit line to the material.
    [Show full text]
  • Iotivity and Iotivity-Lite • Resources for Getting Started
    Overview of IoTivity Projects Kishen Maloor, Intel June 2018 Agenda • What is IoTivity? • Structure of an OCF implementation • IoTivity and IoTivity-Lite • Resources for getting started 2 What is IoTivity? • Umbrella of projects for building IoT devices • Open-source, reference implementations of OCF specifications • Serve as starting point for developing and certifying OCF products Specifications Vertical Data Models Device Certification Strategy, Marketing Independent governance with coordinated efforts 3 Structure of an OCF implementation User space IoT Applications Outer functional blocks APIs & Language Security Manage on-boarding, Bindings Provisioning Provisioning credentials, Infrastructure Access-control lists OCF Resource Model Resource directory, Device High-level Services Wi-Fi Easy Setup, etc. Stack Security Flows Bridging to other Zigbee, Z-Wave, etc. IP Connectivity ecosystems Kernel space Network Interfaces OS & Kernel 4 IoTivity and IoTivity-Lite • IoTivity • Suitable only for more capable device classes • Runs on Linux, Windows, Android, macOS • Multiple language bindings: C, C++, Java, Node.js • IoTivity-Lite (formerly called IoTivity-Constrained) • Lightweight implementation of OCF specifications • Suitable for all device classes (including few constrained devices) • Runs on Linux, Windows, macOS, and multiple RTOSes • C APIs only 5 IoTivity Directory Structure auto_build.py NOTICE.md auto_build.sh plugins bridging prep.sh build_common README-building-and-running-remote-access-sample.txt cloud README.md CONTRIBUTING.md
    [Show full text]
  • Krawetz, Neal
    Response to DoC NTIA RFC No. 160331306­6306­01 Page 1 of 23 Response to the Department of Commerce National Telecommunications and Information Administration Request for Comment on Internet of Things The Benefits, Challenges, and Potential Roles for the Government in Fostering the Advancement of the Internet of Things RFC No. 160331306‐6306‐01 May 22, 2016 Neal Krawetz, Eric Schultz, Valerie Kaminsky, Bill Tucker, et al. Response to DoC NTIA RFC No. 160331306­6306­01 Page 2 of 23 The Department of Commerce (DoC) National Telecommunications and Information Administration (NTIA) issued a Request for Comments (RFC) in the Federal Register.1 This issuance requested feedback on the current policy and technological landscape related to the Internet of Things (IoT). This document includes responses to the following items: IoT Challenges Software Patches Unsupported Devices Personal Information Recycling and Safe Disposal Disposable Electronics Insecure Design Inherent Vulnerabilities Intentional Backdoors Network and Infrastructure Economic Impact Industry Recommendations Governmental Role Current Government Policies Recommended Government Policies Proposed Role for NTIA Contributors IoT Challenges Issue #1 in the NTIA RFC requested information related to the challenges and opportunities arising from IoT. In particular, how they are similar to existing challenges and what aspects are novel. This topic is further discussed in other issues, including #6 (technological issues), #16 (cybersecurity), and #17 (privacy). The challenges posed by the Internet of Things mirrors today’s existing issues with mobile devices in regards to security, application, and networking. However, the IoT amplifies all of these issues and brings them to a critical level. The IoT is positioned to become invasive and integral to businesses and consumers across America.
    [Show full text]
  • Time-To-Provision Evaluation of Iot Devices Using Automated Zero
    Time-to-Provision Evaluation of IoT Devices Using Automated Zero-Touch Provisioning Ivan Boˇskov∗†, Halil Yetgin∗‡, MatevˇzVuˇcnik∗†, Carolina Fortuna∗, Mihael Mohorˇciˇc∗† ∗Department of Communication Systems, Joˇzef Stefan Institute, SI-1000 Ljubljana, Slovenia. †Joˇzef Stefan International Postgraduate School, Jamova 39, SI-1000 Ljubljana, Slovenia. ‡Department of Electrical and Electronics Engineering, Bitlis Eren University, 13000 Bitlis, Turkey. {ivan.boskov | halil.yetgin | matevz.vucnik | carolina.fortuna | miha.mohorcic}@ijs.si Abstract—The Internet of Things (IoT) is being widely adopted thus to avoid manual provisioning process [3]. Therefore, ZTP in today’s society, interconnecting smart embedded devices that enables accomplishing and providing remote device provision- are being deployed for indoor and outdoor environments, such ing, where even an end-user that does not have the technical as homes, factories and hospitals. Along with the growth in the development and implementation of these IoT devices, their knowledge can simply connect a non-provisioned device to simple and rapid deployment, initial configuration and out- the network [3]. Having reviewed the paucity of the literature of-the-box operational provisioning are becoming prominent and the industry perspectives, the characteristics of a typical challenges to be circumvented. Considering a large number of ZTP can be summarized as follows. heterogeneous devices to be deployed within next generation IoT networks, the amount of time needed for manual provisioning • Ease of Use - provisioning could be performed by anyone of these IoT devices can significantly delay the deployment and even without technical background. manual provisioning may introduce human-induced failures and • Interoperability - ZTP should be independent of vendors. errors. By incorporating zero-touch provisioning (ZTP), multiple • Security - during the provisioning process, credentials heterogeneous devices can be provisioned with less effort and without human intervention.
    [Show full text]
  • Avoid the Silos and Help Build the True Internet of Things
    Avoid the Silos and Help Build the True Internet of Things April 2016 Aaron Vernon, CTO at Higgns [email protected] I N T R O D U C T I O N ● Aaron Vernon, CTO at Higgns ● Previously I was VP Software Engineering at LIFX and CTO at Two Bulls ● Chair of the AllSeen Alliance Common Frameworks Working Group ● I am going to cover the following: ○ The complexities of the current IoT landscape ○ How this affects companies and users ○ The Internet of Silos example ○ How we can work together better Transports W i F i ● Uses the 802.11 standard ● Standard on all mobile devices and routers ● Has become ubiquitous for users ● Great range ● Great bandwidth ● High power consumption ● High cost ● Onboarding experience can be complicated ● Examples: Nest Cam, LIFX, Canary, Honeywell Lyric B L U E T O O T H S M A R T ● Standard on most mobile devices ● Becoming increasingly ubiquitous ● Low bandwidth ● Medium range ● Low power consumption ● Low cost ● Smart Mesh is being worked on ● Examples: Flic, Ilumi, Elgato Eve Z I G B E E ● Uses the 802.15.4 standard ● Low bandwidth ● Low range ● Low power consumption ● Very low cost ● Forms a mesh network ● Typically requires a hub for the radio ● Known to have interop and interference problems ● Examples: Phillips Hue, large amount of sensors and actuators Z W A V E ● Proprietary - chips developed by a single manufacturer ● Uses different frequencies in different countries ● Low bandwidth ● Medium range ● Low power consumption ● Very low cost ● Forms a mesh network ● Better interoperability and less interference
    [Show full text]
  • Iotivity Demo Networking Laboratory 2/37 Iotivity Target
    Sungkyunkwan University IoTivity Presenter: Dzung Tien Nguyen Networking Laboratory, 83345 [email protected] Copyright 2000-2015Networking Networking Laboratory Laboratory 1/00 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 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 The framework IoTivity demo Networking Laboratory 4/37 The stack architecture IoTivity demo Networking Laboratory 5/37 Protocol: CoAP Is Constrained Application Protocol for constrained resource environment Is a simple and compact binary mapping of REST Provides asynchronous notifications,
    [Show full text]
  • Comparison of Iot Frameworks for the Smart Home
    Alexander Nimmermark Larsson Erik & Comparison frameworks of IoT for the smart Master’s Thesis Comparison of IoT frameworks for the smart home Alexander Larsson Erik Nimmermark home Series of Master’s theses Department of Electrical and Information Technology LU/LTH-EIT 2016-520 http://www.eit.lth.se Department of Electrical and Information Technology, Faculty of Engineering, LTH, Lund University, 2016. Comparison of IoT frameworks for the smart home Alexander Larsson [email protected] Erik Nimmermark [email protected] Anima AB Västra Varvsgatan 19, Malmö Advisor: Maria Kihl, EIT June 15, 2016 Printed in Sweden E-huset, Lund, 2016 Abstract The smart home landscape is rapidly evolving right now. There is yet to be an industry-wide common standard and several organizations are introducing their own proposed solutions. This has led to fragmentation and the field can appear confusing to interested parties trying to enter the market. There is a need to evaluate the different technologies to discern their distinguishing characteristics. This thesis report provides a comparison between HomeKit and IoTivity based on our proposed evaluation model. The model identifies a set of relevant charac- teristics which are evaluated through operationalization of criteria into composite measurables. Our comparison shows that at this time there is no definite answer to what framework to choose. Developers will have to compromise and make a decision based on the type of product they want to make. The proposed model can readily be used as a tool to evaluate any Internet of Things framework and provide guidance when choosing what technology to use.
    [Show full text]
  • The Pennsylvania State University the Graduate
    THE PENNSYLVANIA STATE UNIVERSITY THE GRADUATE SCHOOL STATE ENDORSEMENT IN THE SMART HOME IOTIVITY FRAMEWORK A Thesis in Computer Science and Engineering by Kirti Jagtap © 2020 Kirti Jagtap Submitted in Partial Fulfillment of the Requirements for the Degree of Master of Science August 2020 The thesis of Kirti Jagtap was reviewed and approved by the following: Trent Jaeger Professor of Computer Science and Engineering Thesis Advisor Mahanth Gowda Assistant Professor of Computer Science and Engineering Chitaranjan Das Distinguished Professor of Computer Science and Engineering Head of the Department of Computer Science and Engineering ii Abstract The increasing use of smart home devices has resulted in the emergence of software frameworks and automation platforms that provide scripts and Application Programming Interface (API) to develop different apps for these smart devices. Open-source platforms such as IoTivity make it easier to develop applications by providing Application Program- ming Interface. As the Internet of Things (IoT) and its applications in various domains have emerged only in the last few decades, the technology is relatively new; the developers are lacking experience and above all the complexity of Smart Home environment result in an increased number of bugs, security loopholes, and safety-critical issues leaving Smart Homes vulnerable to attacks. Since home automation is based on routines and triggers, using third-party applications or user-defined routines and custom automation [26] can lead to an unsafe and inconsistent home environment that is vulnerable to attacks thereby compromising user security and safety. These triggers and routines are dependent on the state of devices and the current home environment.
    [Show full text]
  • Iotivity Tutorial
    Tutorial Prototyping IoT devices on GNU/Linux Embedded Linux Conference #LFELC, Berlin, Germany <2016-10-13> Philippe Coval Samsung Open Source Group / SRUK [email protected] Samsung Open Source Group 1 Hallo Welt! ● Philippe Coval – Software engineer for Samsung OSG ● Belongs to SRUK team, based in Rennes, France ● Ask me for IoTivity support on Tizen platform and others – Interests ● Libre Soft/Hard/ware, Communities, Interoperability – DIY, Embedded, Mobile, Wearables, Automotive... – Find me online ● https://wiki.tizen.org/wiki/User:Pcoval Samsung Open Source Group 2 Newbies, makers, hackers welcome ! ● This “IoT” talk is not about: – Market share, prospects, growth, figures ● Monetize data with cloud, analytics, big data, machine learning – Security, privacy, trust, Skynet, singularity or any concerns – Architectures, services or designs ● Comparison of protocols or implementations ● Tizen the “OS of Everything” (unless if asked) ● It's about quick prototyping for proof of concepts: – Learn by doing from scratch, DIY: software, hardware, electronics – Feedback on previous experimentations from embedded developer – Front door to a project of 435K+ lines of code and ~500 pages of specifications Samsung Open Source Group 3 Agenda ● Prototyping ● Simplest example ● Implementation ● Hardware integration ● Demonstration ● Q&A Samsung Open Source Group 4 Motivations for prototyping ● *NOT* making a mass produced IoT device at 1st shot – Low cost (<10 $), low consumption (mW), high level of security ● Validate concepts with relaxed constraints – In friendly environment (ie: tools, security or connectivity shortcuts) – Validate, show, gather feedback, stress, benchmark, adapt, iterate ● Think of use cases first? – Or experiment with what can technology can provide? Be inspired! ● Topics and Ideas? – Controlling, monitoring, convergence, network of sensors, behaviors, AI..
    [Show full text]
  • Architecture and Features
    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 • Base Layer & APIs • Primitive Services & APIs 2 IoTivity Overview OCF Topologies Supported •An open source software framework implementing OCF Standards •Ensures seamless device-to-device and OCF Client OCF Server device-to-cloud connectivity to address P2P Direct emerging needs of IoT OCF Client OCF Client •Licensed under Apache License Version XMPP/ Cloud 2.0 STUN/ TURN/ICE CoAP over TCP •Available on TIZEN, Android, Arduino, OCF Intermediary Gateway Linux(Ubuntu) Platforms Gateway OCF Servers OCF IoTivity OCF Servers Cloud based (Standards) (Open Source) Remote Access intelligent Services 3 IoTivity – High Level Architecture Rich Device Key Goals Consumer Enterprise Industrial Automotive Health …. APIs Common Solution (C/C++/Java/JS) Established Protocols Service Layer Security & Identity Lite Device Device Low-Power Data Standardized Profiles Management Management Management Sensing/Control Application Interoperability Resource Resource Encapsulation Innovation Opportunities Container Base Layer Necessary connectivity Base Layer Messaging Security Discovery Messaging Security Discovery IoTivity Profiles IoTivity Framework IoTivity Connectivities* 4 IoTivity Base Layer & APIs 5 IoTivity – High Level Architecture Rich Device Key Goals Consumer Enterprise Industrial Automotive Health …. APIs Common Solution (C/C++/Java/JS)
    [Show full text]
  • Iotivity – Connecting Things in Iot
    IoTivity – Connecting Things in IoT Ashok Subash Agenda Overview of IoT, OIC & IoTivity IoT Stack, Topologies & Protocol IoTivity Architecture Programming IoTivity Core APIs Programming IoTivity Service APIs Demo 2 Overview Internet of Things – What is it? The Internet of Things is the network of physical objects that contains embedded technology to communicate and sense or interact with the objects' internal state or the external environment.* Smart Energy Vehicle, Asset, Person, Agriculture Pet Monitoring & Consumption Controlling Security & Surveillance M2M & Wireless Internet of Things Building Sensor Network Management Telemedicine & Wearables & Smart Home Healthcare Things & Cities 4 *Gartner, July 2014 What is making IoT possible? • H/W Miniaturization & Lower BOM Cost • Advancements in Sensor Technology • Low Power Connectivity Technologies • IP as key Interoperability Protocol • Devices ability to run on battery for longer duration (> 5 years) 5 What is hindering IoT? • Non IP based standards technology resulting in limited Interoperability • Proprietary Protocols & Technologies • Licensing issues • Companies creating “Closed Ecosystem” (Zero or limited Interoperability with other Vendor devices) • Low adoption of Open Standards by various Industry Consortiums • Security & Privacy concerns • Dilemma in “Ownership” of Data from variety of IoT devices • Lack of Strong Certification for ensuring Protocol & Application Profile Interoperability Need Standards & Reference Implementation which cater to these issues 6 OIC & IoTivity • Open Interconnect Consortium (OIC) • Founded by Leading Technology Companies including Cisco, GE, Intel,, MediaTek & Samsung • Defines standards for connectivity requirements • Ensures interoperability of billions of Internet of Things (IoT) devices. • IoTivity • An open source software framework implementing OIC Standards • Ensures seamless device-to-device connectivity to address the emerging needs of the Internet of Things.
    [Show full text]
  • Etsi Tr 103 536 V1.1.2 (2019-12)
    ETSI TR 103 536 V1.1.2 (2019-12) TECHNICAL REPORT SmartM2M; Strategic/technical approach on how to achieve interoperability/interworking of existing standardized IoT Platforms 2 ETSI TR 103 536 V1.1.2 (2019-12) Reference RTR/SmartM2M-103536v112 Keywords interoperability, IoT, IoT platforms, oneM2M, SAREF, semantic ETSI 650 Route des Lucioles F-06921 Sophia Antipolis Cedex - FRANCE Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16 Siret N° 348 623 562 00017 - NAF 742 C Association à but non lucratif enregistrée à la Sous-Préfecture de Grasse (06) N° 7803/88 Important notice The present document can be downloaded from: http://www.etsi.org/standards-search The present document may be made available in electronic versions and/or in print. The content of any electronic and/or print versions of the present document shall not be modified without the prior written authorization of ETSI. In case of any existing or perceived difference in contents between such versions and/or in print, the prevailing version of an ETSI deliverable is the one made publicly available in PDF format at www.etsi.org/deliver. Users of the present document should be aware that the document may be subject to revision or change of status. Information on the current status of this and other ETSI documents is available at https://portal.etsi.org/TB/ETSIDeliverableStatus.aspx If you find errors in the present document, please send your comment to one of the following services: https://portal.etsi.org/People/CommiteeSupportStaff.aspx Copyright Notification No part may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying and microfilm except as authorized by written permission of ETSI.
    [Show full text]