The Open Component Portability Infrastructure (OpenCPI) is a real-time embedded (RTE) middleware solution that simplifies programming of heterogeneous processing applications requiring a mix of field-programmable gate arrays (FPGA), general-purpose processors (GPP), digital signal processors (DSP), and high-speed switch fabrics. The "mix" can be over a lifecycle (technology insertion) as well as within a single implementation (to meet SWAP constraints). CPI improves code portability, interoperability, and performance in FPGA and DSP-based environments by providing well-defined waveform component APIs with a set of infrastructure blocks that act as a hardware abstraction layer (HAL).
RT-Thread RTOS is a real-time operating system for 16-bit to 32-bit microcontrollers, with components which include a hard real-time kernel, a command line shell, a device virtual file system, and a graphic user interface. RT-Thread/GUI is a graphic user interface integrated with RT-Thread. It provides a multi-window, multi-thread graphic user interface. Rich widgets are implemented in RT-Thread/GUI, such as label, button, checkbox, textbox, etc. The typical RAM usage of RT-Thread/GUI is less than 20kB RAM.