All Projects → eclipse → Kura

eclipse / Kura

Licence: epl-2.0
Eclipse Kura™ project - http://eclipse.org/kura

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Kura

Paho.mqtt.android
MQTT Android
Stars: ✭ 2,334 (+532.52%)
Mutual labels:  eclipseiot, iot, internet-of-things
Iot Technical Guide
🐝 IoT Technical Guide --- 从零搭建高性能物联网平台及物联网解决方案和Thingsboard源码分析 ✨ ✨ ✨ (IoT Platform, SaaS, MQTT, CoAP, HTTP, Modbus, OPC, WebSocket, 物模型,Protobuf, PostgreSQL, MongoDB, Spring Security, OAuth2, RuleEngine, Kafka, Docker)
Stars: ✭ 2,334 (+532.52%)
Mutual labels:  iot, internet-of-things, gateway
Paho.mqtt.java
Eclipse Paho Java MQTT client library. Paho is an Eclipse IoT project.
Stars: ✭ 1,620 (+339.02%)
Mutual labels:  eclipseiot, iot, internet-of-things
Ditto
Eclipse Ditto Project
Stars: ✭ 245 (-33.6%)
Mutual labels:  eclipseiot, iot, internet-of-things
Wakaama
Eclipse Wakaama is a C implementation of the Open Mobile Alliance's LightWeight M2M protocol (LWM2M).
Stars: ✭ 358 (-2.98%)
Mutual labels:  eclipseiot, iot, internet-of-things
Vorto
Vorto Project
Stars: ✭ 179 (-51.49%)
Mutual labels:  eclipseiot, iot, internet-of-things
Rpieasy
Easy MultiSensor device based on Raspberry PI
Stars: ✭ 85 (-76.96%)
Mutual labels:  iot, internet-of-things, gateway
Leshan
Eclipse Leshan is an OMA Lightweight M2M (LWM2M) implementation in Java.
Stars: ✭ 483 (+30.89%)
Mutual labels:  eclipseiot, iot, internet-of-things
Paho.mqtt.embedded C
Paho MQTT C client library for embedded systems. Paho is an Eclipse IoT project (https://iot.eclipse.org/)
Stars: ✭ 887 (+140.38%)
Mutual labels:  eclipseiot, iot, internet-of-things
Californium
CoAP/DTLS Java Implementation
Stars: ✭ 521 (+41.19%)
Mutual labels:  eclipseiot, iot, internet-of-things
Paho.mqtt.c
An Eclipse Paho C client library for MQTT for Windows, Linux and MacOS. API documentation: https://eclipse.github.io/paho.mqtt.c/
Stars: ✭ 1,056 (+186.18%)
Mutual labels:  eclipseiot, iot, internet-of-things
Smarthome
Eclipse SmartHome™ project
Stars: ✭ 867 (+134.96%)
Mutual labels:  eclipseiot, iot, internet-of-things
Hawkbit
Eclipse hawkBit™
Stars: ✭ 283 (-23.31%)
Mutual labels:  eclipseiot, iot, internet-of-things
Paho.mqtt.golang
No description or website provided.
Stars: ✭ 1,814 (+391.6%)
Mutual labels:  eclipseiot, internet-of-things
Kapua
Stars: ✭ 169 (-54.2%)
Mutual labels:  eclipseiot, internet-of-things
edje
Edje project (ARCHIVED)
Stars: ✭ 16 (-95.66%)
Mutual labels:  internet-of-things, eclipseiot
freeioe
FreeIOE is a framework for building IOE (Internet Of Everything) edge-computing gateway 开源的边缘计算网关框架. 讨论群: 291292378
Stars: ✭ 77 (-79.13%)
Mutual labels:  gateway, internet-of-things
Calvin Base
Calvin is an application environment that lets things talk to things, among other things.
Stars: ✭ 282 (-23.58%)
Mutual labels:  iot, internet-of-things
Paho.mqtt.python
paho.mqtt.python
Stars: ✭ 1,314 (+256.1%)
Mutual labels:  eclipseiot, internet-of-things
IoT-Technical-Guide
🐝 IoT Technical Guide --- 从零搭建高性能物联网平台及物联网解决方案和Thingsboard源码分析 ✨ ✨ ✨ (IoT Platform, SaaS, MQTT, CoAP, HTTP, Modbus, OPC, WebSocket, 物模型,Protobuf, PostgreSQL, MongoDB, Spring Security, OAuth2, RuleEngine, Kafka, Docker)
Stars: ✭ 2,565 (+595.12%)
Mutual labels:  gateway, internet-of-things

Eclipse Kura™

Jenkins: Jenkins

Gitter

An OSGi-based Application Framework for M2M Service Gateways

Background

Until recently, machine-to-machine projects have been approached as embedded systems designed around custom hardware, custom software, and custom network connectivity. The challenge of developing such projects was given by the large customization and integration costs and the small re-usability across similar engagements. The results were often proprietary systems leveraging proprietary protocols.

The emergence of the service gateway model, which operates on the edge of an M2M deployment as an aggregator and controller, has opened up new possibilities. Cost effective service gateways are now capable of running modern software stacks opening the world of M2M to enterprise technologies and programming languages. Advanced software frameworks, which isolate the developer from the complexity of the hardware and the networking sub-systems, can now be offered to complement the service gateway hardware into an integrated hardware and software solution.

Description

Kura aims at offering a Java/OSGi-based container for M2M applications running in service gateways. Kura provides or, when available, aggregates open source implementations for the most common services needed by M2M applications. Kura components are designed as configurable OSGi Declarative Service exposing service API and raising events. While several Kura components are in pure Java, others are invoked through JNI and have a dependency on the Linux operating system.

For more information, see the Eclipse project proposal.

System Requirements

Eclipse Kura is compatible with Java 8 (Bundle-RequiredExecutionEnvironment: JavaSE-1.8) and OSGi R6.

Development Model

Development on Kura follows a variant of the gitflow model. Development is made on the develop branch. The master branch is not used anymore.

Getting Started

Development for Kura can be done in Eclipse IDE using the Kura Development Environment, in a gateway or in a Docker container.

Development Environment

Supported Development Platforms

The Eclipse Installer based setup works for the main used platforms like Linux, Mac OS and Windows.

Prerequisites

Before installing Kura, you need to have the following programs installed in your system

  • JDK 1.8
  • Maven 3.5.x

Installing Prerequisites in Mac OS

Using Brew you can easily install both Java and Maven from the command line.

Use the following commands in a terminal

For Java

brew tap adoptopenjdk/openjdk 
brew cask install adoptopenjdk8   

Run java -version to make sure it is installed correctly.

For Maven

brew install [email protected]

Run mvn -versionto ensure that Maven has been added to the PATH. If Maven cannot be found, try running brew link [email protected] --force.

Installing Prerequisites in Linux

For Java

sudo apt install openjdk-8-jdk

For Maven

You can follow the tutorial from the official Maven site. Remember that you need to install the 3.5.x version.

Eclipse IDE

The simplest way to start developing on Eclipse Kura is to use an Eclipse Installer based setup. To correctly setup the environment, proceed as follows:

  • Start the Eclipse Installer
  • Select "Eclipse for Committers" and configure the "Product Version", then select a JRE 1.8+ and press the Next button
  • Select the Eclipse Kura installer from the list. If this is not available, add a new installer from https://raw.githubusercontent.com/eclipse/kura/develop/kura/setups/kura.setup, then check and press the Next button
  • Select the "Developer Type":
    • "User": if you want to develop applications or bundles running on Kura, select this option. It will install only the APIs and the examples.
    • "Developer" : if you are a framework developer, select this option. It will download and configure the Eclipse Kura framework.
  • Update Eclipse Kura Git repository username and customize further settings if you like (e.g. Root install folder, Installation folder name). To show these options, make sure that the "Show all variables" checkbox is enabled
  • Leave all Bootstrap Tasks selected and press the Finish button
  • Accept all the licenses and wait for the installation to finish

At first startup Eclipse IDE will checkout the code, perform a full build and configure a few Working Sets. Now you are ready to develop on Eclipse Kura.

To raise an issue, please report a bug on GitHub issues.

Known Issues

Currently, the emulator web ui is not properly working on Windows so, with your setup, you will be able to build and deploy you applications, but not be able to use the Eclipse IDE based Kura emulator.

The full build of Kura is only supported for Linux and Mac Os based systems.

Currently the maven build on Windows requires to disable the tests and will fail when it tries to create the installers for the target platforms.

Target Gateways Installers

Eclipse Kura provides pre-built installers for common development boards. Check the following link to download the desired installers.

Docker Image

Eclipse Kura is available also as a Docker container To easily run, use: docker run -d -p 8080:8080 -t eclipse/kura.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].