Thanks a lot Tridge
@Tempest_25
I think you should probably do the boot loader update process, it may not do anything but just to be sure. Then reset to defaults and reconfigure as per below. If you start with a new flight controller and decide that one is suspect, you can still follow exactly the same process and set these same parameters.
- Save the parameters you have now to a .param file - they can always be extracted from previous logs too
- Reset all to defaults and start over all configuration
- Select frame type and class
- Do the mandatory calibrations - accel, compass, RC
- Set flight modes and switches (some are in params below)
- Set up the voltage and current monitor (it may be working by default)
- Move the motor outputs to Servo10,11,12,13 (Aux2,3,4,5) with the Setup/Mandatory/Servo Output screen
- Use Initial Parameters with “Suggested” settings and apply everything
You will need these parameters set first in order to do the calibrations
BRD_BOOT_DELAY,3000
CAN_D1_PROTOCOL,1
CAN_D2_PROTOCOL,1
CAN_P1_DRIVER,1
CAN_P2_DRIVER,1
GPS_TYPE,9
NTF_LED_TYPES,231
Then set all these listed parameters for now, do not reload the old parameters from file, I’ve carefully selected them from your previous configuration.
Some of the ENABLE parameters will require you to “write” and then refresh parameters before you see more of them, but read to the end before you start setting these manually - there is an easy way.
ADSB_TYPE,1
ATC_ANG_RLL_P,6.0
ATC_ANG_PIT_P,6.0
ATC_RAT_RLL_P,0.10
ATC_RAT_RLL_I,0.10
ATC_RAT_RLL_D,0.005
ATC_RAT_PIT_P,0.10
ATC_RAT_PIT_I,0.10
ATC_RAT_PIT_D,0.005
BARO_PRIMARY,1
BRD_SAFETYENABLE,0
FENCE_ACTION,1
FENCE_ALT_MAX,50
FENCE_ENABLE,1
FENCE_RADIUS,100
FENCE_TYPE,3
FLTMODE1,0
FLTMODE2,2
FLTMODE3,5
FLTMODE4,9
FLTMODE5,6
FLTMODE6,15
GPS_GNSS_MODE,67
INS_ACCEL_FILTER,10
INS_HNTCH_ENABLE,1
INS_HNTCH_MODE,3
INS_HNTCH_FREQ,60
INS_HNTCH_BW,30
INS_LOG_BAT_MASK,1
INS_LOG_BAT_OPT,4
LOG_BITMASK,180222
MOT_PWM_TYPE,6
PSC_ACCZ_I,0.54
PSC_ACCZ_P,0.27
RTL_CLIMB_MIN,200
RTL_CONE_SLOPE,2
RTL_LOIT_TIME,1000
SERIAL2_BAUD,115
SERIAL2_OPTIONS,16
SERIAL2_PROTOCOL,16
SERIAL5_PROTOCOL,2
SERVO_BLH_AUTO,1
SERVO_DSHOT_ESC,1
SR0_ADSB,5
SR1_ADSB,5
You can copy/paste these into notepad and save as a .param file, then in the Full Parameter list you can load the new .param file. This avoids typing errors. Since there are “enable” parameters included, write and refresh then load and write the param file a second time.
You can do a compare too, to ensure they are all set as planned.
There’s some that are fractionally different to how you had them before but dont be alarmed, I’ve thought about them carefully and they wont be critical and not affecting flight, except maybe the PIDs I’ve specified but they should be safe.
Check and set RTL Altitude - the default is 15meters (1500) but I use 45m to clear trees - set it to suit your terrain.
After successful flights, you can also check and change FENCE_ALT_MAX and FENCE_ALT_RADIUS
Use Motor Test to check motor directions and MOT_SPIN_ARM and MOT_SPIN_MIN as per usual before flight. You had default values before and that might be OK, try to get MOT_SPIN_ARM as low as possible but still reliable. MOT_SPIN_MIN should be just a bit higher like MOT_SPIN_ARM+0.03
In the test flight just use Stabilise for takeoff and a short test, if everything is going OK change to AltHold and do some gentle pitch and roll.
The FENCE settings will seem to make it take a LOOOONNGG time before you can arm, but this would be the same if you were to wait in Loiter mode for the “Green Light”. The advantage is it means you’ve got a GPS 3D Fix and Home can be set before you can arm in any flight mode.
You get used to it and it allows you to stand around and think of anything that’s been missed, and consider the flight plan, instead of arming and flying in Stabilise before you should.
Try to avoid changing any other params unless you think I’ve missed something important. For example you had DISARM_DELAY,25 which I think would be a bad idea. The default is 10 and for my copters I set DISARM_DELAY,5
Thinking back, that disarm delay and even MOT_SPIN_MIN could have been contributors to the crash.