Using OSGi enRoute for the Community Event Competition
OSGi enRoute simplifies the construction of well designed service based applications. It is a new open source project sponsored by the OSGi, version 1.0 (based on Java 8 & OSGi Release 6) was recently released. We used OSGi enRoute to develop the Community Event IoT contest this year. We focused the contest this year around trains. Participants could write a Track Manager bundle for the cloud or a Train Manager bundle in a controller (Raspberry Pi). The Track Manager receives events from the rail network and assigns tasks to the trains. The trains need then to plan their route, collaborating with the Track Manager no get the right switch settings and permissions. This is then all executed on an actual Lego train track which is present here on the Community Event.
For this contest, we (OSGi, Paremus, ProSyst & iMinds) developed an SDK based on OSGi enRoute. This gave us a solid foundation to build an SDK that allowed the contestants to write their Track Manager bundle or a Train Manager bundle.
This presentation will show how we used OSGi enRoute to build the infrastructure, emulators, graphic user interfaces, and the example managers. We will dive into the architecture, problems encountered, and solutions found.
This presentation is of interest for people considering building applications on OSGi since it demonstrates the best practices by the people that developed the OSGi specifications. And, let's face it, who can ignore playing with trains?