itemis blogs

Xtend - Active Annotations Part 2

Stefan Oehme

In the last part of the series we had a look at Xtend's built-in Active Annotations. This time you will learn how to write your own Active Annotations to get rid of boilerplate code.

Active Annotations are simply annotations marked with @Active and have an associated processor class. The processor gets access to the annotated elements (classes, methods, etc.) during different phases of the Xtend to Java compilation.
The corresponding interfaces areRegisterGlobalsParticipant (announces [...]

TSL2561 light sensor with STM32F4

Marco Scholtyssek

The TSL2561 is a sensor that measures the light-intensity and transforms it to a 16-bit resolution digital value. There are two photodiodes on the sensor, one to sense the light intensity plus infrared light and a second one to measure only infrared light. These two photodiodes convert the measured light-intensity simultaneously. There are two channels available on the sensor to transfer the values into the data register (channel 0 and channel 1). The idea is to subtract the infrared part of [...]

STM32F4 with ERIKA Enterprise RTOS OSEK

Marco Scholtyssek

Erika Enterprise is an open source OSEK compliant real time operating system (RTOS) that support the STM32F4-Discovery controller. There is a eclipse tool chain integration available, so it is possible to develop software directly in this IDE. Combined with the GNU ARM Eclipse Plugin, the stlink debugger and programmer and the GNU Tools for ARM Embedded Processors, eclipse is a great tool for developing, flashing and in-circuit-debugging applications based on the ERIKA real time kernel [...]

grep command to filter distinct values from XML tags


I have a ton of Oracle Forms XML export files and wanted to know, which different patterns occur for the value of the FormatMask XML attribute. The input looks as follows: A naive grep command would print out the whole … Continue reading →

XRobots at Devoxx

Stefan Oehme

Last week my colleague Miro and I were at Devoxx in Antwerp, joined by our trusty XRobots. This was the second conference that we brought our new game to and it was great fun again. Attendees could program their own robots and let them fight each other in a sumo-wrestling contest. The goal was to push the other one out of the arena or throw him off his feet. Some people spent their whole evening coming together for a robot hackathon at the Eclipse booth.

Statechart Tools: What's in the pipeline?

Andreas Mülder

In the upcoming statechart tools release we made a huge refactoring to the simulation infrastructure. This long overdue refactoring was necessary to define some concise APIs to plug in custom simulation engines for different execution semantics. It took some time, but in the end our jenkins build is back to stable again ;-)
Debugging Features [...]

5 Usability Flaws in GMF (and how to fix them)

Andreas Mülder

Although GMF (Graphical Modeling Framework) editors are an endangered species and future editors will be developed with JavaFX there is still a bunch of GMF editors out there. And most of them have something in common: a lack of usability. The good news are that some usability flaws are easy to fix. In Yakindu Statechart Tools we spend a lot [...]

Yakindu Statechart Tools 2.4.0 released!

Andreas Mülder

We released Yakindu Statechart Tools 2.4.0 today! It contains a lot of bugfixes and improvements as well as new features.

This release requires Eclipse Luna. You can install SCT 2.4.0 from our update site: or you can download a full Eclipse zip package from our dowload page.

New and Noteworthy

Here is a summary of the improvements worth mentioning:

1. Toggle documentation toolbar [...]

Concise Om component composition

Falko Riemenschneider

Concise Om component composition14.11.2014 Permalink TL;DR React facilitates the creation of reusable components for single-page browser applications. To be useful in a wide variety of contexts components are often configurable. If you find yourself creating numerous composite components with much configuration data you can easily jump to a higher abstraction level which yields code looking like this: (defn home-page [state] (page "home" :path nil [...]

Praktische Anwendung von Internet of Things

Was kann man sich eigentlich an praktischen Anwendungen im Bereich Internet of Things vorstellen? Folgendes Realszenario: Mieter einer Wohnung haben den Verdacht die Heizungssteuerung funktioniert unzuverlässig. Es kommt mehrfach am Tage vor das die Temperatur abfällt. Ziel: Die Temperatur historisch aufzeichnen und auswerten um den Fehler zu analysieren bzw. nachzuweisen. Mit wenigen Bauteilen lässt sich […]