Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 1600 → Rev 1601

/dongfang_FC_rewrite_tool/configsets/ADXRS610/config.xml
1,4 → 1,4
<parameterset eepromVersion="3" length="84" name="hundeprut">
<parameterset eepromVersion="4" length="73" name="hundeprut">
<parameter name="bitConfig">
<bit name="CFG_SIMPLE_HEIGHT_CONTROL" value="1" />
<bit name="CFG_SIMPLE_HC_HOLD_SWITCH" value="1" />
10,30 → 10,6
<bit name="CFG_GYRO_SATURATION_PREVENTION" value="1" />
</parameter>
 
<parameter name="gyroQuadrant" value="0" />
<parameter name="accQuadrant" value="4" />
<parameter name="imuReversedFlags">
<bit name="IMU_REVERSE_GYRO_PR" value="0" />
<bit name="IMU_REVERSE_GYRO_YAW" value="0" />
<bit name="IMU_REVERSE_ACC_XY" value="1" />
<bit name="IMU_REVERSE_ACC_Z" value="0" />
<bit name="Unused" value="0" />
<bit name="Unused" value="0" />
<bit name="Unused" value="0" />
<bit name="Unused" value="0" />
</parameter>
 
<parameter name="gyroPIDFilterConstant" value="1" />
<parameter name="gyroDFilterConstant" value="1" />
<parameter name="accFilterConstant" value="15" />
 
<parameter name="zerothOrderCorrection" value="10" />
<parameter name="rateTolerance" value="100" />
<parameter name="yawRateFactor" value="64" />
 
<parameter name="driftCompDivider" value="2" />
<parameter name="driftCompLimit" value="0" />
 
<parameter name="levelCorrectionPitch" value="var1" />
<parameter name="levelCorrectionRoll" value="var2" />
 
70,7 → 46,7
<parameter name="airpressureFilterConstant" value="8" />
<parameter name="airpressureWindowLength" value="0" />
<parameter name="airpressureDWindowLength" value="24" />
<parameter name="airpressureAccZCorrection" value="184" />
<parameter name="airpressureAccZCorrection" value="0" /> <!-- 184 for my 2.0 board. -->
<parameter name="heightP" value="110" />
<parameter name="heightI" value="90" />
<parameter name="heightD" value="25" /> <!-- 30 -->
/dongfang_FC_rewrite_tool/src/dongfang/mkt/comm/MKInputStream.java
374,6 → 374,7
f.setConfigurationSetNumber(base64InputStream.readByte());
f.setConfigurationVersion(base64InputStream.readByte());
int length = base64InputStream.readByte();
f.setConfigurationSetLength(length);
f.setData(base64InputStream.readBytes(length));
result = f;
break;
/dongfang_FC_rewrite_tool/src/dongfang/mkt/configuration/ConfigSet.java
258,8 → 258,13
return declaredSections;
}
 
public void setData(int[] data) {
public void setData(int[] data) throws IOException {
int offset = 0;
int dataLength = data.length - 12;
if (dataLength != getByteCount()) {
throw new IOException("The received number of databytes (" + dataLength + ") was not equal to the length of the declared parameter set(" + getByteCount()+").");
}
for (ConfigEntry entry : entries) {
offset += entry.setValue(data, offset);
}
323,6 → 328,10
"/parametertemplate/@eepromVersion", doc);
int eepromVersion = Integer.parseInt(s_eepromVersion);
 
String s_declaredLength = xpath.evaluate(
"/parametertemplate/@length", doc);
int declaredLength = Integer.parseInt(s_declaredLength);
 
if (eepromVersion != version) {
throw new IOException(
"Version mismatch between file name ("
406,6 → 415,9
}
}
result.name = "" + version;
if (result.getByteCount() != declaredLength) {
throw new IOException("The number of parameters in the set (" + result.getEntries().size() + ") was not equal to the declared length (" + declaredLength + ").");
}
return result;
} catch (IOException ex) {
throw ex;
/dongfang_FC_rewrite_tool/src/dongfang/mkt/frames/UniversalReadParamSetResponseFrame.java
3,6 → 3,7
public class UniversalReadParamSetResponseFrame extends ResponseFrame {
private int configurationSetNumber;
private int configurationVersion;
private int length;
private int[] data;
 
public UniversalReadParamSetResponseFrame(int address) {
30,6 → 31,14
this.configurationVersion = configurationVersion;
}
 
public int getConfigurationSetLength() {
return length;
}
 
public void setConfigurationSetLength(int configurationSetLength) {
this.length = configurationSetLength;
}
 
public int[] getData() {
return data;
}