Skip to content

Commit e4f5396

Browse files
committed
backend: modem: lte-base: Add edge cases for SN
* As some older LTE-EG25-G modems with firmware from 2019 does not respond the IMEI/SN query, we add a bypass for these values
1 parent 928808a commit e4f5396

File tree

2 files changed

+24
-9
lines changed

2 files changed

+24
-9
lines changed

backend/modem/adapters/quectel/base.py

+21-6
Original file line numberDiff line numberDiff line change
@@ -65,18 +65,33 @@ async def get_mt_info(self, cmd: ATCommander) -> ModemDeviceDetails:
6565
# OK
6666
response = (await cmd.get_mt_info()).data[0]
6767
firmware = (await cmd.get_firmware_version_details()).data[0]
68-
imei = (await cmd.get_imei()).data[0]
69-
serial_number = (await cmd.get_serial_number()).data[0]
70-
imsi = (await cmd.get_international_mobile_subscriber_id()).data[0]
68+
69+
imei = None
70+
try:
71+
imei = (await cmd.get_imei()).data[0][0]
72+
except Exception:
73+
pass
74+
75+
serial_number = None
76+
try:
77+
serial_number = (await cmd.get_serial_number()).data[0][0]
78+
except Exception:
79+
pass
80+
81+
imsi = None
82+
try:
83+
imsi = (await cmd.get_international_mobile_subscriber_id()).data[0][0]
84+
except Exception:
85+
pass
7186

7287
return ModemDeviceDetails(
7388
device=self.device,
7489
id=self.id,
7590
manufacturer=response[0],
7691
product=response[1],
77-
imei=imei[0],
78-
imsi=imsi[0],
79-
serial_number=serial_number[0],
92+
imei=imei,
93+
imsi=imsi,
94+
serial_number=serial_number,
8095
firmware_revision=ModemFirmwareRevision(
8196
firmware_revision=firmware[0].replace("VERSION: ", ""),
8297
timestamp=firmware[1],

backend/modem/models.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ class ModemFirmwareRevision(BaseModel):
1919

2020

2121
class ModemDeviceDetails(ModemDevice):
22-
imei: str
23-
serial_number: str
24-
imsi: Optional[str] = None
2522
firmware_revision: ModemFirmwareRevision
23+
imei: Optional[str] = None
24+
serial_number: Optional[str] = None
25+
imsi: Optional[str] = None
2626

2727

2828
class ModemClockDetails(BaseModel):

0 commit comments

Comments
 (0)