diff --git a/groundStation/gui/MicroCART/mainwindow.cpp b/groundStation/gui/MicroCART/mainwindow.cpp
index ce9bce105711f496c5f930726aee845c0aaef6e9..ff500b5289404633b52af7370c3717b1b94f74ed 100644
--- a/groundStation/gui/MicroCART/mainwindow.cpp
+++ b/groundStation/gui/MicroCART/mainwindow.cpp
@@ -198,7 +198,7 @@ MainWindow::MainWindow(QWidget *parent) :
 
     /* Start the things */
     trackerTimer->start(100);
-    crazyflieTimer->start(100);
+    crazyflieTimer->start(300);
     //workerThread->start();
     cwThread->start();
     cfThread->start();
@@ -833,6 +833,7 @@ void MainWindow::on_applySetpointButton_clicked()
         emit(rateSetpointSignal(sp_roll, sp_pitch, sp_yaw, sp_thrust));
     }
 
+    trigger_send_setpoint();
 
 }
 
@@ -851,6 +852,8 @@ void MainWindow::on_stopSetpointButton_clicked()
         //send as rate setpoint
         emit(rateSetpointSignal(sp_roll, sp_pitch, sp_yaw, sp_thrust));
     }
+
+    trigger_send_setpoint();
 }
 void MainWindow::on_tActual_sliderMoved(int position)
 {
@@ -978,6 +981,7 @@ void MainWindow::on_pb_configThrust_clicked()
 void MainWindow::on_rbManualSetpoint_toggled(bool checked)
 {
     if(checked) {
+        crazyflieTimer->start(300); //slower rate for manual setpoints
         emit(mixedSetpointSignal(0, 0, 0, 0));
         emit(rateSetpointSignal(0, 0, 0, 0));
         emit(angleSetpointSignal(0, 0, 0, 0));
@@ -1001,6 +1005,7 @@ void MainWindow::on_rbGamepadControl_toggled(bool checked)
 {
 
     if(checked){
+        crazyflieTimer->start(100); //faster rate for gamepad
         ui->rollSetpointBox-> setEnabled(false);
         ui->pitchSetpointBox-> setEnabled(false);
         ui->yawSetpointBox-> setEnabled(false);