diff --git a/tools/pyboard.py b/tools/pyboard.py
index efb43f26c2f4cf507bd432d6367dc80c35c2146a..83b613d74b5a45a93a5b14d7299505f3993087ab 100755
--- a/tools/pyboard.py
+++ b/tools/pyboard.py
@@ -101,7 +101,7 @@ class Pyboard:
         # return normal and error output
         return data, data_err
 
-    def exec_raw(self, command, timeout=10, data_consumer=None):
+    def exec_raw_no_follow(self, command):
         if isinstance(command, bytes):
             command_bytes = command
         else:
@@ -118,6 +118,8 @@ class Pyboard:
         if data != b'OK':
             raise PyboardError('could not exec command')
 
+    def exec_raw(self, command, timeout=10, data_consumer=None):
+        self.exec_raw_no_follow(command);
         return self.follow(timeout, data_consumer)
 
     def eval(self, expression):