SlideShare a Scribd company logo
1 of 25
Download to read offline
eclipsecon France 2016© IS2T S.A. 2016. All rights reserved.
EDJE PROJECT
The Software Foundation for IoT Devices
https://projects.eclipse.org/projects/iot.edje
eclipsecon France 2016
PRESENTER
Stéphane Mainchain
Director, Customer Care
stephane.mainchain@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.
eclipsecon France 2016
ABOUT MICROEJ
eclipsecon France 2016
ABOUT MICROEJ
Independent Software Vendor, global player in the IoT industry
• http://www.microej.com/about
• Software tool & runtime licenses
• Professional services, training & consulting
KEY FINANCIALS
• $5M Series B funding end 2011 – $20M R&D total investment
Offices in France, Germany, USA
Partnerships with key IoT, silicon, embedded SW and HW (EMS) vendors
Expertise in embedded, virtualization, software engineering & process
eclipsecon France 2016
OPERATING SYSTEMS FOR ENABLING THE IOT
RTOS Linux
Volume
75%
IoT = “sub-gig” things:
• Processor < GHz
• Memory < GB
25%
SW Foundation
MPU (>$10 ASP)MCU ($1-6 ASP)
eclipsecon France 2016
EDJE AND IOT
INTRODUCTION
eclipsecon France 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
• Initial contribution in review
eclipsecon France 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
eclipsecon France 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
eclipsecon France 2016
EDJE APPLICATION FIELD
Sensors/Actuators
Local Network
Internet
A library at the edge of the IoT for
sensor hubs and devices
eclipsecon France 2016
EDJE DEVICE
CONFIGURATION
eclipsecon France 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
eclipsecon France 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
eclipsecon France 2016
EDJE API
eclipsecon France 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
eclipsecon France 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
eclipsecon France 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();
}
eclipsecon France 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
eclipsecon France 2016
REFERENCE
IMPLEMENTATIONS
eclipsecon France 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
eclipsecon France 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
eclipsecon France 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
eclipsecon France 2016
DEMO
=
+ +
over MicroEJSTM32F746G-DISCO Arduino Multi-function
Shield
eclipsecon France 2016
THANK YOU!
www.microej.com
eclipsecon France 2016

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)

MediaTek IoT power management webinar
MediaTek IoT power management webinarMediaTek IoT power management webinar
MediaTek IoT power management webinar
 
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
 
MediaTek Linkit Smart 7688 Webinar
MediaTek Linkit Smart 7688 WebinarMediaTek Linkit Smart 7688 Webinar
MediaTek Linkit Smart 7688 Webinar
 
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
 
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
 
Geek Pic-Nic Master Class
Geek Pic-Nic Master ClassGeek Pic-Nic Master Class
Geek Pic-Nic Master Class
 
Track 5 session 5 - st dev con 2016 - stm32 hands on seminar - cloud connec...
Track 5   session 5 - st dev con 2016 - stm32 hands on seminar - cloud connec...Track 5   session 5 - st dev con 2016 - stm32 hands on seminar - cloud connec...
Track 5 session 5 - st dev con 2016 - stm32 hands on seminar - cloud connec...
 
Developing a NodeBot using Intel XDK IoT Edition
Developing a NodeBot using Intel XDK IoT EditionDeveloping a NodeBot using Intel XDK IoT Edition
Developing a NodeBot using Intel XDK IoT Edition
 
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
 
OCF/IoTivity for Healthcare/Fitness/Wearable
OCF/IoTivity for Healthcare/Fitness/WearableOCF/IoTivity for Healthcare/Fitness/Wearable
OCF/IoTivity for Healthcare/Fitness/Wearable
 
Nio100 product guide 20150520
Nio100 product guide 20150520Nio100 product guide 20150520
Nio100 product guide 20150520
 
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
 
LinkIt Smart 7688 - a more connected world
LinkIt Smart 7688 - a more connected worldLinkIt Smart 7688 - a more connected world
LinkIt Smart 7688 - a more connected world
 
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
 
MicroEJ OS for IoT devices
MicroEJ OS for IoT devicesMicroEJ OS for IoT devices
MicroEJ OS for IoT devices
 
Tizen Connected with IoTivity
Tizen Connected with IoTivityTizen Connected with IoTivity
Tizen Connected with IoTivity
 
Axessor_Brochure_US_04-16
Axessor_Brochure_US_04-16Axessor_Brochure_US_04-16
Axessor_Brochure_US_04-16
 
Survey of Operating Systems for the IoT Environment
Survey of Operating Systems for the IoT EnvironmentSurvey of Operating Systems for the IoT Environment
Survey of Operating Systems for the IoT Environment
 
IoT Intro and Demo
IoT Intro and DemoIoT Intro and Demo
IoT Intro and Demo
 
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...
 

Viewers also liked

RIOT and the evolution of operating systems for IoT devices (Emmanuel Baccell...
RIOT and the evolution of operating systems for IoT devices (Emmanuel Baccell...RIOT and the evolution of operating systems for IoT devices (Emmanuel Baccell...
RIOT and the evolution of operating systems for IoT devices (Emmanuel Baccell...
AGILE IoT
 

Viewers also liked (13)

How to Select Hardware for Internet of Things Systems?
How to Select Hardware for Internet of Things Systems?How to Select Hardware for Internet of Things Systems?
How to Select Hardware for Internet of Things Systems?
 
Advanced Game Development with the Mobile 3D Graphics API
Advanced Game Development with the Mobile 3D Graphics APIAdvanced Game Development with the Mobile 3D Graphics API
Advanced Game Development with the Mobile 3D Graphics API
 
Embed your Ideas
Embed your IdeasEmbed your Ideas
Embed your Ideas
 
Eclipse Edje Project Status
Eclipse Edje Project StatusEclipse Edje Project Status
Eclipse Edje Project Status
 
Long-Distance Battery-Powered Sensors for the IOT- SigFox
Long-Distance Battery-Powered Sensors for the IOT- SigFoxLong-Distance Battery-Powered Sensors for the IOT- SigFox
Long-Distance Battery-Powered Sensors for the IOT- SigFox
 
IoT Microservices at the Edge with Eclipse ioFog
IoT Microservices at the Edge with Eclipse ioFogIoT Microservices at the Edge with Eclipse ioFog
IoT Microservices at the Edge with Eclipse ioFog
 
RIOT and the evolution of operating systems for IoT devices (Emmanuel Baccell...
RIOT and the evolution of operating systems for IoT devices (Emmanuel Baccell...RIOT and the evolution of operating systems for IoT devices (Emmanuel Baccell...
RIOT and the evolution of operating systems for IoT devices (Emmanuel Baccell...
 
Introduction to Internet of Things Hardware
Introduction to Internet of Things HardwareIntroduction to Internet of Things Hardware
Introduction to Internet of Things Hardware
 
Research in Internet of Things' Operating Systems (IoT OS's)
Research in Internet of Things' Operating Systems (IoT OS's)Research in Internet of Things' Operating Systems (IoT OS's)
Research in Internet of Things' Operating Systems (IoT OS's)
 
Operating System fo IoT
Operating System fo IoTOperating System fo IoT
Operating System fo IoT
 
Future of Integration | MuleSoft
Future of Integration | MuleSoftFuture of Integration | MuleSoft
Future of Integration | MuleSoft
 
Building IoT with Arduino Day One
Building IoT with Arduino Day One Building IoT with Arduino Day One
Building IoT with Arduino Day One
 
What's New in Docker - February 2017
What's New in Docker - February 2017What's New in Docker - February 2017
What's New in Docker - February 2017
 

Similar to MicroEJ OS and Edje: the software foundation for IoT devices

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
 
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
 

Similar to MicroEJ OS and Edje: the software foundation for IoT devices (20)

Presentation for IoT workshop at Sinhagad University (Feb 4, 2016) - 2/2
Presentation for IoT workshop at Sinhagad University (Feb 4, 2016) - 2/2Presentation for IoT workshop at Sinhagad University (Feb 4, 2016) - 2/2
Presentation for IoT workshop at Sinhagad University (Feb 4, 2016) - 2/2
 
Linxu conj2016 96boards
Linxu conj2016 96boardsLinxu conj2016 96boards
Linxu conj2016 96boards
 
Embedded Hardware Design.pptx
Embedded Hardware Design.pptxEmbedded Hardware Design.pptx
Embedded Hardware Design.pptx
 
Arduino IoT (shared)
Arduino IoT (shared)Arduino IoT (shared)
Arduino IoT (shared)
 
Multipilot pres-ufficiale def
Multipilot pres-ufficiale defMultipilot pres-ufficiale def
Multipilot pres-ufficiale def
 
2015 01 24 Coding4Fun at Tajamar
2015 01 24 Coding4Fun at Tajamar2015 01 24 Coding4Fun at Tajamar
2015 01 24 Coding4Fun at Tajamar
 
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
 
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
 
introduction of arduino and node mcu
introduction of arduino and node mcuintroduction of arduino and node mcu
introduction of arduino and node mcu
 
Mindstorms Arduino En Phidgets
Mindstorms Arduino En PhidgetsMindstorms Arduino En Phidgets
Mindstorms Arduino En Phidgets
 
Mindstorms Arduino En Phidgets
Mindstorms Arduino En PhidgetsMindstorms Arduino En Phidgets
Mindstorms Arduino En Phidgets
 
Embedded systems الانظمة المدمجة
Embedded systems  الانظمة المدمجة Embedded systems  الانظمة المدمجة
Embedded systems الانظمة المدمجة
 
The MRAA and UPM Middleware Libraries
The MRAA and UPM Middleware LibrariesThe MRAA and UPM Middleware Libraries
The MRAA and UPM Middleware Libraries
 
IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)
IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)
IoT projects in Eclipse Foundation using LwM2M (IoT World 2017 Workshop)
 
Software virtualization lessons for extreme IoT portability and scale
Software virtualization lessons for extreme IoT portability and scaleSoftware virtualization lessons for extreme IoT portability and scale
Software virtualization lessons for extreme IoT portability and scale
 
LAS16 100 K1 - Keynote George Grey
LAS16 100 K1 - Keynote George GreyLAS16 100 K1 - Keynote George Grey
LAS16 100 K1 - Keynote George Grey
 
LAS16-100K1: Welcome Keynote
LAS16-100K1: Welcome KeynoteLAS16-100K1: Welcome Keynote
LAS16-100K1: Welcome Keynote
 
Report on Advanced Robotics & Programming
Report on Advanced Robotics & ProgrammingReport on Advanced Robotics & Programming
Report on Advanced Robotics & Programming
 
ARDUINO AND RASPBERRYPI.pptx
ARDUINO AND RASPBERRYPI.pptxARDUINO AND RASPBERRYPI.pptx
ARDUINO AND RASPBERRYPI.pptx
 
Multipilot pres-ufficiale last 2
Multipilot pres-ufficiale last 2Multipilot pres-ufficiale last 2
Multipilot pres-ufficiale last 2
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 

MicroEJ OS and Edje: the software foundation for IoT devices

  • 1. eclipsecon France 2016© IS2T S.A. 2016. All rights reserved. EDJE PROJECT The Software Foundation for IoT Devices https://projects.eclipse.org/projects/iot.edje
  • 2. eclipsecon France 2016 PRESENTER Stéphane Mainchain Director, Customer Care stephane.mainchain@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.
  • 4. eclipsecon France 2016 ABOUT MICROEJ Independent Software Vendor, global player in the IoT industry • http://www.microej.com/about • Software tool & runtime licenses • Professional services, training & consulting KEY FINANCIALS • $5M Series B funding end 2011 – $20M R&D total investment Offices in France, Germany, USA Partnerships with key IoT, silicon, embedded SW and HW (EMS) vendors Expertise in embedded, virtualization, software engineering & process
  • 5. eclipsecon France 2016 OPERATING SYSTEMS FOR ENABLING THE IOT RTOS Linux Volume 75% IoT = “sub-gig” things: • Processor < GHz • Memory < GB 25% SW Foundation MPU (>$10 ASP)MCU ($1-6 ASP)
  • 6. eclipsecon France 2016 EDJE AND IOT INTRODUCTION
  • 7. eclipsecon France 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 • Initial contribution in review
  • 8. eclipsecon France 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
  • 9. eclipsecon France 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
  • 10. eclipsecon France 2016 EDJE APPLICATION FIELD Sensors/Actuators Local Network Internet A library at the edge of the IoT for sensor hubs and devices
  • 11. eclipsecon France 2016 EDJE DEVICE CONFIGURATION
  • 12. eclipsecon France 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
  • 13. eclipsecon France 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
  • 15. eclipsecon France 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
  • 16. eclipsecon France 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
  • 17. eclipsecon France 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(); }
  • 18. eclipsecon France 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
  • 20. eclipsecon France 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
  • 21. eclipsecon France 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
  • 22. eclipsecon France 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
  • 23. eclipsecon France 2016 DEMO = + + over MicroEJSTM32F746G-DISCO Arduino Multi-function Shield
  • 24. eclipsecon France 2016 THANK YOU! www.microej.com