From 2a8f20eb79baf1c252c00f945052ec45bc0e9637 Mon Sep 17 00:00:00 2001
From: Adhidarma Hadiwinoto <me@adhisimon.org>
Date: Fri, 26 Jul 2019 12:49:49 +0700
Subject: [PATCH] Optimasi readIMSI

---
 lib/modem.js | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/lib/modem.js b/lib/modem.js
index 16a1d84..31b4e83 100644
--- a/lib/modem.js
+++ b/lib/modem.js
@@ -102,14 +102,17 @@ async function readIMSI() {
             imsi = data.toString().trim();
             logger.info(`IMSI: ${imsi}`);
         }
+
         mutex.releaseLockWaitForOK();
     });
 
     port.pipe(parserReadIMSI);
     await writeToPortAndWaitForOK('AT+CIMI\r');
-    await mutex.setLockWaitForOK();
-    mutex.releaseLockWaitForOK();
+
+    // selesai hanya jika lock sudah terbuka oleh parser
+    mutex.setLockWaitForOK();
     port.unpipe(parserReadIMSI);
+    mutex.releaseLockWaitForCommand();
 }
 
 async function querySignalStrength() {
-- 
1.9.0