diff --git a/firmware/drivers/communicator/communicator.cpp b/firmware/drivers/communicator/communicator.cpp
index 7ff3c51b43af910f19fd528e2d9e2fcac455c2b5..4241c31b74596a6b24f3e5d1eda8df3d20f4df44 100644
--- a/firmware/drivers/communicator/communicator.cpp
+++ b/firmware/drivers/communicator/communicator.cpp
@@ -127,7 +127,8 @@ bool Communicator::isSetCommand_(){
             cmd_ == 'I' ||
             cmd_ == 'D' ||
             cmd_ == 'N' ||
-            cmd_ == 'S';
+            cmd_ == 'S' ||
+            cmd_ == 'E';
 }
 
 bool Communicator::isGetCommand_(){
@@ -203,6 +204,12 @@ void Communicator::handleSetCommand_(){
         sendBuf_();
         return;
     }
+    else if(cmd_ == 'E'){
+        Pid_controller::set_I_reset_errsq(darg);
+        snprintf(outbuf_, 255, ";");
+        sendBuf_();
+        return;
+    }
 }
 
 void Communicator::handleNopCommand_(){