I tried to integrate the ROS 2 control interface with PX4 (firmware v1.15.4) on ROS 2 Jazzy. Here’s what I observed:
- ROS 2 topic list before running the example shows both
/fmu/in/register_ext_component_request
and/fmu/out/register_ext_component_reply
among many other/fmu/in/...
and/fmu/out/...
topics.
When I run the built-inexample_mode_manual_cpp
node:
ros2 run example_mode_manual_cpp example_mode_manual
it logs:
[DEBUG] [example_mode_manual]: Waiting for FMU…
[DEBUG] [example_mode_manual]: timeout while waiting for FMU
terminate called after throwing an instance of ‘std::runtime_error’
what(): Registration failed
even though other/fmu/out/*
topics (like/fmu/out/input_rc
) are being published normally.
It seems theRegisterExtComponentReply
is visible on the topic list, but the example never actually receives it, sodoRegister()
times out and the node aborts.