Getting UORB in nsh but not in agent side ROS2

first of all I started the micrortps_agent with ttyACM0 and get the output:

~$ micrortps_agent -t UARt -d /dev/ttyACM0 -b 921600
--- MicroRTPS Agent ---
[   micrortps_agent   ]	Starting link...
[   micrortps_agent   ]	UART transport: device: /dev/ttyACM0; baudrate: 921600; poll: 1ms; flow_control: No
---   Subscribers   ---
- DebugArray subscriber started
- DebugKeyValue subscriber started
- DebugValue subscriber started
- DebugVect subscriber started
- OffboardControlMode subscriber started
- OpticalFlow subscriber started
- PositionSetpoint subscriber started
- PositionSetpointTriplet subscriber started
- TelemetryStatus subscriber started
- Timesync subscriber started
- VehicleCommand subscriber started
- VehicleLocalPositionSetpoint subscriber started
- VehicleTrajectoryWaypoint subscriber started
- OnboardComputerStatus subscriber started
- TrajectoryBezier subscriber started
- VehicleTrajectoryBezier subscriber started
- TrajectorySetpoint subscriber started
- VehicleMocapOdometry subscriber started
- VehicleVisualOdometry subscriber started
-----------------------

----   Publishers  ----
- Timesync publishers started
- TrajectoryWaypoint publisher started
- VehicleControlMode publisher started
- VehicleOdometry publisher started
- VehicleStatus publisher started
- CollisionConstraints publisher started
- TimesyncStatus publisher started
- SensorCombined publisher started
- VehicleTrajectoryWaypointDesired publisher started
-----------------------

then I started nsh terminal ( px4 side in other term) with my UART to USB converter (CP2102) then entered the terminal:

~/PX4-Autopilot/Tools$ ./mavlink_shell.py /dev/ttyUSB0 
Connecting to MAVLINK...

nsh>

then to see ros2 side topic list:

~$ ros2 topic list
/fmu/collision_constraints/out
/fmu/debug_array/in
/fmu/debug_key_value/in
/fmu/debug_value/in
/fmu/debug_vect/in
/fmu/offboard_control_mode/in
/fmu/onboard_computer_status/in
/fmu/optical_flow/in
/fmu/position_setpoint/in
/fmu/position_setpoint_triplet/in
/fmu/sensor_combined/out
/fmu/telemetry_status/in
/fmu/timesync/in
/fmu/timesync/out
/fmu/trajectory_bezier/in
/fmu/trajectory_setpoint/in
/fmu/trajectory_waypoint/out
/fmu/vehicle_command/in
/fmu/vehicle_control_mode/out
/fmu/vehicle_local_position_setpoint/in
/fmu/vehicle_mocap_odometry/in
/fmu/vehicle_odometry/out
/fmu/vehicle_status/out
/fmu/vehicle_trajectory_bezier/in
/fmu/vehicle_trajectory_waypoint/in
/fmu/vehicle_trajectory_waypoint_desired/out
/fmu/vehicle_visual_odometry/in
/parameter_events
/rosout
/timesync_statusc

but first question came here into my mind. I am using different controller which is Holybro Durandal. But all of the topics for fmu based, in that case will I have any trouble with that , I don’t have any idea.
I passed to echo respectively, but I saw only …/out topics can be matched, WHY?
,and in every echo command I opened seperate terminal page and I commanded all the topics which are ending with /out ( because I could only echo these ones.)
~$ ros2 topic echo /fmu/sensor_combined/out
~$ ros2 topic echo /fmu/collision_constraints/out
~$ ros2 topic echo /fmu/timesync/out
~$ ros2 topic echo /fmu/trajectory_waypoint/out
~$ ros2 topic echo /fmu/vehicle_control_mode/out
~$ ros2 topic echo /fmu/vehicle_odometry/out
~$ ros2 topic echo /fmu/vehicle_status/out
~$ ros2 topic echo /fmu/vehicle_trajectory_waypoint_desired/out
And these commands wait for forever nothing happend in every terminal that is run. Is there something has to appear, I dunno, If doesn’t please let me know. I am diving all the details I guess.
Then in micrortps_agent side all the matches has been happened.

~$ micrortps_agent -t UARt -d /dev/ttyACM0 -b 921600
--- MicroRTPS Agent ---
[   micrortps_agent   ]	Starting link...
[   micrortps_agent   ]	UART transport: device: /dev/ttyACM0; baudrate: 921600; poll: 1ms; flow_control: No
---   Subscribers   ---
- DebugArray subscriber started
- DebugKeyValue subscriber started
- DebugValue subscriber started
- DebugVect subscriber started
- OffboardControlMode subscriber started
- OpticalFlow subscriber started
- PositionSetpoint subscriber started
- PositionSetpointTriplet subscriber started
- TelemetryStatus subscriber started
- Timesync subscriber started
- VehicleCommand subscriber started
- VehicleLocalPositionSetpoint subscriber started
- VehicleTrajectoryWaypoint subscriber started
- OnboardComputerStatus subscriber started
- TrajectoryBezier subscriber started
- VehicleTrajectoryBezier subscriber started
- TrajectorySetpoint subscriber started
- VehicleMocapOdometry subscriber started
- VehicleVisualOdometry subscriber started
-----------------------

----   Publishers  ----
- Timesync publishers started
- TrajectoryWaypoint publisher started
- VehicleControlMode publisher started
- VehicleOdometry publisher started
- VehicleStatus publisher started
- CollisionConstraints publisher started
- TimesyncStatus publisher started
- SensorCombined publisher started
- VehicleTrajectoryWaypointDesired publisher started
-----------------------
[   micrortps_agent   ]	VehicleOdometry publisher matched
[   micrortps_agent   ]	VehicleOdometry publisher unmatched
[   micrortps_agent   ]	CollisionConstraints publisher matched
[   micrortps_agent   ]	SensorCombined publisher matched
[   micrortps_agent   ]	Timesync publisher matched
[   micrortps_agent   ]	TrajectoryWaypoint publisher matched
[   micrortps_agent   ]	VehicleControlMode publisher matched
[   micrortps_agent   ]	VehicleOdometry publisher matched
[   micrortps_agent   ]	VehicleStatus publisher matched
[   micrortps_agent   ]	VehicleTrajectoryWaypointDesired publisher matched

then in nsh terminal to see UORB topics I command ls /obj then the output that I got:


nsh> ls /obj
/obj:
 actuator_armed0
 actuator_controls_00
 actuator_controls_10
 actuator_controls_virtual_fw0
 actuator_controls_virtual_mc0
 actuator_outputs0
 actuator_outputs1
 adc_report0
 airspeed_validated0
 airspeed_wind0
 battery_status0
 commander_state0
 cpuload0
 ekf2_timestamps0
 ekf2_timestamps1
 ekf_gps_drift0
 ekf_gps_drift1
 esc_status0
 estimator_attitude0
 estimator_attitude1
 estimator_event_flags0
 estimator_event_flags1
 estimator_global_position0
 estimator_global_position1
 estimator_innovation_test_ratios0
 estimator_innovation_test_ratios1
 estimator_innovation_variances0
 estimator_innovation_variances1
 estimator_innovations0
 estimator_innovations1
 estimator_local_position0
 estimator_local_position1
 estimator_odometry0
 estimator_odometry1
 estimator_optical_flow_vel0
 estimator_optical_flow_vel1
 estimator_selector_status0
 estimator_sensor_bias0
 estimator_sensor_bias1
 estimator_states0
 estimator_states1
 estimator_status0
 estimator_status1
 estimator_status_flags0
 estimator_status_flags1
 estimator_wind0
 estimator_wind1
 input_rc0
 led_control0
 log_message0
 mavlink_log0
 mc_virtual_attitude_setpoint0
 mission0
 multirotor_motor_limits0
 parameter_update0
 position_controller_landing_status0
 position_setpoint_triplet0
 px4io_status0
 rate_ctrl_status0
 rate_ctrl_status1
 safety0
 sensor_accel0
 sensor_accel1
 sensor_accel_fifo0
 sensor_accel_fifo1
 sensor_baro0
 sensor_combined0
 sensor_gps0
 sensor_gyro0
 sensor_gyro1
 sensor_gyro_fft0
 sensor_gyro_fifo0
 sensor_gyro_fifo1
 sensor_mag0
 sensor_preflight_mag0
 sensor_selection0
 sensors_status_imu0
 system_power0
 takeoff_status0
 task_stack_info0
 telemetry_status0
 telemetry_status1
 test_motor0
 tune_control0
 vehicle_acceleration0
 vehicle_air_data0
 vehicle_angular_acceleration0
 vehicle_angular_velocity0
 vehicle_attitude0
 vehicle_attitude_setpoint0
 vehicle_command0
 vehicle_command_ack0
 vehicle_control_mode0
 vehicle_imu0
 vehicle_imu1
 vehicle_imu_status0
 vehicle_imu_status1
 vehicle_land_detected0
 vehicle_local_position0
 vehicle_magnetometer0
 vehicle_odometry0
 vehicle_rates_setpoint0
 vehicle_status0
 vehicle_status_flags0
 vtol_vehicle_status0
 yaw_estimator_status0
 yaw_estimator_status1

I tried to see most of them but I didn’t some of the calibrations yet.

nsh> listener vehicle_imu

TOPIC: vehicle_imu 2 instances

Instance 0:
 vehicle_imu_s
	timestamp: 27204797735  (0.010679 seconds ago)
	timestamp_sample: 27204797281  (454 us before timestamp)
	accel_device_id: 3932170 (Type: 0x3C, SPI:1 (0x00)) 
	gyro_device_id: 3932170 (Type: 0x3C, SPI:1 (0x00)) 
	delta_angle: [0.0000, 0.0000, -0.0000]
	delta_velocity: [0.0021, -0.0002, -0.0484]
	delta_angle_dt: 5003
	delta_velocity_dt: 5003
	delta_velocity_clipping: 0
	calibration_count: 10

Instance 1:
 vehicle_imu_s
	timestamp: 27204865317  (0.003154 seconds ago)
	timestamp_sample: 27204865230  (87 us before timestamp)
	accel_device_id: 6946826 (Type: 0x6A, SPI:1 (0x00)) 
	gyro_device_id: 6684682 (Type: 0x66, SPI:1 (0x00)) 
	delta_angle: [-0.0000, -0.0000, -0.0000]
	delta_velocity: [0.0023, 0.0002, -0.0483]
	delta_angle_dt: 5005
	delta_velocity_dt: 4997
	delta_velocity_clipping: 0
	calibration_count: 8
nsh> listener vehicle_local_position

TOPIC: vehicle_local_position
 vehicle_local_position_s
	timestamp: 27236966608  (0.003855 seconds ago)
	timestamp_sample: 27236965912  (696 us before timestamp)
	ref_timestamp: 0
	ref_lat: nan
	ref_lon: nan
	x: 0.0030
	y: -0.0022
	z: -1.3499
	delta_xy: [0.0000, 0.0000]
	delta_z: 0.0000
	vx: 0.0027
	vy: -0.0035
	vz: 0.0010
	z_deriv: 0.0075
	delta_vxy: [-0.0001, 0.0001]
	delta_vz: 0.0000
	ax: 0.0270
	ay: -0.0386
	az: 0.0300
	heading: -0.5254
	delta_heading: -0.0022
	ref_alt: nan
	dist_bottom: 0.1000
	eph: 0.0811
	epv: 0.5319
	evh: 0.0916
	evv: 0.1465
	vxy_max: inf
	vz_max: inf
	hagl_min: inf
	hagl_max: inf
	xy_valid: False
	z_valid: True
	v_xy_valid: False
	v_z_valid: True
	xy_reset_counter: 1
	z_reset_counter: 0
	vxy_reset_counter: 1
	vz_reset_counter: 0
	heading_reset_counter: 2
	xy_global: False
	z_global: False
	dist_bottom_valid: True
	dist_bottom_sensor_bitfield: 0
nsh> listener  vehicle_status

TOPIC: vehicle_status
 vehicle_status_s
	timestamp: 27280718351  (0.117449 seconds ago)
	nav_state_timestamp: 1155088
	failsafe_timestamp: 0
	armed_time: 0
	takeoff_time: 0
	onboard_control_sensors_present: 304119868
	onboard_control_sensors_enabled: 304185372
	onboard_control_sensors_health: 2523151
	nav_state: 0
	arming_state: 1
	hil_state: 0
	failsafe: False
	system_type: 22
	system_id: 1
	component_id: 1
	vehicle_type: 1
	is_vtol: True
	is_vtol_tailsitter: False
	vtol_fw_permanent_stab: False
	in_transition_mode: False
	in_transition_to_fw: False
	rc_signal_lost: True
	rc_input_mode: 0
	data_link_lost: True
	data_link_lost_counter: 0
	high_latency_data_link_lost: False
	engine_failure: False
	mission_failure: False
	geofence_violated: False
	failure_detector_status: 0
	latest_arming_reason: 0
	latest_disarming_reason: 0
nsh> listener  vehicle_rates_setpoint

TOPIC: vehicle_rates_setpoint
 vehicle_rates_setpoint_s
	timestamp: 27305331033  (0.006427 seconds ago)
	roll: -0.0069
	pitch: -0.2866
	yaw: 0.0001
	thrust_body: [0.0000, 0.0000, -0.0000]

some of the topics gave me the never published, I don’t know why, where is the problem:

nsh> listener  sensor_gps
never published

then I command this one also:

nsh> listener  sensor_combined

TOPIC: sensor_combined
 sensor_combined_s
	timestamp: 29324036401  (0.004735 seconds ago)
	gyro_rad: [-0.0009, 0.0016, -0.0010]
	gyro_integral_dt: 5003
	accelerometer_timestamp_relative: 0
	accelerometer_m_s2: [0.4562, -0.0430, -9.6767]
	accelerometer_integral_dt: 5003
	accelerometer_clipping: 0

I run this code in ros2 side:

~$ ros2 topic pub /fmu/sensor_combined/out px4_msgs/msg/SensorCombined
publisher: beginning loop
publishing #1: px4_msgs.msg.SensorCombined(timestamp=0, gyro_rad=array([0., 0., 0.], dtype=float32), gyro_integral_dt=0, accelerometer_timestamp_relative=0, accelerometer_m_s2=array([0., 0., 0.], dtype=float32), accelerometer_integral_dt=0, accelerometer_clipping=0)

publishing #2: px4_msgs.msg.SensorCombined(timestamp=0, gyro_rad=array([0., 0., 0.], dtype=float32), gyro_integral_dt=0, accelerometer_timestamp_relative=0, accelerometer_m_s2=array([0., 0., 0.], dtype=float32), accelerometer_integral_dt=0, accelerometer_clipping=0)

publishing #3: px4_msgs.msg.SensorCombined(timestamp=0, gyro_rad=array([0., 0., 0.], dtype=float32), gyro_integral_dt=0, accelerometer_timestamp_relative=0, accelerometer_m_s2=array([0., 0., 0.], dtype=float32), accelerometer_integral_dt=0, accelerometer_clipping=0)

I got the messages then in:

~$ ros2 topic echo /fmu/sensor_combined/out
timestamp: 0
gyro_rad:
- 0.0
- 0.0
- 0.0
gyro_integral_dt: 0
accelerometer_timestamp_relative: 0
accelerometer_m_s2:
- 0.0
- 0.0
- 0.0
accelerometer_integral_dt: 0
accelerometer_clipping: 0
---
timestamp: 0
gyro_rad:
- 0.0
- 0.0
- 0.0
gyro_integral_dt: 0
accelerometer_timestamp_relative: 0
accelerometer_m_s2:
- 0.0
- 0.0
- 0.0
accelerometer_integral_dt: 0
accelerometer_clipping: 0
---
timestamp: 0
gyro_rad:
- 0.0
- 0.0
- 0.0
gyro_integral_dt: 0
accelerometer_timestamp_relative: 0
accelerometer_m_s2:
- 0.0
- 0.0
- 0.0
accelerometer_integral_dt: 0
accelerometer_clipping: 0
---

Why is it happenning I really don’t get it… In nsh terminal I can subscribe and see the UORB but in ROS2 side I couldn’t see the datas coming from onboard sensors.Could you help me please, in this topic I wish some one help me

1 Like

I am trying to achieve a similar thing to you. Please see my post here which might be able to help you Px4_ros_com applications won't receive any data via micrortps. I am also trying to obtain GPS and sensor data on the ROS side from my flight controller but having no luck. Have you started the Micro RTPS client on your flight controller?

I command this code in ros2
~$ ros2 run px4_ros_com vehicle_gps_position_listener
after this nothing happened until I command in anothet terminal:
~$ ros2 topic pub /fmu/vehicle_gps_position/out px4_msgs/msg/VehicleGpsPosition
then I got the output as in terminal in which ~$ ros2 run px4_ros_com vehicle_gps_position_listener is located :


RECEIVED VEHICLE GPS POSITION DATA
==================================
ts: 0
lat: 0
lon: 0
alt: 0
alt_ellipsoid: 0
s_variance_m_s: 0
c_variance_rad: 0
fix_type: 
eph: 0
epv: 0
hdop: 0
vdop: 0
noise_per_ms: 0
vel_m_s: 0
vel_n_m_s: 0
vel_e_m_s: 0
vel_d_m_s: 0
cog_rad: 0
vel_ned_valid: 0
timestamp_time_relative: 0
time_utc_usec: 0
satellites_used: 
heading: 0
heading_offset: 0

then to be sure I command

nsh> micrortps_client status
	up and running for 1425.259 seconds
	nr. of messages received: 0
	nr. of messages sent: 433031
	total data read: 0 bytes
	total data sent: 58858511 bytes
	rates:
	  rx: 0.000 kB/s
	  tx: 41.314 kB/s
	  avg rx: 0.000 kB/s
	  avg tx: 41.297 kB/s
	  tx rate max: Unlimited

I see , there is not any receiving messages to UORB to sent its data via client, I guess if I didn’t anything wrong in the code side agent cannot subscribe.

Hi,

I just replied to Px4_ros_com applications won't receive any data via micrortps
Maybe you could answer/test the same.

In my topic I have already added ros2 list and my Ubuntu is 20.04 lts and ROS2 Foxy.

First of all thanks for reply, I started clinet but I got the same outputs… I will check your post also.

Just out of curiosity(, because there is an regression issue with ros2 foxy and DDS):

Can you try to run the companion computer side including something like

ros2 topic hz <your-favorite-topic-here>

and then restart just the px4 side.

~$ ros2 topic hz /fmu/sensor_combined/out 
average rate: 1.000
	min: 1.000s max: 1.000s std dev: 0.00025s window: 2
average rate: 1.000
	min: 1.000s max: 1.000s std dev: 0.00024s window: 3
average rate: 1.000
	min: 1.000s max: 1.000s std dev: 0.00022s window: 4
average rate: 1.000
	min: 1.000s max: 1.000s std dev: 0.00020s window: 5
average rate: 1.000
	min: 1.000s max: 1.000s std dev: 0.00019s window: 6
average rate: 1.000
	min: 1.000s max: 1.000s std dev: 0.00019s window: 8
average rate: 1.000
	min: 1.000s max: 1.000s std dev: 0.00018s window: 10
average rate: 1.000
	min: 1.000s max: 1.000s std dev: 0.00017s window: 12
average rate: 0.426
	min: 1.000s max: 19.878s std dev: 4.86175s window: 14
average rate: 0.459
	min: 1.000s max: 19.878s std dev: 4.56957s window: 16
average rate: 0.488
	min: 1.000s max: 19.878s std dev: 4.32415s window: 18
average rate: 0.514
	min: 0.999s max: 19.878s std dev: 4.11430s window: 20
average rate: 0.527
	min: 0.999s max: 19.878s std dev: 4.02017s window: 21
average rate: 0.538
	min: 0.999s max: 19.878s std dev: 3.93220s window: 22
average rate: 0.560
	min: 0.999s max: 19.878s std dev: 3.77226s window: 24
average rate: 0.579
	min: 0.999s max: 19.878s std dev: 3.63033s window: 26
average rate: 0.589
	min: 0.999s max: 19.878s std dev: 3.56510s window: 27
average rate: 0.597
	min: 0.999s max: 19.878s std dev: 3.50326s window: 28
average rate: 0.614
	min: 0.999s max: 19.878s std dev: 3.38865s window: 30
average rate: 0.629
	min: 0.999s max: 19.878s std dev: 3.28458s window: 32
average rate: 0.636
	min: 0.999s max: 19.878s std dev: 3.23601s window: 33
average rate: 0.643
	min: 0.999s max: 19.878s std dev: 3.18953s window: 34
average rate: 0.656
	min: 0.999s max: 19.878s std dev: 3.10227s window: 36
average rate: 0.668
	min: 0.999s max: 19.878s std dev: 3.02180s window: 38
average rate: 0.674
	min: 0.999s max: 19.878s std dev: 2.98384s window: 39
average rate: 0.685
	min: 0.999s max: 19.878s std dev: 2.91202s window: 41
average rate: 0.690
	min: 0.999s max: 19.878s std dev: 2.87800s window: 42
average rate: 0.695
	min: 0.999s max: 19.878s std dev: 2.84515s window: 43
average rate: 0.704
	min: 0.999s max: 19.878s std dev: 2.78267s window: 45
average rate: 0.713
	min: 0.999s max: 19.878s std dev: 2.72414s window: 47
average rate: 0.722
	min: 0.999s max: 19.878s std dev: 2.66915s window: 49
average rate: 0.726
	min: 0.999s max: 19.878s std dev: 2.64288s window: 50
average rate: 0.730
	min: 0.999s max: 19.878s std dev: 2.61736s window: 51
average rate: 0.737
	min: 0.999s max: 19.878s std dev: 2.56847s window: 53
average rate: 0.744
	min: 0.999s max: 19.878s std dev: 2.52222s window: 55
average rate: 0.748
	min: 0.999s max: 19.878s std dev: 2.50001s window: 56
average rate: 0.754
	min: 0.999s max: 19.878s std dev: 2.45730s window: 58
average rate: 0.758
	min: 0.999s max: 19.878s std dev: 2.43675s window: 59
average rate: 0.761
	min: 0.999s max: 19.878s std dev: 2.41670s window: 60
average rate: 0.767
	min: 0.999s max: 19.878s std dev: 2.37805s window: 62
average rate: 0.769
	min: 0.999s max: 19.878s std dev: 2.35941s window: 63
average rate: 0.772
	min: 0.999s max: 19.878s std dev: 2.34120s window: 64
average rate: 0.778
	min: 0.999s max: 19.878s std dev: 2.30601s window: 66
average rate: 0.783
	min: 0.999s max: 19.878s std dev: 2.27236s window: 68
average rate: 0.785
	min: 0.999s max: 19.878s std dev: 2.25608s window: 69
average rate: 0.790
	min: 0.999s max: 19.878s std dev: 2.22454s window: 71
average rate: 0.792
	min: 0.999s max: 19.878s std dev: 2.20925s window: 72
average rate: 0.795
	min: 0.999s max: 19.878s std dev: 2.19428s window: 73
average rate: 0.799
	min: 0.999s max: 19.878s std dev: 2.16523s window: 75
average rate: 0.803
	min: 0.999s max: 19.878s std dev: 2.13730s window: 77
average rate: 0.805
	min: 0.999s max: 19.878s std dev: 2.12373s window: 78
average rate: 0.807
	min: 0.999s max: 19.878s std dev: 2.11042s window: 79
average rate: 0.811
	min: 0.999s max: 19.878s std dev: 2.08453s window: 81
average rate: 0.813
	min: 0.999s max: 19.878s std dev: 2.07194s window: 82

what do you mean in regression? in px4 documentation they are advicing that version, I am little bit confused.

The version (foxy) is ok. But with some late changes in the packages there are things between PX4 and ROS2 not connecting correctly. I have not had time to investigate more so far.

But:
Does it mean you get messages when PX4 starts after the companion computer?
1 Hz seems to be very low for the topic. Is that correct?

Here is a work- around that worked for me:

The RMW FastRTPS seems to make issues, unfortunately it is the default one. You can try to make Cyclon the RMW to use with:

  1. if you don’t have it yet, sudo apt install ros-foxy-rmw-cyclonedds-cpp
  2. export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp you need to do that in every window where you run ros stuff. so better into bashrc for long term.

Maybe this unblocks you.

Yes, you have the same issue as me. Your vehicle position listener is not receiving any data from your flight controller. It only responds to ros2 topic pub /fmu/vehicle_gps_position/out px4_msgs/msg/VehicleGpsPosition because you are publishing it here but with no data

I tried this for me and it didn’t work :confused:

I did ,but it’s not working for me.

When I command sensor status I got the result as it is:

nsh> sensors start
ERROR [sensors] Task already running
nsh> sensors status
INFO  [sensors] selected gyro: 6684682 (1)
INFO  [data_validator] validator: best: 0, prev best: 0, failsafe: NO (0 events)
INFO  [data_validator] sensor #0, prio: 50, state: OK
INFO  [data_validator] 	val:   0.0034, lp:   0.0039 mean dev:   0.0000 RMS:   0.0124 conf:   1.0000
INFO  [data_validator] 	val:  -0.0021, lp:  -0.0022 mean dev:   0.0000 RMS:   0.0033 conf:   1.0000
INFO  [data_validator] 	val:  -0.0001, lp:   0.0002 mean dev:   0.0000 RMS:   0.0198 conf:   1.0000
INFO  [data_validator] sensor #1, prio: 50, state: OK
INFO  [data_validator] 	val:   0.0033, lp:  -0.0020 mean dev:  -0.0000 RMS:   0.0126 conf:   1.0000
INFO  [data_validator] 	val:   0.0054, lp:   0.0042 mean dev:  -0.0000 RMS:   0.0041 conf:   1.0000
INFO  [data_validator] 	val:  -0.0004, lp:  -0.0007 mean dev:  -0.0000 RMS:   0.0201 conf:   1.0000

INFO  [sensors] selected accel: 6946826 (1)
INFO  [data_validator] validator: best: 0, prev best: 0, failsafe: NO (0 events)
INFO  [data_validator] sensor #0, prio: 50, state: OK
INFO  [data_validator] 	val:   0.4905, lp:   0.4971 mean dev:  -0.0000 RMS:   0.0333 conf:   1.0000
INFO  [data_validator] 	val:   0.1531, lp:   0.1588 mean dev:  -0.0000 RMS:   0.0331 conf:   1.0000
INFO  [data_validator] 	val:  -9.6628, lp:  -9.6775 mean dev:   0.0000 RMS:   0.0438 conf:   1.0000
INFO  [data_validator] sensor #1, prio: 50, state: OK
INFO  [data_validator] 	val:   0.4362, lp:   0.4531 mean dev:  -0.0000 RMS:   0.0351 conf:   1.0000
INFO  [data_validator] 	val:   0.1087, lp:   0.1333 mean dev:  -0.0000 RMS:   0.0346 conf:   1.0000
INFO  [data_validator] 	val:  -9.6756, lp:  -9.6818 mean dev:   0.0000 RMS:   0.0430 conf:   1.0000

INFO  [vehicle_magnetometer] selected magnetometer: 396809 (1)
INFO  [data_validator] validator: best: 1, prev best: 1, failsafe: NO (0 events)
INFO  [data_validator] sensor #0, prio: 50, state: OK
INFO  [data_validator] 	val:  -0.2029, lp:  -0.2014 mean dev:   0.0001 RMS:   0.0032 conf:   1.0000
INFO  [data_validator] 	val:  -0.0111, lp:  -0.0082 mean dev:   0.0001 RMS:   0.0035 conf:   1.0000
INFO  [data_validator] 	val:   0.5134, lp:   0.5113 mean dev:  -0.0001 RMS:   0.0028 conf:   1.0000
INFO  [data_validator] sensor #1, prio: 75, state: OK
INFO  [data_validator] 	val:  -0.1865, lp:  -0.1856 mean dev:  -0.0003 RMS:   0.0094 conf:   1.0000
INFO  [data_validator] 	val:   0.1798, lp:   0.1782 mean dev:   0.0000 RMS:   0.0146 conf:   1.0000
INFO  [data_validator] 	val:   0.2576, lp:   0.2587 mean dev:  -0.0000 RMS:   0.0068 conf:   1.0000
INFO  [sensor_calibration] MAG 396825 EN: 1, offset: [0.144 0.208 -0.119], scale: [1.040 1.009 0.920], nan degC, Internal
INFO  [sensor_calibration] MAG 396809 EN: 1, offset: [0.000 0.000 0.000], scale: [1.000 1.000 1.000], nan degC, External ROT: 

INFO  [vehicle_air_data] selected barometer: 3997730 (0)
INFO  [data_validator] validator: best: 0, prev best: 0, failsafe: NO (0 events)
INFO  [data_validator] sensor #0, prio: 0, state: OK
INFO  [data_validator] 	val: 100282.9922, lp: 100284.3438 mean dev:  -0.1252 RMS:   2.5335 conf:   1.0000
INFO  [data_validator] 	val:  35.2400, lp:  35.2417 mean dev:   0.0007 RMS:   0.0067 conf:   1.0000
INFO  [data_validator] 	val:   0.0000, lp:   0.0000 mean dev:   0.0000 RMS:   0.0000 conf:   1.0000

INFO  [sensors] Airspeed status:
INFO  [data_validator] 	no data

INFO  [vehicle_acceleration] selected sensor: 6946826, rate: 399.8 Hz, estimated bias: [0.0000 0.0000 0.1150]
INFO  [sensor_calibration] ACC 6946826 EN: 1, offset: [-0.0184 -0.0035 0.0099], scale: [0.9988 0.9993 0.9874], nan degC

INFO  [vehicle_angular_velocity] selected sensor: 6684682, rate: 1998.2 Hz FIFO
INFO  [vehicle_angular_velocity] estimated bias: [-0.0021 0.0041 -0.0009]
INFO  [sensor_calibration] GYRO 6684682 EN: 1, offset: [0.0000 0.0000 0.0000], nan degC



INFO  [vehicle_imu] 0 - Accel: 3932170, interval: 2501.0 us (SD 2.3 us), Gyro: 3932170, interval: 2501.0 us (SD 2.3 us)
vehicle_imu: accel data gap: 1 events
vehicle_imu: gyro data gap: 1 events
INFO  [sensor_calibration] ACC 3932170 EN: 1, offset: [-0.0541 -0.0038 -0.0496], scale: [0.9988 0.9993 0.9874], nan degC
INFO  [sensor_calibration] GYRO 3932170 EN: 1, offset: [0.0295 -0.0151 0.0015], 39.1 degC

INFO  [vehicle_imu] 1 - Accel: 6946826, interval: 2494.6 us (SD 0.4 us), Gyro: 6684682, interval: 2502.3 us (SD 0.4 us)
vehicle_imu: accel data gap: 1 events
vehicle_imu: gyro data gap: 1 events
INFO  [sensor_calibration] ACC 6946826 EN: 1, offset: [-0.0184 -0.0035 0.0099], scale: [0.9928 0.9969 0.9866], nan degC
INFO  [sensor_calibration] GYRO 6684682 EN: 1, offset: [0.0000 0.0000 0.0000], nan degC

Ok. One things are still unclear to me. Maybe you can clarify it:
Do you get data from the FMU with ros2 topic echo /fmu/sensor_combined/out (without publishing it somewhere else by yourself)?

How can I get, this code is written for the datas coming from controller? Even if I tried it and nothing displayed in terminal after ros2 topic echo /fmu/sensor_combined/out
And My GPS is not blinking green in outdoor and my hdop v dop are also 100.0 which is bad for me, does it cause RC calibration, because I didn’t do that yet. QGC always gives me that error.

Hi guys, when I try to see my gps datas from agent I got the same error plus I cannot match the vehicle_gps_position code in agent side even if I run the command:
ros2 run px4_ros_com vehicle_gps_position_listener
then I run
ros2 topic pub /fmu/vehicle_gps_position/out px4_msgs/msg/VehicleGpsPosition
I got the result as:
publishing #143: px4_msgs.msg.VehicleGpsPosition(timestamp=0, lat=0, lon=0, alt=0, alt_ellipsoid=0, s_variance_m_s=0.0, c_variance_rad=0.0, fix_type=0, eph=0.0, epv=0.0, hdop=0.0, vdop=0.0, noise_per_ms=0, jamming_indicator=0, jamming_state=0, vel_m_s=0.0, vel_n_m_s=0.0, vel_e_m_s=0.0, vel_d_m_s=0.0, cog_rad=0.0, vel_ned_valid=False, timestamp_time_relative=0, time_utc_usec=0, satellites_used=0, heading=0.0, heading_offset=0.0, selected=0)
then in agent side never match happened for that code.
this is my nsh outputs:

nsh> sensors status
INFO  [sensors] selected gyro: 3932170 (0)
INFO  [data_validator] validator: best: 0, prev best: 0, failsafe: NO (0 events)
INFO  [data_validator] sensor #0, prio: 50, state: OK
INFO  [data_validator] 	val:   0.0016, lp:   0.0012 mean dev:  -0.0000 RMS:   0.0075 conf:   1.0000
INFO  [data_validator] 	val:   0.0000, lp:  -0.0007 mean dev:   0.0000 RMS:   0.0014 conf:   1.0000
INFO  [data_validator] 	val:   0.0002, lp:  -0.0004 mean dev:   0.0000 RMS:   0.0010 conf:   1.0000
INFO  [data_validator] sensor #1, prio: 50, state: OK
INFO  [data_validator] 	val:   0.0036, lp:   0.0000 mean dev:   0.0000 RMS:   0.0081 conf:   1.0000
INFO  [data_validator] 	val:   0.0029, lp:   0.0024 mean dev:   0.0000 RMS:   0.0028 conf:   1.0000
INFO  [data_validator] 	val:  -0.0013, lp:  -0.0005 mean dev:   0.0000 RMS:   0.0031 conf:   1.0000

INFO  [sensors] selected accel: 3932170 (0)
INFO  [data_validator] validator: best: 0, prev best: 0, failsafe: NO (0 events)
INFO  [data_validator] sensor #0, prio: 50, state: OK
INFO  [data_validator] 	val:   0.4732, lp:   0.4806 mean dev:  -0.0000 RMS:   0.0119 conf:   1.0000
INFO  [data_validator] 	val:  -0.7800, lp:  -0.7630 mean dev:   0.0000 RMS:   0.0139 conf:   1.0000
INFO  [data_validator] 	val:  -9.7180, lp:  -9.7299 mean dev:   0.0000 RMS:   0.0140 conf:   1.0000
INFO  [data_validator] sensor #1, prio: 50, state: OK
INFO  [data_validator] 	val:   0.4521, lp:   0.4423 mean dev:   0.0000 RMS:   0.0160 conf:   1.0000
INFO  [data_validator] 	val:  -0.7132, lp:  -0.7409 mean dev:   0.0000 RMS:   0.0195 conf:   1.0000
INFO  [data_validator] 	val:  -9.7267, lp:  -9.7402 mean dev:   0.0000 RMS:   0.0173 conf:   1.0000

INFO  [vehicle_magnetometer] selected magnetometer: 396809 (1)
INFO  [data_validator] validator: best: 1, prev best: 1, failsafe: NO (0 events)
INFO  [data_validator] sensor #0, prio: 50, state: OK
INFO  [data_validator] 	val:   0.1035, lp:   0.1032 mean dev:  -0.0000 RMS:   0.0012 conf:   1.0000
INFO  [data_validator] 	val:   0.0650, lp:   0.0647 mean dev:  -0.0000 RMS:   0.0012 conf:   1.0000
INFO  [data_validator] 	val:   0.5050, lp:   0.5078 mean dev:  -0.0000 RMS:   0.0025 conf:   1.0000
INFO  [data_validator] sensor #1, prio: 75, state: OK
INFO  [data_validator] 	val:  -0.0330, lp:  -0.0346 mean dev:   0.0000 RMS:   0.0030 conf:   1.0000
INFO  [data_validator] 	val:   0.2807, lp:   0.2807 mean dev:  -0.0000 RMS:   0.0015 conf:   1.0000
INFO  [data_validator] 	val:   0.4812, lp:   0.4871 mean dev:  -0.0000 RMS:   0.0035 conf:   1.0000
INFO  [sensor_calibration] MAG 396825 EN: 1, offset: [0.111 0.053 0.072], scale: [1.028 0.998 0.983], nan degC, Internal
INFO  [sensor_calibration] MAG 396809 EN: 1, offset: [-0.010 -0.066 -0.094], scale: [1.067 0.998 0.930], nan degC, External RO

INFO  [vehicle_air_data] selected barometer: 3997730 (0)
INFO  [data_validator] validator: best: 0, prev best: 0, failsafe: NO (0 events)
INFO  [data_validator] sensor #0, prio: 0, state: OK
INFO  [data_validator] 	val: 100750.9922, lp: 100749.8750 mean dev:  -0.0344 RMS:   2.4464 conf:   1.0000
INFO  [data_validator] 	val:  24.1600, lp:  24.1531 mean dev:   0.0015 RMS:   0.0070 conf:   1.0000
INFO  [data_validator] 	val:   0.0000, lp:   0.0000 mean dev:   0.0000 RMS:   0.0000 conf:   1.0000

INFO  [sensors] Airspeed status:
INFO  [data_validator] 	no data

INFO  [vehicle_acceleration] selected sensor: 3932170, rate: 400.0 Hz, estimated bias: [0.0000 0.0000 0.0359]
INFO  [sensor_calibration] ACC 3932170 EN: 1, offset: [-0.0758 0.0370 0.0163], scale: [0.9981 0.9979 0.9902], nan degC

INFO  [vehicle_angular_velocity] selected sensor: 3932170, rate: 7999.4 Hz FIFO
INFO  [vehicle_angular_velocity] estimated bias: [0.0010 -0.0006 -0.0002]
INFO  [sensor_calibration] GYRO 3932170 EN: 1, offset: [0.0263 -0.0064 0.0023], nan degC

and gps also:

nsh> listener vehicle_gps_position

TOPIC: vehicle_gps_position
 vehicle_gps_position_s
	timestamp: 875360508  (0.102154 seconds ago)
	time_utc_usec: 1639324394599925
	lat: 410296234
	lon: 290336218
	alt: 73665
	alt_ellipsoid: 111125
	s_variance_m_s: 0.6740
	c_variance_rad: 0.5502
	eph: 3.2920
	epv: 5.9450
	hdop: 0.7400
	vdop: 1.3500
	noise_per_ms: 97
	jamming_indicator: 5
	vel_m_s: 0.1570
	vel_n_m_s: 0.1060
	vel_e_m_s: -0.1160
	vel_d_m_s: -0.1300
	cog_rad: 3.3410
	timestamp_time_relative: 0
	heading: nan
	heading_offset: 0.0000
	fix_type: 3
	jamming_state: 0
	vel_ned_valid: True
	satellites_used: 15
	selected: 0

Why is it happenning? How can I solve this?
I see sensor datas in nsh but in companion side rtps are not running properly.

Hi guys, I am just checking ,is there any idea about it?

Do you mean the ros2 topic “sensor_combine” is also printing nothing in your ros2 code?

I put my o/ps , could you check? I didn’t get the datas from controller in ros2.

Which companion computer are you using?
If you are using Jetson, you should connect micrortps_agent to ttyACM0 as it is not the port for the communication with the Durandal. There should be some UART port in your companion computer such as dev/ttyTHS0, dev/ttyTHS1 and so on.

Moreover, you also need to start the micrortps_client in the nsh terminal, otherwise, the Durnadal won’t start the communication through the port for micrortps_client of the Durnadal to the port for your companion computer.