This page describes important projects I contributed to.

logo == HIPPEROS ==

HIPPEROS (High Performance Parallel Embedded Real-time Operating Systems) is a multitasking RTOS specifically designed to take advantage and to efficiently manage multi-core platforms for critical, hard real-time applications that must be predictable. It targets embedded platforms. The HIPPEROS kernel is designed from scratch in order to securely support the most recent process models present in the research litterature combined with the management of critical physical hardware constraints with the correct utilisation of embedded platforms like multi-processor system-on-chips.

The RTOS is based on a micro-kernel with an asymmetric master/slave architecture. The idea behind is to natively support parallel processor architectures, by dedicating one core (called the "master") to the heavy operations of the kernel (scheduling, memory management, etc.) and the other cores (the "slaves") can execute user mode application and serve real-time tasks with very few interferences.

HIPPEROS is highly configurable in order to accommodate a large variety of platforms having different processor architectures, different memory sizes and types, etc. It is also as much as possible modular and flexible. It is designed to be able to evolve, and thus different design decisions have been as much as possible made independent from each other.

In 2018, HIPPEROS has been rebranded as the Maestro RTOS. It was designed and implemented by a team made of people from the ULB PARTS laboratory.
In the context of the HIPPEROS project, I was involved in the design, development and validation of the RTOS, including the kernel, drivers, libraries and application code. I developed a strong expertise in the field of operating system design and embedded real-time systems.

For more information, check the HIPPEROS website, the PARTS website or my Ph.D. thesis dissertation.
This video teases the product:

More recently, this is the video recording of a talk I gave at the micro-kernel devroom of the 2020th edition of FOSDEM on 2nd February 2020. The slides can be found here. An MP4 file with the whole talk can be downloaded here.

logo == Tulipp ==

Tulipp (Towards Ubiquitous Low-power Image Processing Platforms), is an EU initiative funded by its Horizon 2020 programme targeting the development of high-performance, energy-efficient embedded systems for the growing range of increasingly complex image processing applications. The project has delivered three Use Cases covering Medical X-Ray Imaging, automotive ADAS (Advanced Driver Assistance Systems) and UAVs (Unmanned Aircraft Vehicles). The new Use Cases, coupled with the Tulipp embedded computing reference platform, deliver outstanding results for embedded vision applications.

The Medical X-Ray Imaging Use Case combines an embedded computing board with a medical X-ray imaging sensor to eliminate the noise on images when radiation doses are reduced.

c-arm filter

The ADAS Use Case enables the implementation of pedestrian detection algorithms running in real-time on a small, energy efficient, embedded platform.
pedestrian detection pedestrian detection

The UAVs Use Case equips a UAV with real-time obstacle detection and avoidance capabilities based on a lightweight and low-cost stereo camera setup.
depth estimation for UAV

At first glance, Medical X-Ray Imaging, ADAS and UAVs would appear to have very little in common, but that’s only true when viewed from the perspective of the final application as they all have a requirement for high-performance image processing and they also suffer from the so-called SWaPC (Size, Weight and Power and Costs) computing constraints typical of embedded systems. Tulipp has addressed these challenges by taking a diverse range of application domains as the basis for defining a common reference processing platform comprising the hardware, the operating system and its programming environment that captures the commonality of real-time, high-performance image processing and vision applications.

Tulipp’s Medical X-Ray Imaging Use Case demonstrates advanced image enhancement algorithms for X-Ray images running at high frame rates. It focuses on improving the performance of X-Ray imaging Mobile C-Arms, which provide an internal view of a patient’s body in real-time during the course of an operation to deliver, increases surgeon efficiency and accuracy with minimal incision sizes, aids faster patient recovery and lowers nosocomial disease risks. Using Tulipp’s platform, which is the size of a smartphone, the Use Case demonstrates how radiation doses to which patients and staff are exposed, which are typically 30 times ambient radiation levels, can be reduced by 75% at the same time as maintaining the clarity of the real-time X-Ray images which would otherwise be rendered useless by the increases in the noise level on the images that a reduced radiation dose can cause.

ADAS adoption is dependent on the implementation of vision systems or on combinations of vision and radar and the algorithms must be capable of integration into a small, energy-efficient Electronic Control Unit (ECU). An ADAS algorithm should be able to process a video image stream with a frame size of 640x480 at a full 30Hz or at least at the half rate. The Tulipp ADAS Use Case demonstrates pedestrian recognition in real-time based on Viola & Jones algorithm. Using the Tulipp platform, the ADAS Use Case achieves a processing time per frame of 66ms, which means that the algorithm reaches the target of running on every second image when the camera runs at 30Hz.

Tulipp's UAV Use Case demonstrates a real-time obstacle avoidance system for UAVs based on a stereo camera setup with cameras orientated in the direction of flight. Even though we talk about autonomous drones, most current systems are still remotely piloted by humans. The Use Case uses disparity maps, which are computed from the camera images, to locate obstacles in the flight path and to automatically steer the UAV around them. This is the necessary key towards totally autonomous drones.

The Tulipp Use Cases, coupled with Tulipp the development kit, comprising hardware platform, multi-core real-time operating system, development tool chain and guidelines, have demonstrated that the computational demands of complex image processing can be delivered in a diverse range of embedded applications within the context of challenging size, weight, power consumption and costs constraints.
Tulipp platform

The project began work in 2016 and finished on January 2019 with a hands-on-tutorial to the ecosystem. Tulipp provided vision-based system designers with a reference platform that defines implementation rules and interfaces designed to tackle power consumption issues while delivering guaranteed, high performance computing power. Tulipp started an ecosystem of stakeholders that will last after then end of the project to provide its starter-kit and continuous improvements of the reference platform.

Tulipp tutorial picture

In the context of the Tulipp project, I was in charge of planning and following the different milestones of the project, especially for the operating system requirements. I also participated in many feature implementations in the HIPPEROS RTOS according to Tulipp's plans, and organised different integration weeks. It consisted of international meetings to integrate the work of platforms, OS, tool chain providers and use case implementors.

The Tulipp project was a source of funding for the HIPPEROS spin-off company. For more information, check the Tulipp website, a description on the Hipeac website or the last chapter of my Ph.D. thesis dissertation.

logo == CRAFTERS ==

The ARTEMIS European R&D CRAFTERS project (ConstRaint and Application driven Framework for Tailoring Embedded Real-time Systems), involving 26 european academic and industry partners, began in June 2012 and will end in June 2015. It aims at reducing the timing and economic footprint of embedded real-time systems design driven by hardware physical constraints and application features needed in Europe.

The focus of the project spans the different domains of real-time applications for heterogeneous, networked, embedded many-core systems. These applications suffer from the lack of trusted pathways to system realization and application deployment. Service and product development efforts are high with many uncertainties. Industry is discouraged from engaging in such ventures, leaving the market opportunity unexploited.

The project proposes a computing environment for many-core systems derived from vertical domains (represented with selected use cases) that will enable the evolution to horizontal domains by providing common methods, tools and reference platforms for embedded many-core applications.

CRAFTERS integrates an innovation ecosystem spanning from application to silicon. Hence, its relevance covers all the Industrial Priorities. The project results centre around reference designs and architectures that are firmly supported by design methods and tools developed specifically for these reference architectures.

CRAFTERS is an ARTEMIS project that started back in June 2012. The ARTEMIS Industrial Association brings together companies and institutions in the field of embedded systems and currently has over 200 members. The available budget for the project is close to 18M € and includes a total of 26 different companies and universities from ten European Union countries.

The ULB PARTS research centre and the MangoGem company are partners in CRAFTERS with financial support from the Brussels Region R&D Funding Agency Innoviris.

For more information, check the CRAFTERS website.