WP4. Middleware for interaction through eyes and mind

Description of work

T4.1 – Middleware architecture design (SMI, EBNeuro) [M1-M7]

The goal of T4.1 is to design the architecture of the software engine (i.e., middleware) that will allow us to implement the guidelines and strategies specified in WP2 in the context of an operating system. This architecture will specify, among others, the functionalities dealing with the dynamic loading of sensor modules, their instantiation, the management of threads and buffers. Given that such functionalities are very close to the kernel of an operating system and may differ across the existing solutions, our architecture should be designed in a flexible and extendable manner. The final outcome of this task will be a report with the specifications of MAMEM’s middleware that will be used as the blueprint for the software engine developed in T4.2.

T4.2 – Middleware implementation and Interaction SDK (SMI, EBNeuro, CERTH, UNI KO-LD) [M8-M18, M27-M32]

The goal of this task is the develoedfsdpment of the software engine implementing MAMEM’s middleware together with the documentation of the accompanying Software Development Kit (SDK). As shown in the figure, MAMEM middleware will run on top of the operating system with the aim to make completely transparent the process of signal acquisition and de-noising, as well as its synchronization through time-stamping. Moreover, through the Interaction SDK our goal is to also make transparent the process of interfacing with the function calls of the underlying operating system for accessing the navigation controls of a software application. In order to achieve this, we will rely on the APIs offered by the operating systems for interfacing with their core (i.e., WinAPI for Windows, XLIB for Linux and Cocoa for OS X). Based on these APIs we will develop the code necessary to provide the control functions specified in WP3, ranging from the low- and meso-level control functions, all the way to the higher control functions implementing the novel interaction paradigms of T3.4. These control functions apart from abstracting the code necessary to interface with the core of the operating system, will also incorporate the functionality of the algorithms developed in WP3 for translating signals into meaningful control. Finally, everything will be wrapped under MAMEM’s Interaction SDK that will offer external developers and interface designers the opportunity to build software applications that can be navigated and controlled through the user’s eyes and mind.

Moreover, MAMEM’s middleware and SDK will be designed to facilitate their extension with new, third party interaction paradigms for touch-less interface control. This will be accomplished by offering code templates generated automatically by the SDK wizard and by documenting a complete API for reaching the full set of available function calls while remaining independent from the operating system. Eventually, MAMEM’s middleware and Interaction SDK will be employed by WP5 to develop the prototype interface applications of T5.3.

T4.3 – Algorithms integration and technical verification (EBNeuro, SMI, CERTH, UNI KO-LD) [M12-M18, M30-M32]

The goal of this task is to ensure that the research outcomes of WP2 and WP3 that have been integrated in MAMEM’s middleware are technically verified with respect to their expected functionality before reaching the prototype interface applications and the pilot trials. In order to ensure that the developed solution meets its expected requirements, validation sessions will be put in place. These validation sessions will rely on an Assembly, Integration and Validation (AIV) plan that will be written in parallel with the implementation of MAMEM’s middleware and SDK. This plan will be structured in two parts; the first specifying the tests necessary to verify the proper functioning of the overall sensor installation when installed into a new place and the second specifying the integration protocol (i.e. fix the integration interfaces and practices) between the individual components and the middleware. The goal of this protocol is to allow individual components to work independently on algorithmic refinements and optimizations, while ensuring their smooth integration with the project’s unified solution. Finally, the validation tests will be put in action by the partners responsible for the pilot trials (SHEBA, MDA Hellas, AUTH) as part of WP6 activities and under the supervision of WP6 leader. In this way, we will verify that MAMEM middleware and SDK function to the expected performance criteria in an environment close to the end-user environment. This will ensure that the enabling technology has reached the necessary quality level for supporting the pilot trials.