mavlink / mavros

MAVLink to ROS gateway with proxy for Ground Control Station
Other
879 stars 990 forks source link

Question: Confused on how to get data from rangefinder #745

Closed NickBoeker closed 7 years ago

NickBoeker commented 7 years ago

This is only bug and feature tracker, please use it to report bugs or request features.


Issue details

Using the APM flight stack me and my team can't seem to access the rangefinder data. We can't seem to properly configure the distance_sensor plugin and while we can seem msgs in the mavlink stream that have the id=173 which would be rangefinder we don't know how to access the payload to get the actual data.

MAVROS version and platform

Mavros: 0.19.0 ROS: Kinetic Ubuntu: 16.04

Autopilot type and version

ArduPilot Version: 3.4.6

Node logs

Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://apsync:46322/

SUMMARY
========

CLEAR PARAMETERS
 * /mavros/

PARAMETERS
 * /mavros/cmd/use_comp_id_system_control: False
 * /mavros/conn/heartbeat_rate: 1.0
 * /mavros/conn/system_time_rate: 0.0
 * /mavros/conn/timeout: 10.0
 * /mavros/conn/timesync_rate: 0.0
 * /mavros/distance_sensor/rangefinder_pub/field_of_view: 0.0
 * /mavros/distance_sensor/rangefinder_pub/frame_id: lidar
 * /mavros/distance_sensor/rangefinder_pub/id: 1
 * /mavros/distance_sensor/rangefinder_pub/send_tf: False
 * /mavros/distance_sensor/rangefinder_pub/sensor_position/x: 0.0
 * /mavros/distance_sensor/rangefinder_pub/sensor_position/y: 0.0
 * /mavros/distance_sensor/rangefinder_pub/sensor_position/z: -0.1
 * /mavros/distance_sensor/rangefinder_sub/id: 1
 * /mavros/distance_sensor/rangefinder_sub/orientation: PITCH_270
 * /mavros/distance_sensor/rangefinder_sub/subscriber: True
 * /mavros/fcu_url: /dev/ttyS0:921600
 * /mavros/gcs_url: 
 * /mavros/global_position/frame_id: fcu
 * /mavros/global_position/rot_covariance: 99999.0
 * /mavros/global_position/tf/child_frame_id: fcu_utm
 * /mavros/global_position/tf/frame_id: local_origin
 * /mavros/global_position/tf/send: False
 * /mavros/image/frame_id: px4flow
 * /mavros/imu/angular_velocity_stdev: 0.000349065850399
 * /mavros/imu/frame_id: fcu
 * /mavros/imu/linear_acceleration_stdev: 0.0003
 * /mavros/imu/magnetic_stdev: 0.0
 * /mavros/imu/orientation_stdev: 1.0
 * /mavros/local_position/frame_id: fcu
 * /mavros/local_position/tf/child_frame_id: fcu
 * /mavros/local_position/tf/frame_id: local_origin
 * /mavros/local_position/tf/send: False
 * /mavros/mission/pull_after_gcs: True
 * /mavros/mocap/use_pose: True
 * /mavros/mocap/use_tf: False
 * /mavros/plugin_blacklist: ['actuator_contro...
 * /mavros/plugin_whitelist: []
 * /mavros/px4flow/frame_id: px4flow
 * /mavros/px4flow/ranger_fov: 0.0
 * /mavros/px4flow/ranger_max_range: 5.0
 * /mavros/px4flow/ranger_min_range: 0.3
 * /mavros/safety_area/p1/x: 1.0
 * /mavros/safety_area/p1/y: 1.0
 * /mavros/safety_area/p1/z: 1.0
 * /mavros/safety_area/p2/x: -1.0
 * /mavros/safety_area/p2/y: -1.0
 * /mavros/safety_area/p2/z: -1.0
 * /mavros/setpoint_accel/send_force: False
 * /mavros/setpoint_attitude/reverse_throttle: False
 * /mavros/setpoint_attitude/tf/child_frame_id: attitude
 * /mavros/setpoint_attitude/tf/frame_id: local_origin
 * /mavros/setpoint_attitude/tf/listen: False
 * /mavros/setpoint_attitude/tf/rate_limit: 10.0
 * /mavros/setpoint_position/tf/child_frame_id: setpoint
 * /mavros/setpoint_position/tf/frame_id: local_origin
 * /mavros/setpoint_position/tf/listen: False
 * /mavros/setpoint_position/tf/rate_limit: 50.0
 * /mavros/startup_px4_usb_quirk: False
 * /mavros/sys/disable_diag: False
 * /mavros/sys/min_voltage: 10.0
 * /mavros/target_component_id: 1
 * /mavros/target_system_id: 1
 * /mavros/tdr_radio/low_rssi: 40
 * /mavros/time/time_ref_source: fcu
 * /mavros/time/timesync_avg_alpha: 0.6
 * /mavros/time/timesync_mode: NONE
 * /mavros/vibration/frame_id: vibration
 * /mavros/vision_pose/tf/child_frame_id: vision
 * /mavros/vision_pose/tf/frame_id: local_origin
 * /mavros/vision_pose/tf/listen: False
 * /mavros/vision_pose/tf/rate_limit: 10.0
 * /mavros/vision_speed/listen_twist: False
 * /rosdistro: kinetic
 * /rosversion: 1.12.7

NODES
  /
    mavros (mavros/mavros_node)

ROS_MASTER_URI=http://localhost:11311

core service [/rosout] found
process[mavros-1]: started with pid [3764]
[ INFO] [1498940079.142934194]: FCU URL: /dev/ttyS0:921600
[ WARN] [1498940079.144240866]: init: message from ASLUAV, MSG-ID 201 ignored! Table has different entry.
[ WARN] [1498940079.144607661]: init: message from autoquad, MSG-ID 150 ignored! Table has different entry.
[ WARN] [1498940079.144648335]: init: message from autoquad, MSG-ID 152 ignored! Table has different entry.
[ WARN] [1498940079.144965498]: init: message from matrixpilot, MSG-ID 150 ignored! Table has different entry.
[ WARN] [1498940079.145000652]: init: message from matrixpilot, MSG-ID 151 ignored! Table has different entry.
[ WARN] [1498940079.145036743]: init: message from matrixpilot, MSG-ID 152 ignored! Table has different entry.
[ WARN] [1498940079.145070594]: init: message from matrixpilot, MSG-ID 153 ignored! Table has different entry.
[ WARN] [1498940079.145104654]: init: message from matrixpilot, MSG-ID 155 ignored! Table has different entry.
[ WARN] [1498940079.145139912]: init: message from matrixpilot, MSG-ID 156 ignored! Table has different entry.
[ WARN] [1498940079.145173555]: init: message from matrixpilot, MSG-ID 157 ignored! Table has different entry.
[ WARN] [1498940079.145207407]: init: message from matrixpilot, MSG-ID 158 ignored! Table has different entry.
[ WARN] [1498940079.145240738]: init: message from matrixpilot, MSG-ID 170 ignored! Table has different entry.
[ WARN] [1498940079.145273496]: init: message from matrixpilot, MSG-ID 171 ignored! Table has different entry.
[ WARN] [1498940079.145306149]: init: message from matrixpilot, MSG-ID 172 ignored! Table has different entry.
[ WARN] [1498940079.145339584]: init: message from matrixpilot, MSG-ID 173 ignored! Table has different entry.
[ WARN] [1498940079.145374998]: init: message from matrixpilot, MSG-ID 174 ignored! Table has different entry.
[ WARN] [1498940079.145405308]: init: message from matrixpilot, MSG-ID 175 ignored! Table has different entry.
[ WARN] [1498940079.145438483]: init: message from matrixpilot, MSG-ID 176 ignored! Table has different entry.
[ WARN] [1498940079.145467908]: init: message from matrixpilot, MSG-ID 177 ignored! Table has different entry.
[ WARN] [1498940079.145497333]: init: message from matrixpilot, MSG-ID 178 ignored! Table has different entry.
[ WARN] [1498940079.145535351]: init: message from matrixpilot, MSG-ID 179 ignored! Table has different entry.
[ WARN] [1498940079.145567432]: init: message from matrixpilot, MSG-ID 180 ignored! Table has different entry.
[ WARN] [1498940079.145601752]: init: message from matrixpilot, MSG-ID 181 ignored! Table has different entry.
[ WARN] [1498940079.145635708]: init: message from matrixpilot, MSG-ID 182 ignored! Table has different entry.
[ WARN] [1498940079.145668413]: init: message from matrixpilot, MSG-ID 183 ignored! Table has different entry.
[ WARN] [1498940079.145696745]: init: message from matrixpilot, MSG-ID 184 ignored! Table has different entry.
[ WARN] [1498940079.145725336]: init: message from matrixpilot, MSG-ID 185 ignored! Table has different entry.
[ WARN] [1498940079.145760177]: init: message from matrixpilot, MSG-ID 186 ignored! Table has different entry.
[ WARN] [1498940079.146084476]: init: message from paparazzi, MSG-ID 180 ignored! Table has different entry.
[ WARN] [1498940079.146118431]: init: message from paparazzi, MSG-ID 181 ignored! Table has different entry.
[ WARN] [1498940079.146152075]: init: message from paparazzi, MSG-ID 182 ignored! Table has different entry.
[ WARN] [1498940079.146184728]: init: message from paparazzi, MSG-ID 183 ignored! Table has different entry.
[ WARN] [1498940079.146217695]: init: message from paparazzi, MSG-ID 184 ignored! Table has different entry.
[ WARN] [1498940079.146531108]: init: message from slugs, MSG-ID 170 ignored! Table has different entry.
[ WARN] [1498940079.146563762]: init: message from slugs, MSG-ID 172 ignored! Table has different entry.
[ WARN] [1498940079.146598707]: init: message from slugs, MSG-ID 173 ignored! Table has different entry.
[ WARN] [1498940079.146631205]: init: message from slugs, MSG-ID 176 ignored! Table has different entry.
[ WARN] [1498940079.146664588]: init: message from slugs, MSG-ID 177 ignored! Table has different entry.
[ WARN] [1498940079.146698856]: init: message from slugs, MSG-ID 179 ignored! Table has different entry.
[ WARN] [1498940079.146731666]: init: message from slugs, MSG-ID 180 ignored! Table has different entry.
[ WARN] [1498940079.146764268]: init: message from slugs, MSG-ID 181 ignored! Table has different entry.
[ WARN] [1498940079.146796401]: init: message from slugs, MSG-ID 184 ignored! Table has different entry.
[ WARN] [1498940079.146829315]: init: message from slugs, MSG-ID 185 ignored! Table has different entry.
[ WARN] [1498940079.146862490]: init: message from slugs, MSG-ID 186 ignored! Table has different entry.
[ WARN] [1498940079.146895352]: init: message from slugs, MSG-ID 188 ignored! Table has different entry.
[ WARN] [1498940079.146930661]: init: message from slugs, MSG-ID 191 ignored! Table has different entry.
[ WARN] [1498940079.146962899]: init: message from slugs, MSG-ID 192 ignored! Table has different entry.
[ WARN] [1498940079.146997740]: init: message from slugs, MSG-ID 193 ignored! Table has different entry.
[ WARN] [1498940079.147032008]: init: message from slugs, MSG-ID 194 ignored! Table has different entry.
[ INFO] [1498940079.147803772]: serial0: device: /dev/ttyS0 @ 921600 bps
[ INFO] [1498940079.148046879]: GCS bridge disabled
[ INFO] [1498940079.264564236]: Plugin 3dr_radio loaded
[ INFO] [1498940079.270717623]: Plugin 3dr_radio initialized
[ INFO] [1498940079.270820272]: Plugin actuator_control blacklisted
[ INFO] [1498940079.352880660]: Plugin adsb loaded
[ INFO] [1498940079.365694896]: Plugin adsb initialized
[ INFO] [1498940079.365775619]: Plugin altitude blacklisted
[ INFO] [1498940079.366002529]: Plugin cam_imu_sync loaded
[ INFO] [1498940079.369374305]: Plugin cam_imu_sync initialized
[ INFO] [1498940079.369805782]: Plugin command loaded
[ INFO] [1498940079.396364288]: Plugin command initialized
[ INFO] [1498940079.396687962]: Plugin distance_sensor loaded
[ INFO] [1498940079.436232982]: Plugin distance_sensor initialized
[ INFO] [1498940079.436309539]: Plugin ftp blacklisted
[ INFO] [1498940079.436596132]: Plugin global_position loaded
[ INFO] [1498940079.474335560]: Plugin global_position initialized
[ INFO] [1498940079.474634808]: Plugin hil_actuator_controls loaded
[ INFO] [1498940079.477777851]: Plugin hil_actuator_controls initialized
[ INFO] [1498940079.478060954]: Plugin hil_controls loaded
[ INFO] [1498940079.480579617]: Plugin hil_controls initialized
[ INFO] [1498940079.480868033]: Plugin home_position loaded
[ INFO] [1498940079.498081362]: Plugin home_position initialized
[ INFO] [1498940079.498391131]: Plugin imu_pub loaded
[ INFO] [1498940079.530572127]: Plugin imu_pub initialized
[ INFO] [1498940079.530943713]: Plugin local_position loaded
[ INFO] [1498940079.556347723]: Plugin local_position initialized
[ INFO] [1498940079.556664938]: Plugin manual_control loaded
[ INFO] [1498940079.559405356]: Plugin manual_control initialized
[ INFO] [1498940079.559482693]: Plugin mocap_fake_gps blacklisted
[ INFO] [1498940079.559530867]: Plugin mocap_pose_estimate blacklisted
[ INFO] [1498940079.559816939]: Plugin param loaded
[ INFO] [1498940079.568035326]: Plugin param initialized
[ INFO] [1498940079.568110945]: Plugin px4flow blacklisted
[ INFO] [1498940079.568503103]: Plugin rc_io loaded
[ INFO] [1498940079.583487487]: Plugin rc_io initialized
[ INFO] [1498940079.583669608]: Plugin safety_area blacklisted
[ INFO] [1498940079.583950577]: Plugin setpoint_accel loaded
[ INFO] [1498940079.604101235]: Plugin setpoint_accel initialized
[ INFO] [1498940079.604417149]: Plugin setpoint_attitude loaded
[ INFO] [1498940079.660359102]: Plugin setpoint_attitude initialized
[ INFO] [1498940079.660696733]: Plugin setpoint_position loaded
[ INFO] [1498940079.686029082]: Plugin setpoint_position initialized
[ INFO] [1498940079.686370098]: Plugin setpoint_raw loaded
[ INFO] [1498940079.725179236]: Plugin setpoint_raw initialized
[ INFO] [1498940079.725480463]: Plugin setpoint_velocity loaded
[ INFO] [1498940079.751069043]: Plugin setpoint_velocity initialized
[ INFO] [1498940079.751451722]: Plugin sys_status loaded
[ INFO] [1498940079.776869950]: Plugin sys_status initialized
[ INFO] [1498940079.777176177]: Plugin sys_time loaded
[ INFO] [1498940079.799210026]: TM: Timesync mode: NONE
[ INFO] [1498940079.801984242]: Plugin sys_time initialized
[ INFO] [1498940079.802293281]: Plugin vfr_hud loaded
[ INFO] [1498940079.806825958]: Plugin vfr_hud initialized
[ INFO] [1498940079.806905484]: Plugin vibration blacklisted
[ INFO] [1498940079.806955480]: Plugin vision_pose_estimate blacklisted
[ INFO] [1498940079.806995998]: Plugin vision_speed_estimate blacklisted
[ INFO] [1498940079.807278580]: Plugin waypoint loaded
[ INFO] [1498940079.820654753]: Plugin waypoint initialized
[ INFO] [1498940079.820769536]: Built-in SIMD instructions: ARM NEON
[ INFO] [1498940079.820821563]: Built-in MAVLink package version: 2017.6.6
[ INFO] [1498940079.820872132]: Known MAVLink dialects: common ardupilotmega ASLUAV autoquad matrixpilot paparazzi slugs standard uAvionix ualberta
[ INFO] [1498940079.820927232]: MAVROS started. MY ID 1.240, TARGET ID 1.1
[ INFO] [1498940080.238083547]: RC_CHANNELS message detected!
[ WARN] [1498940080.240292184]: TM: Wrong FCU time.
[ WARN] [1498940080.470281859]: IMU: linear acceleration on RAW_IMU known on APM only.
[ WARN] [1498940080.470834787]: IMU: ~imu/data_raw stores unscaled raw acceleration report.
[ WARN] [1498940084.823377979]: FCU: EKF2 IMU0 has stopped aiding
[ WARN] [1498940087.286525584]: GP: No GPS fix

Diagnostics

header: 
  seq: 15
  stamp: 
    secs: 1498940168
    nsecs: 273712296
  frame_id: ''
status: 
  - 
    level: 0
    name: mavros: FCU connection
    message: connected
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Received packets:
        value: 287
      - 
        key: Dropped packets:
        value: 0
      - 
        key: Buffer overruns:
        value: 0
      - 
        key: Parse errors:
        value: 0
      - 
        key: Rx sequence number:
        value: 149
      - 
        key: Tx sequence number:
        value: 18
      - 
        key: Rx total bytes:
        value: 39936
      - 
        key: Tx total bytes:
        value: 395
      - 
        key: Rx speed:
        value: 1357.000000
      - 
        key: Tx speed:
        value: 17.000000
  - 
    level: 2
    name: mavros: GPS
    message: No satellites
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Satellites visible
        value: 0
      - 
        key: Fix type
        value: 0
      - 
        key: EPH (m)
        value: Unknown
      - 
        key: EPV (m)
        value: Unknown
  - 
    level: 0
    name: mavros: Heartbeat
    message: Normal
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Heartbeats since startup
        value: 3
      - 
        key: Frequency (Hz)
        value: 0.230775
      - 
        key: Vehicle type
        value: Quadrotor
      - 
        key: Autopilot type
        value: ArduPilotMega / ArduCopter
      - 
        key: Mode
        value: LOITER
      - 
        key: System status
        value: Standby
  - 
    level: 0
    name: mavros: System
    message: Normal
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Sensor present
        value: 0x0160FD4F
      - 
        key: Sensor enabled
        value: 0x0060FD4F
      - 
        key: Sensor helth
        value: 0x0160FD4F
      - 
        key: 3D gyro
        value: Ok
      - 
        key: 3D accelerometer
        value: Ok
      - 
        key: 3D magnetometer
        value: Ok
      - 
        key: absolute pressure
        value: Ok
      - 
        key: optical flow
        value: Ok
      - 
        key: laser based position
        value: Ok
      - 
        key: 3D angular rate control
        value: Ok
      - 
        key: attitude stabilization
        value: Ok
      - 
        key: yaw position
        value: Ok
      - 
        key: z/altitude control
        value: Ok
      - 
        key: x/y position control
        value: Ok
      - 
        key: motor outputs / control
        value: Ok
      - 
        key: AHRS subsystem health
        value: Ok
      - 
        key: Terrain subsystem health
        value: Ok
      - 
        key: CPU Load (%)
        value: 46.9
      - 
        key: Drop rate (%)
        value: 0.0
      - 
        key: Errors comm
        value: 0
      - 
        key: Errors count #1
        value: 0
      - 
        key: Errors count #2
        value: 0
      - 
        key: Errors count #3
        value: 0
      - 
        key: Errors count #4
        value: 0
  - 
    level: 0
    name: mavros: Battery
    message: Normal
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Voltage
        value: 11.99
      - 
        key: Current
        value: 0.6
      - 
        key: Remaining
        value: 98.0
---

Check ID

OK. I got messages from 1:1.

---
Received 406 messages, from 19 addresses
sys:comp   list of messages
 206:75    1
 83:95    71
  0:0     0
  0:122   1
 58:1     155
 103:1     1
 136:1     1
  0:206   227
  1:155   184, 0
  1:254   9
 65:1     155
 81:2     132
  1:153   14
 32:0     0
 124:1     155
  2:101   1
 83:84    65
  1:1     0, 2, 70, 22, 253
 206:214   1
TSC21 commented 7 years ago

Can you please share your apm_config.yaml config?

TSC21 commented 7 years ago

What's the output of rostopic echo /mavros/distance_sensor/rangefinder_pub/range?

NickBoeker commented 7 years ago

apm_config.yaml

# Common configuration for APM2 autopilot
#
# node:
startup_px4_usb_quirk: false

# --- system plugins ---

# sys_status & sys_time connection options
conn:
  heartbeat_rate: 1.0    # send hertbeat rate in Hertz
  timeout: 10.0          # hertbeat timeout in seconds
  timesync_rate: 0.0     # TIMESYNC rate in Hertz (feature disabled if 0.0)
  system_time_rate: 0.0  # send system time to FCU rate in Hertz (disabled if 0.0)

# sys_status
sys:
  min_voltage: 10.0   # diagnostics min voltage
  disable_diag: false # disable all sys_status diagnostics, except heartbeat

# sys_time
time:
  time_ref_source: "fcu"  # time_reference source
  timesync_mode: NONE
  timesync_avg_alpha: 0.6 # timesync averaging factor

# --- mavros plugins (alphabetical order) ---

# 3dr_radio
tdr_radio:
  low_rssi: 40  # raw rssi lower level for diagnostics

# actuator_control
# None

# command
cmd:
  use_comp_id_system_control: false # quirk for some old FCUs

# dummy
# None

# ftp
# None

# global_position
global_position:
  frame_id: "fcu"           # pose and fix frame_id
  rot_covariance: 99999.0   # covariance for attitude?
  tf:
    send: false               # send TF?
    frame_id: "local_origin"  # TF frame_id
    child_frame_id: "fcu_utm" # TF child_frame_id

# imu_pub
imu:
  frame_id: "fcu"
  # need find actual values
  linear_acceleration_stdev: 0.0003
  angular_velocity_stdev: !degrees 0.02
  orientation_stdev: 1.0
  magnetic_stdev: 0.0

# local_position
local_position:
  frame_id: "fcu"
  tf:
    send: false
    frame_id: "local_origin"
    child_frame_id: "fcu"

# param
# None, used for FCU params

# rc_io
# None

# safety_area
safety_area:
  p1: {x:  1.0, y:  1.0, z:  1.0}
  p2: {x: -1.0, y: -1.0, z: -1.0}

# setpoint_accel
setpoint_accel:
  send_force: false

# setpoint_attitude
setpoint_attitude:
  reverse_throttle: false   # allow reversed throttle
  tf:
    listen: false           # enable tf listener (disable topic subscribers)
    frame_id: "local_origin"
    child_frame_id: "attitude"
    rate_limit: 10.0

# setpoint_position
setpoint_position:
  tf:
    listen: false           # enable tf listener (disable topic subscribers)
    frame_id: "local_origin"
    child_frame_id: "setpoint"
    rate_limit: 50.0

# setpoint_velocity
# None

# vfr_hud
# None

# waypoint
mission:
  pull_after_gcs: true  # update mission if gcs updates

# --- mavros extras plugins (same order) ---

distance_sensor:
  rangefinder_pub:
    id: 0
    frame_id: "lidar"
    #orientation: PITCH_270 # sended by FCU
    field_of_view: 0.0  # XXX TODO
    send_tf: false
    sensor_position: {x:  0.0, y:  0.0, z:  -0.1}
  rangefinder_sub:
    subscriber: true
    id: 0
    orientation: PITCH_270  # only that orientation are supported by APM 3.4+

## Currently available orientations:
#    Check http://wiki.ros.org/mavros/Enumerations
##

# image_pub
image:
  frame_id: "px4flow"

# mocap_pose_estimate
mocap:
  # select mocap source
  use_tf: false   # ~mocap/tf
  use_pose: true  # ~mocap/pose

# px4flow
px4flow:
  frame_id: "px4flow"
  ranger_fov: !degrees 0.0  # XXX TODO
  ranger_min_range: 0.3     # meters
  ranger_max_range: 5.0     # meters

# vision_pose_estimate
vision_pose:
  tf:
    listen: false           # enable tf listener (disable topic subscribers)
    frame_id: "local_origin"
    child_frame_id: "vision"
    rate_limit: 10.0

# vision_speed_estimate
vision_speed:
  listen_twist: false

# vibration
vibration:
  frame_id: "vibration"

# vim:set ts=2 sw=2 et:

echoing /mavros/distance_sensor/rangefinder_pub/range doesn't produce any output

vooon commented 7 years ago

Distance sensor wants message DISTANCE_SENSOR №132, not RANGEFINDER №173 from apm's dialect. Fresh APM send both messages, default apm_config.yaml configured for that recent release.

To support RANGEFINDER you need to write plugin, it may be placed anywhere (see PluginLib docs).

khancyr commented 7 years ago

Distance_sensor message will only be support on copter > 3.5.0-rc8

vooon commented 7 years ago

@NickBoeker you may try rangefinder plugin from #746, just update to master. @khancyr thank you.

TSC21 commented 7 years ago

@NickBoeker is this solved on your side already?

NickBoeker commented 7 years ago

Unfortunately, it seems like it hasn't but I don't quite know what is the problem anymore. I think that mavlink is having trouble since we're running the lidar in pwm format instead of i2c. Please let me know if you know how I could get access to the data or if we should switch to the i2c setup

TSC21 commented 7 years ago

The Mavlink stream doesn't have anything to do with the driver that you are using to get the LIDAR data. You should firstly test that the data is being received correctly on your FCU. Then you can test the Mavlink stream outside. Also if you were getting the msg id for RANGEFINDER supposedly that data was being sent on the stream.

NickBoeker commented 7 years ago

I assume the data is correctly being processed by the fcu as Mission Planner is reporting accurate measurements for lidar. Do you have a recommendation on what to use to test the stream?

TSC21 commented 7 years ago

If Mission Planner receives it so the msg is on the stream. Are you using latest master of MAVROS? What's the output of rostopic echo /mavros/rangefinder/rangefinder?

NickBoeker commented 7 years ago

I just checked and the output doesn't give anything. I know I updated it to include the new rangefinder plugin but I'm not sure if I updated it since then

TSC21 commented 7 years ago

Can you confirm the plugin is loaded when you run the node?

[ INFO] [...]: Plugin rangefinder loaded
[ INFO] [...]: Plugin rangefinder initialized

Also does /mavros/rangefinder/rangefinder appears on the output of rostopic list?

NickBoeker commented 7 years ago

Yes, the startup script says that rangefinder plugin has been loaded and initialized

TSC21 commented 7 years ago

Are you getting any other data on the other topics? Can you please post the startup node log here please? Also the output of diagnostics?

NickBoeker commented 7 years ago

node startup:

Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://apsync:48410/

SUMMARY
========

CLEAR PARAMETERS
 * /mavros/

PARAMETERS
 * /mavros/cmd/use_comp_id_system_control: False
 * /mavros/conn/heartbeat_rate: 1.0
 * /mavros/conn/system_time_rate: 0.0
 * /mavros/conn/timeout: 10.0
 * /mavros/conn/timesync_rate: 0.0
 * /mavros/distance_sensor/rangefinder_pub/field_of_view: 0.0
 * /mavros/distance_sensor/rangefinder_pub/frame_id: RNGFND
 * /mavros/distance_sensor/rangefinder_pub/id: 0
 * /mavros/distance_sensor/rangefinder_pub/send_tf: False
 * /mavros/distance_sensor/rangefinder_pub/sensor_position/x: 0.0
 * /mavros/distance_sensor/rangefinder_pub/sensor_position/y: 0.0
 * /mavros/distance_sensor/rangefinder_pub/sensor_position/z: -0.1
 * /mavros/distance_sensor/rangefinder_sub/id: 0
 * /mavros/distance_sensor/rangefinder_sub/orientation: PITCH_270
 * /mavros/distance_sensor/rangefinder_sub/subscriber: True
 * /mavros/fake_gps/eph: 2.0
 * /mavros/fake_gps/epv: 2.0
 * /mavros/fake_gps/fix_type: 3
 * /mavros/fake_gps/geo_origin/alt: 408.0
 * /mavros/fake_gps/geo_origin/lat: 47.3667
 * /mavros/fake_gps/geo_origin/lon: 8.55
 * /mavros/fake_gps/gps_rate: 5.0
 * /mavros/fake_gps/mocap_transform: True
 * /mavros/fake_gps/satellites_visible: 5
 * /mavros/fake_gps/tf/child_frame_id: fix
 * /mavros/fake_gps/tf/frame_id: map
 * /mavros/fake_gps/tf/rate_limit: 10.0
 * /mavros/fake_gps/tf/send: False
 * /mavros/fake_gps/use_mocap: True
 * /mavros/fake_gps/use_vision: False
 * /mavros/fcu_url: /dev/ttyS0:921600
 * /mavros/gcs_url: 
 * /mavros/global_position/frame_id: fcu
 * /mavros/global_position/rot_covariance: 99999.0
 * /mavros/global_position/tf/child_frame_id: fcu_utm
 * /mavros/global_position/tf/frame_id: local_origin
 * /mavros/global_position/tf/send: False
 * /mavros/global_position/use_relative_alt: True
 * /mavros/image/frame_id: px4flow
 * /mavros/imu/angular_velocity_stdev: 0.000349065850399
 * /mavros/imu/frame_id: fcu
 * /mavros/imu/linear_acceleration_stdev: 0.0003
 * /mavros/imu/magnetic_stdev: 0.0
 * /mavros/imu/orientation_stdev: 1.0
 * /mavros/local_position/frame_id: fcu
 * /mavros/local_position/tf/child_frame_id: fcu
 * /mavros/local_position/tf/frame_id: local_origin
 * /mavros/local_position/tf/send: False
 * /mavros/mission/pull_after_gcs: True
 * /mavros/mocap/use_pose: True
 * /mavros/mocap/use_tf: False
 * /mavros/plugin_blacklist: ['actuator_contro...
 * /mavros/plugin_whitelist: []
 * /mavros/px4flow/frame_id: px4flow
 * /mavros/px4flow/ranger_fov: 0.0
 * /mavros/px4flow/ranger_max_range: 5.0
 * /mavros/px4flow/ranger_min_range: 0.3
 * /mavros/safety_area/p1/x: 1.0
 * /mavros/safety_area/p1/y: 1.0
 * /mavros/safety_area/p1/z: 1.0
 * /mavros/safety_area/p2/x: -1.0
 * /mavros/safety_area/p2/y: -1.0
 * /mavros/safety_area/p2/z: -1.0
 * /mavros/setpoint_accel/send_force: False
 * /mavros/setpoint_attitude/reverse_thrust: False
 * /mavros/setpoint_attitude/tf/child_frame_id: target_attitude
 * /mavros/setpoint_attitude/tf/frame_id: map
 * /mavros/setpoint_attitude/tf/listen: False
 * /mavros/setpoint_attitude/tf/rate_limit: 50.0
 * /mavros/setpoint_attitude/use_quaternion: False
 * /mavros/setpoint_position/tf/child_frame_id: target_position
 * /mavros/setpoint_position/tf/frame_id: map
 * /mavros/setpoint_position/tf/listen: False
 * /mavros/setpoint_position/tf/rate_limit: 50.0
 * /mavros/startup_px4_usb_quirk: False
 * /mavros/sys/disable_diag: False
 * /mavros/sys/min_voltage: 10.0
 * /mavros/target_component_id: 1
 * /mavros/target_system_id: 1
 * /mavros/tdr_radio/low_rssi: 40
 * /mavros/time/time_ref_source: fcu
 * /mavros/time/timesync_avg_alpha: 0.6
 * /mavros/time/timesync_mode: NONE
 * /mavros/vibration/frame_id: vibration
 * /mavros/vision_pose/tf/child_frame_id: vision_estimate
 * /mavros/vision_pose/tf/frame_id: map
 * /mavros/vision_pose/tf/listen: False
 * /mavros/vision_pose/tf/rate_limit: 10.0
 * /mavros/vision_speed/listen_twist: False
 * /rosdistro: kinetic
 * /rosversion: 1.12.7

NODES
  /
    mavros (mavros/mavros_node)

ROS_MASTER_URI=http://localhost:11311

core service [/rosout] found
process[mavros-1]: started with pid [2044]
[ERROR] [1499471828.442373747]: UAS: GeographicLib exception: File not readable /usr/share/GeographicLib/geoids/egm96-5.pgm
[ INFO] [1499471828.470019529]: FCU URL: /dev/ttyS0:921600
[ WARN] [1499471828.474156404]: init: message from ASLUAV, MSG-ID 201 ignored! Table has different entry.
[ WARN] [1499471828.474683331]: init: message from autoquad, MSG-ID 150 ignored! Table has different entry.
[ WARN] [1499471828.474767393]: init: message from autoquad, MSG-ID 152 ignored! Table has different entry.
[ WARN] [1499471828.475260414]: init: message from matrixpilot, MSG-ID 150 ignored! Table has different entry.
[ WARN] [1499471828.475335258]: init: message from matrixpilot, MSG-ID 151 ignored! Table has different entry.
[ WARN] [1499471828.475393539]: init: message from matrixpilot, MSG-ID 152 ignored! Table has different entry.
[ WARN] [1499471828.475458331]: init: message from matrixpilot, MSG-ID 153 ignored! Table has different entry.
[ WARN] [1499471828.475553122]: init: message from matrixpilot, MSG-ID 155 ignored! Table has different entry.
[ WARN] [1499471828.475644945]: init: message from matrixpilot, MSG-ID 156 ignored! Table has different entry.
[ WARN] [1499471828.475731872]: init: message from matrixpilot, MSG-ID 157 ignored! Table has different entry.
[ WARN] [1499471828.475816977]: init: message from matrixpilot, MSG-ID 158 ignored! Table has different entry.
[ WARN] [1499471828.475900935]: init: message from matrixpilot, MSG-ID 170 ignored! Table has different entry.
[ WARN] [1499471828.475986716]: init: message from matrixpilot, MSG-ID 171 ignored! Table has different entry.
[ WARN] [1499471828.476077862]: init: message from matrixpilot, MSG-ID 172 ignored! Table has different entry.
[ WARN] [1499471828.476166091]: init: message from matrixpilot, MSG-ID 173 ignored! Table has different entry.
[ WARN] [1499471828.476252810]: init: message from matrixpilot, MSG-ID 174 ignored! Table has different entry.
[ WARN] [1499471828.476340622]: init: message from matrixpilot, MSG-ID 175 ignored! Table has different entry.
[ WARN] [1499471828.476426195]: init: message from matrixpilot, MSG-ID 176 ignored! Table has different entry.
[ WARN] [1499471828.476521404]: init: message from matrixpilot, MSG-ID 177 ignored! Table has different entry.
[ WARN] [1499471828.476618695]: init: message from matrixpilot, MSG-ID 178 ignored! Table has different entry.
[ WARN] [1499471828.476714112]: init: message from matrixpilot, MSG-ID 179 ignored! Table has different entry.
[ WARN] [1499471828.476810518]: init: message from matrixpilot, MSG-ID 180 ignored! Table has different entry.
[ WARN] [1499471828.476901508]: init: message from matrixpilot, MSG-ID 181 ignored! Table has different entry.
[ WARN] [1499471828.476992237]: init: message from matrixpilot, MSG-ID 182 ignored! Table has different entry.
[ WARN] [1499471828.477093643]: init: message from matrixpilot, MSG-ID 183 ignored! Table has different entry.
[ WARN] [1499471828.477181925]: init: message from matrixpilot, MSG-ID 184 ignored! Table has different entry.
[ WARN] [1499471828.477274268]: init: message from matrixpilot, MSG-ID 185 ignored! Table has different entry.
[ WARN] [1499471828.477366768]: init: message from matrixpilot, MSG-ID 186 ignored! Table has different entry.
[ WARN] [1499471828.477858591]: init: message from paparazzi, MSG-ID 180 ignored! Table has different entry.
[ WARN] [1499471828.477947341]: init: message from paparazzi, MSG-ID 181 ignored! Table has different entry.
[ WARN] [1499471828.478030050]: init: message from paparazzi, MSG-ID 182 ignored! Table has different entry.
[ WARN] [1499471828.478110831]: init: message from paparazzi, MSG-ID 183 ignored! Table has different entry.
[ WARN] [1499471828.478191925]: init: message from paparazzi, MSG-ID 184 ignored! Table has different entry.
[ WARN] [1499471828.478652810]: init: message from slugs, MSG-ID 170 ignored! Table has different entry.
[ WARN] [1499471828.478740466]: init: message from slugs, MSG-ID 172 ignored! Table has different entry.
[ WARN] [1499471828.478821404]: init: message from slugs, MSG-ID 173 ignored! Table has different entry.
[ WARN] [1499471828.478901925]: init: message from slugs, MSG-ID 176 ignored! Table has different entry.
[ WARN] [1499471828.478982081]: init: message from slugs, MSG-ID 177 ignored! Table has different entry.
[ WARN] [1499471828.479062758]: init: message from slugs, MSG-ID 179 ignored! Table has different entry.
[ WARN] [1499471828.479144945]: init: message from slugs, MSG-ID 180 ignored! Table has different entry.
[ WARN] [1499471828.479227393]: init: message from slugs, MSG-ID 181 ignored! Table has different entry.
[ WARN] [1499471828.479307914]: init: message from slugs, MSG-ID 184 ignored! Table has different entry.
[ WARN] [1499471828.479389893]: init: message from slugs, MSG-ID 185 ignored! Table has different entry.
[ WARN] [1499471828.479470310]: init: message from slugs, MSG-ID 186 ignored! Table has different entry.
[ WARN] [1499471828.479551091]: init: message from slugs, MSG-ID 188 ignored! Table has different entry.
[ WARN] [1499471828.479639737]: init: message from slugs, MSG-ID 191 ignored! Table has different entry.
[ WARN] [1499471828.479717706]: init: message from slugs, MSG-ID 192 ignored! Table has different entry.
[ WARN] [1499471828.479797497]: init: message from slugs, MSG-ID 193 ignored! Table has different entry.
[ WARN] [1499471828.479879112]: init: message from slugs, MSG-ID 194 ignored! Table has different entry.
[ INFO] [1499471828.481171404]: serial0: device: /dev/ttyS0 @ 921600 bps
[ INFO] [1499471828.482015883]: GCS bridge disabled
[ INFO] [1499471828.677151195]: Plugin 3dr_radio loaded
[ INFO] [1499471828.683783799]: Plugin 3dr_radio initialized
[ INFO] [1499471828.683870674]: Plugin actuator_control blacklisted
[ INFO] [1499471828.812086508]: Plugin adsb loaded
[ INFO] [1499471828.836050154]: Plugin adsb initialized
[ INFO] [1499471828.836151508]: Plugin altitude blacklisted
[ INFO] [1499471828.836611768]: Plugin cam_imu_sync loaded
[ INFO] [1499471828.840061195]: Plugin cam_imu_sync initialized
[ INFO] [1499471828.840769633]: Plugin command loaded
[ INFO] [1499471828.867535362]: Plugin command initialized
[ INFO] [1499471828.868177914]: Plugin distance_sensor loaded
[ INFO] [1499471828.908807706]: Plugin distance_sensor initialized
[ INFO] [1499471828.909249476]: Plugin fake_gps loaded
[ INFO] [1499471828.964727029]: Plugin fake_gps initialized
[ INFO] [1499471828.964805206]: Plugin ftp blacklisted
[ INFO] [1499471828.965293226]: Plugin global_position loaded
[ INFO] [1499471829.023616299]: Plugin global_position initialized
[ INFO] [1499471829.024080518]: Plugin hil_actuator_controls loaded
[ INFO] [1499471829.026894685]: Plugin hil_actuator_controls initialized
[ INFO] [1499471829.027329216]: Plugin hil_controls loaded
[ INFO] [1499471829.029973174]: Plugin hil_controls initialized
[ INFO] [1499471829.030426976]: Plugin home_position loaded
[ INFO] [1499471829.047352133]: Plugin home_position initialized
[ INFO] [1499471829.047909633]: Plugin imu_pub loaded
[ INFO] [1499471829.077045154]: Plugin imu_pub initialized
[ INFO] [1499471829.077743643]: Plugin local_position loaded
[ INFO] [1499471829.102718695]: Plugin local_position initialized
[ INFO] [1499471829.103188383]: Plugin manual_control loaded
[ INFO] [1499471829.106428487]: Plugin manual_control initialized
[ INFO] [1499471829.106513278]: Plugin mocap_pose_estimate blacklisted
[ INFO] [1499471829.106874424]: Plugin odom loaded
[ INFO] [1499471829.121478018]: Plugin odom initialized
[ INFO] [1499471829.122284164]: Plugin param loaded
[ INFO] [1499471829.133739164]: Plugin param initialized
[ INFO] [1499471829.133829112]: Plugin px4flow blacklisted
[ INFO] [1499471829.134199424]: Plugin rangefinder loaded
[ INFO] [1499471829.137034685]: Plugin rangefinder initialized
[ INFO] [1499471829.137632810]: Plugin rc_io loaded
[ INFO] [1499471829.151662289]: Plugin rc_io initialized
[ INFO] [1499471829.151754112]: Plugin safety_area blacklisted
[ INFO] [1499471829.152188956]: Plugin setpoint_accel loaded
[ INFO] [1499471829.169524945]: Plugin setpoint_accel initialized
[ INFO] [1499471829.170037549]: Plugin setpoint_attitude loaded
[ INFO] [1499471829.218772185]: Plugin setpoint_attitude initialized
[ INFO] [1499471829.219234841]: Plugin setpoint_position loaded
[ INFO] [1499471829.241420414]: Plugin setpoint_position initialized
[ INFO] [1499471829.241931143]: Plugin setpoint_raw loaded
[ INFO] [1499471829.278689997]: Plugin setpoint_raw initialized
[ INFO] [1499471829.279211924]: Plugin setpoint_velocity loaded
[ INFO] [1499471829.299733695]: Plugin setpoint_velocity initialized
[ INFO] [1499471829.300539164]: Plugin sys_status loaded
[ INFO] [1499471829.328416612]: Plugin sys_status initialized
[ INFO] [1499471829.328933122]: Plugin sys_time loaded
[ INFO] [1499471829.341273070]: TM: Timesync mode: NONE
[ INFO] [1499471829.343562914]: Plugin sys_time initialized
[ INFO] [1499471829.344020883]: Plugin vfr_hud loaded
[ INFO] [1499471829.349082133]: Plugin vfr_hud initialized
[ INFO] [1499471829.349171560]: Plugin vibration blacklisted
[ INFO] [1499471829.349221716]: Plugin vision_pose_estimate blacklisted
[ INFO] [1499471829.349264320]: Plugin vision_speed_estimate blacklisted
[ INFO] [1499471829.349723226]: Plugin waypoint loaded
[ INFO] [1499471829.369977080]: Plugin waypoint initialized
[ INFO] [1499471829.370216820]: Built-in SIMD instructions: ARM NEON
[ INFO] [1499471829.370272549]: Built-in MAVLink package version: 2017.6.6
[ INFO] [1499471829.370339320]: Known MAVLink dialects: common ardupilotmega ASLUAV autoquad matrixpilot paparazzi slugs standard uAvionix ualberta
[ INFO] [1499471829.370389893]: MAVROS started. MY ID 1.240, TARGET ID 1.1
[ INFO] [1499471833.673245568]: CON: Got HEARTBEAT, connected. FCU: ArduPilotMega / ArduCopter
[ WARN] [1499471835.709384161]: VER: broadcast request timeout, retries left 4
[ WARN] [1499471836.691241713]: VER: broadcast request timeout, retries left 3
[ WARN] [1499471842.703149575]: VER: unicast request timeout, retries left 2
[ INFO] [1499471842.705511867]: VER: 1.1: Capabilities         0x0000000000001bcf
[ INFO] [1499471842.706629888]: VER: 1.1: Flight software:     030500c0 (242c8f0b338259461a99ba58)
[ INFO] [1499471842.707837909]: VER: 1.1: Middleware software: 00000000 (338259461a99ba58)
[ INFO] [1499471842.708664055]: VER: 1.1: OS software:         00000000 (1a99ba58)
[ INFO] [1499471842.709447127]: VER: 1.1: Board hardware:      00000000
[ INFO] [1499471842.710415565]: VER: 1.1: VID/PID:             0000:0000
[ INFO] [1499471842.711206294]: VER: 1.1: UID:                 0000000000000000

echo of /diagnostics:

header: 
  seq: 790
  stamp: 
    secs: 1499472907
    nsecs: 100517867
  frame_id: ''
status: 
  - 
    level: 1
    name: mavros: FCU connection
    message: not connected
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Received packets:
        value: 644
      - 
        key: Dropped packets:
        value: 0
      - 
        key: Buffer overruns:
        value: 0
      - 
        key: Parse errors:
        value: 0
      - 
        key: Rx sequence number:
        value: 97
      - 
        key: Tx sequence number:
        value: 113
      - 
        key: Rx total bytes:
        value: 35161
      - 
        key: Tx total bytes:
        value: 3371
      - 
        key: Rx speed:
        value: 0.000000
      - 
        key: Tx speed:
        value: 0.000000
  - 
    level: 2
    name: mavros: GPS
    message: No satellites
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Satellites visible
        value: 0
      - 
        key: Fix type
        value: 0
      - 
        key: EPH (m)
        value: Unknown
      - 
        key: EPV (m)
        value: Unknown
  - 
    level: 2
    name: mavros: Heartbeat
    message: No events recorded.
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Heartbeats since startup
        value: 14
      - 
        key: Frequency (Hz)
        value: 0.000000
      - 
        key: Vehicle type
        value: Quadrotor
      - 
        key: Autopilot type
        value: ArduPilotMega / ArduCopter
      - 
        key: Mode
        value: LOITER
      - 
        key: System status
        value: Standby
  - 
    level: 0
    name: mavros: System
    message: Normal
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Sensor present
        value: 0x00000000
      - 
        key: Sensor enabled
        value: 0x00000000
      - 
        key: Sensor helth
        value: 0x00000000
      - 
        key: CPU Load (%)
        value: 0.0
      - 
        key: Drop rate (%)
        value: 0.0
      - 
        key: Errors comm
        value: 0
      - 
        key: Errors count #1
        value: 0
      - 
        key: Errors count #2
        value: 0
      - 
        key: Errors count #3
        value: 0
      - 
        key: Errors count #4
        value: 0
  - 
    level: 2
    name: mavros: Battery
    message: No data
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Voltage
        value: -1.00
      - 
        key: Current
        value: 0.0
      - 
        key: Remaining
        value: 0.0
---
TSC21 commented 7 years ago

[ERROR] [1499471828.442373747]: UAS: GeographicLib exception: File not readable /usr/share/GeographicLib/geoids/egm96-5.pgm

Just off-topic: this means you didn't install the datasets for GeographicLib - please run the script which is on the script folder of mavros.

But...

 level: 1
    name: mavros: FCU connection
    message: not connected
    hardware_id: /dev/ttyS0:921600
    values: 

This means there is no connection to the FCU.

TSC21 commented 7 years ago

You can even compare to the 1st output of diagnostics you posted:

level: 0
    name: mavros: FCU connection
    message: connected
    hardware_id: /dev/ttyS0:921600
    values: 

Are you doing something different this time?

NickBoeker commented 7 years ago

I don't think so, I ran the same thing and here is the log. Should we run all the scripts from the folder? or would that not matter.

header: 
  seq: 44
  stamp: 
    secs: 1499471860
    nsecs: 981941287
  frame_id: ''
status: 
  - 
    level: 0
    name: mavros: FCU connection
    message: connected
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Received packets:
        value: 364
      - 
        key: Dropped packets:
        value: 0
      - 
        key: Buffer overruns:
        value: 0
      - 
        key: Parse errors:
        value: 0
      - 
        key: Rx sequence number:
        value: 55
      - 
        key: Tx sequence number:
        value: 96
      - 
        key: Rx total bytes:
        value: 20721
      - 
        key: Tx total bytes:
        value: 2085
      - 
        key: Rx speed:
        value: 188.000000
      - 
        key: Tx speed:
        value: 25.666666
  - 
    level: 2
    name: mavros: GPS
    message: No satellites
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Satellites visible
        value: 0
      - 
        key: Fix type
        value: 0
      - 
        key: EPH (m)
        value: Unknown
      - 
        key: EPV (m)
        value: Unknown
  - 
    level: 1
    name: mavros: Heartbeat
    message: Frequency too low.
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Heartbeats since startup
        value: 11
      - 
        key: Frequency (Hz)
        value: 0.055251
      - 
        key: Vehicle type
        value: Quadrotor
      - 
        key: Autopilot type
        value: ArduPilotMega / ArduCopter
      - 
        key: Mode
        value: LOITER
      - 
        key: System status
        value: Standby
  - 
    level: 0
    name: mavros: System
    message: Normal
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Sensor present
        value: 0x00000000
      - 
        key: Sensor enabled
        value: 0x00000000
      - 
        key: Sensor helth
        value: 0x00000000
      - 
        key: CPU Load (%)
        value: 0.0
      - 
        key: Drop rate (%)
        value: 0.0
      - 
        key: Errors comm
        value: 0
      - 
        key: Errors count #1
        value: 0
      - 
        key: Errors count #2
        value: 0
      - 
        key: Errors count #3
        value: 0
      - 
        key: Errors count #4
        value: 0
  - 
    level: 2
    name: mavros: Battery
    message: No data
    hardware_id: /dev/ttyS0:921600
    values: 
      - 
        key: Voltage
        value: -1.00
      - 
        key: Current
        value: 0.0
      - 
        key: Remaining
        value: 0.0
---
TSC21 commented 7 years ago

Should we run all the scripts from the folder?

install_geographiclib_datasets.sh

NickBoeker commented 7 years ago

Ok, we just ran that and it succesfully installed

TSC21 commented 7 years ago

Are you able to get data on other topics?

NickBoeker commented 7 years ago

Yes, /mavlink/from returns a stream of data

TSC21 commented 7 years ago

Ok so MAVROS is working. Now I can't tell if the RANGEFINDER msgs are coming through the stream or not. If yes, rangefinder plugin supposedly should handle them. But I'm not able to debug this myself since I use PX4 and not APM. So maybe an APM user can help out? @khancyr can you give an hand here?

NickBoeker commented 7 years ago

I saw that msgid-173 is ignored when the quad starts up so maybe that is part of the problem but I don't know how that could be fixed

TSC21 commented 7 years ago

Ignored on which side?

NickBoeker commented 7 years ago

I'm not entirely sure, it is in the node startup log which says something about matrixpilot and slugs ignoring it which goes over my head

TSC21 commented 7 years ago

I'm not entirely sure, it is in the node startup log which says something about matrixpilot and slugs ignoring it which goes over my head

It's no issue at all for this case.

TSC21 commented 7 years ago

https://github.com/ArduPilot/ardupilot/blob/279072cf255eb1a36d1c29c24752fd2a951b7098/libraries/GCS_MAVLink/GCS_Common.cpp#L259-L270 this is the sending method. Note that it needs to be downward facing on config, which I suppose you already have. It's weird that Mission Planner is able to process the msg but the plugin not. Do you get readable data on Mission Planner?

NickBoeker commented 7 years ago

It is facing downward, there are distance and voltage numbers coming through to mission planner

TSC21 commented 7 years ago

It is facing downward, there are distance and voltage numbers coming through to mission planner

Ok so I don't know why it doesn't get the data on MAVROS. @khancyr probably you were able to, since you wrote the plugin, so please give a hand here. thanks

TSC21 commented 7 years ago

Just a last thing: can you post the output of rostopic list?

NickBoeker commented 7 years ago

No problem, let me know if there is anything else that might help

/diagnostics
/mavlink/from
/mavlink/to
/mavros/adsb/send
/mavros/adsb/vehicle
/mavros/battery
/mavros/cam_imu_sync/cam_imu_stamp
/mavros/distance_sensor/rangefinder_sub
/mavros/extended_state
/mavros/fake_gps/mocap/tf
/mavros/global_position/compass_hdg
/mavros/global_position/global
/mavros/global_position/gp_lp_offset
/mavros/global_position/gp_origin
/mavros/global_position/home
/mavros/global_position/local
/mavros/global_position/raw/fix
/mavros/global_position/raw/gps_vel
/mavros/global_position/rel_alt
/mavros/global_position/set_gp_origin
/mavros/hil_actuator_controls
/mavros/hil_controls/hil_controls
/mavros/home_position/home
/mavros/home_position/set
/mavros/imu/atm_pressure
/mavros/imu/data
/mavros/imu/data_raw
/mavros/imu/mag
/mavros/imu/temperature
/mavros/local_position/odom
/mavros/local_position/pose
/mavros/local_position/velocity
/mavros/manual_control/control
/mavros/mission/waypoints
/mavros/odometry/odom
/mavros/radio_status
/mavros/rangefinder/rangefinder
/mavros/rc/in
/mavros/rc/out
/mavros/rc/override
/mavros/setpoint_accel/accel
/mavros/setpoint_position/local
/mavros/setpoint_raw/attitude
/mavros/setpoint_raw/global
/mavros/setpoint_raw/local
/mavros/setpoint_raw/target_attitude
/mavros/setpoint_raw/target_global
/mavros/setpoint_raw/target_local
/mavros/setpoint_velocity/cmd_vel
/mavros/setpoint_velocity/cmd_vel_unstamped
/mavros/state
/mavros/time_reference
/mavros/vfr_hud
/mavros/wind_estimation
/rosout
/rosout_agg
/tf
/tf_static
TSC21 commented 7 years ago

Ok was just to be sure rangefinder was there. Well right now I run out of ideas. Maybe an APM guy can help out now.

TSC21 commented 7 years ago

I don't know but this is the first plugin that is implemented using an ardupilotmega msg, and not a common one. I have not tested the plugin myself to assert over it's functioning so I can't tell it is working right now. Also another last thing you can do is disable the distance_sensor plugin just to be sure there is no incompatibility with the msgs being sent or received on the stream.

khancyr commented 7 years ago

@TSC21 @NickBoeker I recheck on SITL with the same copter version and it works fine. Normally if you get the message on mission planner you should get it too on mavros. A thing that can be blocking is the Stream rate : try to call rosservice call /mavros/set_stream_rate 0 10 1 after the connection is established... Or on mission planner go on full parameter tabs and change the stream rate for the telem port that you are using SRX_EXTRA3 (change X by the telem used for mavros)

TSC21 commented 7 years ago

Yeah the stream rate may actually do some difference. You can configure it to all stream or to a specific msg.

khancyr commented 7 years ago

Ardupilot stick to stream for now : see https://github.com/ArduPilot/ardupilot/blob/master/ArduCopter/GCS_Mavlink.cpp#L597 . I hope we can have more granularity soon.

TSC21 commented 7 years ago

Ardupilot stick to stream for now : see https://github.com/ArduPilot/ardupilot/blob/master/ArduCopter/GCS_Mavlink.cpp#L597 . I hope we can have more granularity soon.

Ok thanks for the info.

NickBoeker commented 7 years ago

Ok either disabling the distance_sensor plugin or setting the stream rate fixed it, its intermittent but data is appearing so thank you so much

khancyr commented 7 years ago

you should check your wiring ! it is not normal to have in diagnostic : Frequency too low. Or having intermittend data !

TSC21 commented 7 years ago

True. Usually you should get a heartbeat higher than 1hz

TSC21 commented 7 years ago

@NickBoeker what's the current status of this?

vooon commented 7 years ago

No, not more that 1Hz. Usual is 1 Hz ± some reasonable deviation (0.01-0.3 Hz).

TSC21 commented 7 years ago

No, not more that 1Hz. Usual is 1 Hz ± some reasonable deviation (0.01-0.3 Hz).

That's what I wanted to say, as I usually get a little higher than 1Hz.

NickBoeker commented 7 years ago

Yup, the plug-in works great. The data came in and performed flawlessly in the Ros program. We were trying to transmit too much data over the connection and it was causing the intermittent data. Thanks again for helping me out!

AlexWUrobot commented 1 year ago

I find this solution will be helpful: https://discuss.px4.io/t/how-to-read-distance-sensor-data-from-mavros-topic/21944