Vision-hub and VOA
-
I have an out of the box Starling and I'm having a problems making collision prevention work.. Is it supposed to work on position mode ? The I run the debugger for voxl-vision-hub I can see the points being correctly detect on the config file I also have en_voa enabled.. but it seems like there is no command being send to the drone to ask him to stop moving.. I tried getting closer and closer to the wall and the collision prevention never worked.. I also enable it on QgroundControl.
{
"config_file_version": 1,
"en_localhost_mavlink_udp": true,
"localhost_udp_port_number": 14551,
"en_vio": true,
"vio_pipe": "qvio",
"secondary_vio_pipe": "mvio",
"en_reset_vio_if_initialized_inverted": true,
"vio_warmup_s": 3,
"send_odom_while_failed": false,
"horizon_cal_tolerance": 0.5,
"offboard_mode": "off",
"follow_tag_id": 0,
"figure_eight_move_home": true,
"robot_radius": 0.300000011920929,
"collision_sampling_dt": 0.1,
"max_lookahead_distance": 1,
"en_tag_fixed_frame": false,
"fixed_frame_filter_len": 5,
"en_transform_mavlink_pos_setpoints_from_fixed_frame": false,
"en_voa": true,
"voa_upper_bound_m": -0.15000000596046448,
"voa_lower_bound_m": 0.15000000596046448,
"voa_voa_memory_s": 1,
"voa_max_pc_per_fusion": 100,
"voa_pie_max_dist_m": 20,
"voa_pie_min_dist_m": 0.25,
"voa_pie_under_trim_m": 1,
"voa_pie_threshold": 3,
"voa_send_rate_hz": 20,
"voa_pie_slices": 36,
"voa_pie_bin_depth_m": 0.15000000596046448,
"voa_inputs": [{
"enabled": true,
"type": "point_cloud",
"input_pipe": "dfs_point_cloud",
"frame": "stereo_l",
"max_depth": 8,
"min_depth": 0.300000011920929,
"cell_size": 0.079999998211860657,
"threshold": 4,
"x_fov_deg": 68,
"y_fov_deg": 56,
"conf_cutoff": 0
}, {
"enabled": true,
"type": "point_cloud",
"input_pipe": "stereo_front_pc",
"frame": "stereo_front_l",
"max_depth": 8,
"min_depth": 0.300000011920929,
"cell_size": 0.079999998211860657,
"threshold": 4,
"x_fov_deg": 68,
"y_fov_deg": 56,
"conf_cutoff": 0
}, {
"enabled": true,
"type": "point_cloud",
"input_pipe": "stereo_rear_pc",
"frame": "stereo_rear_l",
"max_depth": 8,
"min_depth": 0.300000011920929,
"cell_size": 0.079999998211860657,
"threshold": 4,
"x_fov_deg": 68,
"y_fov_deg": 56,
"conf_cutoff": 0
}, {
"enabled": true,
"type": "tof",
"input_pipe": "tof",
"frame": "tof",
"max_depth": 6,
"min_depth": 0.15000000596046448,
"cell_size": 0.079999998211860657,
"threshold": 3,
"x_fov_deg": 106.5,
"y_fov_deg": 85.0999984741211,
"conf_cutoff": 125
}, {
"enabled": true,
"type": "rangefinder",
"input_pipe": "rangefinders",
"frame": "body",
"max_depth": 8,
"min_depth": 0.300000011920929,
"cell_size": 0.079999998211860657,
"threshold": 4,
"x_fov_deg": 68,
"y_fov_deg": 56,
"conf_cutoff": 0
}] -
@Caio-Licínio-Vasconcelos-Pantarotto I also get when initialising
Detected Autopilot Mavlink SYSID 1
starting tag manager
starting voa manager
starting horizon cal module
Connected to VOA input pipe: tof
Init complete
Vision Started -
@Caio-Licínio-Vasconcelos-Pantarotto Did you get it working, I am also facing the same issue
-
Hi all, couple things to clear up on this feature:
With the above parameters you are both setting limits for obstacle avoidance (OA) and collision prevention (CP)--2 different features. Details of each are here: OA and CP
To enable obstacle avoidance, make sure these parameters are being used.
Now collision prevention takes the additional step where you need to set param COM_OBS_AVOID=1. If you get a "Avoidance system not ready" message then that is a know s/w bug that is will be available on our development updates repo shortly. Also note these modes only work when MPC_POS_MODE is 0.
Lastly to disable OA, use these parameters.
-
This post is deleted! -
@Cliff-Wong @Cliff-Wong Three things
I want to do collision prevention, and I set all those parameters, and I tested in position mode, but the prevention is not happening
If I set COM_OBS_AVOID to 1 the system shows it is not ready to fly in QGC, and how soon will the bug be resolved?
For me both Obstacle Avoidance and Collision Prevention didn't work and I have already set those parameters. -
@Jetson-Nano
Hey there, yes, if you are getting the QGC message that the "system is not ready" and will not let you arm in position mode, then you need a patch that sends the correct heartbeat message in PX4 to allow arming. It is in the SDK1.1.1 release, So I believe anapt-get upgrade
should solve your problem.But if needed the code is described here.
-
@Cliff-Wong Thank you for your response, but the SDK 1.1.1 is not available for download yet
-
@Jetson-Nano SDK 1.1.1 is now available. Please use the installer in the voxl2_SDK_1.1.1.tar.gz archive to install this. This should fix this issue.
-
@Eric-Katzfey Hey
Thanks for the timely release of SDK.
We were having issues with flashing the firmware for voxl 2 io which has to be used with the new SDK. -
@Jetson-Nano Do you have the new bootloader? The legacy bootloader (SDKs before 1.1.1) and the new firmware are not compatible, you won't be able to update the firmware on your Voxl2 IO using the legacy bootloader (it doesn't support flashing via UART). The new bootloader will enable firmware updates for Voxl2 IO board via Voxl2 (removing the need for STLink). We aren't currently distributing the new bootloader so you will need to send your Voxl2 IO back to us and we can send you replacement(s) with the new bootloader and firmware already loaded. You can email contact@modalai.com to get this process started.
-
@Eric-Katzfey We will send a new VOXL 2 IO board immediately upon request, we just ask that you send back your older one after you are setup with your new one
-
@Moderator @Eric-Katzfey Will we be able to upload the new firmware in the IO board with STLink? If yes I am not able to do it. I followed your documentation but it failed, and there is no supporting videos for updating the firmware with STLink, there is a video on the documentation for updating the firmware via adb shell and STLink, but apparently both the videos are the same, there is no video for updating using STLink
-
@Jetson-Nano Please do not attempt to update the firmware with STLink. We will send you new boards properly programmed.