diff --git a/lib/modem.js b/lib/modem.js
index ed29b73..9e3c264 100644
--- a/lib/modem.js
+++ b/lib/modem.js
@@ -3,6 +3,7 @@
 const INTERVAL_BEETWEN_SIGNAL_STRENGTH_MS = 60000;
 const DELIMITER_WAIT_FOR_OK = '\nOK\r\n';
 
+const moment = require('moment');
 const SerialPort = require('serialport');
 const ParserReadline = require('@serialport/parser-readline');
 const ParserDelimiter = require('@serialport/parser-delimiter');
@@ -27,6 +28,8 @@ const modemInfo = {
     networkId: null,
     networkName: null,
     signalStrength: null,
+    signalStrengthTs: null,
+    signalStrengthTsReadable: null,
     config: config.modem,
 };
 
@@ -107,8 +110,13 @@ parserReadLine.on('data', (data) => {
     logger.verbose(`* IN: ${data}`);
     if (data) {
         if (data.indexOf('+CSQ: ') === 0) {
-            modemInfo.signalStrength = common.extractValueFromReadLineData(data).trim();
-            logger.info(`Signal strength: ${modemInfo.signalStrength}`);
+            const signalStrength = common.extractValueFromReadLineData(data).trim();
+            if (signalStrength) {
+                modemInfo.signalStrength = signalStrength;
+                modemInfo.signalStrengthTs = new Date();
+                modemInfo.signalStrengthTsReadable = moment(modemInfo.signalStrengthTs).format('YYYY-MM-DD HH:mm:ss');
+                logger.info(`Signal strength: ${modemInfo.signalStrength}`);
+            }
         } else if (data.indexOf('+CMTI: ') === 0) {
             onIncomingSMS(data);
         } else if (data.indexOf('+COPS: ') === 0) {