How to add obstacle_distance plugin in mavros?

hi, I have built mavros from source and was trying to add an obstacle_distance plugin to run cartographer slam. As @rmackay9 mentioned in this. I have edited my apm_pluginlist.yaml file to contain a obstacle_distance plugin like this:

plugin_blacklist:
# common
- actuator_control
- ftp
- safety_area
- hil
# extras
- altitude
- debug_value
- image_pub
- px4flow
- vibration
- vision_speed_estimate
- wheel_odometry
- obstacle_distance

plugin_whitelist: []
#- 'sys_*'

and my node.launch file:

<launch>
	<!-- vim: set ft=xml noet : -->
	<!-- base node launch file-->

	<arg name="fcu_url" />
	<arg name="gcs_url" />
	<arg name="tgt_system" />
	<arg name="tgt_component" />
	<arg name="pluginlists_yaml" />
	<arg name="config_yaml" />
	<arg name="log_output" default="screen" />
	<arg name="fcu_protocol" default="v2.0" />
	<arg name="respawn_mavros" default="false" />

	<node pkg="mavros" type="mavros_node" name="mavros" required="$(eval not respawn_mavros)" clear_params="true" output="$(arg log_output)" respawn="$(arg respawn_mavros)">
		<param name="fcu_url" value="$(arg fcu_url)" />
		<param name="gcs_url" value="$(arg gcs_url)" />
		<param name="target_system_id" value="$(arg tgt_system)" />
		<param name="target_component_id" value="$(arg tgt_component)" />
		<param name="fcu_protocol" value="$(arg fcu_protocol)" />

		<!-- load blacklist, config -->
		<rosparam command="load" file="$(arg pluginlists_yaml)" />
		<rosparam command="load" file="$(arg config_yaml)" />
                <!-- remap from="/mavros/setpoint_velocity/cmd_vel_unstamped" to="/cmd_vel" /-->
                <remap from="/mavros/vision_pose/pose" to="/robot_pose" />
                <remap from="/mavros/obstacle/send" to="/scan" />
	</node>
</launch>

but I realized that the obstacle_distance plugin from apm_pluginlist.yaml is in “plugin_blacklist” and i could not find any information about plugin_blacklist and plugin_whitelist.
When i run my mavros command
$ roslaunch mavros apm.launch fcu_url:=/dev/ttyUSB1:921600
i get this info about obstacle_distance.
, [ INFO] [1613468706.303947350]: Plugin obstacle_distance blacklisted

Am i missing some configuration to add a plugin here?

I’m afraid I just don’t know what the issue could be and it has been a while since I’ve updated our ROS wiki pages. Maybe @jmachuca77 has some ideas. Another idea might be to turn up on the vision-projects discord channel.

I solved the issue by removing the “obstacle_distance” in apm_pluginlist.yaml(plugin_blacklist section).
obstacle_distance is initialized properly now and i am able to see the distance data(72) in APM planner but i reckon i am missing few configuration here when i run my script for publishing a 72bit scan topic i get this error on the mavros terminal

[ERROR] [1613626072.501267655]: DS: no mapping for sensor id: 10, type: 0, orientation: 0
[ERROR] [1613626072.502014443]: DS: no mapping for sensor id: 11, type: 0, orientation: 1

As razekmaiden mentioned in one of your threads and this issue also specify the same thing but i did not come across more information about this.
It would be great if you could enlighten me on this one.

You can try this: