Silverware Firmware: Figuring out by reverse translation.

The goal is to have dual mode firmware that has NFE acro/Angle... and to take some time to tune the angle mode. Everyone is so hot to get to acro, and I understand... but dont put yr eggs all in this basket!
Changes in config.h:
#define MAX_RATE 860.0 (360)
#define MAX_RATEYAW 500.0 (360)
#define MAX_ANGLE_HI 70.0f (55.0)
#define LOW_RATES_MULTI 1.0f (0.5f)
//#define DISABLE_EXPO (commented out in NFE to declare expo)
#define EXPO_XY 0.8 (.65)
#define EXPO_YAW 0.6 (.5)
#define GYRO_LOW_PASS_FILTER 0 (3)
//#define SOFT_LPF_1ST_HZ 100 (swapped)
#define SOFT_LPF_2ST_HZ 100 (swapped)
//#define AUX1_START_ON (was active)
//#define STOCK_TX_AUTOCENTER
^^^^^^^^ADDED AFTER
#define STICKS_DEADBAND .01f (was not in stock at all)
#define CLIP_FF (was commented out)
#define PWMFREQ 24000 (was 16000)
//#define MOTOR_CURVE_NONE (was active)
#define BOLDCLASH_716MM_24K (was commented out)
#define MIX_LOWER_THROTTLE (was comm out)
#define MIX_THROTTLE_REDUCTION_PERCENT 10 (line added)
#define TX_POWER 7 (was 3)
Changes in pid.c
Changes in PID.c
//#define NEW_DTERM ((commented out
#define MAX_FLAT_LPF_DIFF_DTERM ((enabled
NFE's 7mm PIDS
// B-03 firmware with modified hardware.h for E011
^^^^^^^^Previous line
//7mm Tune
// Kp ROLL PITCH YAW
float pidkp[PIDNUMBER] = {26.5e-2 , 26.5e-2 , 9.5e-1 };
// Ki ROLL PITCH YAW
float pidki[PIDNUMBER] = { 16.5e-1 , 16.5e-1 , 16e-1 };
// Kd ROLL PITCH YAW
float pidkd[PIDNUMBER] = { 11.4e-1 , 11.4e-1 , 4.9e-1 };
(As compared to)
STOCK DUAL PIDS
// Kp ROLL PITCH YAW
float pidkp[PIDNUMBER] = { 13.0e-2 , 13.0e-2 , 6e-1 };
// Ki ROLL PITCH YAW
float pidki[PIDNUMBER] = { 12.8e-1 , 12.8e-1 , 3e-1 };
// Kd ROLL PITCH YAW
float pidkd[PIDNUMBER] = { 5.5e-1 , 5.5e-1 , 0.0e-1 };
Setpoint weighting section: (undefined in stock)
NFE
// "setpoint weighting" 0.0 - 1.0 where 1.0 = normal pid
#define ENABLE_SETPOINT_WEIGHTING
float b[3] = { 0.93 , 0.95 , 0.9};
Output limit:
NFE
// output limit
const float outlimit[PIDNUMBER] = { 1.7 , 1.7 , 0.8 };
// limit of integral term (abs)
const float integrallimit[PIDNUMBER] = { 1.7 , 1.7 , 0.8 };
Stock
// output limit
const float outlimit[PIDNUMBER] = { 0.8 , 0.8 , 0.5 };
// limit of integral term (abs)
const float integrallimit[PIDNUMBER] = { 0.8 , 0.8 , 0.5 };
Comments
Post a Comment