Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
IoT/Commons
Many Eclipse IoT projects implement somewhat similar functionalities in terms of integration with underlying hardware, communication with endpoints over popular IoT protocols, etc.
This page aims at listing how Eclipse IoT projects currently implement, or are looking at implementing, some common features. It should be used as a reference for all Eclipse IoT projects before starting to re-implement something that is already available from another project.
Contents
For Java developers
Bluetooth Low-Energy (BLE)
Name | BLE API + implementation for Java |
Origin | Kura |
Description | Kura is providing a Bluetooth LE API implemented using gatttool command line utility. |
Location | Source code: https://github.com/eclipse/kura/tree/develop/kura/org.eclipse.kura.linux.bluetooth Binaries: |
Dependencies | TBD: describe the requirements regarding gatttool and/or point to existing documentation |
Relevant CQs | None. |
Maturity | Mature – Released in Kura 1.2 |
USB
Name | USB API + implementation for Java |
Origin | 3rd party library (usb4java) + OSGi-wrapping in Kura |
Description | A set of OSGi bundles based on usb4java (a Java library around libusb 1.0) to provide developers with access to USB APIs. |
Location | TBD |
Dependencies | TBD |
Relevant CQs | CQ 9734 CQ 9738 CQ 9739 CQ 9927 |
Maturity | TBD |
EnOcean
Name | OSGi EnOcean Base Driver |
Origin | Eclipse SmartHome |
Description | The OSGi EnOcean Base Driver enables applications running on an OSGi software platform to discover and control EnOcean devices. EnOcean is a radio protocol used in Smart Home and Building markets. |
Location | Source code: https://github.com/eclipse/smarthome/tree/master/protocols/enocean |
Dependencies | TBD |
Relevant CQs | None |
Maturity | TBD |
Work in progress
Below is a list of some "commons" that may have been solved/implemented by projects already, or will need to be, but that still need proper documenting.
- Zigbee stack in Java
- What is OM2M doing?
- Serial port manipulation in Java
- RX/TX is causing licence issues
- Kura is using SODA DK (see https://github.com/eclipse/kura/tree/develop/target-platform/org.eclipse.soda.dk.comm)
- Bluetooth 2.1
- Kura is looking at having a javax.bluetooth implementation over BlueZ 5 D-BUS interface.