Micrortps_agent not forwarding messages to DDS (Ubuntu 22.04 + ROS2 Humble)

Hi,
I have just setup a new environment and am not seeing any messages published to the /fmu/sensor_combined/out (or using “ros2 launch px4_ros_com sensor_combined_listener.launch.py”).

PX4 with RTPS runs fine and launches the micrortps_client (“make px4_sitl_rtps gazebo”)

The micrortps agent is definitely receving messages (I confirmed by running before and after launch px4 above, and messages received in the 1000s only after running) “micrortps_agent -t UDP”

If I publish a message manually in ros2 then I see it in the listener: “ros2 topic pub /fmu/sensor_combined/out px4_msgs/msg/SensorCombined”

So it seems to me the issue is with the micrortps agent - but I don’t know what to check.

I didn’t have this issue in Ubuntu 20.04 + ROS2 Galactic - but that might be a red herring - since its a new install now.

Other (perhaps) useful info:
When micrortps agent is running I can see publisher:

~$ ros2 topic info /fmu/sensor_combined/out
Type: px4_msgs::msg::SensorCombined
Publisher count: 1
Subscription count: 0

But when I echo it I get this error
~$ ros2 topic echo /fmu/sensor_combined/out
The message type ‘px4_msgs::msg::SensorCombined’ is invalid

Is somehow the micrortps agent sending invalid messages?

Some more info - seems to be topics are using classes not paths:

$ ros2 topic list -t
/fmu/collision_constraints/out [px4_msgs::msg::CollisionConstraints]
/fmu/debug_array/in [px4_msgs::msg::DebugArray]
/fmu/debug_key_value/in [px4_msgs::msg::DebugKeyValue]
/fmu/debug_value/in [px4_msgs::msg::DebugValue]
/fmu/debug_vect/in [px4_msgs::msg::DebugVect]
/fmu/offboard_control_mode/in [px4_msgs::msg::OffboardControlMode]
/fmu/onboard_computer_status/in [px4_msgs::msg::OnboardComputerStatus]
/fmu/position_setpoint/in [px4_msgs::msg::PositionSetpoint]
/fmu/position_setpoint_triplet/in [px4_msgs::msg::PositionSetpointTriplet]
/fmu/sensor_combined/out [px4_msgs::msg::SensorCombined]
/fmu/sensor_optical_flow/in [px4_msgs::msg::SensorOpticalFlow]
/fmu/telemetry_status/in [px4_msgs::msg::TelemetryStatus]
/fmu/timesync/in [px4_msgs::msg::Timesync]
/fmu/timesync/out [px4_msgs::msg::Timesync]
/fmu/trajectory_bezier/in [px4_msgs::msg::TrajectoryBezier]
/fmu/trajectory_setpoint/in [px4_msgs::msg::TrajectorySetpoint]
/fmu/trajectory_waypoint/out [px4_msgs::msg::TrajectoryWaypoint]
/fmu/vehicle_command/in [px4_msgs::msg::VehicleCommand]
/fmu/vehicle_control_mode/out [px4_msgs::msg::VehicleControlMode]
/fmu/vehicle_local_position_setpoint/in [px4_msgs::msg::VehicleLocalPositionSetpoint]
/fmu/vehicle_mocap_odometry/in [px4_msgs::msg::VehicleMocapOdometry]
/fmu/vehicle_odometry/out [px4_msgs::msg::VehicleOdometry]
/fmu/vehicle_status/out [px4_msgs::msg::VehicleStatus]
/fmu/vehicle_trajectory_bezier/in [px4_msgs::msg::VehicleTrajectoryBezier]
/fmu/vehicle_trajectory_waypoint/in [px4_msgs::msg::VehicleTrajectoryWaypoint]
/fmu/vehicle_trajectory_waypoint_desired/out [px4_msgs::msg::VehicleTrajectoryWaypointDesired]
/fmu/vehicle_visual_odometry/in [px4_msgs::msg::VehicleVisualOdometry]
/parameter_events [rcl_interfaces/msg/ParameterEvent]
/rosout [rcl_interfaces/msg/Log]
/timesync_status [px4_msgs::msg::TimesyncStatus]

(also posted here: Topic type format shows as class not topic · Issue #149 · PX4/px4_ros_com · GitHub)