Inspirel banner

YAMI4 1.12.0 - new features and changes

This article is a short description of the new features and changes introduced in the YAMI4 1.12.0 release.

Embracing embedded software development

YAMI4 was designed with embedded systems in mind from the very beginning, from its very first architectural and coding decisions.

This dedication to embedded systems was mostly visible in the approach to memory management, with the core library consistently relying on its own memory allocator that can work on a pool organized in the memory block defined by the user. This rigour is typical for software frameworks that target embedded world, as it allows to easily implement memory partitioned applications, as well as reduce the reliance on complex language run-time environments.

Yet, the potential of applying YAMI4 in embedded systems was not fully developed with existing supported platforms limited to Windows and POSIX systems. The 1.12.0 release is a serious attempt to fill this gap.

The YAMI4 library now supports three Real-Time Operating Systems that are among the most widely used in the industry: FreeRTOS (with the LwIP network stack), ThreadX (with the NetX network stack) and TI-RTOS (previously SYS-BIOS).

It would be quite difficult to provide a generic port to these systems, as the actual details depend on the choice of target board, as well as the development environment (IDE) that is used to build the final system. For this reason, the package contains example project setups for some selected target combinations and separate articles were prepared to explain the steps taken to configure everything, with the idea that these explanations will be useful to engineers that need to work with slightly different setups.

The following articles explain the configuration of both core and high-level libraries on the given target environment, with appropriate code already being part of the 1.12.0 package:

STM32 Nucleo-144

STM32 Nucleo-144

STM32 Nucleo-144 is a series of boards with ST microcontrollers, which can host various RTOS environments.

See how to use YAMI4 on STM32F429 with FreeRTOS and the LwIP network stack, with project prepared for the IAR Workbench IDE.

See how to use YAMI4 on STM32F429 with ThreadX and the NetX network stack, also with IAR Workbench IDE in mind.


Texas Instruments MSP-EXP432E401Y (SimpleLink LaunchPad)

MSP-EXP432E401Y is a prototyping board with a SimpleLink microcontroller.

See how to use YAMI4 on MSP-EXP432E401Y with TI-RTOS operating system, with project prepared for the Code Composer Studio.


Texas Instruments EK-TM4C1294XL (Tiva C LaunchPad)

EK-TM4C1294XL is a prototyping board with a Tiva C Series microcontroller.

See how to use YAMI4 on TM4C1294XL with TI-RTOS operating system, also with CCS in mind.

Go to the YAMI4 homepage.