diff --git a/Tools/ArdupilotMegaPlanner/ArduCopterConfig.xml b/Tools/ArdupilotMegaPlanner/ArduCopterConfig.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e90fae40cfe29cd13e042a768ec38068277fe659
--- /dev/null
+++ b/Tools/ArdupilotMegaPlanner/ArduCopterConfig.xml
@@ -0,0 +1,205 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<AC>
+  <Item>
+   <HEAD>Stabilization:</HEAD>
+    <SUBHEAD>Angular Rate Control:</SUBHEAD>
+    <DESC>How much throttle is applied to rotate the copter at the desired speed.
+    
+Adjust P by motor size
+Small:  P = 0.145
+Med:  P = 0.110
+Large:  P = 0.090</DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>P</NAME>
+        <PARAMNAME>RATE_RLL_P</PARAMNAME>
+        <PARAMNAME>RATE_PIT_P</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>I</NAME>
+        <PARAMNAME>RATE_RLL_I</PARAMNAME>
+        <PARAMNAME>RATE_PIT_I</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>D</NAME>
+        <PARAMNAME>RATE_RLL_D</PARAMNAME>
+        <PARAMNAME>RATE_PIT_D</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>IMAX</NAME>
+        <PARAMNAME>RATE_RLL_IMAX</PARAMNAME>
+        <PARAMNAME>RATE_PIT_IMAX</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>40</RANGEMAX>
+        <STEP>0.1</STEP>
+      </FIELD>
+    </FIELDS>
+    <SUBHEAD>Dampening:</SUBHEAD>
+    <DESC>Resistance to angular acceleration
+    
+A dynamic gain is applied so that the dampening only occurs at 100% when the control sticks are centered.
+
+When the sticks are fully deflected:
+1.0 = 0%
+0.5 = 50%
+0.0 = 100%</DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>Dampen</NAME>
+        <PARAMNAME>STAB_D</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>Dynamic</NAME>
+        <PARAMNAME>STAB_D_S</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>1</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+    </FIELDS>
+
+    <SUBHEAD>Stabilize Control:</SUBHEAD>
+    <DESC>
+How fast the copter reacts to user or autopilot input.
+Higher = more aggressive control.
+Too high = slow wobbles
+    </DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>P</NAME>
+        <PARAMNAME>STB_RLL_P</PARAMNAME>
+        <PARAMNAME>STB_PIT_P</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>I</NAME>
+        <PARAMNAME>STB_RLL_I</PARAMNAME>
+        <PARAMNAME>STB_PIT_I</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>IMAX</NAME>
+        <PARAMNAME>STB_RLL_IMAX</PARAMNAME>
+        <PARAMNAME>STB_PIT_IMAX</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>50</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+    </FIELDS>
+  </Item>
+  <!-- Loiter -->
+  <Item>
+    <HEAD>Loiter:</HEAD>
+    <SUBHEAD>Angular Rate Control:</SUBHEAD>
+    <DESC>
+How much angle is applied to make the copter accelerate to the desired speed.
+    </DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>P</NAME>
+        <PARAMNAME>LOITER_LAT_P</PARAMNAME>
+        <PARAMNAME>LOITER_LON_P</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>I</NAME>
+        <PARAMNAME>LOITER_LAT_I</PARAMNAME>
+        <PARAMNAME>LOITER_LON_I</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>D</NAME>
+        <PARAMNAME>LOITER_LAT_D</PARAMNAME>
+        <PARAMNAME>LOITER_LON_D</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>IMAX</NAME>
+        <PARAMNAME>LOITER_LAT_IMAX</PARAMNAME>
+        <PARAMNAME>LOITER_LON_IMAX</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>50</RANGEMAX>
+        <STEP>0.1</STEP>
+      </FIELD>
+    </FIELDS>
+    <SUBHEAD>Loiter Speed:</SUBHEAD>
+    <DESC>
+How fast the copter should move towards the target. A larger value means a faster return to center, but can cause the copter to oscillate around the target.
+      
+A distance error of 100cm * P of .25 = 25 cm/s
+    </DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>P</NAME>
+        <PARAMNAME>HLD_LAT_P</PARAMNAME>
+        <PARAMNAME>HLD_LON_P</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+    </FIELDS>
+  </Item>
+  <!-- WP Nav -->
+  <Item>
+    <HEAD>WP Navigation:</HEAD>
+    <SUBHEAD>Nav Rate Control:</SUBHEAD>
+    <DESC>
+      How much angle is applied to make the copter accelerate to the desired speed.
+    </DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>P</NAME>
+        <PARAMNAME>NAV_LAT_P</PARAMNAME>
+        <PARAMNAME>NAV_LON_P</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>I</NAME>
+        <PARAMNAME>NAV_LAT_I</PARAMNAME>
+        <PARAMNAME>NAV_LON_I</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>D</NAME>
+        <PARAMNAME>NAV_LAT_D</PARAMNAME>
+        <PARAMNAME>NAV_LON_D</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>IMAX</NAME>
+        <PARAMNAME>NAV_LAT_IMAX</PARAMNAME>
+        <PARAMNAME>NAV_LON_IMAX</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>50</RANGEMAX>
+        <STEP>0.1</STEP>
+      </FIELD>
+    </FIELDS>
+  </Item>
+</AC>
diff --git a/Tools/ArdupilotMegaPlanner/ArdupilotMega.csproj b/Tools/ArdupilotMegaPlanner/ArdupilotMega.csproj
index a465ce36630a92cc1264db25aa277ea2b26e94af..2be3e91e80d7eb96fc0390046ff551e284238162 100644
--- a/Tools/ArdupilotMegaPlanner/ArdupilotMega.csproj
+++ b/Tools/ArdupilotMegaPlanner/ArdupilotMega.csproj
@@ -238,7 +238,16 @@
     <Compile Include="Controls\BackstageView\BackStageViewMenuPanel.cs">
       <SubType>Component</SubType>
     </Compile>
+    <Compile Include="Controls\ConfigPanel.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="Controls\ConfigPanel.Designer.cs">
+      <DependentUpon>ConfigPanel.cs</DependentUpon>
+    </Compile>
     <Compile Include="Controls\CustomMessageBox.cs" />
+    <Compile Include="Controls\LineSeparator.cs">
+      <SubType>UserControl</SubType>
+    </Compile>
     <Compile Include="Controls\ProgressReporterDialogue.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -537,6 +546,9 @@
     <EmbeddedResource Include="Controls\BackstageView\BackstageView.resx">
       <DependentUpon>BackstageView.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="Controls\ConfigPanel.resx">
+      <DependentUpon>ConfigPanel.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Controls\ProgressReporterDialogue.resx">
       <DependentUpon>ProgressReporterDialogue.cs</DependentUpon>
     </EmbeddedResource>
@@ -1047,6 +1059,9 @@
   </ItemGroup>
   <ItemGroup>
     <Content Include="apm2.ico" />
+    <Content Include="ArduCopterConfig.xml">
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </Content>
     <Content Include="Driver\Arduino MEGA 2560.inf">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </Content>
diff --git a/Tools/ArdupilotMegaPlanner/Controls/ConfigPanel.Designer.cs b/Tools/ArdupilotMegaPlanner/Controls/ConfigPanel.Designer.cs
new file mode 100644
index 0000000000000000000000000000000000000000..201222a2c957ff9b275f433a8653e03025700c86
--- /dev/null
+++ b/Tools/ArdupilotMegaPlanner/Controls/ConfigPanel.Designer.cs
@@ -0,0 +1,47 @@
+namespace ArdupilotMega.Controls
+{
+    partial class ConfigPanel
+    {
+        /// <summary> 
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary> 
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Component Designer generated code
+
+        /// <summary> 
+        /// Required method for Designer support - do not modify 
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.SuspendLayout();
+            // 
+            // ConfigPanel
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.AutoScroll = true;
+            this.ClientSize = new System.Drawing.Size(642, 454);
+            this.Name = "ConfigPanel";
+            this.Load += new System.EventHandler(this.ConfigPanel_Load);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+    }
+}
diff --git a/Tools/ArdupilotMegaPlanner/Controls/ConfigPanel.cs b/Tools/ArdupilotMegaPlanner/Controls/ConfigPanel.cs
new file mode 100644
index 0000000000000000000000000000000000000000..6e33d77c35c8ab15b3660b3c57785808e82f40ab
--- /dev/null
+++ b/Tools/ArdupilotMegaPlanner/Controls/ConfigPanel.cs
@@ -0,0 +1,319 @@
+using System;
+using System.Collections.Generic;
+using System.Collections;
+using System.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using System.Xml;
+
+namespace ArdupilotMega.Controls
+{
+    public partial class ConfigPanel : Form
+    {
+        /// <summary>
+        /// store tempory pending changes
+        /// </summary>
+        Hashtable _changed = new Hashtable();
+        // store linked param options
+        Hashtable _linkedParams = new Hashtable();
+
+        public ConfigPanel()
+        {
+            InitializeComponent();
+        }
+
+        /// <summary>
+        /// fill numeric up down boxs with there value
+        /// </summary>
+        public void PopulateData()
+        {
+            // process hashdefines and update display
+            foreach (string value in MainV2.comPort.param.Keys)
+            {
+                Control[] text = this.Controls.Find(value, true);
+                foreach (Control ctl in text)
+                {
+                    try
+                    {
+                        NumericUpDown thisctl = ((NumericUpDown)ctl);
+                        thisctl.Value = (decimal)(float)MainV2.comPort.param[value];
+                        thisctl.Enabled = true;
+                        thisctl.Validated += new EventHandler(thisctl_Validated);
+                    }
+                    catch (Exception ex) { Console.WriteLine(ex.ToString()); }
+                }
+            }
+        }
+
+        void thisctl_Validated(object sender, EventArgs e)
+        {
+            string param = ((NumericUpDown)sender).Name;
+
+            ((Control)sender).BackColor = Color.Green;
+
+            foreach (string item in (List<string>)_linkedParams[param])
+            {
+                _changed[item] = (float)((NumericUpDown)sender).Value;
+            }
+        }
+
+        /// <summary>
+        /// disables all NumericUpDown box's
+        /// </summary>
+        /// <param name="inctl"></param>
+        void disableNumericUpDownControls(Control inctl)
+        {
+            foreach (Control ctl in inctl.Controls)
+            {
+                if (ctl.Controls.Count > 0)
+                {
+                    disableNumericUpDownControls(ctl);
+                }
+                if (ctl.GetType() == typeof(NumericUpDown))
+                {
+                    ctl.Enabled = false;
+                }
+            }
+        }
+
+        /// <summary>
+        /// The template xml for the screen
+        /// </summary>
+        /// <param name="FileName"></param>
+        public void LoadXML(string FileName)
+        {
+            int x = 20;
+            int y = 0;
+
+            int optionx = 300;
+            int optiony = 0;
+
+            string name = "";
+            List<string> paramname = new List<string>();
+            double rangemin = 0;
+            double rangemax = 10;
+            double step = 0.001;
+
+            using (XmlReader reader = XmlReader.Create(FileName))
+            {
+                while (reader.Read())
+                {
+                    switch (reader.Name.ToUpper())
+                    {
+                        case "ITEM":
+
+                            break;
+                        case "HEAD":
+                            y += 30;
+                            string heading = reader.ReadString();
+
+                            Label lbl = new Label();
+                            lbl.AutoSize = true;
+                            lbl.Text = heading;
+                            lbl.Location = new Point(x,y);
+                            lbl.Font = new Font(FontFamily.GenericSansSerif, 15,FontStyle.Bold);
+
+                            this.Controls.Add(lbl);
+
+                            MyButton but = new MyButton();
+
+                            but.Text = "Save";
+                            but.Location = new Point(optionx + 100, y);
+                            but.Click += new EventHandler(but_Click);
+                            this.Controls.Add(but);
+
+                            y = lbl.Location.Y + lbl.Height + 10;
+
+                            LineSeparator ls = new LineSeparator();
+
+                            ls.Width = this.Width - 40;
+                            ls.Location = new Point(x,y);
+
+                            ls.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right;
+
+                            this.Controls.Add(ls);
+
+                            y = ls.Location.Y + ls.Height;
+
+                            break;
+                        case "SUBHEAD":
+                            y += 15;
+
+                            optiony = y;
+                            optionx = 300;
+                            string subhead = reader.ReadString();
+
+                            Label lbl2 = new Label();
+                            lbl2.AutoSize = true;
+                            lbl2.Text = subhead;
+                            lbl2.Location = new Point(x,y);
+                            lbl2.Font = new Font(FontFamily.GenericSansSerif, 10, FontStyle.Bold);
+
+                            this.Controls.Add(lbl2);
+
+                            y = lbl2.Location.Y + lbl2.Height;
+
+                            break;
+                        case "DESC":
+                            y += 2;
+                            string desc = reader.ReadString();
+
+                            Label lbl3 = new Label();
+                            lbl3.AutoSize = true;
+                            lbl3.Text = AddNewLinesToText(desc);
+                            lbl3.Location = new Point(x,y);
+                            lbl3.Font = new Font(FontFamily.GenericSansSerif, 8, FontStyle.Bold);
+
+                            this.Controls.Add(lbl3);
+
+                            y = lbl3.Location.Y + lbl3.Height;
+
+                            break;
+                        case "FIELDS":
+                            if (reader.NodeType == XmlNodeType.EndElement)
+                            {
+                                if (optiony > y)
+                                    y = optiony;
+                            }
+                            break;
+                        case "FIELD":
+                            if (reader.NodeType == XmlNodeType.EndElement)
+                            {
+                                if (name == "" || paramname.Count == 0)
+                                    break;
+
+                                Label lbl5 = new Label();
+                                //lbl5.AutoSize = true;
+                                lbl5.Text = name;
+                                lbl5.Location = new Point(optionx, optiony);
+                                lbl5.Size = new System.Drawing.Size(90,20);
+                                lbl5.Font = new Font(FontFamily.GenericSansSerif, 8, FontStyle.Bold);
+                                lbl5.TextAlign = ContentAlignment.MiddleRight;
+
+                                this.Controls.Add(lbl5);
+
+                                NumericUpDown nud = new NumericUpDown();
+                                nud.Location = new Point(optionx + 100, optiony);
+                                nud.Size = new System.Drawing.Size(78,20);
+                                nud.Maximum = (decimal)rangemax;
+                                nud.Minimum = (decimal)rangemin;
+                                nud.Increment = (decimal)step;
+                                nud.DecimalPlaces = (int)(step.ToString().Length - step.ToString(new System.Globalization.CultureInfo("en-US")).IndexOf('.') - 1);
+                                nud.Name = paramname[0];
+
+                                this.Controls.Add(nud);
+
+                                optiony += nud.Height;
+
+                                _linkedParams[paramname[0]] = paramname;
+
+                            }
+                            else
+                            {
+                                name = "";
+                                paramname = new List<string>();
+                                rangemax = 10;
+                                rangemin = 0;
+                                step = 0.001;
+                            }
+                            break;
+                        case "NAME":
+                            name = reader.ReadString();
+                            break;
+                        case "PARAMNAME":
+                            paramname.Add(reader.ReadString());
+                            break;
+                        case "RANGEMIN":
+                            rangemin = double.Parse(reader.ReadString(), new System.Globalization.CultureInfo("en-US"));
+                            break;
+                        case "RANGEMAX":
+                            rangemax = double.Parse(reader.ReadString(), new System.Globalization.CultureInfo("en-US"));
+                            break;
+                        case "STEP":
+                            step = double.Parse(reader.ReadString(), new System.Globalization.CultureInfo("en-US"));
+                            break;
+
+                    }
+                }
+            }
+
+            ThemeManager.ApplyThemeTo(this);
+
+            disableNumericUpDownControls(this);
+        }
+
+        void but_Click(object sender, EventArgs e)
+        {
+
+            Hashtable temp = (Hashtable)_changed.Clone();
+
+            foreach (string value in temp.Keys)
+            {
+                try
+                {
+                    MainV2.comPort.setParam(value, (float)_changed[value]);
+                    _changed.Remove(value);
+
+                    try
+                    {
+                        // un green control as well
+                        Control[] text = this.Controls.Find(value, true);
+                        if (text.Length > 0)
+                        {
+                            ((Control)text[0]).BackColor = Color.FromArgb(0x43, 0x44, 0x45);
+                        }
+                    }
+                    catch { }
+                }
+                catch { CustomMessageBox.Show("Set " + value + " Failed"); }
+            }
+        }
+
+        // from http://stackoverflow.com/questions/2512781/winforms-big-paragraph-tooltip/2512895#2512895
+        private static int maximumSingleLineTooltipLength = 40;
+
+        private static string AddNewLinesToText(string text)
+        {
+            if (text.Length < maximumSingleLineTooltipLength)
+                return text;
+            int lineLength = maximumSingleLineTooltipLength;
+            StringBuilder sb = new StringBuilder();
+            int currentLinePosition = 0;
+            for (int textIndex = 0; textIndex < text.Length; textIndex++)
+            {
+                // If we have reached the target line length and the next      
+                // character is whitespace then begin a new line.   
+                if (currentLinePosition >= lineLength &&
+                    char.IsWhiteSpace(text[textIndex]))
+                {
+                    sb.Append(Environment.NewLine);
+                    currentLinePosition = 0;
+                }
+                // reset line lnegth counter on existing new line
+                if (text[textIndex] == Environment.NewLine[Environment.NewLine.Length - 1])
+                {
+                    currentLinePosition = 1;
+                    // skip space at line start
+                    if (textIndex == 0)
+                        currentLinePosition = 0;
+                }
+                // If we have just started a new line, skip all the whitespace.    
+                if (currentLinePosition == 0)
+                    while (textIndex < text.Length && char.IsWhiteSpace(text[textIndex]))
+                        textIndex++;
+                // Append the next character.     
+                if (textIndex < text.Length) sb.Append(text[textIndex]);
+                currentLinePosition++;
+            }
+            return sb.ToString();
+        }
+
+        private void ConfigPanel_Load(object sender, EventArgs e)
+        {
+            PopulateData();
+        }
+    }
+}
\ No newline at end of file
diff --git a/Tools/ArdupilotMegaPlanner/Controls/ConfigPanel.resx b/Tools/ArdupilotMegaPlanner/Controls/ConfigPanel.resx
new file mode 100644
index 0000000000000000000000000000000000000000..7080a7d118e8cd7ec668e9bb0d8e90767e0c7a3c
--- /dev/null
+++ b/Tools/ArdupilotMegaPlanner/Controls/ConfigPanel.resx
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>
\ No newline at end of file
diff --git a/Tools/ArdupilotMegaPlanner/Controls/CustomMessageBox.cs b/Tools/ArdupilotMegaPlanner/Controls/CustomMessageBox.cs
index 4a8b4c0f1bb25eb5e3a10194e8339216ebd8b4bd..47efdabef849db598793c19d59a7b8c0ac0746d9 100644
--- a/Tools/ArdupilotMegaPlanner/Controls/CustomMessageBox.cs
+++ b/Tools/ArdupilotMegaPlanner/Controls/CustomMessageBox.cs
@@ -144,7 +144,7 @@ namespace System.Windows.Forms
                 // reset line lnegth counter on existing new line
                 if (text[textIndex] == Environment.NewLine[Environment.NewLine.Length -1])
                 {
-                    currentLinePosition = 0;
+                    currentLinePosition = 1;
                 }
                 // If we have just started a new line, skip all the whitespace.    
                 if (currentLinePosition == 0)
diff --git a/Tools/ArdupilotMegaPlanner/Controls/LineSeparator.cs b/Tools/ArdupilotMegaPlanner/Controls/LineSeparator.cs
new file mode 100644
index 0000000000000000000000000000000000000000..9e9002a87557157c36075af36c3707c7924b9ca4
--- /dev/null
+++ b/Tools/ArdupilotMegaPlanner/Controls/LineSeparator.cs
@@ -0,0 +1,52 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Drawing;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+
+public partial class LineSeparator : UserControl
+{
+
+
+
+
+    public LineSeparator()
+    {
+        this.Height = 2;
+
+        this.Paint += new PaintEventHandler(LineSeparator_Paint);
+
+
+        this.MaximumSize = new Size(2000, 2);
+
+
+        this.MinimumSize = new Size(0, 2);
+
+        //this.Width = 350;
+
+    }
+
+
+    private void LineSeparator_Paint(object sender, PaintEventArgs e)
+    {
+
+
+
+
+        Graphics g = e.Graphics;
+
+        g.DrawLine(
+
+        Pens.DarkGray, new Point(0, 0), new Point(this.Width, 0));
+
+        g.DrawLine(
+
+        Pens.White, new Point(0, 1), new Point(this.Width, 1));
+
+    }
+
+}
diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArducopter.Designer.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArducopter.Designer.cs
index 767aeb4a6f5906d525366944ad75cfe73e9cb280..f34863ea5491cb090b249f1597d9d80b9f2abe51 100644
--- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArducopter.Designer.cs
+++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArducopter.Designer.cs
@@ -1071,6 +1071,7 @@
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.AutoScroll = true;
             this.Controls.Add(this.myLabel3);
             this.Controls.Add(this.TUNE_LOW);
             this.Controls.Add(this.TUNE_HIGH);
@@ -1091,7 +1092,7 @@
             this.Controls.Add(this.groupBox24);
             this.Controls.Add(this.groupBox25);
             this.Name = "ConfigArducopter";
-            this.Size = new System.Drawing.Size(728, 393);
+            this.Size = new System.Drawing.Size(728, 529);
             this.Load += new System.EventHandler(this.ConfigArducopter_Load);
             ((System.ComponentModel.ISupportInitialize)(this.TUNE_LOW)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.TUNE_HIGH)).EndInit();
diff --git a/Tools/ArdupilotMegaPlanner/MainV2.cs b/Tools/ArdupilotMegaPlanner/MainV2.cs
index 5ec4ebab68e9c0e9558198bc34af2f251a24ab24..4a68586990c2a13182207e5f2d4fa415c6103492 100644
--- a/Tools/ArdupilotMegaPlanner/MainV2.cs
+++ b/Tools/ArdupilotMegaPlanner/MainV2.cs
@@ -1912,9 +1912,13 @@ namespace ArdupilotMega
             }
             if (keyData == (Keys.Control | Keys.W)) // test
             {
-                Form frm = new GCSViews.ConfigurationView.Configuration();
-                ThemeManager.ApplyThemeTo(frm);
-                frm.Show();
+
+                Controls.ConfigPanel cfg = new Controls.ConfigPanel();
+
+                cfg.LoadXML("ArduCopterConfig.xml");
+
+                cfg.ShowDialog();
+
                 return true;
             }
             if (keyData == (Keys.Control | Keys.T)) // for override connect
diff --git a/Tools/ArdupilotMegaPlanner/Msi/installer.wxs b/Tools/ArdupilotMegaPlanner/Msi/installer.wxs
index 57a77bc3413053ecd81ab3052b966ccec8c7dac7..a03d29139f4d7ada6972ba7c308aa05333127fbb 100644
--- a/Tools/ArdupilotMegaPlanner/Msi/installer.wxs
+++ b/Tools/ArdupilotMegaPlanner/Msi/installer.wxs
@@ -2,14 +2,14 @@
 <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension" xmlns:difx="http://schemas.microsoft.com/wix/DifxAppExtension">
 
 
-    <Product Id="*" Name="APM Planner" Language="1033" Version="1.1.63" Manufacturer="Michael Oborne" UpgradeCode="{625389D7-EB3C-4d77-A5F6-A285CF99437D}">
+    <Product Id="*" Name="APM Planner" Language="1033" Version="1.1.64" Manufacturer="Michael Oborne" UpgradeCode="{625389D7-EB3C-4d77-A5F6-A285CF99437D}">
 
         <Package Description="APM Planner Installer" Comments="Apm Planner Installer" Manufacturer="Michael Oborne" InstallerVersion="200" Compressed="yes" />
 
 
 <Upgrade Id="{625389D7-EB3C-4d77-A5F6-A285CF99437D}">
-    <UpgradeVersion OnlyDetect="yes" Minimum="1.1.63" Property="NEWERVERSIONDETECTED" IncludeMinimum="no" />
-    <UpgradeVersion OnlyDetect="no" Maximum="1.1.63" Property="OLDERVERSIONBEINGUPGRADED" IncludeMaximum="no" />
+    <UpgradeVersion OnlyDetect="yes" Minimum="1.1.64" Property="NEWERVERSIONDETECTED" IncludeMinimum="no" />
+    <UpgradeVersion OnlyDetect="no" Maximum="1.1.64" Property="OLDERVERSIONBEINGUPGRADED" IncludeMaximum="no" />
 </Upgrade>
 
 <InstallExecuteSequence>
@@ -31,221 +31,224 @@
                             <Permission User="Everyone" GenericAll="yes" /> 
                         </CreateFolder>
                     </Component>
-<Component Id="_comp1" Guid="a070a228-42fe-4bbc-a8f4-ca37bedc8aff">
+<Component Id="_comp1" Guid="dba8d621-643a-42b5-a947-bf317799d98f">
 <File Id="_2" Source="..\bin\release\AeroSimRCAPMHil.zip" />
 <File Id="_3" Source="..\bin\release\alglibnet2.dll" />
 <File Id="_4" Source="..\bin\release\ArduCopter-sitl.exe" />
 <File Id="_5" Source="..\bin\release\arducopter-xplane.zip" />
 <File Id="_6" Source="..\bin\release\ArduCopter.exe" />
-<File Id="_7" Source="..\bin\release\ArdupilotMegaPlanner.exe" />
-<File Id="_8" Source="..\bin\release\ArdupilotMegaPlanner.exe.config" />
-<File Id="_9" Source="..\bin\release\ArdupilotMegaPlanner.pdb" />
-<File Id="_10" Source="..\bin\release\ArduPlane-sitl.exe" />
-<File Id="_11" Source="..\bin\release\ArduPlane.exe" />
-<File Id="_12" Source="..\bin\release\block_plane_0.dae" />
-<File Id="_13" Source="..\bin\release\BSE.Windows.Forms.dll" />
-<File Id="_14" Source="..\bin\release\Core.dll" />
-<File Id="_15" Source="..\bin\release\cygwin1.dll" />
-<File Id="_16" Source="..\bin\release\dataflashlog.xml" />
-<File Id="_17" Source="..\bin\release\DirectShowLib-2005.dll" />
-<File Id="_18" Source="..\bin\release\eeprom.bin" />
-<File Id="_19" Source="..\bin\release\GMap.NET.Core.dll" />
-<File Id="_20" Source="..\bin\release\GMap.NET.WindowsForms.dll" />
-<File Id="_21" Source="..\bin\release\hud.html" />
-<File Id="_22" Source="..\bin\release\ICSharpCode.SharpZipLib.dll" />
-<File Id="_23" Source="..\bin\release\Ionic.Zip.Reduced.dll" />
-<File Id="_24" Source="..\bin\release\IronPython.dll" />
-<File Id="_25" Source="..\bin\release\IronPython.Modules.dll" />
-<File Id="_26" Source="..\bin\release\JSBSim.exe" />
-<File Id="_27" Source="..\bin\release\KMLib.dll" />
-<File Id="_28" Source="..\bin\release\log4net.dll" />
-<File Id="_29" Source="..\bin\release\mavcmd.xml" />
-<File Id="_30" Source="..\bin\release\MAVLink.xml" />
-<File Id="_31" Source="..\bin\release\MetaDataExtractor.dll" />
-<File Id="_32" Source="..\bin\release\Microsoft.DirectX.DirectInput.dll" />
-<File Id="_33" Source="..\bin\release\Microsoft.DirectX.dll" />
-<File Id="_34" Source="..\bin\release\Microsoft.Dynamic.dll" />
-<File Id="_35" Source="..\bin\release\Microsoft.Scripting.Core.dll" />
-<File Id="_36" Source="..\bin\release\Microsoft.Scripting.Debugging.dll" />
-<File Id="_37" Source="..\bin\release\Microsoft.Scripting.dll" />
-<File Id="_38" Source="..\bin\release\Microsoft.Scripting.ExtensionAttribute.dll" />
-<File Id="_39" Source="..\bin\release\netDxf.dll" />
-<File Id="_40" Source="..\bin\release\OpenTK.dll" />
-<File Id="_41" Source="..\bin\release\OpenTK.GLControl.dll" />
-<File Id="_42" Source="..\bin\release\quadhil.xml" />
-<File Id="_43" Source="..\bin\release\serialsent.raw" />
-<File Id="_44" Source="..\bin\release\SharpKml.dll" />
-<File Id="_45" Source="..\bin\release\System.Data.SQLite.dll" />
-<File Id="_46" Source="..\bin\release\System.Speech.dll" />
-<File Id="_47" Source="..\bin\release\Updater.exe" />
-<File Id="_48" Source="..\bin\release\Updater.exe.config" />
-<File Id="_49" Source="..\bin\release\Updater.pdb" />
-<File Id="_50" Source="..\bin\release\version.exe" />
-<File Id="_51" Source="..\bin\release\version.txt" />
-<File Id="_52" Source="..\bin\release\ZedGraph.dll" />
+<File Id="_7" Source="..\bin\release\ArduinoCPP.exe" />
+<File Id="_8" Source="..\bin\release\ArduinoCPP.exe.config" />
+<File Id="_9" Source="..\bin\release\ArduinoCPP.pdb" />
+<File Id="_10" Source="..\bin\release\ArdupilotMegaPlanner.exe" />
+<File Id="_11" Source="..\bin\release\ArdupilotMegaPlanner.exe.config" />
+<File Id="_12" Source="..\bin\release\ArdupilotMegaPlanner.pdb" />
+<File Id="_13" Source="..\bin\release\ArduPlane-sitl.exe" />
+<File Id="_14" Source="..\bin\release\ArduPlane.exe" />
+<File Id="_15" Source="..\bin\release\block_plane_0.dae" />
+<File Id="_16" Source="..\bin\release\BSE.Windows.Forms.dll" />
+<File Id="_17" Source="..\bin\release\Core.dll" />
+<File Id="_18" Source="..\bin\release\cygwin1.dll" />
+<File Id="_19" Source="..\bin\release\dataflashlog.xml" />
+<File Id="_20" Source="..\bin\release\DirectShowLib-2005.dll" />
+<File Id="_21" Source="..\bin\release\eeprom.bin" />
+<File Id="_22" Source="..\bin\release\GMap.NET.Core.dll" />
+<File Id="_23" Source="..\bin\release\GMap.NET.WindowsForms.dll" />
+<File Id="_24" Source="..\bin\release\hud.html" />
+<File Id="_25" Source="..\bin\release\ICSharpCode.SharpZipLib.dll" />
+<File Id="_26" Source="..\bin\release\Ionic.Zip.Reduced.dll" />
+<File Id="_27" Source="..\bin\release\IronPython.dll" />
+<File Id="_28" Source="..\bin\release\IronPython.Modules.dll" />
+<File Id="_29" Source="..\bin\release\JSBSim.exe" />
+<File Id="_30" Source="..\bin\release\KMLib.dll" />
+<File Id="_31" Source="..\bin\release\log4net.dll" />
+<File Id="_32" Source="..\bin\release\mavcmd.xml" />
+<File Id="_33" Source="..\bin\release\MAVLink.xml" />
+<File Id="_34" Source="..\bin\release\MetaDataExtractor.dll" />
+<File Id="_35" Source="..\bin\release\Microsoft.DirectX.DirectInput.dll" />
+<File Id="_36" Source="..\bin\release\Microsoft.DirectX.dll" />
+<File Id="_37" Source="..\bin\release\Microsoft.Dynamic.dll" />
+<File Id="_38" Source="..\bin\release\Microsoft.Scripting.Core.dll" />
+<File Id="_39" Source="..\bin\release\Microsoft.Scripting.Debugging.dll" />
+<File Id="_40" Source="..\bin\release\Microsoft.Scripting.dll" />
+<File Id="_41" Source="..\bin\release\Microsoft.Scripting.ExtensionAttribute.dll" />
+<File Id="_42" Source="..\bin\release\netDxf.dll" />
+<File Id="_43" Source="..\bin\release\OpenTK.dll" />
+<File Id="_44" Source="..\bin\release\OpenTK.GLControl.dll" />
+<File Id="_45" Source="..\bin\release\quadhil.xml" />
+<File Id="_46" Source="..\bin\release\serialsent.raw" />
+<File Id="_47" Source="..\bin\release\SharpKml.dll" />
+<File Id="_48" Source="..\bin\release\System.Data.SQLite.dll" />
+<File Id="_49" Source="..\bin\release\System.Speech.dll" />
+<File Id="_50" Source="..\bin\release\Updater.exe" />
+<File Id="_51" Source="..\bin\release\Updater.exe.config" />
+<File Id="_52" Source="..\bin\release\Updater.pdb" />
+<File Id="_53" Source="..\bin\release\version.exe" />
+<File Id="_54" Source="..\bin\release\version.txt" />
+<File Id="_55" Source="..\bin\release\ZedGraph.dll" />
 </Component>
-<Directory Id="aircraft52" Name="aircraft">
-<Component Id="_comp53" Guid="31143d1e-1968-4907-9471-4e01422f9e78">
-<File Id="_54" Source="..\bin\release\aircraft\placeholder.txt" />
+<Directory Id="aircraft55" Name="aircraft">
+<Component Id="_comp56" Guid="45b138a8-2f48-4508-9edc-e6688532247a">
+<File Id="_57" Source="..\bin\release\aircraft\placeholder.txt" />
 </Component>
-<Directory Id="arducopter54" Name="arducopter">
-<Component Id="_comp55" Guid="fbb61931-3ae2-4df5-86ef-3468717fccbc">
-<File Id="_56" Source="..\bin\release\aircraft\arducopter\arducopter-set.xml" />
-<File Id="_57" Source="..\bin\release\aircraft\arducopter\arducopter.jpg" />
-<File Id="_58" Source="..\bin\release\aircraft\arducopter\arducopter.xml" />
-<File Id="_59" Source="..\bin\release\aircraft\arducopter\initfile.xml" />
-<File Id="_60" Source="..\bin\release\aircraft\arducopter\plus_quad2-set.xml" />
-<File Id="_61" Source="..\bin\release\aircraft\arducopter\plus_quad2.xml" />
-<File Id="_62" Source="..\bin\release\aircraft\arducopter\quad.nas" />
-<File Id="_63" Source="..\bin\release\aircraft\arducopter\README" />
+<Directory Id="arducopter57" Name="arducopter">
+<Component Id="_comp58" Guid="f084a180-18c9-41f6-8070-ae26bf831d1e">
+<File Id="_59" Source="..\bin\release\aircraft\arducopter\arducopter-set.xml" />
+<File Id="_60" Source="..\bin\release\aircraft\arducopter\arducopter.jpg" />
+<File Id="_61" Source="..\bin\release\aircraft\arducopter\arducopter.xml" />
+<File Id="_62" Source="..\bin\release\aircraft\arducopter\initfile.xml" />
+<File Id="_63" Source="..\bin\release\aircraft\arducopter\plus_quad2-set.xml" />
+<File Id="_64" Source="..\bin\release\aircraft\arducopter\plus_quad2.xml" />
+<File Id="_65" Source="..\bin\release\aircraft\arducopter\quad.nas" />
+<File Id="_66" Source="..\bin\release\aircraft\arducopter\README" />
 </Component>
-<Directory Id="data63" Name="data">
-<Component Id="_comp64" Guid="183432fe-1b80-4bdc-bdba-e938d240dc25">
-<File Id="_65" Source="..\bin\release\aircraft\arducopter\data\arducopter_half_step.txt" />
-<File Id="_66" Source="..\bin\release\aircraft\arducopter\data\arducopter_step.txt" />
-<File Id="_67" Source="..\bin\release\aircraft\arducopter\data\rw_generic_pylon.ac" />
+<Directory Id="data66" Name="data">
+<Component Id="_comp67" Guid="5dee70d9-d900-4409-bf27-2430cc6220d4">
+<File Id="_68" Source="..\bin\release\aircraft\arducopter\data\arducopter_half_step.txt" />
+<File Id="_69" Source="..\bin\release\aircraft\arducopter\data\arducopter_step.txt" />
+<File Id="_70" Source="..\bin\release\aircraft\arducopter\data\rw_generic_pylon.ac" />
 </Component>
 </Directory>
-<Directory Id="Engines67" Name="Engines">
-<Component Id="_comp68" Guid="792df9a4-582f-47d9-b2b6-4115108c7a30">
-<File Id="_69" Source="..\bin\release\aircraft\arducopter\Engines\a2830-12.xml" />
-<File Id="_70" Source="..\bin\release\aircraft\arducopter\Engines\prop10x4.5.xml" />
+<Directory Id="Engines70" Name="Engines">
+<Component Id="_comp71" Guid="bac95eb2-9cf0-452b-8c29-a4ab162de973">
+<File Id="_72" Source="..\bin\release\aircraft\arducopter\Engines\a2830-12.xml" />
+<File Id="_73" Source="..\bin\release\aircraft\arducopter\Engines\prop10x4.5.xml" />
 </Component>
 </Directory>
-<Directory Id="Models70" Name="Models">
-<Component Id="_comp71" Guid="dc93e1a8-4de1-42c4-b1fd-0a672efa9915">
-<File Id="_72" Source="..\bin\release\aircraft\arducopter\Models\arducopter.ac" />
-<File Id="_73" Source="..\bin\release\aircraft\arducopter\Models\arducopter.xml" />
-<File Id="_74" Source="..\bin\release\aircraft\arducopter\Models\plus_quad.ac" />
-<File Id="_75" Source="..\bin\release\aircraft\arducopter\Models\plus_quad2.ac" />
-<File Id="_76" Source="..\bin\release\aircraft\arducopter\Models\plus_quad2.xml" />
-<File Id="_77" Source="..\bin\release\aircraft\arducopter\Models\quad.3ds" />
-<File Id="_78" Source="..\bin\release\aircraft\arducopter\Models\shareware_output.3ds" />
-<File Id="_79" Source="..\bin\release\aircraft\arducopter\Models\Untitled.ac" />
-<File Id="_80" Source="..\bin\release\aircraft\arducopter\Models\Y6_test.ac" />
+<Directory Id="Models73" Name="Models">
+<Component Id="_comp74" Guid="14cf59a2-751c-4329-83f2-094a85d80f21">
+<File Id="_75" Source="..\bin\release\aircraft\arducopter\Models\arducopter.ac" />
+<File Id="_76" Source="..\bin\release\aircraft\arducopter\Models\arducopter.xml" />
+<File Id="_77" Source="..\bin\release\aircraft\arducopter\Models\plus_quad.ac" />
+<File Id="_78" Source="..\bin\release\aircraft\arducopter\Models\plus_quad2.ac" />
+<File Id="_79" Source="..\bin\release\aircraft\arducopter\Models\plus_quad2.xml" />
+<File Id="_80" Source="..\bin\release\aircraft\arducopter\Models\quad.3ds" />
+<File Id="_81" Source="..\bin\release\aircraft\arducopter\Models\shareware_output.3ds" />
+<File Id="_82" Source="..\bin\release\aircraft\arducopter\Models\Untitled.ac" />
+<File Id="_83" Source="..\bin\release\aircraft\arducopter\Models\Y6_test.ac" />
 </Component>
 </Directory>
 </Directory>
-<Directory Id="Rascal80" Name="Rascal">
-<Component Id="_comp81" Guid="0c6a286d-d878-41cd-9868-3e45a61f32d8">
-<File Id="_82" Source="..\bin\release\aircraft\Rascal\Rascal-keyboard.xml" />
-<File Id="_83" Source="..\bin\release\aircraft\Rascal\Rascal-submodels.xml" />
-<File Id="_84" Source="..\bin\release\aircraft\Rascal\Rascal.xml" />
-<File Id="_85" Source="..\bin\release\aircraft\Rascal\Rascal110-JSBSim-set.xml" />
-<File Id="_86" Source="..\bin\release\aircraft\Rascal\Rascal110-JSBSim.xml" />
-<File Id="_87" Source="..\bin\release\aircraft\Rascal\Rascal110-splash.rgb" />
-<File Id="_88" Source="..\bin\release\aircraft\Rascal\README.Rascal" />
-<File Id="_89" Source="..\bin\release\aircraft\Rascal\reset_CMAC.xml" />
-<File Id="_90" Source="..\bin\release\aircraft\Rascal\thumbnail.jpg" />
+<Directory Id="Rascal83" Name="Rascal">
+<Component Id="_comp84" Guid="957d112f-a39e-4619-a8a1-e66281fe43b9">
+<File Id="_85" Source="..\bin\release\aircraft\Rascal\Rascal-keyboard.xml" />
+<File Id="_86" Source="..\bin\release\aircraft\Rascal\Rascal-submodels.xml" />
+<File Id="_87" Source="..\bin\release\aircraft\Rascal\Rascal.xml" />
+<File Id="_88" Source="..\bin\release\aircraft\Rascal\Rascal110-JSBSim-set.xml" />
+<File Id="_89" Source="..\bin\release\aircraft\Rascal\Rascal110-JSBSim.xml" />
+<File Id="_90" Source="..\bin\release\aircraft\Rascal\Rascal110-splash.rgb" />
+<File Id="_91" Source="..\bin\release\aircraft\Rascal\README.Rascal" />
+<File Id="_92" Source="..\bin\release\aircraft\Rascal\reset_CMAC.xml" />
+<File Id="_93" Source="..\bin\release\aircraft\Rascal\thumbnail.jpg" />
 </Component>
-<Directory Id="Dialogs90" Name="Dialogs">
-<Component Id="_comp91" Guid="e89bdaf0-fd13-447f-93a4-29ccdc33bf20">
-<File Id="_92" Source="..\bin\release\aircraft\Rascal\Dialogs\config.xml" />
-<File Id="_93" Source="..\bin\release\aircraft\Rascal\Dialogs\config.xml.new" />
+<Directory Id="Dialogs93" Name="Dialogs">
+<Component Id="_comp94" Guid="96a657ee-49de-494b-85d6-277b72a81d51">
+<File Id="_95" Source="..\bin\release\aircraft\Rascal\Dialogs\config.xml" />
+<File Id="_96" Source="..\bin\release\aircraft\Rascal\Dialogs\config.xml.new" />
 </Component>
 </Directory>
-<Directory Id="Engines93" Name="Engines">
-<Component Id="_comp94" Guid="97d5a6cb-c5ce-4821-b35e-4eed7f3ae541">
-<File Id="_95" Source="..\bin\release\aircraft\Rascal\Engines\18x8.xml" />
-<File Id="_96" Source="..\bin\release\aircraft\Rascal\Engines\18x8.xml.new" />
-<File Id="_97" Source="..\bin\release\aircraft\Rascal\Engines\Zenoah_G-26A.xml" />
-<File Id="_98" Source="..\bin\release\aircraft\Rascal\Engines\Zenoah_G-26A.xml.new" />
+<Directory Id="Engines96" Name="Engines">
+<Component Id="_comp97" Guid="f1772147-fde4-4591-a0a7-bd5fa600c67e">
+<File Id="_98" Source="..\bin\release\aircraft\Rascal\Engines\18x8.xml" />
+<File Id="_99" Source="..\bin\release\aircraft\Rascal\Engines\18x8.xml.new" />
+<File Id="_100" Source="..\bin\release\aircraft\Rascal\Engines\Zenoah_G-26A.xml" />
+<File Id="_101" Source="..\bin\release\aircraft\Rascal\Engines\Zenoah_G-26A.xml.new" />
 </Component>
 </Directory>
-<Directory Id="Models98" Name="Models">
-<Component Id="_comp99" Guid="28612f51-e4ed-44df-90be-6e0ae10c432d">
-<File Id="_100" Source="..\bin\release\aircraft\Rascal\Models\Rascal.rgb" />
-<File Id="_101" Source="..\bin\release\aircraft\Rascal\Models\Rascal.rgb.new" />
-<File Id="_102" Source="..\bin\release\aircraft\Rascal\Models\Rascal110-000-013.ac" />
-<File Id="_103" Source="..\bin\release\aircraft\Rascal\Models\Rascal110-000-013.ac.new" />
-<File Id="_104" Source="..\bin\release\aircraft\Rascal\Models\Rascal110.xml" />
-<File Id="_105" Source="..\bin\release\aircraft\Rascal\Models\Rascal110.xml.new" />
-<File Id="_106" Source="..\bin\release\aircraft\Rascal\Models\smoke.png" />
-<File Id="_107" Source="..\bin\release\aircraft\Rascal\Models\smoke.png.new" />
-<File Id="_108" Source="..\bin\release\aircraft\Rascal\Models\smokeW.xml" />
-<File Id="_109" Source="..\bin\release\aircraft\Rascal\Models\smokeW.xml.new" />
-<File Id="_110" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.ac" />
-<File Id="_111" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.ac.new" />
-<File Id="_112" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.xml" />
-<File Id="_113" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.xml.new" />
+<Directory Id="Models101" Name="Models">
+<Component Id="_comp102" Guid="b4f42a2c-ef80-4505-a614-1b6a2923feac">
+<File Id="_103" Source="..\bin\release\aircraft\Rascal\Models\Rascal.rgb" />
+<File Id="_104" Source="..\bin\release\aircraft\Rascal\Models\Rascal.rgb.new" />
+<File Id="_105" Source="..\bin\release\aircraft\Rascal\Models\Rascal110-000-013.ac" />
+<File Id="_106" Source="..\bin\release\aircraft\Rascal\Models\Rascal110-000-013.ac.new" />
+<File Id="_107" Source="..\bin\release\aircraft\Rascal\Models\Rascal110.xml" />
+<File Id="_108" Source="..\bin\release\aircraft\Rascal\Models\Rascal110.xml.new" />
+<File Id="_109" Source="..\bin\release\aircraft\Rascal\Models\smoke.png" />
+<File Id="_110" Source="..\bin\release\aircraft\Rascal\Models\smoke.png.new" />
+<File Id="_111" Source="..\bin\release\aircraft\Rascal\Models\smokeW.xml" />
+<File Id="_112" Source="..\bin\release\aircraft\Rascal\Models\smokeW.xml.new" />
+<File Id="_113" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.ac" />
+<File Id="_114" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.ac.new" />
+<File Id="_115" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.xml" />
+<File Id="_116" Source="..\bin\release\aircraft\Rascal\Models\Trajectory-Marker.xml.new" />
 </Component>
 </Directory>
-<Directory Id="Systems113" Name="Systems">
-<Component Id="_comp114" Guid="492779e1-ac02-4e65-9ff4-5b70ec5f27f5">
-<File Id="_115" Source="..\bin\release\aircraft\Rascal\Systems\110-autopilot.xml" />
-<File Id="_116" Source="..\bin\release\aircraft\Rascal\Systems\110-autopilot.xml.new" />
-<File Id="_117" Source="..\bin\release\aircraft\Rascal\Systems\airdata.nas" />
-<File Id="_118" Source="..\bin\release\aircraft\Rascal\Systems\airdata.nas.new" />
-<File Id="_119" Source="..\bin\release\aircraft\Rascal\Systems\electrical.xml" />
-<File Id="_120" Source="..\bin\release\aircraft\Rascal\Systems\electrical.xml.new" />
-<File Id="_121" Source="..\bin\release\aircraft\Rascal\Systems\main.nas" />
-<File Id="_122" Source="..\bin\release\aircraft\Rascal\Systems\main.nas.new" />
-<File Id="_123" Source="..\bin\release\aircraft\Rascal\Systems\ugear.nas" />
+<Directory Id="Systems116" Name="Systems">
+<Component Id="_comp117" Guid="59ed6ff3-352f-4846-b737-f5a37ae497ed">
+<File Id="_118" Source="..\bin\release\aircraft\Rascal\Systems\110-autopilot.xml" />
+<File Id="_119" Source="..\bin\release\aircraft\Rascal\Systems\110-autopilot.xml.new" />
+<File Id="_120" Source="..\bin\release\aircraft\Rascal\Systems\airdata.nas" />
+<File Id="_121" Source="..\bin\release\aircraft\Rascal\Systems\airdata.nas.new" />
+<File Id="_122" Source="..\bin\release\aircraft\Rascal\Systems\electrical.xml" />
+<File Id="_123" Source="..\bin\release\aircraft\Rascal\Systems\electrical.xml.new" />
+<File Id="_124" Source="..\bin\release\aircraft\Rascal\Systems\main.nas" />
+<File Id="_125" Source="..\bin\release\aircraft\Rascal\Systems\main.nas.new" />
+<File Id="_126" Source="..\bin\release\aircraft\Rascal\Systems\ugear.nas" />
 </Component>
 </Directory>
 </Directory>
 </Directory>
-<Directory Id="Driver123" Name="Driver">
-<Component Id="_comp124" Guid="877cf72e-a33f-4606-a058-4d245ecb4dda">
-<File Id="_125" Source="..\bin\release\Driver\Arduino MEGA 2560.inf" />
-<File Id="_126" Source="..\bin\release\Driver\Arduino MEGA 2560.inf.new" />
+<Directory Id="Driver126" Name="Driver">
+<Component Id="_comp127" Guid="d9776466-be68-424f-b076-ef3fb4766362">
+<File Id="_128" Source="..\bin\release\Driver\Arduino MEGA 2560.inf" />
+<File Id="_129" Source="..\bin\release\Driver\Arduino MEGA 2560.inf.new" />
 </Component>
 </Directory>
-<Directory Id="es_ES126" Name="es-ES">
-<Component Id="_comp127" Guid="c2c961f8-e355-4c45-a3c0-374478237e52">
-<File Id="_128" Source="..\bin\release\es-ES\ArdupilotMegaPlanner.resources.dll" />
+<Directory Id="es_ES129" Name="es-ES">
+<Component Id="_comp130" Guid="1fb42ff8-9e61-49b3-a3c3-b3ecbfaf2d5f">
+<File Id="_131" Source="..\bin\release\es-ES\ArdupilotMegaPlanner.resources.dll" />
 </Component>
 </Directory>
-<Directory Id="fr128" Name="fr">
-<Component Id="_comp129" Guid="965158a9-2fa2-4347-a19f-3f0a3559f9ac">
-<File Id="_130" Source="..\bin\release\fr\ArdupilotMegaPlanner.resources.dll" />
+<Directory Id="fr131" Name="fr">
+<Component Id="_comp132" Guid="aa277d0f-e449-4838-95a4-b8caba929e73">
+<File Id="_133" Source="..\bin\release\fr\ArdupilotMegaPlanner.resources.dll" />
 </Component>
 </Directory>
-<Directory Id="it_IT130" Name="it-IT">
-<Component Id="_comp131" Guid="789eabcd-e833-4015-a7ea-ebc684256168">
-<File Id="_132" Source="..\bin\release\it-IT\ArdupilotMegaPlanner.resources.dll" />
+<Directory Id="it_IT133" Name="it-IT">
+<Component Id="_comp134" Guid="32fba21d-c610-4d07-8740-60a5956ed784">
+<File Id="_135" Source="..\bin\release\it-IT\ArdupilotMegaPlanner.resources.dll" />
 </Component>
 </Directory>
-<Directory Id="jsbsim132" Name="jsbsim">
-<Component Id="_comp133" Guid="de7781b7-50cf-456e-964b-bbc104b784f8">
-<File Id="_134" Source="..\bin\release\jsbsim\fgout.xml" />
-<File Id="_135" Source="..\bin\release\jsbsim\rascal_test.xml" />
+<Directory Id="jsbsim135" Name="jsbsim">
+<Component Id="_comp136" Guid="d6eb33b4-51c0-4e8e-bcbd-b719ebade3f4">
+<File Id="_137" Source="..\bin\release\jsbsim\fgout.xml" />
+<File Id="_138" Source="..\bin\release\jsbsim\rascal_test.xml" />
 </Component>
 </Directory>
-<Directory Id="m3u135" Name="m3u">
-<Component Id="_comp136" Guid="fb23d848-2079-458e-bc11-b7f9c9ac8227">
-<File Id="_137" Source="..\bin\release\m3u\both.m3u" />
-<File Id="_138" Source="..\bin\release\m3u\hud.m3u" />
-<File Id="_139" Source="..\bin\release\m3u\map.m3u" />
-<File Id="_140" Source="..\bin\release\m3u\networklink.kml" />
+<Directory Id="m3u138" Name="m3u">
+<Component Id="_comp139" Guid="629b2aa0-faf6-4bba-81bc-a624c7b9b27b">
+<File Id="_140" Source="..\bin\release\m3u\both.m3u" />
+<File Id="_141" Source="..\bin\release\m3u\hud.m3u" />
+<File Id="_142" Source="..\bin\release\m3u\map.m3u" />
+<File Id="_143" Source="..\bin\release\m3u\networklink.kml" />
 </Component>
 </Directory>
-<Directory Id="pl140" Name="pl">
-<Component Id="_comp141" Guid="ed518a01-a47c-4632-afc1-bbf9e134228d">
-<File Id="_142" Source="..\bin\release\pl\ArdupilotMegaPlanner.resources.dll" />
+<Directory Id="pl143" Name="pl">
+<Component Id="_comp144" Guid="552d60e0-5755-49b4-bca3-73ff0a8f345a">
+<File Id="_145" Source="..\bin\release\pl\ArdupilotMegaPlanner.resources.dll" />
 </Component>
 </Directory>
-<Directory Id="Resources142" Name="Resources">
-<Component Id="_comp143" Guid="d21a5a27-ddd7-4825-ae98-5792cc08710b">
-<File Id="_144" Source="..\bin\release\Resources\MAVCmd.txt" />
-<File Id="_145" Source="..\bin\release\Resources\MAVCmd.txt.new" />
-<File Id="_146" Source="..\bin\release\Resources\Welcome_to_Michael_Oborne.rtf" />
-<File Id="_147" Source="..\bin\release\Resources\Welcome_to_Michael_Oborne.rtf.new" />
+<Directory Id="Resources145" Name="Resources">
+<Component Id="_comp146" Guid="d0b46c4b-4222-441b-8c57-6dea9513559e">
+<File Id="_147" Source="..\bin\release\Resources\MAVCmd.txt" />
+<File Id="_148" Source="..\bin\release\Resources\MAVCmd.txt.new" />
+<File Id="_149" Source="..\bin\release\Resources\Welcome_to_Michael_Oborne.rtf" />
+<File Id="_150" Source="..\bin\release\Resources\Welcome_to_Michael_Oborne.rtf.new" />
 </Component>
 </Directory>
-<Directory Id="ru_RU147" Name="ru-RU">
-<Component Id="_comp148" Guid="4e5d3a70-4402-4105-9f33-327de86cce09">
-<File Id="_149" Source="..\bin\release\ru-RU\ArdupilotMegaPlanner.resources.dll" />
+<Directory Id="ru_RU150" Name="ru-RU">
+<Component Id="_comp151" Guid="964ca3d0-1802-4a4b-ba4b-2e6c1b1ab626">
+<File Id="_152" Source="..\bin\release\ru-RU\ArdupilotMegaPlanner.resources.dll" />
 </Component>
 </Directory>
-<Directory Id="zh_Hans149" Name="zh-Hans">
-<Component Id="_comp150" Guid="bccb1a8a-580a-421d-9e00-5db6aa4f12fe">
-<File Id="_151" Source="..\bin\release\zh-Hans\ArdupilotMegaPlanner.resources.dll" />
+<Directory Id="zh_Hans152" Name="zh-Hans">
+<Component Id="_comp153" Guid="363b03dc-9b08-428c-80c9-711f08487df4">
+<File Id="_154" Source="..\bin\release\zh-Hans\ArdupilotMegaPlanner.resources.dll" />
 </Component>
 </Directory>
-<Directory Id="zh_TW151" Name="zh-TW">
-<Component Id="_comp152" Guid="d7f3228d-4e9f-472c-8c74-0b0ccaed830a">
-<File Id="_153" Source="..\bin\release\zh-TW\ArdupilotMegaPlanner.resources.dll" />
+<Directory Id="zh_TW154" Name="zh-TW">
+<Component Id="_comp155" Guid="728fc93e-de0e-4229-94a7-672d48bfb8c2">
+<File Id="_156" Source="..\bin\release\zh-TW\ArdupilotMegaPlanner.resources.dll" />
 </Component>
 </Directory>
 
@@ -287,27 +290,27 @@
             <ComponentRef Id="InstallDirPermissions" />
 
 <ComponentRef Id="_comp1" />
-<ComponentRef Id="_comp53" />
-<ComponentRef Id="_comp55" />
-<ComponentRef Id="_comp64" />
-<ComponentRef Id="_comp68" />
+<ComponentRef Id="_comp56" />
+<ComponentRef Id="_comp58" />
+<ComponentRef Id="_comp67" />
 <ComponentRef Id="_comp71" />
-<ComponentRef Id="_comp81" />
-<ComponentRef Id="_comp91" />
+<ComponentRef Id="_comp74" />
+<ComponentRef Id="_comp84" />
 <ComponentRef Id="_comp94" />
-<ComponentRef Id="_comp99" />
-<ComponentRef Id="_comp114" />
-<ComponentRef Id="_comp124" />
+<ComponentRef Id="_comp97" />
+<ComponentRef Id="_comp102" />
+<ComponentRef Id="_comp117" />
 <ComponentRef Id="_comp127" />
-<ComponentRef Id="_comp129" />
-<ComponentRef Id="_comp131" />
-<ComponentRef Id="_comp133" />
+<ComponentRef Id="_comp130" />
+<ComponentRef Id="_comp132" />
+<ComponentRef Id="_comp134" />
 <ComponentRef Id="_comp136" />
-<ComponentRef Id="_comp141" />
-<ComponentRef Id="_comp143" />
-<ComponentRef Id="_comp148" />
-<ComponentRef Id="_comp150" />
-<ComponentRef Id="_comp152" />
+<ComponentRef Id="_comp139" />
+<ComponentRef Id="_comp144" />
+<ComponentRef Id="_comp146" />
+<ComponentRef Id="_comp151" />
+<ComponentRef Id="_comp153" />
+<ComponentRef Id="_comp155" />
 
             
             <ComponentRef Id="ApplicationShortcut" />
@@ -328,7 +331,7 @@
     <Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch APM Planner" />
 
     <!-- Step 3: Include the custom action -->
-    <Property Id="WixShellExecTarget" Value="[#_7]" />
+    <Property Id="WixShellExecTarget" Value="[#_10]" />
     <CustomAction Id="LaunchApplication" 
         BinaryKey="WixCA" 
         DllEntry="WixShellExec"
diff --git a/Tools/ArdupilotMegaPlanner/Msi/wix.pdb b/Tools/ArdupilotMegaPlanner/Msi/wix.pdb
index 25a406bac4b77a5699544789c249ee4fa7883195..3942cebe49487abafe08697bb62fa8f20bc6f4df 100644
Binary files a/Tools/ArdupilotMegaPlanner/Msi/wix.pdb and b/Tools/ArdupilotMegaPlanner/Msi/wix.pdb differ
diff --git a/Tools/ArdupilotMegaPlanner/Properties/AssemblyInfo.cs b/Tools/ArdupilotMegaPlanner/Properties/AssemblyInfo.cs
index d79f36b40fdeb2c4c7cfbb8ae6392f8dddebd6e4..6e43e20b09a96b4d2b90b423012c6e91f3f39ce3 100644
--- a/Tools/ArdupilotMegaPlanner/Properties/AssemblyInfo.cs
+++ b/Tools/ArdupilotMegaPlanner/Properties/AssemblyInfo.cs
@@ -34,5 +34,5 @@ using System.Resources;
 // by using the '*' as shown below:
 // [assembly: AssemblyVersion("1.0.*")]
 [assembly: AssemblyVersion("1.1.*")]
-[assembly: AssemblyFileVersion("1.1.64")]
+[assembly: AssemblyFileVersion("1.1.65")]
 [assembly: NeutralResourcesLanguageAttribute("")]
diff --git a/Tools/ArdupilotMegaPlanner/bin/Release/ArduCopterConfig.xml b/Tools/ArdupilotMegaPlanner/bin/Release/ArduCopterConfig.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e90fae40cfe29cd13e042a768ec38068277fe659
--- /dev/null
+++ b/Tools/ArdupilotMegaPlanner/bin/Release/ArduCopterConfig.xml
@@ -0,0 +1,205 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<AC>
+  <Item>
+   <HEAD>Stabilization:</HEAD>
+    <SUBHEAD>Angular Rate Control:</SUBHEAD>
+    <DESC>How much throttle is applied to rotate the copter at the desired speed.
+    
+Adjust P by motor size
+Small:  P = 0.145
+Med:  P = 0.110
+Large:  P = 0.090</DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>P</NAME>
+        <PARAMNAME>RATE_RLL_P</PARAMNAME>
+        <PARAMNAME>RATE_PIT_P</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>I</NAME>
+        <PARAMNAME>RATE_RLL_I</PARAMNAME>
+        <PARAMNAME>RATE_PIT_I</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>D</NAME>
+        <PARAMNAME>RATE_RLL_D</PARAMNAME>
+        <PARAMNAME>RATE_PIT_D</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>IMAX</NAME>
+        <PARAMNAME>RATE_RLL_IMAX</PARAMNAME>
+        <PARAMNAME>RATE_PIT_IMAX</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>40</RANGEMAX>
+        <STEP>0.1</STEP>
+      </FIELD>
+    </FIELDS>
+    <SUBHEAD>Dampening:</SUBHEAD>
+    <DESC>Resistance to angular acceleration
+    
+A dynamic gain is applied so that the dampening only occurs at 100% when the control sticks are centered.
+
+When the sticks are fully deflected:
+1.0 = 0%
+0.5 = 50%
+0.0 = 100%</DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>Dampen</NAME>
+        <PARAMNAME>STAB_D</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>Dynamic</NAME>
+        <PARAMNAME>STAB_D_S</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>1</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+    </FIELDS>
+
+    <SUBHEAD>Stabilize Control:</SUBHEAD>
+    <DESC>
+How fast the copter reacts to user or autopilot input.
+Higher = more aggressive control.
+Too high = slow wobbles
+    </DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>P</NAME>
+        <PARAMNAME>STB_RLL_P</PARAMNAME>
+        <PARAMNAME>STB_PIT_P</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>I</NAME>
+        <PARAMNAME>STB_RLL_I</PARAMNAME>
+        <PARAMNAME>STB_PIT_I</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>IMAX</NAME>
+        <PARAMNAME>STB_RLL_IMAX</PARAMNAME>
+        <PARAMNAME>STB_PIT_IMAX</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>50</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+    </FIELDS>
+  </Item>
+  <!-- Loiter -->
+  <Item>
+    <HEAD>Loiter:</HEAD>
+    <SUBHEAD>Angular Rate Control:</SUBHEAD>
+    <DESC>
+How much angle is applied to make the copter accelerate to the desired speed.
+    </DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>P</NAME>
+        <PARAMNAME>LOITER_LAT_P</PARAMNAME>
+        <PARAMNAME>LOITER_LON_P</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>I</NAME>
+        <PARAMNAME>LOITER_LAT_I</PARAMNAME>
+        <PARAMNAME>LOITER_LON_I</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>D</NAME>
+        <PARAMNAME>LOITER_LAT_D</PARAMNAME>
+        <PARAMNAME>LOITER_LON_D</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>IMAX</NAME>
+        <PARAMNAME>LOITER_LAT_IMAX</PARAMNAME>
+        <PARAMNAME>LOITER_LON_IMAX</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>50</RANGEMAX>
+        <STEP>0.1</STEP>
+      </FIELD>
+    </FIELDS>
+    <SUBHEAD>Loiter Speed:</SUBHEAD>
+    <DESC>
+How fast the copter should move towards the target. A larger value means a faster return to center, but can cause the copter to oscillate around the target.
+      
+A distance error of 100cm * P of .25 = 25 cm/s
+    </DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>P</NAME>
+        <PARAMNAME>HLD_LAT_P</PARAMNAME>
+        <PARAMNAME>HLD_LON_P</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+    </FIELDS>
+  </Item>
+  <!-- WP Nav -->
+  <Item>
+    <HEAD>WP Navigation:</HEAD>
+    <SUBHEAD>Nav Rate Control:</SUBHEAD>
+    <DESC>
+      How much angle is applied to make the copter accelerate to the desired speed.
+    </DESC>
+    <FIELDS>
+      <FIELD>
+        <NAME>P</NAME>
+        <PARAMNAME>NAV_LAT_P</PARAMNAME>
+        <PARAMNAME>NAV_LON_P</PARAMNAME>
+        <RANGEMIN>0.001</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>I</NAME>
+        <PARAMNAME>NAV_LAT_I</PARAMNAME>
+        <PARAMNAME>NAV_LON_I</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>D</NAME>
+        <PARAMNAME>NAV_LAT_D</PARAMNAME>
+        <PARAMNAME>NAV_LON_D</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>5</RANGEMAX>
+        <STEP>0.001</STEP>
+      </FIELD>
+      <FIELD>
+        <NAME>IMAX</NAME>
+        <PARAMNAME>NAV_LAT_IMAX</PARAMNAME>
+        <PARAMNAME>NAV_LON_IMAX</PARAMNAME>
+        <RANGEMIN>0</RANGEMIN>
+        <RANGEMAX>50</RANGEMAX>
+        <STEP>0.1</STEP>
+      </FIELD>
+    </FIELDS>
+  </Item>
+</AC>
diff --git a/Tools/ArdupilotMegaPlanner/bin/Release/ArdupilotMegaPlanner.pdb b/Tools/ArdupilotMegaPlanner/bin/Release/ArdupilotMegaPlanner.pdb
index 5a6867043d00d88cb758ddf6a515c778d2c63fef..35c40b0005d42e10cb1057ac2b486d9ab461faca 100644
Binary files a/Tools/ArdupilotMegaPlanner/bin/Release/ArdupilotMegaPlanner.pdb and b/Tools/ArdupilotMegaPlanner/bin/Release/ArdupilotMegaPlanner.pdb differ
diff --git a/Tools/ArdupilotMegaPlanner/bin/Release/dataflashlog.xml b/Tools/ArdupilotMegaPlanner/bin/Release/dataflashlog.xml
index d7da77e2d0606644ab4b7ec6d51ad3551b6fcfe8..8a69dd14fb0dd46fc26f8ed77fe4610e6ad0617f 100644
--- a/Tools/ArdupilotMegaPlanner/bin/Release/dataflashlog.xml
+++ b/Tools/ArdupilotMegaPlanner/bin/Release/dataflashlog.xml
@@ -293,6 +293,14 @@
       <F5>Output</F5>
       <F6>Gain</F6>
     </PID-122>
+    <PID-104>
+      <F1>Err</F1>
+      <F2>P</F2>
+      <F3>I</F3>
+      <F4>D</F4>
+      <F5>Output</F5>
+      <F6>Gain</F6>
+    </PID-104>
   </AC2>
   <!-- -->
   <APM>
diff --git a/Tools/ArdupilotMegaPlanner/bin/Release/version.txt b/Tools/ArdupilotMegaPlanner/bin/Release/version.txt
index 29be746b7a25b330f363fa9dc1650dc2c49033f4..e70ff281d14bc411e307e003dedb8e6c52b5e6f0 100644
--- a/Tools/ArdupilotMegaPlanner/bin/Release/version.txt
+++ b/Tools/ArdupilotMegaPlanner/bin/Release/version.txt
@@ -1 +1 @@
-1.1.4485.13801
\ No newline at end of file
+1.1.4485.38920
\ No newline at end of file
diff --git a/Tools/ArdupilotMegaPlanner/dataflashlog.xml b/Tools/ArdupilotMegaPlanner/dataflashlog.xml
index d7da77e2d0606644ab4b7ec6d51ad3551b6fcfe8..8a69dd14fb0dd46fc26f8ed77fe4610e6ad0617f 100644
--- a/Tools/ArdupilotMegaPlanner/dataflashlog.xml
+++ b/Tools/ArdupilotMegaPlanner/dataflashlog.xml
@@ -293,6 +293,14 @@
       <F5>Output</F5>
       <F6>Gain</F6>
     </PID-122>
+    <PID-104>
+      <F1>Err</F1>
+      <F2>P</F2>
+      <F3>I</F3>
+      <F4>D</F4>
+      <F5>Output</F5>
+      <F6>Gain</F6>
+    </PID-104>
   </AC2>
   <!-- -->
   <APM>