diff --git a/lib/modem.js b/lib/modem.js
index 038c1f7..1254aaf 100644
--- a/lib/modem.js
+++ b/lib/modem.js
@@ -339,8 +339,8 @@ function executeUSSD(code, includeCUSD2) {
         await mutex.setLockWaitForCommand();
 
         if (includeCUSD2 === -1 || includeCUSD2 === 2) {
-            logger.info('Terminating existing USSD session');
             await mutex.setLockWaitForSubCommand();
+            logger.info('Terminating existing USSD session');
             port.pipe(parserCUSD2);
             await writeToPort('AT+CUSD=2\r');
         }
@@ -350,8 +350,8 @@ function executeUSSD(code, includeCUSD2) {
         await writeToPort(`AT+CUSD=1,"${code}",15\r`);
 
         if (includeCUSD2 === 1 || includeCUSD2 === 2) {
-            logger.info('Terminating existing USSD session');
             await mutex.setLockWaitForSubCommand();
+            logger.info('Terminating existing USSD session');
             port.pipe(parserCUSD2);
             await writeToPort('AT+CUSD=2\r');
         }