Thank you for explaining the two avenues and for pointing to the C++ examples for micro-ROS, @vmayoral. That’s very well summarized.
Rclcpp makes intensive use of dynamic memory allocations, which is generally considered harmful when developing software for tiny microcontrollers. That’s why rclcpp is not shown in the current version of the micro-ROS architecture diagram, but you can use it directly with the micro-ROS stack. In the micro-ROS organization on GitHub, you’ll also find an example for the use of uClibc++. (Note that uClibc++ is licensed under LGPL.)
There is also a decision paper from 2019 that analyzes the different options in more depth and explains the choice of rcl+rclc. You can find the paper at Introduction to Client Library | micro-ROS.
Recently, in the Embedded Working Group, a discussion was triggered about providing a C++ API that uses C++ compile-time features only. Technically, such API could even be integrated in rclc. We plan a dedicated slot to discuss this topic (and to seek for contributors) in the next Embedded Working Group on July 27th. It would be great if you, @evi001, could attend the meeting.