diff --git a/Modules/CommandPad/commandpadmodule.cpp b/Modules/CommandPad/commandpadmodule.cpp
index 18045167386ddf5ebd0e0e14a3d3d1f8f01da245..80566dcffc537e9b2eff1891e54db2e9e9d15975 100644
--- a/Modules/CommandPad/commandpadmodule.cpp
+++ b/Modules/CommandPad/commandpadmodule.cpp
@@ -62,6 +62,10 @@ void CommandPadModule::buildUI()
     connect(ui->noseconeOpen_button, &QPushButton::clicked, this, &CommandPadModule::onNoseconeOpenClicked);
     connect(ui->endMission_button, &QPushButton::clicked, this, &CommandPadModule::onEndMissionClicked);
     connect(ui->rawEventSend_button, &QPushButton::clicked, this, &CommandPadModule::onRawEventSendClicked);
+
+    connect(ui->cutDrogue_button, &QPushButton::clicked, this, &CommandPadModule::onCutDrogueClicked);
+    connect(ui->primaryCut_button, &QPushButton::clicked, this, &CommandPadModule::onPrimaryCutClicked);
+    connect(ui->backupCut_button, &QPushButton::clicked, this, &CommandPadModule::onBackupClicked);
 }
 
 //void CommandPadModule::buildMsgKeyList()
@@ -269,3 +273,18 @@ void CommandPadModule::onRawEventSendClicked()
     send(createRawEventMsg("RAW_EVENT_TC", event_id, topic_id));
 }
 
+void CommandPadModule::onCutDrogueClicked()
+{
+    send(createCommandMsg("MAV_CMD_CUT_DROGUE"));
+}
+
+void CommandPadModule::onPrimaryCutClicked()
+{
+    send(createCommandMsg("MAV_CMD_CUT_PRIMARY"));
+}
+
+void CommandPadModule::onBackupClicked()
+{
+    send(createCommandMsg("MAV_CMD_CUT_BACKUP"));
+}
+
diff --git a/Modules/CommandPad/commandpadmodule.h b/Modules/CommandPad/commandpadmodule.h
index baba81965dd6525c3b5f27b8d370dcbdc7757a79..561f33b46cfbeba3a0cc231338334661922185de 100644
--- a/Modules/CommandPad/commandpadmodule.h
+++ b/Modules/CommandPad/commandpadmodule.h
@@ -52,6 +52,9 @@ protected:
     void onNoseconeOpenClicked();
     void onEndMissionClicked();
     void onRawEventSendClicked();
+    void onCutDrogueClicked();
+    void onPrimaryCutClicked();
+    void onBackupClicked();
 
 private:
     Ui::CommandPadModule *ui;
diff --git a/Modules/CommandPad/commandpadmodule.ui b/Modules/CommandPad/commandpadmodule.ui
index a46c463e0a63ecf47168673818a847ab3bd9be8f..4815133a6eb3c0098b93f24d1dee4e5678ccccea 100644
--- a/Modules/CommandPad/commandpadmodule.ui
+++ b/Modules/CommandPad/commandpadmodule.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>338</width>
-    <height>883</height>
+    <width>405</width>
+    <height>980</height>
    </rect>
   </property>
   <property name="windowTitle">
@@ -121,6 +121,13 @@
       <set>Qt::AlignCenter</set>
      </property>
      <layout class="QGridLayout" name="gridLayout">
+      <item row="1" column="1">
+       <widget class="QPushButton" name="boardReset_button">
+        <property name="text">
+         <string>BOARD RESET</string>
+        </property>
+       </widget>
+      </item>
       <item row="1" column="0">
        <widget class="QPushButton" name="resetDPLServo_button">
         <property name="text">
@@ -142,13 +149,6 @@
         </property>
        </widget>
       </item>
-      <item row="1" column="1">
-       <widget class="QPushButton" name="boardReset_button">
-        <property name="text">
-         <string>BOARD RESET</string>
-        </property>
-       </widget>
-      </item>
      </layout>
     </widget>
    </item>
@@ -157,18 +157,35 @@
      <property name="title">
       <string>Cutter</string>
      </property>
-     <layout class="QVBoxLayout" name="verticalLayout_5">
-      <item>
+     <property name="alignment">
+      <set>Qt::AlignCenter</set>
+     </property>
+     <layout class="QGridLayout" name="gridLayout_2">
+      <item row="1" column="0">
        <widget class="QPushButton" name="testBackupCut_button">
         <property name="text">
          <string>TEST BACKUP CUT</string>
         </property>
        </widget>
       </item>
-      <item>
+      <item row="2" column="0">
        <widget class="QPushButton" name="testPrimaryCut_button">
         <property name="text">
-         <string>TEST PRIMARY  CUT</string>
+         <string>TEST PRIMARY CUT</string>
+        </property>
+       </widget>
+      </item>
+      <item row="2" column="1">
+       <widget class="QPushButton" name="primaryCut_button">
+        <property name="text">
+         <string>CUT PRIMARY</string>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="1">
+       <widget class="QPushButton" name="backupCut_button">
+        <property name="text">
+         <string>CUT BACKUP</string>
         </property>
        </widget>
       </item>
@@ -183,35 +200,35 @@
      <property name="alignment">
       <set>Qt::AlignCenter</set>
      </property>
-     <layout class="QHBoxLayout" name="horizontalLayout_10">
-      <item>
+     <layout class="QGridLayout" name="gridLayout_5">
+      <item row="0" column="0">
        <widget class="QPushButton" name="testAerobrakest_button">
         <property name="text">
          <string>TEST</string>
         </property>
        </widget>
       </item>
-      <item>
-       <widget class="QPushButton" name="resetARBServo_button">
-        <property name="text">
-         <string>RESET ARB SERVO</string>
-        </property>
-       </widget>
-      </item>
-      <item>
+      <item row="0" column="2">
        <widget class="QPushButton" name="wiggleARBServo_button">
         <property name="text">
          <string>WIGGLE ARB SERVO</string>
         </property>
        </widget>
       </item>
-      <item>
+      <item row="1" column="0">
        <widget class="QPushButton" name="disableAerobrakes_button">
         <property name="text">
          <string>Disable</string>
         </property>
        </widget>
       </item>
+      <item row="1" column="2">
+       <widget class="QPushButton" name="resetARBServo_button">
+        <property name="text">
+         <string>RESET ARB SERVO</string>
+        </property>
+       </widget>
+      </item>
      </layout>
     </widget>
    </item>
@@ -529,18 +546,43 @@
      <property name="alignment">
       <set>Qt::AlignCenter</set>
      </property>
-     <layout class="QVBoxLayout" name="verticalLayout_2">
-      <item>
+     <layout class="QGridLayout" name="gridLayout_3">
+      <item row="1" column="0">
+       <widget class="QPushButton" name="endMission_button">
+        <property name="minimumSize">
+         <size>
+          <width>50</width>
+          <height>50</height>
+         </size>
+        </property>
+        <property name="text">
+         <string>END MISSION</string>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="1">
        <widget class="QPushButton" name="noseconeOpen_button">
+        <property name="minimumSize">
+         <size>
+          <width>50</width>
+          <height>50</height>
+         </size>
+        </property>
         <property name="text">
          <string>NOSECONE OPEN</string>
         </property>
        </widget>
       </item>
-      <item>
-       <widget class="QPushButton" name="endMission_button">
+      <item row="1" column="2">
+       <widget class="QPushButton" name="cutDrogue_button">
+        <property name="minimumSize">
+         <size>
+          <width>50</width>
+          <height>50</height>
+         </size>
+        </property>
         <property name="text">
-         <string>END MISSION</string>
+         <string>CUT DROGUE</string>
         </property>
        </widget>
       </item>
diff --git a/Modules/Mavlink/mavlinkmodule.cpp b/Modules/Mavlink/mavlinkmodule.cpp
index 820e35f410ea206968bbdf8c66e9396513f2ed53..3980fb11914fbd5093f33eff4d40982171fb2605 100644
--- a/Modules/Mavlink/mavlinkmodule.cpp
+++ b/Modules/Mavlink/mavlinkmodule.cpp
@@ -171,13 +171,6 @@ void MavlinkModule::initializeSerialPortView()
 //    //connect(customPlot,SIGNAL(selectionChangedByUser()),this,SLOT(selectedGraphChange()));
 //}
 
-void MavlinkModule::onStartClicked()
-{
-    if(startReadingOnSerialPort()){
-        mavlinkReader.startAsyncReading(&serialPort);
-    }
-}
-
 
 bool MavlinkModule::startReadingOnSerialPort()
 {
@@ -196,7 +189,24 @@ bool MavlinkModule::startReadingOnSerialPort()
     return false;
 }
 
+void MavlinkModule::onStartStreamToggled(bool state)
+{
+    onLinkQualityIndicatorClicked(ui->linkQuality_groupBox->isChecked());
 
+    if(state){
+        onStartClicked();
+    }
+    else{
+        onStopClicked();
+    }
+}
+
+void MavlinkModule::onStartClicked()
+{
+    if(startReadingOnSerialPort()){
+        mavlinkReader.startAsyncReading(&serialPort);
+    }
+}
 
 void MavlinkModule::onStopClicked()
 {
@@ -229,6 +239,7 @@ void MavlinkModule::onLinkQualityTimerTick()
 
 void MavlinkModule::updateLinkSignalIndicator(int msgArrived, float ratio)
 {
+    ui->msgPerSecond_label->setText(QString::number(msgArrived));
     ModuleMessage linkQualityMsgNumber(SkywardHubStrings::mavlink_quality_link_topic + "/ReceivedMsgNumber", QString::number(msgArrived));
     ModuleMessage linkQualityMsgRatio(SkywardHubStrings::mavlink_quality_link_topic + "/ReceivedRatio", QString::number(ratio));
 
@@ -238,8 +249,11 @@ void MavlinkModule::updateLinkSignalIndicator(int msgArrived, float ratio)
 
 void MavlinkModule::connectUiSlots()
 {
-    connect(ui->button_start,&QPushButton::clicked,this, &MavlinkModule::onStartClicked);
-    connect(ui->button_stop,&QPushButton::clicked,this, &MavlinkModule::onStopClicked);
+    ui->startStop_button_layout->insertWidget(0, &startSerialStreamToggleButton);
+    connect(&startSerialStreamToggleButton, &ToggleButton::toggled, this, &MavlinkModule::onStartStreamToggled);
+
+//    connect(ui->button_start,&QPushButton::clicked,this, &MavlinkModule::onStartClicked);
+//    connect(ui->button_stop,&QPushButton::clicked,this, &MavlinkModule::onStopClicked);
 //    connect(ui->spinBox_maxPackets,SIGNAL(valueChanged(int)),this,SLOT(onMaxPackedValueChanged(int)));
     connect(ui->comboBox_serialPort, SIGNAL(currentIndexChanged(int)), this, SLOT(onSerialPortIndexChanged(int)));
     connect(ui->linkQuality_groupBox, &QGroupBox::clicked, this, &MavlinkModule::onLinkQualityIndicatorClicked);
diff --git a/Modules/Mavlink/mavlinkmodule.h b/Modules/Mavlink/mavlinkmodule.h
index 8102aa80fd82532e5cbf96aa5bbc77b7d8834e23..fe8e652faebd716506a77deb2443697ea3dd827a 100644
--- a/Modules/Mavlink/mavlinkmodule.h
+++ b/Modules/Mavlink/mavlinkmodule.h
@@ -3,7 +3,9 @@
 
 #include <QWidget>
 #include "Core/module.h"
-#include "Modules/Graph/qcustomplot.h"
+//#include "Modules/Graph/qcustomplot.h"
+#include "Modules/Utility/togglebutton.h"
+#include <QTimer>
 #include "Core/modulemessage.h"
 #include "mavlinkreader.h"
 #include "mavlinkcommandadapter.h"
@@ -56,13 +58,15 @@ protected:
 private slots:
     void onSerialPortIndexChanged(int index);
     bool startReadingOnSerialPort();
+    void onStartStreamToggled(bool state);
 
 
 private:
     Ui::MavlinkModule *ui;
 
-    QCustomPlot graphCentralView;
-    QCPGraph *linkGraph = nullptr;
+//    QCustomPlot graphCentralView;
+//    QCPGraph *linkGraph = nullptr;
+    ToggleButton startSerialStreamToggleButton;
     QString dateFormat = "HH:mm:ss\n(zzz)";
     MavlinkReader mavlinkReader;
     MavlinkCommandAdapter mavlinkCommandAdapter;
diff --git a/Modules/Mavlink/mavlinkmodule.ui b/Modules/Mavlink/mavlinkmodule.ui
index 32df501892189d5ab110ad7ae545572fa5fe78b2..a37cbb825333364a9b3daa2d07245af17f55834e 100644
--- a/Modules/Mavlink/mavlinkmodule.ui
+++ b/Modules/Mavlink/mavlinkmodule.ui
@@ -6,14 +6,14 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>401</width>
-    <height>541</height>
+    <width>545</width>
+    <height>256</height>
    </rect>
   </property>
   <property name="windowTitle">
    <string>Form</string>
   </property>
-  <layout class="QVBoxLayout" name="verticalLayout" stretch="0,1,0,1">
+  <layout class="QVBoxLayout" name="verticalLayout" stretch="0,1,1">
    <item>
     <widget class="QLabel" name="module_title">
      <property name="text">
@@ -38,49 +38,59 @@
      <property name="checkable">
       <bool>true</bool>
      </property>
-     <layout class="QVBoxLayout" name="verticalLayout_3" stretch="0">
-      <item>
-       <layout class="QHBoxLayout" name="horizontalLayout_4" stretch="0,0,0">
-        <item>
-         <spacer name="horizontalSpacer">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item>
-         <widget class="QLabel" name="label_5">
-          <property name="sizePolicy">
-           <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
-            <horstretch>0</horstretch>
-            <verstretch>0</verstretch>
-           </sizepolicy>
-          </property>
-          <property name="text">
-           <string>Maximum Packets/second</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QSpinBox" name="spinBox_maxPackets">
-          <property name="sizePolicy">
-           <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
-            <horstretch>0</horstretch>
-            <verstretch>0</verstretch>
-           </sizepolicy>
-          </property>
-          <property name="minimum">
-           <number>1</number>
-          </property>
-         </widget>
-        </item>
-       </layout>
+     <layout class="QGridLayout" name="gridLayout_2">
+      <item row="1" column="3">
+       <widget class="QLabel" name="label_7">
+        <property name="text">
+         <string>Msg Received/s</string>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="1">
+       <widget class="QLabel" name="label_5">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Fixed" vsizetype="Preferred">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="text">
+         <string>Maximum Packets/second</string>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="4">
+       <widget class="QLabel" name="msgPerSecond_label">
+        <property name="text">
+         <string>msgpersecond value</string>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="0">
+       <widget class="QSpinBox" name="spinBox_maxPackets">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="minimum">
+         <number>1</number>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="2">
+       <spacer name="horizontalSpacer">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>40</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
       </item>
      </layout>
     </widget>
@@ -90,118 +100,110 @@
      <property name="title">
       <string>Setup</string>
      </property>
+     <property name="alignment">
+      <set>Qt::AlignCenter</set>
+     </property>
      <layout class="QGridLayout" name="gridLayout">
-      <item row="0" column="0">
+      <item row="1" column="2">
+       <widget class="QLineEdit" name="lineEdit_serialPort">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="5">
+       <layout class="QHBoxLayout" name="startStop_button_layout"/>
+      </item>
+      <item row="0" column="5">
+       <widget class="QLabel" name="label_6">
+        <property name="text">
+         <string>Start/Stop</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
+        </property>
+       </widget>
+      </item>
+      <item row="0" column="1">
        <widget class="QLabel" name="label_2">
         <property name="text">
-         <string>TextLabel</string>
+         <string>Available Port</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignCenter</set>
         </property>
        </widget>
       </item>
-     </layout>
-    </widget>
-   </item>
-   <item>
-    <widget class="QGroupBox" name="groupBox">
-     <property name="title">
-      <string>Setup Serial Input</string>
-     </property>
-     <property name="alignment">
-      <set>Qt::AlignCenter</set>
-     </property>
-     <property name="checkable">
-      <bool>false</bool>
-     </property>
-     <property name="checked">
-      <bool>false</bool>
-     </property>
-     <layout class="QVBoxLayout" name="verticalLayout_2">
-      <item>
-       <layout class="QHBoxLayout" name="horizontalLayout" stretch="0,0,0,0,0">
-        <item>
-         <widget class="QLabel" name="label_4">
-          <property name="text">
-           <string>Port</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QComboBox" name="comboBox_serialPort"/>
-        </item>
-        <item>
-         <widget class="QLineEdit" name="lineEdit_serialPort">
-          <property name="sizePolicy">
-           <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
-            <horstretch>0</horstretch>
-            <verstretch>0</verstretch>
-           </sizepolicy>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <spacer name="horizontalSpacer_2">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item>
-         <widget class="QPushButton" name="button_start">
-          <property name="text">
-           <string>Start</string>
-          </property>
-         </widget>
-        </item>
-       </layout>
-      </item>
-      <item>
-       <layout class="QHBoxLayout" name="horizontalLayout_3" stretch="0,0,0,0,0">
-        <item>
-         <widget class="QComboBox" name="comboBox_baudRate"/>
-        </item>
-        <item>
-         <widget class="QLabel" name="label">
-          <property name="sizePolicy">
-           <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
-            <horstretch>0</horstretch>
-            <verstretch>0</verstretch>
-           </sizepolicy>
-          </property>
-          <property name="text">
-           <string>Timeout [s]</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QDoubleSpinBox" name="doubleSpinBox"/>
-        </item>
-        <item>
-         <spacer name="horizontalSpacer_3">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-        <item>
-         <widget class="QPushButton" name="button_stop">
-          <property name="text">
-           <string>Stop</string>
-          </property>
-         </widget>
-        </item>
-       </layout>
+      <item row="0" column="2">
+       <widget class="QLabel" name="label_4">
+        <property name="text">
+         <string>Selected Port</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignCenter</set>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="4">
+       <widget class="QDoubleSpinBox" name="doubleSpinBox"/>
+      </item>
+      <item row="0" column="3">
+       <widget class="QLabel" name="label_3">
+        <property name="text">
+         <string>Baud Rate</string>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="1">
+       <widget class="QComboBox" name="comboBox_serialPort"/>
+      </item>
+      <item row="0" column="4">
+       <widget class="QLabel" name="label">
+        <property name="sizePolicy">
+         <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+          <horstretch>0</horstretch>
+          <verstretch>0</verstretch>
+         </sizepolicy>
+        </property>
+        <property name="text">
+         <string>Timeout [s]</string>
+        </property>
+        <property name="alignment">
+         <set>Qt::AlignCenter</set>
+        </property>
+       </widget>
+      </item>
+      <item row="1" column="6">
+       <spacer name="horizontalSpacer_2">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>40</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
+      </item>
+      <item row="1" column="3">
+       <widget class="QComboBox" name="comboBox_baudRate"/>
+      </item>
+      <item row="1" column="0">
+       <spacer name="horizontalSpacer_3">
+        <property name="orientation">
+         <enum>Qt::Horizontal</enum>
+        </property>
+        <property name="sizeHint" stdset="0">
+         <size>
+          <width>40</width>
+          <height>20</height>
+         </size>
+        </property>
+       </spacer>
       </item>
      </layout>
     </widget>
diff --git a/SkywardHub.pro.user b/SkywardHub.pro.user
index 46b0555c43e397b8cde084dd374c3f1990187cb1..774f237a712cf985d109ea797fc2238c7d4451b3 100644
--- a/SkywardHub.pro.user
+++ b/SkywardHub.pro.user
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE QtCreatorProject>
-<!-- Written by QtCreator 4.14.2, 2021-05-26T12:01:02. -->
+<!-- Written by QtCreator 4.14.2, 2021-05-26T19:42:19. -->
 <qtcreator>
  <data>
   <variable>EnvironmentId</variable>