From 7e8b1781dadc753fe94a23a955eb29a0c8331601 Mon Sep 17 00:00:00 2001 From: cTn Date: Tue, 16 Sep 2014 14:48:36 +0200 Subject: [PATCH] add RC_MAP, BF_CONFIG for storing new info that is now available, working channelLetter mapping, unfinished MISCv2 --- js/data_storage.js | 30 ++++++++++++++++++++++++++++++ js/msp.js | 15 +++++++++++++++ 2 files changed, 45 insertions(+) diff --git a/js/data_storage.js b/js/data_storage.js index f073d195..920a2046 100644 --- a/js/data_storage.js +++ b/js/data_storage.js @@ -23,12 +23,24 @@ var CONFIG = { accelerometerTrims: [0, 0] }; +var BF_CONFIG = { + mixerConfiguration: 0, + features: 0, + serialrx_type: 0, + board_align_roll: 0, + board_align_pitch: 0, + board_align_yaw: 0 + // TBD +}; + var PID_names = []; var PIDs = new Array(10); for (var i = 0; i < 10; i++) { PIDs[i] = new Array(3); } +var RC_MAP = []; + // defaults // roll, pitch, yaw, throttle, aux 1, ... aux n var RC = { @@ -103,4 +115,22 @@ var MISC = { vbatmincellvoltage: 0, vbatmaxcellvoltage: 0, empty: 0 // unknown +}; + +var MISCV2 = { // TODO temporary, will figure out a better solution in the future + midrc: 0, + minthrottle: 0, + maxthrottle: 0, + mincommand: 0, + failsafe_throttle: 0, + gps_type: 0, + gps_baudrate: 0, + gps_ubx_sbas: 0, + placeholder1: 0, + placeholder2: 0, + mag_declination: 0, // not checked + vbatscale: 0, + vbatmincellvoltage: 0, + vbatmaxcellvoltage: 0, + placeholder3: 0 }; \ No newline at end of file diff --git a/js/msp.js b/js/msp.js index 36aa9122..9d25b817 100644 --- a/js/msp.js +++ b/js/msp.js @@ -457,14 +457,29 @@ MSP.process_data = function(code, message_buffer, message_length) { break; // Additional private MSP for baseflight configurator case MSP_codes.MSP_RCMAP: + var channelLetters = ['A', 'E', 'R', 'T', '1', '2', '3', '4']; + + RC_MAP = []; // empty the array as new data is coming in + + for (var i = 0; i < data.byteLength; i++) { + RC_MAP.push(channelLetters[data.getUint8(i)]); + } break; case MSP_codes.MSP_SET_RCMAP: + console.log('RCMAP Updated'); break; case MSP_codes.MSP_CONFIG: + BF_CONFIG.mixerConfiguration = data.getUint8(0); + BF_CONFIG.features = data.getUint32(1, 1); + BF_CONFIG.serialrx_type = data.getUint8(5); + BF_CONFIG.board_align_roll = data.getInt16(6, 1); + BF_CONFIG.board_align_pitch = data.getInt16(8, 1); + BF_CONFIG.board_align_yaw = data.getInt16(10, 1); break; case MSP_codes.MSP_SET_CONFIG: break; case MSP_codes.MSP_SET_REBOOT: + console.log('Reboot request accepted'); break; default: