SlideShare a Scribd company logo
Gateway Design with Eclipse Kura
– Taking to new heights
By
Rajesh Sola, Core Faculty
CDAC ACTS,Pune
Eclipse Kura - Taking to New Heights 2
Outline
● Gateway in IOT Architecture
● Eclipse Kura
● Architecture & Services
● Available APIs
● Bridging Scenarios
● Custom Services
Eclipse Kura - Taking to New Heights 3
Introduction
● IOT Layers
– Devices
– Gateway
– Platforms
● Need for Gateways
● Gateway Characteristics
● Functionality & Services
Eclipse Kura - Taking to New Heights 4
Eclipse IOT
● Protocols,Standards & Constrained Devices
– Paho library for MQTT clients
– Mosquitto for MQTT broker
– Californium for CoAP
– Leshan,Wakaama for LWM2M
– OM2M for OneM2M
– Milo for OPC-UA
● Gateways
– Eclipse Kura
– Eclipse Smarthome (Backbone of OpenHAB)
● Cloud/Platform Solutions
– Kapua
Eclipse Kura - Taking to New Heights 5
Eclipse Kura
● Eclipse IOT Project
● M2M-IOT integrations (OT/IT)
● Bridging gap between embedded and enterprise
● Kura powered Eurotech Gateways (Reliagate series)
● OSGi based applications containers
● Offerings
– Dynamic component model
– Rich Services,API Support
– High Configurability
– Remote Management
Eclipse Kura - Taking to New Heights 6
Architecture
Ref:-https://eclipse.github.io/kura/intro/intro.html
Eclipse Kura - Taking to New Heights 7
Kura Bundles
● Bundle life cycle
– INSTALLED, RESOLVED, STARTING
– ACTIVE, STOPPING, UNINSTALLED
● Bundle Dependencies
Eclipse Kura - Taking to New Heights 8
Deploying & Managing Bundles
● Deploying Bundles
– Through Web Console
– Through Remote Login (telnet)
– Through mToolkit framework (Eclipse IDE)
● Installing,Uninstalling bundles
● Starting,Stopping bundles
Eclipse Kura - Taking to New Heights 9
Kura Offerings
● I/O Interfacing
● Wireless Connectivity
● Cloud Connectivity
● Industrial M2M protocols
● Logging, log levels
● Snapshot management
● Remote Monitoring
Eclipse Kura - Taking to New Heights 10
I/O Interfacing
● Device I/O
– GPIO
– I2C
– SPI
– PWM
● USB Access, HID API
● Serial Interfacing
● Services
– GPIOService
– Position Service
– ClockService
● SenseHAT example in kura source
Eclipse Kura - Taking to New Heights 11
Bluetooth Support
● Bluetooth Service
● BluetoothGatt Service
● Examples
– Beacon Scanner
– Kura Device as a beacon
– CC2650 SensorTag Scanner
Eclipse Kura - Taking to New Heights 12
Cloud Connectivity
● Data Service
● Cloud Service
● MQTT Transport
● Platform Connectivity Support
– Amazon AWS IOT
– Azure IOT Hub
– Eclipse Kapua
Eclipse Kura - Taking to New Heights 13
Industrial, M2M Services
● CANBus support
– org.eclipse.kura.protocol.can in kura source
– Can be enabled by following build step (in kura dir)
mvn -Dmaven.test.skip=true -f pom.xml -Pcan clean install
– Available through CanConnectionService
● ModBus support
– org.eclipse.kura.protocol.modbus in kura source
– Available through ModbusProtocolDeviceService
– Also available as Driver in Marketplace
● OPC UA support
– OPC UA Driver in Marketpalce (dp file)
– org.eclipse.kura.driver.opcua.provider in kura source
– Based on Eclipse MILO project
Eclipse Kura - Taking to New Heights 14
Built-in Services & APIs
● GPIOService
● PositionService
● CloudService,DataService
● DbService
● BluetoothService,BluetoothGattService
● ClockService
● WatchdogService
● NetworkService
● CommandService
Eclipse Kura - Taking to New Heights 15
Installation & Supported Targets
● Supported Targets
– RaspberryPi
– BeagleBone
– Intel Edison
● Debian packages are available for above targets
● Default vs nonet packages
● Equinox – OSGi runtime
● Emulator mode, user work space
● Custom Containers/Packaging
– Docker
– Snaps
Eclipse Kura - Taking to New Heights 16
Writing New Bundles
● HelloOsgi example
● Deploying the new bundle
● Managing custom bundle
Eclipse Kura - Taking to New Heights 17
Bundle Source Skeleton
➢ Src
➢ org.eclipse.kura.example.hello_osgi
➢ HelloOsgi.jabva
➢ OSGI-INF
➢ metatype
➢ org.eclipse.kura.example.hello_osgi.HelloOsgi.xml
➢ component.xml
➢ META-INF
➢ MANIFEST.mf
➢ resources
➢ dp
➢ hello_osgi.dpp
➢ hello_osgi.dp
Eclipse Kura - Taking to New Heights 18
Configurable Components
● Files
– OSGI_INF/metatype/*.xml
– OSGI_INF/component.xml
➔ Provides ConfigurableComponent as a service
● Retrieving properties from configuration service
private static final String HELLO_PROP_TOPIC = "hello.topic";
m_topic = (String) this.m_properties.get(HELLO_PROP_TOPIC);
● Configurable Hello Example
● Configuration for
– Service bundles
– Application bundles
Eclipse Kura - Taking to New Heights 19
Building Custom Services
● Service
– Interface
– Implementation
– Listeners
● Making Stories of some services
– InfluxService based on influxdb-java
github.com/influxdata/influxdb-java
– RESTService based on okhttp
square.github.io/okhttp/
● Above services are hosted at github.com/rajeshsola/kura-addons
(under development)
Eclipse Kura - Taking to New Heights 20
Bridging Scenarios
IOT Platforms
(MQTT,
HTTP REST)
Time Series Database
(InfluxDb)
Kura
Gateway
BLE Mote
WiFi Mote
CAN Slave
Other Possibilities:-
Industrial/M2M integrations,
Enterprise Messaging(Kafka)
Eclipse Kura - Taking to New Heights 21
Building Kura From Sources
● Download/checkout latest stable release of kura source
git checkout https://github.com/eclipse/kura.git
cd kura
git checkout -b KURA_3.0.0_RELEASE
sh build-all.sh #using maven build
● Which does following
MAVEN_PROPS =”-B -Dmaven.test.skip=true”
mvn -f target-platform/pom.xml clean install $MAVEN_PROPS
mvn -f kura/manifest_pom.xml clean install $MAVEN_PROPS
mvn -f kura/pom_pom.xml clean install $MAVEN_PROPS -Pweb
mvn -f kura/maven-central clean install $MAVEN_PROPS -Pweb
mvn -f karaf/pom.xml clean install $MAVEN_PROPS
● Collect deployable packages from
KURA_3.0.0_RELEASE/kura/distrib/target
Eclipse Kura - Taking to New Heights 22
Porting to custom targets
● Create a new dir in kura/distrib/src/main/resources/
say myboard
● Copy files from existing target, say raspberry-pi
● Edit some files in myboard dir, some important ones are
– jdk.dio.properties
– kura.properties
– kuranet.conf
– firewall.init
– iptables.init
Eclipse Kura - Taking to New Heights 23
Appendix::Running in Docker
● Pull the image from a reputed repo
docker pull ctron/kura
● Run the docker image
● You may add port forwarding options
docker run kura
Eclipse Kura - Taking to New Heights 24
Appendix::Kura Wires
● Introduced in Kura 3.0
● Visual Flow Model
● Wire Drivers (via Marketplace,at present)
– Modbus Driver
– OPC-UA Driver
● Wire Components
– Timer, Publisher, Subscriber, DB Store, Logger,
– DB Filter, Fifo, Regex Filter, Asset
Eclipse Kura - Taking to New Heights 25
Appendix::Kura Configuration
● Web Console, Authentication
● Configuration Options
– Network Configuration
– Ethernet Configuration
– Wi-Fi Configuration
– Firewall Configuration
– SSL Configuration
● Device Status
● Builtin Services
– Clock
– Position
– Watchdog
– Command
Eclipse Kura - Taking to New Heights 26
Thank You
??
?

More Related Content

What's hot (20)

PPTX
OMA LwM2M Workshop - Friedhelm Rodermund, OMA LwM2M in the IoT Space
Open Mobile Alliance
 
PDF
Microservice Powered Orchestration
Open Networking Summit
 
PDF
Open source IoT gateway
Henryk Konsek
 
PDF
Service Mesh on Kubernetes with Istio
Michelle Holley
 
PDF
How the OSGi Residential Specifications can help to build an ecosystem for sm...
mfrancis
 
PDF
IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore
Open Mobile Alliance
 
PDF
OpenStack: Networking Roadmap, Collaboration and Contribution
Open Networking Summit
 
PDF
Building the Internet of Things with Eclipse IoT - JavaLand 2014
Benjamin Cabé
 
PPTX
IETF building block in the LwM2M Ecosystem (IoT World 2017 Workshop)
Open Mobile Alliance
 
PDF
Using Microservices Architecture and Patterns to Address Applications Require...
Prem Sankar Gopannan
 
PPTX
Delivering Composable NFV Services for Business, Residential and Mobile Edge
PLUMgrid
 
PDF
Colt Novitas SDN World Congress 2015
Colt Technology Services
 
PDF
Why OpenDaylight
Lumina Networks
 
PPTX
CoAP - Web Protocol for IoT
Aniruddha Chakrabarti
 
PDF
Cisco ACI: A New Approach to Software Defined Networking
Debra Jennings
 
PDF
How to Implement SDN Technology in ITB
SDNRG ITB
 
PDF
OpenDaylight Update (June 2018)
Michelle Holley
 
PDF
Open source IoT gateway: Tale of Eclipse Kura, Apache Camel and Rhiot
Henryk Konsek
 
PPTX
The LightweightM2M Ecosystem
Open Mobile Alliance
 
PPTX
Introduction to OMA LightweightM2M by OMA Device Management Chairman (IoT Wor...
Open Mobile Alliance
 
OMA LwM2M Workshop - Friedhelm Rodermund, OMA LwM2M in the IoT Space
Open Mobile Alliance
 
Microservice Powered Orchestration
Open Networking Summit
 
Open source IoT gateway
Henryk Konsek
 
Service Mesh on Kubernetes with Istio
Michelle Holley
 
How the OSGi Residential Specifications can help to build an ecosystem for sm...
mfrancis
 
IoT Seminar (Oct. 2016) Alex Edelmann - Bosch Singapore
Open Mobile Alliance
 
OpenStack: Networking Roadmap, Collaboration and Contribution
Open Networking Summit
 
Building the Internet of Things with Eclipse IoT - JavaLand 2014
Benjamin Cabé
 
IETF building block in the LwM2M Ecosystem (IoT World 2017 Workshop)
Open Mobile Alliance
 
Using Microservices Architecture and Patterns to Address Applications Require...
Prem Sankar Gopannan
 
Delivering Composable NFV Services for Business, Residential and Mobile Edge
PLUMgrid
 
Colt Novitas SDN World Congress 2015
Colt Technology Services
 
Why OpenDaylight
Lumina Networks
 
CoAP - Web Protocol for IoT
Aniruddha Chakrabarti
 
Cisco ACI: A New Approach to Software Defined Networking
Debra Jennings
 
How to Implement SDN Technology in ITB
SDNRG ITB
 
OpenDaylight Update (June 2018)
Michelle Holley
 
Open source IoT gateway: Tale of Eclipse Kura, Apache Camel and Rhiot
Henryk Konsek
 
The LightweightM2M Ecosystem
Open Mobile Alliance
 
Introduction to OMA LightweightM2M by OMA Device Management Chairman (IoT Wor...
Open Mobile Alliance
 

Similar to Gateway Design with Eclipse Kura - Taking Kura to heights (20)

PDF
Building IoT Mashups for Industry 4.0 with Eclipse Kura and Kura Wires
Eurotech
 
PPTX
Building IoT Mashups for Industry 4.0 with Eclipse Kura and Kura Wires
Eclipse Kura
 
PDF
End-to-end IoT solutions with Java and Eclipse IoT
Benjamin Cabé
 
PDF
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
Benjamin Cabé
 
PDF
Eclipse kura in industry 4.0 david woodard
Eurotech
 
PDF
OSGi -Simplifying the IoT Gateway - Walt Bowers
mfrancis
 
PDF
IoT gateway dream team - Eclipse Kura and Apache Camel
Henryk Konsek
 
PDF
Creating a Java Internet of Things Gateway
Eurotech
 
PPTX
Eclipse IoT slide deck [MASTER DECK].pptx
NguynHongDanh5
 
PDF
Eclipse IoT Overview
Ian Skerrett
 
PDF
Industrial IoT Mayhem? Java IoT Gateways to the Rescue
Eurotech
 
PDF
2016-09-eclipse-iot-cf-summit
Mike Milinkovich
 
PDF
JVM-Con 2017 – Java and IoT, will it blend?
Benjamin Cabé
 
PDF
Device Management for OSGi IoT Gateways
Eurotech
 
PDF
Kura M2M IoT Gateway
Eurotech
 
PPTX
Eclipse IOT stack over Intel Edison
Ankur Sharma
 
PDF
Building the Internet of Things with open source and Eclipse IoT projects (Be...
AGILE IoT
 
PDF
Open Source Internet of Things 101 – EclipseCon 2016
Benjamin Cabé
 
PDF
Eclipse kura
Isham Mohamed Iqbal
 
PDF
Building the IoT - Coding Serbia 2015
Benjamin Cabé
 
Building IoT Mashups for Industry 4.0 with Eclipse Kura and Kura Wires
Eurotech
 
Building IoT Mashups for Industry 4.0 with Eclipse Kura and Kura Wires
Eclipse Kura
 
End-to-end IoT solutions with Java and Eclipse IoT
Benjamin Cabé
 
Devoxx 2015 - Building the Internet of Things with Eclipse IoT
Benjamin Cabé
 
Eclipse kura in industry 4.0 david woodard
Eurotech
 
OSGi -Simplifying the IoT Gateway - Walt Bowers
mfrancis
 
IoT gateway dream team - Eclipse Kura and Apache Camel
Henryk Konsek
 
Creating a Java Internet of Things Gateway
Eurotech
 
Eclipse IoT slide deck [MASTER DECK].pptx
NguynHongDanh5
 
Eclipse IoT Overview
Ian Skerrett
 
Industrial IoT Mayhem? Java IoT Gateways to the Rescue
Eurotech
 
2016-09-eclipse-iot-cf-summit
Mike Milinkovich
 
JVM-Con 2017 – Java and IoT, will it blend?
Benjamin Cabé
 
Device Management for OSGi IoT Gateways
Eurotech
 
Kura M2M IoT Gateway
Eurotech
 
Eclipse IOT stack over Intel Edison
Ankur Sharma
 
Building the Internet of Things with open source and Eclipse IoT projects (Be...
AGILE IoT
 
Open Source Internet of Things 101 – EclipseCon 2016
Benjamin Cabé
 
Eclipse kura
Isham Mohamed Iqbal
 
Building the IoT - Coding Serbia 2015
Benjamin Cabé
 
Ad

More from Rajesh Sola (8)

PDF
Hands on with embedded linux using zero hardware
Rajesh Sola
 
PDF
Kickstarting IOT using NodeRED
Rajesh Sola
 
PDF
aoa-adk-osidays-rajeshsola
Rajesh Sola
 
PDF
fudcon-fedora-arm-iot-rajeshsola
Rajesh Sola
 
PDF
Android Open Accessory Protocol - Turn Your Linux machine as ADK
Rajesh Sola
 
PDF
Getting started with IOT Development using Fedora on ARM
Rajesh Sola
 
PDF
Vba Macros Interoperability
Rajesh Sola
 
PDF
Go Green - Save Power
Rajesh Sola
 
Hands on with embedded linux using zero hardware
Rajesh Sola
 
Kickstarting IOT using NodeRED
Rajesh Sola
 
aoa-adk-osidays-rajeshsola
Rajesh Sola
 
fudcon-fedora-arm-iot-rajeshsola
Rajesh Sola
 
Android Open Accessory Protocol - Turn Your Linux machine as ADK
Rajesh Sola
 
Getting started with IOT Development using Fedora on ARM
Rajesh Sola
 
Vba Macros Interoperability
Rajesh Sola
 
Go Green - Save Power
Rajesh Sola
 
Ad

Recently uploaded (20)

PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PDF
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
PDF
Market Insight : ETH Dominance Returns
CIFDAQ
 
PDF
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
PPTX
Agentic AI in Healthcare Driving the Next Wave of Digital Transformation
danielle hunter
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
TrustArc Webinar - Navigating Data Privacy in LATAM: Laws, Trends, and Compli...
TrustArc
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PPTX
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
PPTX
The Future of AI & Machine Learning.pptx
pritsen4700
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
Generative AI vs Predictive AI-The Ultimate Comparison Guide
Lily Clark
 
PPTX
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
PPTX
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
PPTX
Farrell_Programming Logic and Design slides_10e_ch02_PowerPoint.pptx
bashnahara11
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
Market Insight : ETH Dominance Returns
CIFDAQ
 
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
Agentic AI in Healthcare Driving the Next Wave of Digital Transformation
danielle hunter
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
TrustArc Webinar - Navigating Data Privacy in LATAM: Laws, Trends, and Compli...
TrustArc
 
The Future of Artificial Intelligence (AI)
Mukul
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
IT Runs Better with ThousandEyes AI-driven Assurance
ThousandEyes
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
The Future of AI & Machine Learning.pptx
pritsen4700
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
Generative AI vs Predictive AI-The Ultimate Comparison Guide
Lily Clark
 
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
Farrell_Programming Logic and Design slides_10e_ch02_PowerPoint.pptx
bashnahara11
 

Gateway Design with Eclipse Kura - Taking Kura to heights

  • 1. Gateway Design with Eclipse Kura – Taking to new heights By Rajesh Sola, Core Faculty CDAC ACTS,Pune
  • 2. Eclipse Kura - Taking to New Heights 2 Outline ● Gateway in IOT Architecture ● Eclipse Kura ● Architecture & Services ● Available APIs ● Bridging Scenarios ● Custom Services
  • 3. Eclipse Kura - Taking to New Heights 3 Introduction ● IOT Layers – Devices – Gateway – Platforms ● Need for Gateways ● Gateway Characteristics ● Functionality & Services
  • 4. Eclipse Kura - Taking to New Heights 4 Eclipse IOT ● Protocols,Standards & Constrained Devices – Paho library for MQTT clients – Mosquitto for MQTT broker – Californium for CoAP – Leshan,Wakaama for LWM2M – OM2M for OneM2M – Milo for OPC-UA ● Gateways – Eclipse Kura – Eclipse Smarthome (Backbone of OpenHAB) ● Cloud/Platform Solutions – Kapua
  • 5. Eclipse Kura - Taking to New Heights 5 Eclipse Kura ● Eclipse IOT Project ● M2M-IOT integrations (OT/IT) ● Bridging gap between embedded and enterprise ● Kura powered Eurotech Gateways (Reliagate series) ● OSGi based applications containers ● Offerings – Dynamic component model – Rich Services,API Support – High Configurability – Remote Management
  • 6. Eclipse Kura - Taking to New Heights 6 Architecture Ref:-https://eclipse.github.io/kura/intro/intro.html
  • 7. Eclipse Kura - Taking to New Heights 7 Kura Bundles ● Bundle life cycle – INSTALLED, RESOLVED, STARTING – ACTIVE, STOPPING, UNINSTALLED ● Bundle Dependencies
  • 8. Eclipse Kura - Taking to New Heights 8 Deploying & Managing Bundles ● Deploying Bundles – Through Web Console – Through Remote Login (telnet) – Through mToolkit framework (Eclipse IDE) ● Installing,Uninstalling bundles ● Starting,Stopping bundles
  • 9. Eclipse Kura - Taking to New Heights 9 Kura Offerings ● I/O Interfacing ● Wireless Connectivity ● Cloud Connectivity ● Industrial M2M protocols ● Logging, log levels ● Snapshot management ● Remote Monitoring
  • 10. Eclipse Kura - Taking to New Heights 10 I/O Interfacing ● Device I/O – GPIO – I2C – SPI – PWM ● USB Access, HID API ● Serial Interfacing ● Services – GPIOService – Position Service – ClockService ● SenseHAT example in kura source
  • 11. Eclipse Kura - Taking to New Heights 11 Bluetooth Support ● Bluetooth Service ● BluetoothGatt Service ● Examples – Beacon Scanner – Kura Device as a beacon – CC2650 SensorTag Scanner
  • 12. Eclipse Kura - Taking to New Heights 12 Cloud Connectivity ● Data Service ● Cloud Service ● MQTT Transport ● Platform Connectivity Support – Amazon AWS IOT – Azure IOT Hub – Eclipse Kapua
  • 13. Eclipse Kura - Taking to New Heights 13 Industrial, M2M Services ● CANBus support – org.eclipse.kura.protocol.can in kura source – Can be enabled by following build step (in kura dir) mvn -Dmaven.test.skip=true -f pom.xml -Pcan clean install – Available through CanConnectionService ● ModBus support – org.eclipse.kura.protocol.modbus in kura source – Available through ModbusProtocolDeviceService – Also available as Driver in Marketplace ● OPC UA support – OPC UA Driver in Marketpalce (dp file) – org.eclipse.kura.driver.opcua.provider in kura source – Based on Eclipse MILO project
  • 14. Eclipse Kura - Taking to New Heights 14 Built-in Services & APIs ● GPIOService ● PositionService ● CloudService,DataService ● DbService ● BluetoothService,BluetoothGattService ● ClockService ● WatchdogService ● NetworkService ● CommandService
  • 15. Eclipse Kura - Taking to New Heights 15 Installation & Supported Targets ● Supported Targets – RaspberryPi – BeagleBone – Intel Edison ● Debian packages are available for above targets ● Default vs nonet packages ● Equinox – OSGi runtime ● Emulator mode, user work space ● Custom Containers/Packaging – Docker – Snaps
  • 16. Eclipse Kura - Taking to New Heights 16 Writing New Bundles ● HelloOsgi example ● Deploying the new bundle ● Managing custom bundle
  • 17. Eclipse Kura - Taking to New Heights 17 Bundle Source Skeleton ➢ Src ➢ org.eclipse.kura.example.hello_osgi ➢ HelloOsgi.jabva ➢ OSGI-INF ➢ metatype ➢ org.eclipse.kura.example.hello_osgi.HelloOsgi.xml ➢ component.xml ➢ META-INF ➢ MANIFEST.mf ➢ resources ➢ dp ➢ hello_osgi.dpp ➢ hello_osgi.dp
  • 18. Eclipse Kura - Taking to New Heights 18 Configurable Components ● Files – OSGI_INF/metatype/*.xml – OSGI_INF/component.xml ➔ Provides ConfigurableComponent as a service ● Retrieving properties from configuration service private static final String HELLO_PROP_TOPIC = "hello.topic"; m_topic = (String) this.m_properties.get(HELLO_PROP_TOPIC); ● Configurable Hello Example ● Configuration for – Service bundles – Application bundles
  • 19. Eclipse Kura - Taking to New Heights 19 Building Custom Services ● Service – Interface – Implementation – Listeners ● Making Stories of some services – InfluxService based on influxdb-java github.com/influxdata/influxdb-java – RESTService based on okhttp square.github.io/okhttp/ ● Above services are hosted at github.com/rajeshsola/kura-addons (under development)
  • 20. Eclipse Kura - Taking to New Heights 20 Bridging Scenarios IOT Platforms (MQTT, HTTP REST) Time Series Database (InfluxDb) Kura Gateway BLE Mote WiFi Mote CAN Slave Other Possibilities:- Industrial/M2M integrations, Enterprise Messaging(Kafka)
  • 21. Eclipse Kura - Taking to New Heights 21 Building Kura From Sources ● Download/checkout latest stable release of kura source git checkout https://github.com/eclipse/kura.git cd kura git checkout -b KURA_3.0.0_RELEASE sh build-all.sh #using maven build ● Which does following MAVEN_PROPS =”-B -Dmaven.test.skip=true” mvn -f target-platform/pom.xml clean install $MAVEN_PROPS mvn -f kura/manifest_pom.xml clean install $MAVEN_PROPS mvn -f kura/pom_pom.xml clean install $MAVEN_PROPS -Pweb mvn -f kura/maven-central clean install $MAVEN_PROPS -Pweb mvn -f karaf/pom.xml clean install $MAVEN_PROPS ● Collect deployable packages from KURA_3.0.0_RELEASE/kura/distrib/target
  • 22. Eclipse Kura - Taking to New Heights 22 Porting to custom targets ● Create a new dir in kura/distrib/src/main/resources/ say myboard ● Copy files from existing target, say raspberry-pi ● Edit some files in myboard dir, some important ones are – jdk.dio.properties – kura.properties – kuranet.conf – firewall.init – iptables.init
  • 23. Eclipse Kura - Taking to New Heights 23 Appendix::Running in Docker ● Pull the image from a reputed repo docker pull ctron/kura ● Run the docker image ● You may add port forwarding options docker run kura
  • 24. Eclipse Kura - Taking to New Heights 24 Appendix::Kura Wires ● Introduced in Kura 3.0 ● Visual Flow Model ● Wire Drivers (via Marketplace,at present) – Modbus Driver – OPC-UA Driver ● Wire Components – Timer, Publisher, Subscriber, DB Store, Logger, – DB Filter, Fifo, Regex Filter, Asset
  • 25. Eclipse Kura - Taking to New Heights 25 Appendix::Kura Configuration ● Web Console, Authentication ● Configuration Options – Network Configuration – Ethernet Configuration – Wi-Fi Configuration – Firewall Configuration – SSL Configuration ● Device Status ● Builtin Services – Clock – Position – Watchdog – Command
  • 26. Eclipse Kura - Taking to New Heights 26 Thank You ?? ?