Avoidance not working, Copter does not stop

Hi All,

i’ll make it short.

I have a quadcopter fitted with an Orange Cube.
I have set up several TFmini S on I2C (i can see them on Proximity tab).
I have set up my RNGFND, PRX, AVOID parameters so that my Copter stops (not slide) and keeps a distance of 6m from obstacles (i actually tried with 2m, 3m , 4m but same result).

Copter acts as if it is detecting the obstacle (i see it leaning to the opposite side as if it wanted to stop). However if i keep my pitch/roll command it still goes towards the obstacle and never stops.

below are my parameters possibly related to Obstacle Avoidance. Any hint why is that happening and how to solve it ?

AVD_ENABLE,0
AVOID_ACCEL_MAX,4
AVOID_ALT_MIN,1
AVOID_ANGLE_MAX,2000
AVOID_BACKUP_DZ,0
AVOID_BACKUP_SPD,2
AVOID_BEHAVE,0
AVOID_DIST_MAX,6
AVOID_ENABLE,3
AVOID_MARGIN,6
EK3_PRIMARY,0
EK3_RNG_I_GATE,500
EK3_RNG_M_NSE,0.5
EK3_RNG_USE_HGT,-1
EK3_RNG_USE_SPD,2
EK3_SRC_OPTIONS,1
EK3_SRC1_POSXY,3
EK3_SRC1_POSZ,1
EK3_SRC1_VELXY,3
EK3_SRC1_VELZ,3
EK3_SRC1_YAW,1
EK3_SRC2_POSXY,0
EK3_SRC2_POSZ,2
EK3_SRC2_VELXY,0
EK3_SRC2_VELZ,0
EK3_SRC2_YAW,0
EK3_SRC3_POSXY,0
EK3_SRC3_POSZ,1
EK3_SRC3_VELXY,0
EK3_SRC3_VELZ,0
EK3_SRC3_YAW,0
FENCE_ACTION,1
FENCE_ALT_MAX,5000
FENCE_ALT_MIN,-10
FENCE_ENABLE,1
FENCE_MARGIN,5
FENCE_RADIUS,5000
FENCE_TOTAL,0
FENCE_TYPE,3
PRX_FILT,0
PRX_IGN_ANG1,0
PRX_IGN_ANG2,0
PRX_IGN_ANG3,0
PRX_IGN_ANG4,0
PRX_IGN_ANG5,0
PRX_IGN_ANG6,0
PRX_IGN_GND,0
PRX_IGN_WID1,0
PRX_IGN_WID2,0
PRX_IGN_WID3,0
PRX_IGN_WID4,0
PRX_IGN_WID5,0
PRX_IGN_WID6,0
PRX_LOG_RAW,0
PRX_MAX,0
PRX_MIN,0
PRX_ORIENT,0
PRX_TYPE,4
PRX_YAW_CORR,0
RC7_DZ,0
RC7_MAX,1945
RC7_MIN,1045
RC7_OPTION,10
RC7_REVERSED,0
RC7_TRIM,1045
RNGFND_FILT,5
RNGFND1_ADDR,1
RNGFND1_FUNCTION,0
RNGFND1_GNDCLEAR,35
RNGFND1_MAX_CM,4900
RNGFND1_MIN_CM,30
RNGFND1_OFFSET,0
RNGFND1_ORIENT,25
RNGFND1_PIN,-1
RNGFND1_POS_X,0.44
RNGFND1_POS_Y,-0.33
RNGFND1_POS_Z,0.06
RNGFND1_PWRRNG,0
RNGFND1_RMETRIC,0
RNGFND1_SCALING,3
RNGFND1_STOP_PIN,-1
RNGFND1_TYPE,11
RNGFND2_ADDR,10
RNGFND2_FUNCTION,0
RNGFND2_GNDCLEAR,10
RNGFND2_MAX_CM,600
RNGFND2_MIN_CM,30
RNGFND2_OFFSET,0
RNGFND2_ORIENT,4
RNGFND2_PIN,-1
RNGFND2_POS_X,-0.08
RNGFND2_POS_Y,0
RNGFND2_POS_Z,0.2
RNGFND2_PWRRNG,0
RNGFND2_RMETRIC,0
RNGFND2_SCALING,3
RNGFND2_STOP_PIN,-1
RNGFND2_TYPE,25
RNGFND3_TYPE,0
RNGFND4_ADDR,4
RNGFND4_FUNCTION,0
RNGFND4_GNDCLEAR,10
RNGFND4_MAX_CM,600
RNGFND4_MIN_CM,30
RNGFND4_OFFSET,0
RNGFND4_ORIENT,6
RNGFND4_PIN,-1
RNGFND4_POS_X,0
RNGFND4_POS_Y,-0.11
RNGFND4_POS_Z,0.22
RNGFND4_PWRRNG,0
RNGFND4_RMETRIC,0
RNGFND4_SCALING,3
RNGFND4_STOP_PIN,-1
RNGFND4_TYPE,25
RNGFND5_ADDR,5
RNGFND5_FUNCTION,0
RNGFND5_GNDCLEAR,10
RNGFND5_MAX_CM,600
RNGFND5_MIN_CM,30
RNGFND5_OFFSET,0
RNGFND5_ORIENT,7
RNGFND5_PIN,-1
RNGFND5_POS_X,0.08
RNGFND5_POS_Y,-0.09
RNGFND5_POS_Z,0.22
RNGFND5_PWRRNG,0
RNGFND5_RMETRIC,0
RNGFND5_SCALING,3
RNGFND5_STOP_PIN,-1
RNGFND5_TYPE,25
RNGFND6_ADDR,6
RNGFND6_FUNCTION,0
RNGFND6_GNDCLEAR,10
RNGFND6_MAX_CM,600
RNGFND6_MIN_CM,30
RNGFND6_OFFSET,0
RNGFND6_ORIENT,1
RNGFND6_PIN,-1
RNGFND6_POS_X,0.08
RNGFND6_POS_Y,0.09
RNGFND6_POS_Z,0.22
RNGFND6_PWRRNG,0
RNGFND6_RMETRIC,0
RNGFND6_SCALING,3
RNGFND6_STOP_PIN,-1
RNGFND6_TYPE,25
RNGFND7_ADDR,7
RNGFND7_FUNCTION,0
RNGFND7_GNDCLEAR,10
RNGFND7_MAX_CM,600
RNGFND7_MIN_CM,30
RNGFND7_OFFSET,0
RNGFND7_ORIENT,2
RNGFND7_PIN,-1
RNGFND7_POS_X,0
RNGFND7_POS_Y,0.11
RNGFND7_POS_Z,0.22
RNGFND7_PWRRNG,0
RNGFND7_RMETRIC,0
RNGFND7_SCALING,3
RNGFND7_STOP_PIN,-1
RNGFND7_TYPE,25
RNGFND8_TYPE,0
RNGFND9_ADDR,9
RNGFND9_FUNCTION,0
RNGFND9_GNDCLEAR,10
RNGFND9_MAX_CM,600
RNGFND9_MIN_CM,30
RNGFND9_OFFSET,0
RNGFND9_ORIENT,0
RNGFND9_PIN,-1
RNGFND9_POS_X,0
RNGFND9_POS_Y,0
RNGFND9_POS_Z,0
RNGFND9_PWRRNG,0
RNGFND9_RMETRIC,0
RNGFND9_SCALING,3
RNGFND9_STOP_PIN,-1
RNGFND9_TYPE,25
RNGFNDA_TYPE,0
TERRAIN_ENABLE,1
TERRAIN_MARGIN,0.05
TERRAIN_OFS_MAX,15
TERRAIN_OPTIONS,0
TERRAIN_SPACING,100
WP_NAVALT_MIN,0
WP_YAW_BEHAVIOR,0
WPNAV_ACCEL,100
WPNAV_ACCEL_Z,100
WPNAV_JERK,1
WPNAV_RADIUS,200
WPNAV_RFND_USE,1
WPNAV_SPEED,500
WPNAV_SPEED_DN,150
WPNAV_SPEED_UP,150
WPNAV_TER_MARGIN,0.5

extra issue: i tried setting up 9 TFmini S to cover all the 8 quadrants + downward facing
*It is not able to detect them all together. I always get a few not detected randomly. *
power supply is through a separate BEC with same ground reference as the Cube Orange.
If i randomly remove 2 from the loop all works fine. it seems to me that the Cube Orange is not able to handle the data and is missing some data randomly from those sensors.

Thanks in advance.

have you changed the i2c addresses of the TFmini sensors so they are all unique? it wont work if they are all running the same i2c address as it wont be able to tell the sensors apart.

Yes all done…my Cube Orange sees them correctly. My problem is while in flight. The Copter does not stop at all.

@elia_ray_salem I’ll need to see logs to understand what may be the issue.

Has this been solved?

I am having the same problem.
The drone does have a resisting behavior, but it goes beyond that.
The measurements are accurate with lidar (tf-luna).
Which parameter is the problem?

What flight mode do you fly in?
Can you upload a .bin log from the flight in question?

Sorry for the late reply.
The log is ↓

I am flying in althold mode.
I have the obstacle sensor set to 1.5m stop.
There is a movement that resists at 1.5m, but it breaks through 1.5m and goes on.

Well, this is written in Simple Object Avoidance:

In ALTHOLD mode, the aggregate threat is translated into an attempt to add lean input into the pilot’s commands to move the Copter away from the aggregate obstructions. The pilot can still overcome these additions to his command inputs and fly into a object, if determined to do so.

If you want the drone to stop completely without being able to overpower it you’ll have to fly in Loiter flight mode.

I’ve never heard of it before…
Thank you so much !

Today I face this problem. I found out that without downward sensor, avoidance will not work. This is to avoid backward crash on take off.