Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.



Bernhard Haumacher Georg Neugschwandtner

Calimero: KNX network access for Java

Calimero is a Java library for KNX/EIB applications. It provides an API for (many of) the network services and data encodings defined in the KNX standard. It can be used as a basis to write remote access or control applications.

The current version of the library (Calimero 2) features:

  • KNXnet/IP tunneling (with bus monitor mode), routing, local device management
  • FT1.2 serial access
  • Easy-to-use process communication (group communication)
  • KNX property access
  • Datapoint type and property type translation
  • Network and device management client services
  • Network message buffering for state- and command-based datapoint values
  • Centralized logging
  • Network configuration storage, with possibility to import ETS 4 project files

Its minimum platform requirement is the Java 2 Micro-Edition CDC Foundation Profile (J2ME CDC FP), which makes it suitable for embedded applications. Calimero is also compatible with the popular Java Standard Edition (J2SE) environments commonly deployed on PC workstations.


Calimero 1? Calimero 2? Calimero NG?

Calimero 1 was the first release. Calimero 2 was the successor project - a complete re-write with a new API. (The idea is to step up the major version number whenever the API changes.) Before this was decided, Calimero 2 was referred to as Calimero NG ("Next Generation").

On these pages, "Calimero" almost always means Calimero 2. The design of Calimero 1.x is described here, including a short code example and a few additional notes. Note that the Calimero 2 API is different!

Calimero 1 and 2 were designed and written by people who were, at that time, with the Automation Systems Group at the Vienna University of Technology.



Calimero 1 is archived. Nobody here is maintaining or extending it; these efforts have moved to Calimero 2.

Currently, Georg and Boris are still contributing to the project in their free time. Neither of them has KNX devices at home, and neither has a paying job involving KNX. (If you feel like changing this, they would be interested to hear.) The other Sourceforge project admins are still listed for historical and administrative reasons; for now, they are not contributing to the project.

Boris is improving the library and adding new features, with no particular timeline. Currently, he is focusing on the core library. His development version is hosted on GitHub. This is a public repository. Note that this development version is under GPL without the Classpath Exception, see License.

Georg tries to keep the project together administratively, to answer questions, and to keep these pages updated. He dreams of again having the time to work on the code some day. His goal is to make this Sourceforge project a hub for all things related to Calimero, pointing to other projects and platforms where development happens, and collecting bug reports, improvements (contributed code) and suggestions in one place.

As a next step, the work which is now spread over various forks could come to the benefit of all Calimero users again. For this to happen, Calimero would need a maintainer who is familiar with the code and can perform quality control on submissions on a short timeframe. If you think this could be you, please contact Georg and Boris.


Read more

You can also use "Browse Pages" on the top left, which will give you a complete list.


Wiki: Documentation
Wiki: License
Wiki: Links
Wiki: Menu
Wiki: Support