9,6 → 9,7 |
int16_t variables[VARIABLE_COUNT]; |
ParamSet_t staticParams; |
ChannelMap_t channelMap; |
RCTrim_t rcTrim; |
IMUConfig_t IMUConfig; |
volatile DynamicParams_t dynamicParams; |
|
33,8 → 34,8 |
{offsetof(ParamSet_t, gyroPID[2].I), offsetof(DynamicParams_t, gyroPID[2].I),0,255}, |
{offsetof(ParamSet_t, gyroPID[2].D), offsetof(DynamicParams_t, gyroPID[2].D),0,255}, |
|
{offsetof(ParamSet_t, servoConfigurations[0].manualControl), offsetof(DynamicParams_t, servoManualControl[0]),0,255}, |
{offsetof(ParamSet_t, servoConfigurations[1].manualControl), offsetof(DynamicParams_t, servoManualControl[1]),0,255}, |
{offsetof(ParamSet_t, gimbalServoConfigurations[0].manualControl), offsetof(DynamicParams_t, gimbalServoManualControl[0]),0,255}, |
{offsetof(ParamSet_t, gimbalServoConfigurations[1].manualControl), offsetof(DynamicParams_t, gimbalServoManualControl[1]),0,255}, |
{offsetof(ParamSet_t, outputFlash[0].timing), offsetof(DynamicParams_t, output0Timing),0,255}, |
{offsetof(ParamSet_t, outputFlash[1].timing), offsetof(DynamicParams_t, output1Timing),0,255}, |
}; |
89,19 → 90,19 |
|
// Servos |
staticParams.servoCount = 7; |
staticParams.servosReverse = CONTROL_SERVO_REVERSE_ELEVATOR | CONTROL_SERVO_REVERSE_RUDDER; |
|
staticParams.gimbalServoMaxManualSpeed = 10; |
for (uint8_t i=0; i<2; i++) { |
staticParams.servoConfigurations[i].manualControl = 128; |
staticParams.servoConfigurations[i].stabilizationFactor = 0; |
staticParams.servoConfigurations[i].minValue = 32; |
staticParams.servoConfigurations[i].maxValue = 224; |
staticParams.servoConfigurations[i].flags = 0; |
staticParams.gimbalServoConfigurations[i].manualControl = 128; |
staticParams.gimbalServoConfigurations[i].stabilizationFactor = 0; |
staticParams.gimbalServoConfigurations[i].minValue = 32; |
staticParams.gimbalServoConfigurations[i].maxValue = 224; |
staticParams.gimbalServoConfigurations[i].flags = 0; |
} |
|
// Battery warning and emergency flight |
staticParams.batteryWarningVoltage = 101; // 3.7 each for 3S |
staticParams.emergencyThrottle = 35; |
staticParams.emergencyFlightDuration = 30; |
|
for (uint8_t i=0; i<3; i++) { |
staticParams.gyroPID[i].P = 80; |
110,9 → 111,9 |
staticParams.gyroPID[i].iMax = 45; |
} |
|
staticParams.stickIElevator = 80; |
staticParams.stickIAilerons = 120; |
staticParams.stickIRudder = 40; |
staticParams.stickIElevator = 60; |
staticParams.stickIAilerons = 80; |
staticParams.stickIRudder = 25; |
|
// Outputs |
staticParams.outputFlash[0].bitmask = 1; //0b01011111; |
147,6 → 148,9 |
IMUConfig.gyroDWindowLength = 3; |
IMUConfig.gyroQuadrant = 0; |
IMUConfig.imuReversedFlags = 0; |
IMUConfig.gyroCalibrationTweak[0] = |
IMUConfig.gyroCalibrationTweak[1] = |
IMUConfig.gyroCalibrationTweak[2] = 0; |
} |
|
/***************************************************/ |
153,7 → 157,9 |
/* Default Values for R/C Channels */ |
/***************************************************/ |
void channelMap_default(void) { |
channelMap.HWTrim = 0; |
channelMap.RCPolarity = 1; |
channelMap.HWTrim = 192; |
channelMap.variableOffset = 128; |
channelMap.channels[CH_ELEVATOR] = 1; |
channelMap.channels[CH_AILERONS] = 0; |
channelMap.channels[CH_THROTTLE] = 2; |