@ -93,12 +93,6 @@ var mspHelper = (function (gui) {
CONFIG . cycleTime = data . getUint16 ( 0 , true ) ;
CONFIG . i2cError = data . getUint16 ( 2 , true ) ;
CONFIG . activeSensors = data . getUint16 ( 4 , true ) ;
/* For 1.7.4+ MSP_ACTIVEBOXES should be used to determine active modes */
if ( semver . lt ( CONFIG . flightControllerVersion , "1.7.4" ) ) {
CONFIG . mode = data . getUint32 ( 6 , true ) ;
}
CONFIG . profile = data . getUint8 ( 10 ) ;
CONFIG . cpuload = data . getUint16 ( 11 , true ) ;
CONFIG . armingFlags = data . getUint16 ( 13 , true ) ;
@ -867,12 +861,10 @@ var mspHelper = (function (gui) {
RX _CONFIG . spirx _channel _count = data . getUint8 ( offset ) ;
offset += 1 ;
}
if ( semver . gt ( CONFIG . flightControllerVersion , "1.7.3" ) ) {
// unused byte for fpvCamAngleDegrees, for compatiblity with betaflight
offset += 1 ;
RX _CONFIG . receiver _type = data . getUint8 ( offset ) ;
offset += 1 ;
}
// unused byte for fpvCamAngleDegrees, for compatiblity with betaflight
offset += 1 ;
RX _CONFIG . receiver _type = data . getUint8 ( offset ) ;
offset += 1 ;
break ;
case MSPCodes . MSP _FAILSAFE _CONFIG :
@ -888,24 +880,20 @@ var mspHelper = (function (gui) {
offset += 2 ;
FAILSAFE _CONFIG . failsafe _procedure = data . getUint8 ( offset ) ;
offset ++ ;
if ( semver . gte ( CONFIG . flightControllerVersion , "1.7.3" ) ) {
FAILSAFE _CONFIG . failsafe _recovery _delay = data . getUint8 ( offset ) ;
offset ++ ;
FAILSAFE _CONFIG . failsafe _fw _roll _angle = data . getUint16 ( offset , true ) ;
offset += 2 ;
FAILSAFE _CONFIG . failsafe _fw _pitch _angle = data . getUint16 ( offset , true ) ;
offset += 2 ;
FAILSAFE _CONFIG . failsafe _fw _yaw _rate = data . getUint16 ( offset , true ) ;
offset += 2 ;
FAILSAFE _CONFIG . failsafe _stick _motion _threshold = data . getUint16 ( offset , true ) ;
offset += 2 ;
}
if ( semver . gte ( CONFIG . flightControllerVersion , "1.7.4" ) ) {
FAILSAFE _CONFIG . failsafe _min _distance = data . getUint16 ( offset , true ) ;
offset += 2 ;
FAILSAFE _CONFIG . failsafe _min _distance _procedure = data . getUint8 ( offset ) ;
offset ++ ;
}
FAILSAFE _CONFIG . failsafe _recovery _delay = data . getUint8 ( offset ) ;
offset ++ ;
FAILSAFE _CONFIG . failsafe _fw _roll _angle = data . getUint16 ( offset , true ) ;
offset += 2 ;
FAILSAFE _CONFIG . failsafe _fw _pitch _angle = data . getUint16 ( offset , true ) ;
offset += 2 ;
FAILSAFE _CONFIG . failsafe _fw _yaw _rate = data . getUint16 ( offset , true ) ;
offset += 2 ;
FAILSAFE _CONFIG . failsafe _stick _motion _threshold = data . getUint16 ( offset , true ) ;
offset += 2 ;
FAILSAFE _CONFIG . failsafe _min _distance = data . getUint16 ( offset , true ) ;
offset += 2 ;
FAILSAFE _CONFIG . failsafe _min _distance _procedure = data . getUint8 ( offset ) ;
offset ++ ;
break ;
case MSPCodes . MSP _RXFAIL _CONFIG :
@ -1241,10 +1229,6 @@ var mspHelper = (function (gui) {
break ;
case MSPCodes . MSP _CALIBRATION _DATA :
if ( semver . lte ( CONFIG . flightControllerVersion , "1.8.0" ) ) {
break ;
}
var callibrations = data . getUint8 ( 0 ) ;
CALIBRATION _DATA . acc . Pos0 = ( 1 & ( callibrations >> 0 ) ) ;
CALIBRATION _DATA . acc . Pos1 = ( 1 & ( callibrations >> 1 ) ) ;
@ -1702,12 +1686,10 @@ var mspHelper = (function (gui) {
buffer . push32 ( RX _CONFIG . spirx _id ) ;
buffer . push ( RX _CONFIG . spirx _channel _count ) ;
}
if ( semver . gt ( CONFIG . flightControllerVersion , "1.7.3" ) ) {
// unused byte for fpvCamAngleDegrees, for compatiblity with betaflight
buffer . push ( 0 ) ;
// receiver type in RX_CONFIG rather than in BF_CONFIG.features
buffer . push ( RX _CONFIG . receiver _type ) ;
}
// unused byte for fpvCamAngleDegrees, for compatiblity with betaflight
buffer . push ( 0 ) ;
// receiver type in RX_CONFIG rather than in BF_CONFIG.features
buffer . push ( RX _CONFIG . receiver _type ) ;
break ;
case MSPCodes . MSP _SET _FAILSAFE _CONFIG :
@ -1719,22 +1701,18 @@ var mspHelper = (function (gui) {
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _throttle _low _delay ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _throttle _low _delay ) ) ;
buffer . push ( FAILSAFE _CONFIG . failsafe _procedure ) ;
if ( semver . gte ( CONFIG . flightControllerVersion , "1.7.3" ) ) {
buffer . push ( FAILSAFE _CONFIG . failsafe _recovery _delay ) ;
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _fw _roll _angle ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _fw _roll _angle ) ) ;
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _fw _pitch _angle ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _fw _pitch _angle ) ) ;
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _fw _yaw _rate ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _fw _yaw _rate ) ) ;
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _stick _motion _threshold ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _stick _motion _threshold ) ) ;
}
if ( semver . gte ( CONFIG . flightControllerVersion , "1.7.4" ) ) {
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _min _distance ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _min _distance ) ) ;
buffer . push ( FAILSAFE _CONFIG . failsafe _min _distance _procedure ) ;
}
buffer . push ( FAILSAFE _CONFIG . failsafe _recovery _delay ) ;
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _fw _roll _angle ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _fw _roll _angle ) ) ;
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _fw _pitch _angle ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _fw _pitch _angle ) ) ;
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _fw _yaw _rate ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _fw _yaw _rate ) ) ;
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _stick _motion _threshold ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _stick _motion _threshold ) ) ;
buffer . push ( lowByte ( FAILSAFE _CONFIG . failsafe _min _distance ) ) ;
buffer . push ( highByte ( FAILSAFE _CONFIG . failsafe _min _distance ) ) ;
buffer . push ( FAILSAFE _CONFIG . failsafe _min _distance _procedure ) ;
break ;
case MSPCodes . MSP _SET _TRANSPONDER _CONFIG :
@ -2271,10 +2249,6 @@ var mspHelper = (function (gui) {
self . sendMotorMixer = function ( onCompleteCallback ) {
if ( semver . lt ( CONFIG . flightControllerVersion , "1.8.1" ) ) {
onCompleteCallback ( ) ;
}
var nextFunction = sendMixer ,
servoIndex = 0 ;
@ -2881,59 +2855,31 @@ var mspHelper = (function (gui) {
} ;
self . loadCalibrationData = function ( callback ) {
if ( semver . gte ( CONFIG . flightControllerVersion , "1.8.1" ) ) {
MSP . send _message ( MSPCodes . MSP _CALIBRATION _DATA , false , false , callback ) ;
} else {
callback ( ) ;
}
MSP . send _message ( MSPCodes . MSP _CALIBRATION _DATA , false , false , callback ) ;
} ;
self . saveCalibrationData = function ( callback ) {
if ( semver . gte ( CONFIG . flightControllerVersion , "1.8.1" ) ) {
MSP . send _message ( MSPCodes . MSP _SET _CALIBRATION _DATA , mspHelper . crunch ( MSPCodes . MSP _SET _CALIBRATION _DATA ) , false , callback ) ;
} else {
callback ( ) ;
}
MSP . send _message ( MSPCodes . MSP _SET _CALIBRATION _DATA , mspHelper . crunch ( MSPCodes . MSP _SET _CALIBRATION _DATA ) , false , callback ) ;
} ;
self . loadRthAndLandConfig = function ( callback ) {
if ( semver . gte ( CONFIG . flightControllerVersion , "1.7.1" ) ) {
MSP . send _message ( MSPCodes . MSP _RTH _AND _LAND _CONFIG , false , false , callback ) ;
} else {
callback ( ) ;
}
MSP . send _message ( MSPCodes . MSP _RTH _AND _LAND _CONFIG , false , false , callback ) ;
} ;
self . saveRthAndLandConfig = function ( callback ) {
if ( semver . gte ( CONFIG . flightControllerVersion , "1.7.1" ) ) {
MSP . send _message ( MSPCodes . MSP _SET _RTH _AND _LAND _CONFIG , mspHelper . crunch ( MSPCodes . MSP _SET _RTH _AND _LAND _CONFIG ) , false , callback ) ;
} else {
callback ( ) ;
}
MSP . send _message ( MSPCodes . MSP _SET _RTH _AND _LAND _CONFIG , mspHelper . crunch ( MSPCodes . MSP _SET _RTH _AND _LAND _CONFIG ) , false , callback ) ;
} ;
self . loadFwConfig = function ( callback ) {
if ( semver . gte ( CONFIG . flightControllerVersion , "1.7.1" ) ) {
MSP . send _message ( MSPCodes . MSP _FW _CONFIG , false , false , callback ) ;
} else {
callback ( ) ;
}
MSP . send _message ( MSPCodes . MSP _FW _CONFIG , false , false , callback ) ;
} ;
self . saveFwConfig = function ( callback ) {
if ( semver . gte ( CONFIG . flightControllerVersion , "1.7.1" ) ) {
MSP . send _message ( MSPCodes . MSP _SET _FW _CONFIG , mspHelper . crunch ( MSPCodes . MSP _SET _FW _CONFIG ) , false , callback ) ;
} else {
callback ( ) ;
}
} ;
self . getMissionInfo = function ( callback ) {
if ( semver . gte ( CONFIG . flightControllerVersion , "1.8.1" ) ) {
MSP . send _message ( MSPCodes . MSP _WP _GETINFO , false , false , callback ) ;
} else {
callback ( ) ;
}
MSP . send _message ( MSPCodes . MSP _WP _GETINFO , false , false , callback ) ;
} ;
self . _getSetting = function ( name ) {
@ -3117,31 +3063,23 @@ var mspHelper = (function (gui) {
} ;
self . getRTC = function ( callback ) {
if ( semver . gt ( CONFIG . flightControllerVersion , "1.7.3" ) ) {
MSP . send _message ( MSPCodes . MSP _RTC , false , false , function ( resp ) {
var seconds = resp . data . read32 ( ) ;
var millis = resp . data . readU16 ( ) ;
if ( callback ) {
callback ( seconds , millis ) ;
}
} ) ;
} else if ( callback ) {
callback ( 0 , 0 ) ;
}
MSP . send _message ( MSPCodes . MSP _RTC , false , false , function ( resp ) {
var seconds = resp . data . read32 ( ) ;
var millis = resp . data . readU16 ( ) ;
if ( callback ) {
callback ( seconds , millis ) ;
}
} ) ;
} ;
self . setRTC = function ( callback ) {
if ( semver . gt ( CONFIG . flightControllerVersion , "1.7.3" ) ) {
var now = Date . now ( ) ;
var secs = now / 1000 ;
var millis = now % 1000 ;
var data = [ ] ;
data . push32 ( secs ) ;
data . push16 ( millis ) ;
MSP . send _message ( MSPCodes . MSP _SET _RTC , data , false , callback ) ;
} else if ( callback ) {
callback ( ) ;
}
var now = Date . now ( ) ;
var secs = now / 1000 ;
var millis = now % 1000 ;
var data = [ ] ;
data . push32 ( secs ) ;
data . push16 ( millis ) ;
MSP . send _message ( MSPCodes . MSP _SET _RTC , data , false , callback ) ;
} ;
self . loadServoConfiguration = function ( callback ) {
@ -3153,11 +3091,7 @@ var mspHelper = (function (gui) {
} ;
self . loadMotorMixRules = function ( callback ) {
if ( semver . gte ( CONFIG . flightControllerVersion , "1.8.1" ) ) {
MSP . send _message ( MSPCodes . MSP2 _COMMON _MOTOR _MIXER , false , false , callback ) ;
} else {
callback ( ) ;
}
MSP . send _message ( MSPCodes . MSP2 _COMMON _MOTOR _MIXER , false , false , callback ) ;
} ;
self . loadMotors = function ( callback ) {
@ -3165,29 +3099,21 @@ var mspHelper = (function (gui) {
} ;
self . getCraftName = function ( callback ) {
if ( semver . gt ( CONFIG . flightControllerVersion , "1.8.0" ) ) {
MSP . send _message ( MSPCodes . MSP _NAME , false , false , function ( resp ) {
var name = resp . data . readString ( ) ;
if ( callback ) {
callback ( name ) ;
}
} ) ;
} else if ( callback ) {
callback ( null ) ;
}
MSP . send _message ( MSPCodes . MSP _NAME , false , false , function ( resp ) {
var name = resp . data . readString ( ) ;
if ( callback ) {
callback ( name ) ;
}
} ) ;
} ;
self . setCraftName = function ( name , callback ) {
if ( semver . gt ( CONFIG . flightControllerVersion , "1.8.0" ) ) {
var data = [ ] ;
name = name || "" ;
for ( var ii = 0 ; ii < name . length ; ii ++ ) {
data . push ( name . charCodeAt ( ii ) ) ;
}
MSP . send _message ( MSPCodes . MSP _SET _NAME , data , false , callback ) ;
} else if ( callback ) {
callback ( ) ;
var data = [ ] ;
name = name || "" ;
for ( var ii = 0 ; ii < name . length ; ii ++ ) {
data . push ( name . charCodeAt ( ii ) ) ;
}
MSP . send _message ( MSPCodes . MSP _SET _NAME , data , false , callback ) ;
} ;
self . loadMixerConfig = function ( callback ) {