SlideShare a Scribd company logo
1 of 27
Download to read offline
Eclipse IoT Day Grenoble 2016© IS2T S.A. 2016. All rights reserved.
EDJE PROJECT
The Software Foundation for IoT Devices
https://projects.eclipse.org/projects/iot.edje
Eclipse IoT Day Grenoble 2016
PRESENTER
Jérôme Leroux
Development and Innovation Manager at MicroEJ®
Edje Project Leader
10 years expertise in Java Embedded Systems
jerome.leroux@microej.com
The information contained herein is not warranted to be error-free.
IS2T® and MicroEJ® and all relative logos are trademarks or registered trademarks of IS2T S.A. in France and other Countries.
Java™ is Sun Microsystems’ trademark for a technology for developing application software and deploying it in cross-platform, networked
environments. When it is used in this site without adding the “™” symbol, it includes implementations of the technology by companies other
than Sun. Java™, all Java-based marks and all related logos are trademarks or registered trademarks of Sun Microsystems Inc, in the United
States and other Countries.
Other trademarks are proprietary of their respective owners.
Eclipse IoT Day Grenoble 2016
EDJE AND IOT
INTRODUCTION
Eclipse IoT Day Grenoble 2016
EDJE PROJECT
The Hardware Abstraction Java API for the IoT embedded systems
• Peripheral management
• Controller Communication Interfaces (Serial connection, CAN, SPI, I²C)
• Digital and Analog I/O (GPIO, ADC, DAC)
Scope
• Target resource-constrained micro-controller
• Provide ready-to-use software packages for target hardware
• Define a modular and easy to port framework
Project Status
• Eclipse IoT project
• Incubation
Eclipse IoT Day Grenoble 2016
IOT TOPOLOGY
IOT DEVICES GATEWAY SERVER
8/16/32-bit MCU Mono-Core
Frequency: < 200 MHz
Flash: < 1 MB
RAM: < 512 KB
32/64-bit MPU Multi-Core
Frequency: in GHz
Flash: in GB
RAM: in GB
MCU
MPU
Eclipse IoT Day Grenoble 2016
IOT HARDWARE
STM32F4 Discovery Raspberry PI 2
• Processor: 32-bits quad-core
Cortex-A7 (BCM2836)
• Frequency: 900 MHz
• RAM: 1 GB
• Flash: SD Card
• Processor: 32-bits Cortex-M4
(STM32F407VGT6)
• Frequency: 168 MHz
• RAM: 192 KB
• Flash: 1 MB
Eclipse IoT Day Grenoble 2016
EDJE APPLICATION FIELD
Sensors/Actuators
Local Network
Internet
A library at the edge of the IoT for
sensor hubs and devices
Eclipse IoT Day Grenoble 2016
EDJE REQUIREMENTS
Eclipse IoT Day Grenoble 2016
List of Java API
• The minimum execution environment provided by an Edje compatible
device
• Intersection between Java SE, Java SE Embedded, MicroEJ and Android
• Includes java.lang, java.util, java.io, …
EDJE DEVICE CONFIGURATION
J2SE
J2SE
Embedded
MicroEJ Android
Edje
Eclipse IoT Day Grenoble 2016
List of Java API
• The minimum execution environment provided by an Edje compatible
device
• Intersection between Java SE, Java SE Embedded, MicroEJ and Android
• Includes java.lang, java.util, java.io, …
EDJE DEVICE CONFIGURATION
Edje Device Configuration
Edje API
Edje Application
Library
Execution
Environment
Eclipse IoT Day Grenoble 2016
HARDWARE REQUIREMENTS
Minimal targeted Hardware
• Processor: 32-bits (e.g. Cortex-M0)
• Frequency: 16 MHz
• RAM: 32 KB
• Flash: 128 KB
Eclipse IoT Day Grenoble 2016
EDJE API
Eclipse IoT Day Grenoble 2016
EDJE API
Edje comes with the following services
Controller
Communication
Interfaces
Serial Port
CAN
Digital and
Analog I/O
GPIO
Peripheral
Management
LCD
USB Devices
Analog Input
Eclipse IoT Day Grenoble 2016
EDJE API
Peripheral Management
• List the peripherals of a platform
o MCU peripherals (UART, timer, USB controller, …)
o Board peripherals (screen, button, LED, sensors, …)
o External peripherals (USB devices, bluetooth devices, …)
• Peripheral plug/unplug notification system
Eclipse IoT Day Grenoble 2016
EDJE API
Controller Communication Interfaces
• Some peripherals can establish a connection to external devices
o Serial Connection (UART)
o Serial Peripheral Interface (SPI)
o Inter-Integrated Circuit (I²C)
o Controller Area Network (CAN)
• The peripheral implements Connectable interface
• Connection is described by a String
• Example with serial ports:
List<SerialPort> serialPorts = PeripheralManager.list(SerialPort.class);
for(SerialPort serialPort : serialPorts){
Connection connection = serialPort.openConnection("baudrate=115200;bitsperchar=8");
…
connection.close();
}
Eclipse IoT Day Grenoble 2016
EDJE API
Digital and Analog I/O
• Manage controller pins
• API inspired from Arduino C API
• General Purpose Input/Output (GPIO)
o LED, Buzzer, Button
• Analog to Digital Converter (ADC)
o Potentiometer, Temperature Sensor, Light Sensor
• Digital to Analog Converter (DAC)
o Speaker, Light Dimmer
• Pulse Width Modulation (PWM)
o Motor
Eclipse IoT Day Grenoble 2016
EDJE API
Digital and Analog I/O
• A pin is identified by the port and an ID
• Port name can be
o MCU specific
PortAPortB
Eclipse IoT Day Grenoble 2016
EDJE API
Digital and Analog I/O
• A pin is identified by the port and an ID
• Port name can be
o Board specific
J1
J2
J3
J4
Eclipse IoT Day Grenoble 2016
EDJE API
Digital and Analog I/O
• A pin is identified by the port and an ID
• Port name can be
o Standard
Digital Arduino
Analog Arduino
Eclipse IoT Day Grenoble 2016
REFERENCE
IMPLEMENTATIONS
Eclipse IoT Day Grenoble 2016
REFERENCE IMPLEMENTATIONS
Features
• Peripheral Management
• UART, USB CDC, GPIO, DAC, ADC
Hardware
• Raspberry-Pi 2
• Quad-Cortex-A7 @ 900 MHz
• RAM: 1 GB RAM
Platform
• Kura
• OpenJDK
• Linux
Eclipse IoT Day Grenoble 2016
REFERENCE IMPLEMENTATIONS
Features
• Peripheral Management
• UART, USB CDC, GPIO, DAC, ADC
Hardware
• STM32F746G-DISCO
• Cortex-M7 @ 200 MHz
• RAM: 8 MB
• Flash: 16 MB
Platform
• MicroEJ OS
• FreeRTOS
• STM32Cube
Eclipse IoT Day Grenoble 2016
REFERENCE IMPLEMENTATIONS
Features
• Peripheral Management
• UART, USB CDC, GPIO, DAC, ADC
PC Simulation
• Java® SE
• Hardware In the Loop Simulation (HIL)
Execution
Flow
Ethernet
or Serial
Eclipse IoT Day Grenoble 2016
EDJE ROADMAP
Eclipse IoT Day Grenoble 2016
POTENTIAL ROADMAP
Features
• I²C, SPI
• Controller Area Network (CAN)
• Power Management
• Sensor
Reference Implementations
• MicroEJ Renesas Synergy Cortex-M4
• MicroEJ NXP Kinetis Cortex-M0+
Eclipse IoT Day Grenoble 2016
CALL TO ACTION
Eclipse IoT Day Grenoble 2016
DEMO
=
+ +
over MicroEJSTM32F746G-DISCO Arduino Multi-function
Shield

More Related Content

What's hot

Nio100 product guide 20150520
Nio100 product guide 20150520Nio100 product guide 20150520
Nio100 product guide 20150520
和得 王
 
Axessor_Brochure_US_04-16
Axessor_Brochure_US_04-16Axessor_Brochure_US_04-16
Axessor_Brochure_US_04-16
Axel de Blok
 

What's hot (20)

Peripheral Programming using Arduino and Python on MediaTek LinkIt Smart 7688...
Peripheral Programming using Arduino and Python on MediaTek LinkIt Smart 7688...Peripheral Programming using Arduino and Python on MediaTek LinkIt Smart 7688...
Peripheral Programming using Arduino and Python on MediaTek LinkIt Smart 7688...
 
Developing IoT devices. Creating wearables with the new LinkIt™ 2523 HDK by SAC
Developing IoT devices. Creating wearables with the new LinkIt™ 2523 HDK by SACDeveloping IoT devices. Creating wearables with the new LinkIt™ 2523 HDK by SAC
Developing IoT devices. Creating wearables with the new LinkIt™ 2523 HDK by SAC
 
Overview of the Intel® Internet of Things Developer Kit
Overview of the Intel® Internet of Things Developer KitOverview of the Intel® Internet of Things Developer Kit
Overview of the Intel® Internet of Things Developer Kit
 
Webinar: Plataforma Renesas Synergy – Construindo sua aplicação MQTT com anal...
Webinar: Plataforma Renesas Synergy – Construindo sua aplicação MQTT com anal...Webinar: Plataforma Renesas Synergy – Construindo sua aplicação MQTT com anal...
Webinar: Plataforma Renesas Synergy – Construindo sua aplicação MQTT com anal...
 
Nio100 product guide 20150520
Nio100 product guide 20150520Nio100 product guide 20150520
Nio100 product guide 20150520
 
OCF/IoTivity for Healthcare/Fitness/Wearable
OCF/IoTivity for Healthcare/Fitness/WearableOCF/IoTivity for Healthcare/Fitness/Wearable
OCF/IoTivity for Healthcare/Fitness/Wearable
 
MediaTek IoT power management webinar
MediaTek IoT power management webinarMediaTek IoT power management webinar
MediaTek IoT power management webinar
 
Axessor_Brochure_US_04-16
Axessor_Brochure_US_04-16Axessor_Brochure_US_04-16
Axessor_Brochure_US_04-16
 
MediaTek Linkit Smart 7688 Webinar
MediaTek Linkit Smart 7688 WebinarMediaTek Linkit Smart 7688 Webinar
MediaTek Linkit Smart 7688 Webinar
 
Eclipse Kura Shoot a-pi
Eclipse Kura Shoot a-piEclipse Kura Shoot a-pi
Eclipse Kura Shoot a-pi
 
MediaTek Labs Webinar: Getting Started with LinkIt ONE
MediaTek Labs Webinar: Getting Started with LinkIt ONEMediaTek Labs Webinar: Getting Started with LinkIt ONE
MediaTek Labs Webinar: Getting Started with LinkIt ONE
 
Introduction ciot workshop premeetup
Introduction ciot workshop premeetupIntroduction ciot workshop premeetup
Introduction ciot workshop premeetup
 
Arduino camera interfacing OV7670
Arduino camera interfacing OV7670Arduino camera interfacing OV7670
Arduino camera interfacing OV7670
 
Introduction to epid
Introduction to epidIntroduction to epid
Introduction to epid
 
Geek Pic-Nic Master Class
Geek Pic-Nic Master ClassGeek Pic-Nic Master Class
Geek Pic-Nic Master Class
 
Creating a successful IoT product with MediaTek Labs
Creating a successful IoT product with MediaTek LabsCreating a successful IoT product with MediaTek Labs
Creating a successful IoT product with MediaTek Labs
 
Utilisation de la plateforme virtuelle QEMU/SystemC pour l'IoT
Utilisation de la plateforme virtuelle QEMU/SystemC pour l'IoTUtilisation de la plateforme virtuelle QEMU/SystemC pour l'IoT
Utilisation de la plateforme virtuelle QEMU/SystemC pour l'IoT
 
Leveraging the Android Open Accessory Protocol
Leveraging the Android Open Accessory ProtocolLeveraging the Android Open Accessory Protocol
Leveraging the Android Open Accessory Protocol
 
IoT Meets Security
IoT Meets SecurityIoT Meets Security
IoT Meets Security
 
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
 

Viewers also liked

Building the Internet of Things with Eclipse IoT - JavaLand 2014
Building the Internet of Things with Eclipse IoT - JavaLand 2014Building the Internet of Things with Eclipse IoT - JavaLand 2014
Building the Internet of Things with Eclipse IoT - JavaLand 2014
Benjamin Cabé
 

Viewers also liked (20)

IoT Projects - DIY Wireless Sensor Network at Dreamforce 2013 #DevZoneLab
IoT Projects - DIY Wireless Sensor Network at Dreamforce 2013 #DevZoneLabIoT Projects - DIY Wireless Sensor Network at Dreamforce 2013 #DevZoneLab
IoT Projects - DIY Wireless Sensor Network at Dreamforce 2013 #DevZoneLab
 
ECE-EMBEDDED- 2015
ECE-EMBEDDED- 2015ECE-EMBEDDED- 2015
ECE-EMBEDDED- 2015
 
MicroEJ, the OS for IoT
MicroEJ, the OS for IoTMicroEJ, the OS for IoT
MicroEJ, the OS for IoT
 
ConnectTheDots - My Galileo based weather station and first entry into IoT
ConnectTheDots - My Galileo based weather station and first entry into IoTConnectTheDots - My Galileo based weather station and first entry into IoT
ConnectTheDots - My Galileo based weather station and first entry into IoT
 
Eclipse Edje Project Status
Eclipse Edje Project StatusEclipse Edje Project Status
Eclipse Edje Project Status
 
Report IOT Robot
Report IOT RobotReport IOT Robot
Report IOT Robot
 
MQTT - Austin IoT Meetup
MQTT - Austin IoT MeetupMQTT - Austin IoT Meetup
MQTT - Austin IoT Meetup
 
Cloud iot-new-software-requirements
Cloud iot-new-software-requirementsCloud iot-new-software-requirements
Cloud iot-new-software-requirements
 
Building Applications with Eclipse IoT, Block by Block
Building Applications with Eclipse IoT, Block by BlockBuilding Applications with Eclipse IoT, Block by Block
Building Applications with Eclipse IoT, Block by Block
 
Creating end-to-end IoT applications with Eclipse Kura & Solair IoT Platform
Creating end-to-end IoT applications with Eclipse Kura & Solair IoT PlatformCreating end-to-end IoT applications with Eclipse Kura & Solair IoT Platform
Creating end-to-end IoT applications with Eclipse Kura & Solair IoT Platform
 
Open source IoT
Open source IoTOpen source IoT
Open source IoT
 
IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett
IoTWorld 2016 OSS Keynote Param Singh, Ian SkerrettIoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett
IoTWorld 2016 OSS Keynote Param Singh, Ian Skerrett
 
Examining the emergent open source IoT ecosystem - IoT World Europe 2016
Examining the emergent open source IoT ecosystem - IoT World Europe 2016Examining the emergent open source IoT ecosystem - IoT World Europe 2016
Examining the emergent open source IoT ecosystem - IoT World Europe 2016
 
2016-09-eclipse-iot-cf-summit
2016-09-eclipse-iot-cf-summit2016-09-eclipse-iot-cf-summit
2016-09-eclipse-iot-cf-summit
 
IoT Aquarium 2
IoT Aquarium 2IoT Aquarium 2
IoT Aquarium 2
 
Building the Internet of Things with Eclipse IoT - JavaLand 2014
Building the Internet of Things with Eclipse IoT - JavaLand 2014Building the Internet of Things with Eclipse IoT - JavaLand 2014
Building the Internet of Things with Eclipse IoT - JavaLand 2014
 
Simple Android Project (SAP)... A Test Application
Simple Android Project (SAP)... A Test ApplicationSimple Android Project (SAP)... A Test Application
Simple Android Project (SAP)... A Test Application
 
End-to-end IoT solutions with Java and Eclipse IoT
End-to-end IoT solutions with Java and Eclipse IoTEnd-to-end IoT solutions with Java and Eclipse IoT
End-to-end IoT solutions with Java and Eclipse IoT
 
Eclipse IoT: Open source technology for IoT developers
Eclipse IoT: Open source technology for IoT developersEclipse IoT: Open source technology for IoT developers
Eclipse IoT: Open source technology for IoT developers
 
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
 

Similar to Eclipse IoT Edje project: the software foundation for IoT devices

Workshop on IoT and Basic Home Automation_BAIUST.pptx
Workshop on IoT and Basic Home Automation_BAIUST.pptxWorkshop on IoT and Basic Home Automation_BAIUST.pptx
Workshop on IoT and Basic Home Automation_BAIUST.pptx
Redwan Ferdous
 
The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019
The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019
The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019
Eclipse IoT
 

Similar to Eclipse IoT Edje project: the software foundation for IoT devices (20)

Linxu conj2016 96boards
Linxu conj2016 96boardsLinxu conj2016 96boards
Linxu conj2016 96boards
 
Taller IoT en la Actualidad
Taller IoT en la ActualidadTaller IoT en la Actualidad
Taller IoT en la Actualidad
 
Internet of things - The Present & The Future
Internet of things - The Present & The FutureInternet of things - The Present & The Future
Internet of things - The Present & The Future
 
Workshop on IoT and Basic Home Automation_BAIUST.pptx
Workshop on IoT and Basic Home Automation_BAIUST.pptxWorkshop on IoT and Basic Home Automation_BAIUST.pptx
Workshop on IoT and Basic Home Automation_BAIUST.pptx
 
DotNetToscana - Azure IoT Hub - Il Concentratore
DotNetToscana - Azure IoT Hub - Il ConcentratoreDotNetToscana - Azure IoT Hub - Il Concentratore
DotNetToscana - Azure IoT Hub - Il Concentratore
 
Pre meetup intel® roadshow london
Pre meetup intel® roadshow londonPre meetup intel® roadshow london
Pre meetup intel® roadshow london
 
Quick prototyping using Gadgeteer, Raspberry Pi + Fez Cream
Quick prototyping using Gadgeteer, Raspberry Pi + Fez CreamQuick prototyping using Gadgeteer, Raspberry Pi + Fez Cream
Quick prototyping using Gadgeteer, Raspberry Pi + Fez Cream
 
Eclipse Plugin for ESP-IDF - EclipseCon Europe 2019
Eclipse Plugin for ESP-IDF -  EclipseCon Europe 2019Eclipse Plugin for ESP-IDF -  EclipseCon Europe 2019
Eclipse Plugin for ESP-IDF - EclipseCon Europe 2019
 
Hands On Workshop on IoT: From Arduino to JRC Board
Hands On Workshop on IoT: From Arduino to JRC BoardHands On Workshop on IoT: From Arduino to JRC Board
Hands On Workshop on IoT: From Arduino to JRC Board
 
Internet of Things Conference - Bogor city
Internet of Things Conference - Bogor cityInternet of Things Conference - Bogor city
Internet of Things Conference - Bogor city
 
IDF_Eclipse_Plugin_EclipseCon2020_v2.pdf
IDF_Eclipse_Plugin_EclipseCon2020_v2.pdfIDF_Eclipse_Plugin_EclipseCon2020_v2.pdf
IDF_Eclipse_Plugin_EclipseCon2020_v2.pdf
 
The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019
The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019
The MRAA and UPM Eclipse IoT Projects | Eclipse IoT Day Santa Clara 2019
 
Fullstack IoT Development
Fullstack IoT DevelopmentFullstack IoT Development
Fullstack IoT Development
 
Iot andriod app development
Iot andriod app development Iot andriod app development
Iot andriod app development
 
Introduction to Node-RED
Introduction to Node-REDIntroduction to Node-RED
Introduction to Node-RED
 
IoT Session Thomas More
IoT Session Thomas MoreIoT Session Thomas More
IoT Session Thomas More
 
Cc internet of things @ Thomas More
Cc internet of things @ Thomas MoreCc internet of things @ Thomas More
Cc internet of things @ Thomas More
 
INTELLIGENT HELMET DETECTION USING OPENCV AND MACHINE LEARNING
INTELLIGENT HELMET DETECTION USING OPENCV AND MACHINE LEARNINGINTELLIGENT HELMET DETECTION USING OPENCV AND MACHINE LEARNING
INTELLIGENT HELMET DETECTION USING OPENCV AND MACHINE LEARNING
 
Practical Introduction to Internet of Things (IoT)
Practical Introduction to Internet of Things (IoT)Practical Introduction to Internet of Things (IoT)
Practical Introduction to Internet of Things (IoT)
 
Echelon Indonesia 2016 - Innovation Through Opportunities in IoT & Arduino
Echelon Indonesia 2016 - Innovation Through Opportunities in IoT & ArduinoEchelon Indonesia 2016 - Innovation Through Opportunities in IoT & Arduino
Echelon Indonesia 2016 - Innovation Through Opportunities in IoT & Arduino
 

Recently uploaded

+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 

Recently uploaded (20)

WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 

Eclipse IoT Edje project: the software foundation for IoT devices

  • 1. Eclipse IoT Day Grenoble 2016© IS2T S.A. 2016. All rights reserved. EDJE PROJECT The Software Foundation for IoT Devices https://projects.eclipse.org/projects/iot.edje
  • 2. Eclipse IoT Day Grenoble 2016 PRESENTER Jérôme Leroux Development and Innovation Manager at MicroEJ® Edje Project Leader 10 years expertise in Java Embedded Systems jerome.leroux@microej.com The information contained herein is not warranted to be error-free. IS2T® and MicroEJ® and all relative logos are trademarks or registered trademarks of IS2T S.A. in France and other Countries. Java™ is Sun Microsystems’ trademark for a technology for developing application software and deploying it in cross-platform, networked environments. When it is used in this site without adding the “™” symbol, it includes implementations of the technology by companies other than Sun. Java™, all Java-based marks and all related logos are trademarks or registered trademarks of Sun Microsystems Inc, in the United States and other Countries. Other trademarks are proprietary of their respective owners.
  • 3. Eclipse IoT Day Grenoble 2016 EDJE AND IOT INTRODUCTION
  • 4. Eclipse IoT Day Grenoble 2016 EDJE PROJECT The Hardware Abstraction Java API for the IoT embedded systems • Peripheral management • Controller Communication Interfaces (Serial connection, CAN, SPI, I²C) • Digital and Analog I/O (GPIO, ADC, DAC) Scope • Target resource-constrained micro-controller • Provide ready-to-use software packages for target hardware • Define a modular and easy to port framework Project Status • Eclipse IoT project • Incubation
  • 5. Eclipse IoT Day Grenoble 2016 IOT TOPOLOGY IOT DEVICES GATEWAY SERVER 8/16/32-bit MCU Mono-Core Frequency: < 200 MHz Flash: < 1 MB RAM: < 512 KB 32/64-bit MPU Multi-Core Frequency: in GHz Flash: in GB RAM: in GB MCU MPU
  • 6. Eclipse IoT Day Grenoble 2016 IOT HARDWARE STM32F4 Discovery Raspberry PI 2 • Processor: 32-bits quad-core Cortex-A7 (BCM2836) • Frequency: 900 MHz • RAM: 1 GB • Flash: SD Card • Processor: 32-bits Cortex-M4 (STM32F407VGT6) • Frequency: 168 MHz • RAM: 192 KB • Flash: 1 MB
  • 7. Eclipse IoT Day Grenoble 2016 EDJE APPLICATION FIELD Sensors/Actuators Local Network Internet A library at the edge of the IoT for sensor hubs and devices
  • 8. Eclipse IoT Day Grenoble 2016 EDJE REQUIREMENTS
  • 9. Eclipse IoT Day Grenoble 2016 List of Java API • The minimum execution environment provided by an Edje compatible device • Intersection between Java SE, Java SE Embedded, MicroEJ and Android • Includes java.lang, java.util, java.io, … EDJE DEVICE CONFIGURATION J2SE J2SE Embedded MicroEJ Android Edje
  • 10. Eclipse IoT Day Grenoble 2016 List of Java API • The minimum execution environment provided by an Edje compatible device • Intersection between Java SE, Java SE Embedded, MicroEJ and Android • Includes java.lang, java.util, java.io, … EDJE DEVICE CONFIGURATION Edje Device Configuration Edje API Edje Application Library Execution Environment
  • 11. Eclipse IoT Day Grenoble 2016 HARDWARE REQUIREMENTS Minimal targeted Hardware • Processor: 32-bits (e.g. Cortex-M0) • Frequency: 16 MHz • RAM: 32 KB • Flash: 128 KB
  • 12. Eclipse IoT Day Grenoble 2016 EDJE API
  • 13. Eclipse IoT Day Grenoble 2016 EDJE API Edje comes with the following services Controller Communication Interfaces Serial Port CAN Digital and Analog I/O GPIO Peripheral Management LCD USB Devices Analog Input
  • 14. Eclipse IoT Day Grenoble 2016 EDJE API Peripheral Management • List the peripherals of a platform o MCU peripherals (UART, timer, USB controller, …) o Board peripherals (screen, button, LED, sensors, …) o External peripherals (USB devices, bluetooth devices, …) • Peripheral plug/unplug notification system
  • 15. Eclipse IoT Day Grenoble 2016 EDJE API Controller Communication Interfaces • Some peripherals can establish a connection to external devices o Serial Connection (UART) o Serial Peripheral Interface (SPI) o Inter-Integrated Circuit (I²C) o Controller Area Network (CAN) • The peripheral implements Connectable interface • Connection is described by a String • Example with serial ports: List<SerialPort> serialPorts = PeripheralManager.list(SerialPort.class); for(SerialPort serialPort : serialPorts){ Connection connection = serialPort.openConnection("baudrate=115200;bitsperchar=8"); … connection.close(); }
  • 16. Eclipse IoT Day Grenoble 2016 EDJE API Digital and Analog I/O • Manage controller pins • API inspired from Arduino C API • General Purpose Input/Output (GPIO) o LED, Buzzer, Button • Analog to Digital Converter (ADC) o Potentiometer, Temperature Sensor, Light Sensor • Digital to Analog Converter (DAC) o Speaker, Light Dimmer • Pulse Width Modulation (PWM) o Motor
  • 17. Eclipse IoT Day Grenoble 2016 EDJE API Digital and Analog I/O • A pin is identified by the port and an ID • Port name can be o MCU specific PortAPortB
  • 18. Eclipse IoT Day Grenoble 2016 EDJE API Digital and Analog I/O • A pin is identified by the port and an ID • Port name can be o Board specific J1 J2 J3 J4
  • 19. Eclipse IoT Day Grenoble 2016 EDJE API Digital and Analog I/O • A pin is identified by the port and an ID • Port name can be o Standard Digital Arduino Analog Arduino
  • 20. Eclipse IoT Day Grenoble 2016 REFERENCE IMPLEMENTATIONS
  • 21. Eclipse IoT Day Grenoble 2016 REFERENCE IMPLEMENTATIONS Features • Peripheral Management • UART, USB CDC, GPIO, DAC, ADC Hardware • Raspberry-Pi 2 • Quad-Cortex-A7 @ 900 MHz • RAM: 1 GB RAM Platform • Kura • OpenJDK • Linux
  • 22. Eclipse IoT Day Grenoble 2016 REFERENCE IMPLEMENTATIONS Features • Peripheral Management • UART, USB CDC, GPIO, DAC, ADC Hardware • STM32F746G-DISCO • Cortex-M7 @ 200 MHz • RAM: 8 MB • Flash: 16 MB Platform • MicroEJ OS • FreeRTOS • STM32Cube
  • 23. Eclipse IoT Day Grenoble 2016 REFERENCE IMPLEMENTATIONS Features • Peripheral Management • UART, USB CDC, GPIO, DAC, ADC PC Simulation • Java® SE • Hardware In the Loop Simulation (HIL) Execution Flow Ethernet or Serial
  • 24. Eclipse IoT Day Grenoble 2016 EDJE ROADMAP
  • 25. Eclipse IoT Day Grenoble 2016 POTENTIAL ROADMAP Features • I²C, SPI • Controller Area Network (CAN) • Power Management • Sensor Reference Implementations • MicroEJ Renesas Synergy Cortex-M4 • MicroEJ NXP Kinetis Cortex-M0+
  • 26. Eclipse IoT Day Grenoble 2016 CALL TO ACTION
  • 27. Eclipse IoT Day Grenoble 2016 DEMO = + + over MicroEJSTM32F746G-DISCO Arduino Multi-function Shield