diff --git a/tabs/servos.html b/tabs/servos.html index 9574b035..da782c72 100644 --- a/tabs/servos.html +++ b/tabs/servos.html @@ -1,7 +1,17 @@
Model: +
Gyroscope / Accelerometer Direction
+ + + + + +
NameDirection
+
Change Direction in TX To Match
diff --git a/tabs/servos.js b/tabs/servos.js index ccc0f28f..96de4010 100644 --- a/tabs/servos.js +++ b/tabs/servos.js @@ -13,19 +13,26 @@ function tab_initialize_servos() { switch (CONFIG.multiType) { case 1: // TRI - // Broken + // looking ok so far model.html('TRI'); + process_directions('YAW', SERVO_CONFIG[5], 0); + process_servos('Yaw Servo', '', SERVO_CONFIG[5]); servos = [5]; break; case 4: // BI - // Broken + // looking ok so far model.html('BI'); - process_servos('Left', '', SERVO_CONFIG[4]); - process_servos('Right', '', SERVO_CONFIG[5]); + process_directions('L YAW', SERVO_CONFIG[4], 1); + process_directions('R YAW', SERVO_CONFIG[5], 1); + process_directions('L NICK', SERVO_CONFIG[4], 0); + process_directions('R NICK', SERVO_CONFIG[5], 0); + + process_servos('Left Servo', '', SERVO_CONFIG[4]); + process_servos('Right Servo', '', SERVO_CONFIG[5]); servos = [4, 5]; break; @@ -142,10 +149,32 @@ function tab_initialize_servos() { }); } -function process_servos(name, alternate, obj) { + +function process_directions(name, obj, bitpos) { + var val; + + $('div.tab-servos table.directions').append('\ + \ + \ + \ + \ + '); + + if (bit_check(obj.rate, bitpos)) val = 1; + else val = 0; + + $('div.tab-servos table.directions tr:last select').val(val); +} + +function process_servos(name, alternate, obj, directions) { $('div.tab-servos table.fields').append('\ \ - \ + \ \ \ \ @@ -164,16 +193,19 @@ function process_servos(name, alternate, obj) { ' + alternate + '\ \ \ - ' - ); + '); if (obj.middle <= 7) { $('div.tab-servos table.fields tr:last td.middle input').prop('disabled', true); $('div.tab-servos table.fields tr:last td.channel').find('input').eq(obj.middle).prop('checked', true); } - $('div.tab-servos table.fields tr:last td.direction input:first').prop('checked', bit_check(obj.rate, 0)); - $('div.tab-servos table.fields tr:last td.direction input:last').prop('checked', bit_check(obj.rate, 1)); + if (directions) { + $('div.tab-servos table.fields tr:last td.direction input:first').prop('checked', bit_check(obj.rate, 0)); + $('div.tab-servos table.fields tr:last td.direction input:last').prop('checked', bit_check(obj.rate, 1)); + } else { + $('div.tab-servos table.fields tr:last td.direction').html(''); + } // UI hooks $('div.tab-servos table.fields tr:last td.channel').find('input').click(function() {
Name
' + name + '\ + \ +
' + name + '' + name + '