SlideShare a Scribd company logo
Tudor Panu
IoT Software Architect
May 2019
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
2
Agenda
• Introduction
• The MRAA and UPM Projects
• Deep Dive: Value Proposition, Infrastructure, Outreach Examples and more
• The Big Picture: Integrating the Tools Within the IoT Ecosystem
• Industrial Standards and Interoperability
• Future Plans
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
3
Why Sensor Framework?
Without Sensor Framework
Setup pinmuxes (~200 lines of code)
Interact with sensor
With Sensor Framework
(~5 lines of code)
Set Tristate
to 0
Set GPIO14
to input
Set
GPIO165 to
input
Set
GPIO236 to
output &
disable
Set
GPIO237 to
output &
disable
Set
GPIO212 to
input
Set
GPIO213 to
input
Change
pinmode
for pin 28
Change
pinmode
for pin 27
Set Tristate
to 1
Example: reading data from a typical I2C sensor
Call read
function
Call sensor
constructor
Define
smbus data
structs
Fill in
values
ioctl write
configure
sensor
Allocate
read buffer
ioctl read
• MRAA handles pinmuxing and memory
allocations
• UPM provides default configuration and
enables sensor
• Easy code portability to any MRAA
supported platform
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
• Standard IO Interface for all IoT Developer Kits
• Supports Intel & non-Intel (community) platforms
• Abstraction APIs:
• Open source on GitHub:
http://mraa.io
4
Eclipse MRAA - Hardware Abstraction
• GPIO
• Analog (AIO)
• PWM
• SPI
• I2C
• UART
• 1-Wire
• Firmata
• IIO
• LED APIs
Typical stack on UNIX systems:
Intel® IoT Entry,
Workstations and Servers
Aaeon* UP & UP2
UP Core Plus
and AI Plus Kits
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
Linux Kernel
MRAA C/C++ APIs
5
ActuatorsSensors
UPM C++ Standardized APIs
iLight iPressure iHumidity iGas iGPS iAngle
GPIO I2C SPI UART PWM
Eclipse UPM - Standardized Sensor APIs
Connectivity Industrial
ADC
iio
Libmodbus
Bacnet
Other…
…
tinyb
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
6
400+ specialized sensor drivers and growing, thousands of basic prototyping and
industrial sensors supported (e.g. LEDs, Switches)
• Prototype*
• Industrial*
• Connectivity*
Value Proposition
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
7
Distribution Channels
• Integrated with native
package managers
Ecosystem & Distribution
Multiple OS support*
Multiple language support*
IDE Integrations
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
8
Outreach & Adoption
Example MRAA Contributions
(code, bugfixes & samples)
• Arduino
• Siemens
• Linaro (ARM)
• Apple
• SAP, Amazon, Microsoft
Example Developer Kits with
MRAA/UPM Support
• IoT Developer Kits (with Cloud
Service partners)
• RFP Kits
• IoT reference OSs – WR Linux
and ClearLinux
Sample external usage:
• Cylon.js
• Johnny-Five
• Linaro/96 Boards Community
• Mediatek Linkit Smart
• Android Things
• STMicro
• Phytec
• ICS
• Ublox
• Technexion
• Qualcomm
• GE
• Honeywell
• Siemens
• Omron
MRAA/UPM >2K avg. clones per month
MRAA/UPM ~20K avg. monthly visitors
IoT Dev Kit >25K avg. monthly visitors
Siemens
“[…] ‘mraa’ core works flawlessly on the current generation
IoT2020”
Android Things
“I really like how so much ‘just works’ with mraa and upm”
Linaro
“Well, the first thing I like about this library (mraa) is its ability
to support many peripherals […]”
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
9
Authorship
Pick the FPGA class
matching requirements
Eclipse MRAA and UPM copyright ownership
74%
8%
6%
2%
2%
2%1%1%1%1%1%1%
Total
Intel Corporation
Alex Tereschenko
Linaro Ltd
Emutex Ltd
Phytec Messtechnik GmbH
Serge Vakulenko
Linaro Limited
The Regents of the University of
California
Jules Dourlens
(jdourlens@gmailcom)
TechNexion Ltd
Colin O'Flynn
Dallas Semiconductor Corporation
89%
2%
1%1%1%1%1%1%0%0%0%0%0%0%0%0%0%0%0%0%0%0%0%
Total
Intel Corporation
Nordic Semiconductor ASA
Phytec Messtechnik GmbH
Rohm Semiconductor
Daniel Mosquera
Alex Tereschenko
seeed technology inc
Adafruit Industries
Sergey Kiselev
Bosch Sensortec GmbH
SparkFun Electronics
Jun Kato
Steve Karg
The Android Open Source Project
Yannick Adam
IFE-ENS-Lyon
Mike McCauley
Juan Jose Chong
Kionix Inc
Microsoft Corporation
SEMTECH SA
MRAA Project UPM Project
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
10
CI and Testing Infrastructure
Pick the FPGA class
matching requirements
Both projects are setup for continuous integration as well as
static code analysis and vulnerability scans.
Builders available on DockerHub and as DockerFiles.
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
11
IDE Integration
IDE integration allows you to easily
discover sensors and import code
snippets to quickly develop &
prototype…
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
12
Sensor Catalog Template
upm.mraa.io
Discover and search the sensor library, with code snippets
and sensor datasheets…
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
13
Standards drive real world products and solutions.
Currently UPM supports OPC-UA using the open62541 library*. Examples
provided for both Server & Client side implementations.
Other standards considered*:
Key takeaway:
• Industry standards define data formats and protocols for compliant devices
• UPM provides implementation to data values thus complements standards
Standards Compliance
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
• Support for entry level generic serial/UART cameras
• UPM VCAP module provides easy integration with libjpeg for capturing snapshots from Linux
video devices
• Keeps development centered around a single set of APIs when dealing with both sensors and
cameras
• Stills can be sent for processing to the CV pipeline (training or inference)
• Vision Kits come preloaded with UPM
• UPM provides complementary libraries:
• Motor control (servo, stepper)
• Distance measurement (lidar, sonar)
• Motion detection (IR)
• Light sensors
14
Eclipse UPM and OpenVINO™ Toolkit
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
15
Interacting with FPGA and Vision Accelerators
• MRAA supports entry level FPGA development (Terasic DE-10 Nano)
• Easy to learn and build experience with FPGA devices
• Scale: Atom, Core or Xeon + FPGAs and/or VPUs platforms:
• Altera FPGAs available as subplatforms from the MRAA library
• Mix and match any MRAA x86 supported platform with Altera FPGA PCIe cards
• Utilize FPGAs for traditional I/O expansion or sensor fusion
• UP AI Core and Edge
• Intel® Movidius™
Pick the FPGA class
matching requirements
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
16
Proposed Future Development Under Eclipse
Pick the FPGA class
matching requirements
Developer Tools Launched Q1’19 Q2’19 Q3’19 Q4’19 Q1’20
 IP transfer to Eclipse
Foundation
 IEI AIoT Developer
Kits Support
MRAA
• Open Source on Github
• I/O Library
• Supports x86, ARM,
MIPS, FPGA boards and
dev kits
(v2.0) Simple I/O Protocol
Abstraction:
• GPIO, AIO, PWM, SPI,
I2C, UART, 1-Wire,
Firmata
• Portable between
supported platforms
• OSes: Linux, Android
Things, Zephyr RTOS
• Language support: C,
C++, Java, JavaScript,
Python APIs
UPM
• Open Source on Github
• Standardized sensor library
with high level APIs that make
it easy to connect and use
sensors and actuators in IOT
solutions
• Enables fast and easy
transition from prototyping to
commercial deployment
 Mock platform
improvements for
sensor virtualization
 Dev kit support for
new IoT Platforms †
(v1.7) UPM Libraries with
400+ specialized sensor
drivers
• HW agnostic across
MRAA supported
boards
• Abstracts some
industrial standards
and protocols
• OS support: Linux,
Android Things,
Zephyr RTOS
• Language support: C,
C++, Java, JavaScript,
Python APIs
 Enhance I/O support
on FPGA devices
 New I/O protocol
support: I2S
 Dev kit support for
new Client Platforms †
 2.0 Release
 IP transfer to Eclipse Foundation
 Sensor Support via TinyB
 PLC support (libplctag, Siemens* IOT2020)
 Integration with EdgeX Foundry
 ProfiBus/ProfiNet
 EtherCAT
 UPM generic interface for actuators
 Enhance OPC-UA integration
 Dev kit support for
new IoT Platforms †
 UPM generic
interface for
radios/modems
† Provided by Intel based on HW availability
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
17
Pick the FPGA class
matching requirements
This virtual conference offers comprehensive resources and training to help developers sharpen their
professional skills and deliver future-ready solutions. The last edition of the Intel Global IoT DevFest, held in
June 2018, delivered 75 technical sessions and attracted 28,000+ developers across 90+ countries, garnering
182,000+ unique impressions.
CHOOSE FROM 4 CONFERENCE TRACKS
 Accelerating Business Transformation with Computer Vision
 Enabling Workload Consolidation for High-Performance Industrial System
 Transforming Retail for Immersive and Personalized Experiences
 Emerging Tools and Technologies for Innovative Solutions
IMPORTANT DATES & DEADLINES
 Last date to submit abstracts: May 17, 2019
 Notification of session acceptance for speakers before: May 24, 2019
 Conference dates: June 18-19, 2019 devfest.intel.com
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
Legal Disclaimer & Optimization Notice
Optimization Notice
Intel’s compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors.
These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or
effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for
use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the
applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.
Notice revision #20110804
18
Benchmark results were obtained prior to implementation of recent software patches and firmware updates intended to address exploits referred
to as "Spectre" and "Meltdown". Implementation of these updates may make these results inapplicable to your device or system.
Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors. Performance tests,
such as SYSmark and MobileMark, are measured using specific computer systems, components, software, operations and functions. Any change
to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating
your contemplated purchases, including the performance of that product when combined with other products. For more complete information
visit www.intel.com/benchmarks.
INFORMATION IN THIS DOCUMENT IS PROVIDED “AS IS”. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY
INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY
EXPRESS OR IMPLIED WARRANTY, RELATING TO THIS INFORMATION INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A
PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT.
Copyright © 2018, Intel Corporation. All rights reserved. Intel, Xeon, Xeon Phi, Core, VTune, and the Intel logo are trademarks of Intel Corporation
in the U.S. and other countries.
The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
20
 This component provides standardized, open
sourced abstraction libraries and tools
 It consists of Sensor Libraries
 And Cloud Connectors
Build Your Solution with the IoT Connection Tools
The IoT connection tools are a collection of libraries essential to any IoT solution developer.
Take advantage of tight integration with the IDE interface and project templates in Intel® System Studio.
TinyBMRAA UPM
Things
Network
Infrastructure
DataCenter/Cloud
EdgeCompute
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
We offer 2 projects aiming to create clean, modern and easy to use Bluetooth LE APIs.
• TinyB - exposes the BLE GATT API for C++, Java and other languages, using BlueZ over D-Bus.
• LittleB - exposes the BLE GATT API in pure C using BlueZ over SD-Bus.
• Firmata – Subplatform I/O for MCUs.
21
More on IoT Connection Tools
Serial
BLE
WiFi*
MCU
Espressif Arduino
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
Visualize
Learn
Build
Optimize
Deploy
Scale
22
Bridging the gap to production
• A comprehensive toolkit to
develop and deploy CV
solutions on Intel® platforms
• Harness the performance of
CV accelerators, quickly
deploy CV algorithms with
deep learning support, and
add custom kernels
Arduino Create
• Cloud based development
solution which streamlines
prototyping of commercial
based IoT solutions
• Setup made easy with
integrated Intel® based boards
• Multiple Intel® optimized
libraries available out of the box
including the IoT connection
tools
• Great for getting started and
creating proofs of concept but
can easily go beyond
• Simplifies application
deployment and device
management
• Lacks advanced debugging and
optimization features
• High performance kit
providing a clear path to
production
• Simple set up, pre-installed
Ubuntu OS, expanded, and a
means to incorporate
complex, advanced libraries
Intel® System Studio
• Easy-to-use, comprehensive
cross-platform tool suite
• Includes debuggers, analyzers
and optimization tools for IA
• Speed system and IoT device
application development, boost
performance and power
efficiency, and strengthen
system reliability
• Tight integration with the IoT
connection tools and dedicated
UI elements
• Supports C/C++ and Java
development for IoT solutions
• Steeper learning curve
Prototyping
Minimize risk by resolving unknowns
Commercial Deployment
Maximize success by optimizing solution
Project
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
23
Eclipse UPM and OpenVINO™ Toolkit
Static
Image
OpenCV
Process
Input Frame
FaceDetector FaceRecognizer Overlay
Status Messages → Syslog
Raw
Video
to
FFMPEG
Local
Face
DB
UPM
Selects
Input
UPM
LED
Control
MQTT
to
Web
Service
• Basic example of using UPM sensor libraries to control
the video pipeline in a Computer Vision application
• Motion sensor turns off camera when nobody is in front
of it
Copyright © 2018, Intel Corporation. All rights reserved.
*Other names and brands may be claimed as the property of others.
Optimization Notice
24
A Vision for the Future – AI and Sensor Fusion
Pick the FPGA class
matching requirements

More Related Content

PDF
IoT Developer Survey 2016
Eclipse IoT
 
PPTX
Developing IoT Applications Using Intel® System Studio | Eclipse IoT Day Sant...
Eclipse IoT
 
PPTX
Internet of manufacturing and Open Source
Ian Skerrett
 
PDF
Open Source for Industry 4.0 – Open IoT Summit NA 2018
Benjamin Cabé
 
PDF
Internet of Things(IoT) Applications | IoT Tutorial for Beginners | IoT Train...
Edureka!
 
PPTX
IoT Developer Survey 2017
Ian Skerrett
 
PPTX
Eclipse IoT for Industry 4.0
Ian Skerrett
 
PPTX
Eclipse IoT: Open source technology for IoT developers
Ian Skerrett
 
IoT Developer Survey 2016
Eclipse IoT
 
Developing IoT Applications Using Intel® System Studio | Eclipse IoT Day Sant...
Eclipse IoT
 
Internet of manufacturing and Open Source
Ian Skerrett
 
Open Source for Industry 4.0 – Open IoT Summit NA 2018
Benjamin Cabé
 
Internet of Things(IoT) Applications | IoT Tutorial for Beginners | IoT Train...
Edureka!
 
IoT Developer Survey 2017
Ian Skerrett
 
Eclipse IoT for Industry 4.0
Ian Skerrett
 
Eclipse IoT: Open source technology for IoT developers
Ian Skerrett
 

What's hot (20)

PPTX
Eclipse IOT [IoT World Santa Clara]
Ian Skerrett
 
PPTX
Leveraging the Open IoT Ecosystem to Accelerate Product Strategy
Ian Skerrett
 
PPTX
Creating the open source building blocks for IoT
Ian Skerrett
 
PDF
Research in Internet of Things' Operating Systems (IoT OS's)
Salahuddin ElKazak
 
PDF
Eclipse IoT Overview
Ian Skerrett
 
PDF
Building the Internet of Everything
Cisco Canada
 
PDF
Embedded system & IoT Course | certification Program | Learn and Build
Learn and Build
 
PDF
Building the Internet of Things with open source and Eclipse IoT projects (Be...
AGILE IoT
 
PDF
IoT Solutions - Dashboarding Real-Time Data | Internet of Things | IoT Techno...
Edureka!
 
PDF
Introduction to the AGILE project: open source modular gateway for the IoT (C...
AGILE IoT
 
PPTX
ABC of IoT Consortiums
Ian Skerrett
 
POTX
Cl17 dev net_1055_v1
Shubha Govil
 
PPTX
IoT Developer Survey 2015
Ian Skerrett
 
PDF
Wearables and IoT Strategy
AllSeen Alliance
 
PPTX
3 Software Stacks for IoT Solutions
Ian Skerrett
 
PDF
Machine Learning and Analytics in the Cloud on IoT Data
Intel® Software
 
PDF
Watson IoT @Ryerson University - IEEE Chapter
Markus Van Kempen
 
PDF
Intel’s Strategy in IoT Standards
NFC Forum
 
PDF
IoT Systems: Technology, Architecture & Performance
Ashu Joshi
 
PDF
Track 3 session 1 - st dev con 2016 -ieee- iot standards adn open source
ST_World
 
Eclipse IOT [IoT World Santa Clara]
Ian Skerrett
 
Leveraging the Open IoT Ecosystem to Accelerate Product Strategy
Ian Skerrett
 
Creating the open source building blocks for IoT
Ian Skerrett
 
Research in Internet of Things' Operating Systems (IoT OS's)
Salahuddin ElKazak
 
Eclipse IoT Overview
Ian Skerrett
 
Building the Internet of Everything
Cisco Canada
 
Embedded system & IoT Course | certification Program | Learn and Build
Learn and Build
 
Building the Internet of Things with open source and Eclipse IoT projects (Be...
AGILE IoT
 
IoT Solutions - Dashboarding Real-Time Data | Internet of Things | IoT Techno...
Edureka!
 
Introduction to the AGILE project: open source modular gateway for the IoT (C...
AGILE IoT
 
ABC of IoT Consortiums
Ian Skerrett
 
Cl17 dev net_1055_v1
Shubha Govil
 
IoT Developer Survey 2015
Ian Skerrett
 
Wearables and IoT Strategy
AllSeen Alliance
 
3 Software Stacks for IoT Solutions
Ian Skerrett
 
Machine Learning and Analytics in the Cloud on IoT Data
Intel® Software
 
Watson IoT @Ryerson University - IEEE Chapter
Markus Van Kempen
 
Intel’s Strategy in IoT Standards
NFC Forum
 
IoT Systems: Technology, Architecture & Performance
Ashu Joshi
 
Track 3 session 1 - st dev con 2016 -ieee- iot standards adn open source
ST_World
 
Ad

Similar to The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019 (20)

PDF
The MRAA and UPM Middleware Libraries
Intel® Software
 
PDF
Introduction ciot workshop premeetup
BeMyApp
 
PPTX
Начало работы с Intel IoT Dev Kit
Intel® Developer Zone Россия
 
PDF
IoT Getting Started with Intel® IoT Devkit
Vasily Ryzhonkov
 
PDF
Accelerating SparkML Workloads on the Intel Xeon+FPGA Platform with Srivatsan...
Databricks
 
PDF
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
Edge AI and Vision Alliance
 
PDF
Trends in Systems and How to Get Efficient Performance
inside-BigData.com
 
PPTX
DATE 2020: Design, Automation and Test in Europe Conference
LEGATO project
 
PDF
Pre meetup intel® roadshow london
Hugo Espinosa
 
PDF
In datacenter performance analysis of a tensor processing unit
Jinwon Lee
 
PPTX
Lab Handson: Power your Creations with Intel Edison!
Codemotion
 
PDF
Brillo/Weave Part 2: Deep Dive
Jalal Rohani
 
PPTX
Computer Architecture and Organization
ssuserdfc773
 
PDF
HiPEAC 2019 Tutorial - Maestro RTOS
Tulipp. Eu
 
PPTX
HiPEAC Computing Systems Week 2022_Mario Porrmann presentation
VEDLIoT Project
 
PDF
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
tdc-globalcode
 
PDF
Implementing AI: Hardware Challenges: Heterogeneous and Adaptive Computing fo...
KTN
 
PDF
Hetergeneous Compute with Standards Based OFI/MPI/OpenMP Programming
Intel® Software
 
PDF
OpenMP tasking model: from the standard to the classroom
Facultad de Informática UCM
 
PDF
AI Crash Course- Supercomputing
Intel IT Center
 
The MRAA and UPM Middleware Libraries
Intel® Software
 
Introduction ciot workshop premeetup
BeMyApp
 
Начало работы с Intel IoT Dev Kit
Intel® Developer Zone Россия
 
IoT Getting Started with Intel® IoT Devkit
Vasily Ryzhonkov
 
Accelerating SparkML Workloads on the Intel Xeon+FPGA Platform with Srivatsan...
Databricks
 
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
Edge AI and Vision Alliance
 
Trends in Systems and How to Get Efficient Performance
inside-BigData.com
 
DATE 2020: Design, Automation and Test in Europe Conference
LEGATO project
 
Pre meetup intel® roadshow london
Hugo Espinosa
 
In datacenter performance analysis of a tensor processing unit
Jinwon Lee
 
Lab Handson: Power your Creations with Intel Edison!
Codemotion
 
Brillo/Weave Part 2: Deep Dive
Jalal Rohani
 
Computer Architecture and Organization
ssuserdfc773
 
HiPEAC 2019 Tutorial - Maestro RTOS
Tulipp. Eu
 
HiPEAC Computing Systems Week 2022_Mario Porrmann presentation
VEDLIoT Project
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
tdc-globalcode
 
Implementing AI: Hardware Challenges: Heterogeneous and Adaptive Computing fo...
KTN
 
Hetergeneous Compute with Standards Based OFI/MPI/OpenMP Programming
Intel® Software
 
OpenMP tasking model: from the standard to the classroom
Facultad de Informática UCM
 
AI Crash Course- Supercomputing
Intel IT Center
 
Ad

More from Eclipse IoT (6)

PDF
Exploring the Trend Toward the Edge | Eclipse IoT Day Santa Clara 2019
Eclipse IoT
 
PDF
Using Eclipse MQTT & Sparkplug as your IIoT Digital Transformation Toolkit | ...
Eclipse IoT
 
PDF
IoT Developer Survey 2019 Report
Eclipse IoT
 
PDF
IoT Developer Survey 2015
Eclipse IoT
 
PDF
IoT Developer Survey 2018
Eclipse IoT
 
PDF
IoT Developer Survey 2017
Eclipse IoT
 
Exploring the Trend Toward the Edge | Eclipse IoT Day Santa Clara 2019
Eclipse IoT
 
Using Eclipse MQTT & Sparkplug as your IIoT Digital Transformation Toolkit | ...
Eclipse IoT
 
IoT Developer Survey 2019 Report
Eclipse IoT
 
IoT Developer Survey 2015
Eclipse IoT
 
IoT Developer Survey 2018
Eclipse IoT
 
IoT Developer Survey 2017
Eclipse IoT
 

Recently uploaded (20)

PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PPTX
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PDF
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
PDF
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
PDF
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
PPTX
Simple and concise overview about Quantum computing..pptx
mughal641
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
PDF
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
PDF
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
AI Unleashed - Shaping the Future -Starting Today - AIOUG Yatra 2025 - For Co...
Sandesh Rao
 
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
Simple and concise overview about Quantum computing..pptx
mughal641
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 

The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019

  • 1. Tudor Panu IoT Software Architect May 2019
  • 2. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 2 Agenda • Introduction • The MRAA and UPM Projects • Deep Dive: Value Proposition, Infrastructure, Outreach Examples and more • The Big Picture: Integrating the Tools Within the IoT Ecosystem • Industrial Standards and Interoperability • Future Plans
  • 3. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 3 Why Sensor Framework? Without Sensor Framework Setup pinmuxes (~200 lines of code) Interact with sensor With Sensor Framework (~5 lines of code) Set Tristate to 0 Set GPIO14 to input Set GPIO165 to input Set GPIO236 to output & disable Set GPIO237 to output & disable Set GPIO212 to input Set GPIO213 to input Change pinmode for pin 28 Change pinmode for pin 27 Set Tristate to 1 Example: reading data from a typical I2C sensor Call read function Call sensor constructor Define smbus data structs Fill in values ioctl write configure sensor Allocate read buffer ioctl read • MRAA handles pinmuxing and memory allocations • UPM provides default configuration and enables sensor • Easy code portability to any MRAA supported platform
  • 4. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice • Standard IO Interface for all IoT Developer Kits • Supports Intel & non-Intel (community) platforms • Abstraction APIs: • Open source on GitHub: http://mraa.io 4 Eclipse MRAA - Hardware Abstraction • GPIO • Analog (AIO) • PWM • SPI • I2C • UART • 1-Wire • Firmata • IIO • LED APIs Typical stack on UNIX systems: Intel® IoT Entry, Workstations and Servers Aaeon* UP & UP2 UP Core Plus and AI Plus Kits
  • 5. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Linux Kernel MRAA C/C++ APIs 5 ActuatorsSensors UPM C++ Standardized APIs iLight iPressure iHumidity iGas iGPS iAngle GPIO I2C SPI UART PWM Eclipse UPM - Standardized Sensor APIs Connectivity Industrial ADC iio Libmodbus Bacnet Other… … tinyb
  • 6. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 6 400+ specialized sensor drivers and growing, thousands of basic prototyping and industrial sensors supported (e.g. LEDs, Switches) • Prototype* • Industrial* • Connectivity* Value Proposition
  • 7. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 7 Distribution Channels • Integrated with native package managers Ecosystem & Distribution Multiple OS support* Multiple language support* IDE Integrations
  • 8. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 8 Outreach & Adoption Example MRAA Contributions (code, bugfixes & samples) • Arduino • Siemens • Linaro (ARM) • Apple • SAP, Amazon, Microsoft Example Developer Kits with MRAA/UPM Support • IoT Developer Kits (with Cloud Service partners) • RFP Kits • IoT reference OSs – WR Linux and ClearLinux Sample external usage: • Cylon.js • Johnny-Five • Linaro/96 Boards Community • Mediatek Linkit Smart • Android Things • STMicro • Phytec • ICS • Ublox • Technexion • Qualcomm • GE • Honeywell • Siemens • Omron MRAA/UPM >2K avg. clones per month MRAA/UPM ~20K avg. monthly visitors IoT Dev Kit >25K avg. monthly visitors Siemens “[…] ‘mraa’ core works flawlessly on the current generation IoT2020” Android Things “I really like how so much ‘just works’ with mraa and upm” Linaro “Well, the first thing I like about this library (mraa) is its ability to support many peripherals […]”
  • 9. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 9 Authorship Pick the FPGA class matching requirements Eclipse MRAA and UPM copyright ownership 74% 8% 6% 2% 2% 2%1%1%1%1%1%1% Total Intel Corporation Alex Tereschenko Linaro Ltd Emutex Ltd Phytec Messtechnik GmbH Serge Vakulenko Linaro Limited The Regents of the University of California Jules Dourlens (jdourlens@gmailcom) TechNexion Ltd Colin O'Flynn Dallas Semiconductor Corporation 89% 2% 1%1%1%1%1%1%0%0%0%0%0%0%0%0%0%0%0%0%0%0%0% Total Intel Corporation Nordic Semiconductor ASA Phytec Messtechnik GmbH Rohm Semiconductor Daniel Mosquera Alex Tereschenko seeed technology inc Adafruit Industries Sergey Kiselev Bosch Sensortec GmbH SparkFun Electronics Jun Kato Steve Karg The Android Open Source Project Yannick Adam IFE-ENS-Lyon Mike McCauley Juan Jose Chong Kionix Inc Microsoft Corporation SEMTECH SA MRAA Project UPM Project
  • 10. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 10 CI and Testing Infrastructure Pick the FPGA class matching requirements Both projects are setup for continuous integration as well as static code analysis and vulnerability scans. Builders available on DockerHub and as DockerFiles.
  • 11. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 11 IDE Integration IDE integration allows you to easily discover sensors and import code snippets to quickly develop & prototype…
  • 12. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 12 Sensor Catalog Template upm.mraa.io Discover and search the sensor library, with code snippets and sensor datasheets…
  • 13. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 13 Standards drive real world products and solutions. Currently UPM supports OPC-UA using the open62541 library*. Examples provided for both Server & Client side implementations. Other standards considered*: Key takeaway: • Industry standards define data formats and protocols for compliant devices • UPM provides implementation to data values thus complements standards Standards Compliance
  • 14. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice • Support for entry level generic serial/UART cameras • UPM VCAP module provides easy integration with libjpeg for capturing snapshots from Linux video devices • Keeps development centered around a single set of APIs when dealing with both sensors and cameras • Stills can be sent for processing to the CV pipeline (training or inference) • Vision Kits come preloaded with UPM • UPM provides complementary libraries: • Motor control (servo, stepper) • Distance measurement (lidar, sonar) • Motion detection (IR) • Light sensors 14 Eclipse UPM and OpenVINO™ Toolkit
  • 15. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 15 Interacting with FPGA and Vision Accelerators • MRAA supports entry level FPGA development (Terasic DE-10 Nano) • Easy to learn and build experience with FPGA devices • Scale: Atom, Core or Xeon + FPGAs and/or VPUs platforms: • Altera FPGAs available as subplatforms from the MRAA library • Mix and match any MRAA x86 supported platform with Altera FPGA PCIe cards • Utilize FPGAs for traditional I/O expansion or sensor fusion • UP AI Core and Edge • Intel® Movidius™ Pick the FPGA class matching requirements
  • 16. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 16 Proposed Future Development Under Eclipse Pick the FPGA class matching requirements Developer Tools Launched Q1’19 Q2’19 Q3’19 Q4’19 Q1’20  IP transfer to Eclipse Foundation  IEI AIoT Developer Kits Support MRAA • Open Source on Github • I/O Library • Supports x86, ARM, MIPS, FPGA boards and dev kits (v2.0) Simple I/O Protocol Abstraction: • GPIO, AIO, PWM, SPI, I2C, UART, 1-Wire, Firmata • Portable between supported platforms • OSes: Linux, Android Things, Zephyr RTOS • Language support: C, C++, Java, JavaScript, Python APIs UPM • Open Source on Github • Standardized sensor library with high level APIs that make it easy to connect and use sensors and actuators in IOT solutions • Enables fast and easy transition from prototyping to commercial deployment  Mock platform improvements for sensor virtualization  Dev kit support for new IoT Platforms † (v1.7) UPM Libraries with 400+ specialized sensor drivers • HW agnostic across MRAA supported boards • Abstracts some industrial standards and protocols • OS support: Linux, Android Things, Zephyr RTOS • Language support: C, C++, Java, JavaScript, Python APIs  Enhance I/O support on FPGA devices  New I/O protocol support: I2S  Dev kit support for new Client Platforms †  2.0 Release  IP transfer to Eclipse Foundation  Sensor Support via TinyB  PLC support (libplctag, Siemens* IOT2020)  Integration with EdgeX Foundry  ProfiBus/ProfiNet  EtherCAT  UPM generic interface for actuators  Enhance OPC-UA integration  Dev kit support for new IoT Platforms †  UPM generic interface for radios/modems † Provided by Intel based on HW availability
  • 17. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 17 Pick the FPGA class matching requirements This virtual conference offers comprehensive resources and training to help developers sharpen their professional skills and deliver future-ready solutions. The last edition of the Intel Global IoT DevFest, held in June 2018, delivered 75 technical sessions and attracted 28,000+ developers across 90+ countries, garnering 182,000+ unique impressions. CHOOSE FROM 4 CONFERENCE TRACKS  Accelerating Business Transformation with Computer Vision  Enabling Workload Consolidation for High-Performance Industrial System  Transforming Retail for Immersive and Personalized Experiences  Emerging Tools and Technologies for Innovative Solutions IMPORTANT DATES & DEADLINES  Last date to submit abstracts: May 17, 2019  Notification of session acceptance for speakers before: May 24, 2019  Conference dates: June 18-19, 2019 devfest.intel.com
  • 18. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Legal Disclaimer & Optimization Notice Optimization Notice Intel’s compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice. Notice revision #20110804 18 Benchmark results were obtained prior to implementation of recent software patches and firmware updates intended to address exploits referred to as "Spectre" and "Meltdown". Implementation of these updates may make these results inapplicable to your device or system. Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors. Performance tests, such as SYSmark and MobileMark, are measured using specific computer systems, components, software, operations and functions. Any change to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating your contemplated purchases, including the performance of that product when combined with other products. For more complete information visit www.intel.com/benchmarks. INFORMATION IN THIS DOCUMENT IS PROVIDED “AS IS”. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO THIS INFORMATION INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. Copyright © 2018, Intel Corporation. All rights reserved. Intel, Xeon, Xeon Phi, Core, VTune, and the Intel logo are trademarks of Intel Corporation in the U.S. and other countries.
  • 20. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 20  This component provides standardized, open sourced abstraction libraries and tools  It consists of Sensor Libraries  And Cloud Connectors Build Your Solution with the IoT Connection Tools The IoT connection tools are a collection of libraries essential to any IoT solution developer. Take advantage of tight integration with the IDE interface and project templates in Intel® System Studio. TinyBMRAA UPM Things Network Infrastructure DataCenter/Cloud EdgeCompute
  • 21. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice We offer 2 projects aiming to create clean, modern and easy to use Bluetooth LE APIs. • TinyB - exposes the BLE GATT API for C++, Java and other languages, using BlueZ over D-Bus. • LittleB - exposes the BLE GATT API in pure C using BlueZ over SD-Bus. • Firmata – Subplatform I/O for MCUs. 21 More on IoT Connection Tools Serial BLE WiFi* MCU Espressif Arduino
  • 22. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Visualize Learn Build Optimize Deploy Scale 22 Bridging the gap to production • A comprehensive toolkit to develop and deploy CV solutions on Intel® platforms • Harness the performance of CV accelerators, quickly deploy CV algorithms with deep learning support, and add custom kernels Arduino Create • Cloud based development solution which streamlines prototyping of commercial based IoT solutions • Setup made easy with integrated Intel® based boards • Multiple Intel® optimized libraries available out of the box including the IoT connection tools • Great for getting started and creating proofs of concept but can easily go beyond • Simplifies application deployment and device management • Lacks advanced debugging and optimization features • High performance kit providing a clear path to production • Simple set up, pre-installed Ubuntu OS, expanded, and a means to incorporate complex, advanced libraries Intel® System Studio • Easy-to-use, comprehensive cross-platform tool suite • Includes debuggers, analyzers and optimization tools for IA • Speed system and IoT device application development, boost performance and power efficiency, and strengthen system reliability • Tight integration with the IoT connection tools and dedicated UI elements • Supports C/C++ and Java development for IoT solutions • Steeper learning curve Prototyping Minimize risk by resolving unknowns Commercial Deployment Maximize success by optimizing solution Project
  • 23. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 23 Eclipse UPM and OpenVINO™ Toolkit Static Image OpenCV Process Input Frame FaceDetector FaceRecognizer Overlay Status Messages → Syslog Raw Video to FFMPEG Local Face DB UPM Selects Input UPM LED Control MQTT to Web Service • Basic example of using UPM sensor libraries to control the video pipeline in a Computer Vision application • Motion sensor turns off camera when nobody is in front of it
  • 24. Copyright © 2018, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 24 A Vision for the Future – AI and Sensor Fusion Pick the FPGA class matching requirements