Host PC cannot detect ros topics from voxl2
-
@Zachary-Lowell-0
I was finally able to install ros2 on voxl2 with latest sdk 1.1.0 and run voxl_mpa_to_ros2_node.
and I can see the topics on voxl2 as below.VOXL:~$ ros2 topic list /fmu/in/obstacle_distance /fmu/in/offboard_control_mode /fmu/in/onboard_computer_status /fmu/in/sensor_optical_flow /fmu/in/telemetry_status /fmu/in/trajectory_setpoint /fmu/in/vehicle_attitude_setpoint /fmu/in/vehicle_command /fmu/in/vehicle_mocap_odometry /fmu/in/vehicle_rates_setpoint /fmu/in/vehicle_trajectory_bezier /fmu/in/vehicle_trajectory_waypoint /fmu/in/vehicle_visual_odometry /fmu/out/failsafe_flags /fmu/out/position_setpoint_triplet /fmu/out/sensor_combined /fmu/out/timesync_status /fmu/out/vehicle_attitude /fmu/out/vehicle_control_mode /fmu/out/vehicle_local_position /fmu/out/vehicle_odometry /fmu/out/vehicle_status /parameter_events /rosout
Now I am trying to send command via ros2 message from my host pc however those topics are not visible on my host pc.
HOST_PC:~$ ros2 topic list /parameter_events /rosout
They both have same
ROS_DOMAIN_ID=0
They are in the same network router and share same ip layer 10.10.150.XXX -
The DDS agent client is running on local host in the PX4 instance. The actual call done via the script mentions 127.0.0.1. If you want to stream the dds messages to the host computer, then you need to go into the /usr/bin/voxl-px4-start executable and change the IP for the microdds client to send to your host comp IP instead of the local host. Keep in mind you will then need to run the microdds AGENT on the host computer.
The other option is to keep everything as is, but if there is a way to use a DDs agent to run on the host computer and have the agent probe the client on the px4 instance.
I will look a bit into that today, but those are my two recommendations!
-
@Zachary-Lowell-0
Is there a way to publish ros2 message to certain ethernet port? -
@Kyuhyong-You
It actually turned out that the host-pc has ufw enabled.
Disabling ufw solved the issue.Thanks