SIM ICCID with invalid character 'C'

Aleksander Morgado aleksander at aleksander.es
Wed Dec 27 21:09:25 UTC 2017


Hey,

It looks like there are SIMs out there that report an ICCID that is
not read correctly by ModemManager:

 <debug> [1514406745.769547] (ttyACM2): --> 'AT+CRSM=176,12258,0,0,10<CR>'
 <debug> [1514406745.797843] (ttyACM2): <-- '<CR><LF>+CRSM:
145,15,"9868200C214365870921"<CR><LF><CR><LF>OK<CR><LF>
 <warn>  [1514406745.798699] couldn't load SIM identifier: 'ICCID
response contained invalid character 'C''

Once processed the ICCID would have been reported as:
  898602C0123456789012

i.e.:
  89: telecom
  86: china:
  02: cmcc (operator)
  character C
  012345678901: 12 digits with the account number, operator-specific format
  2: check digit, I assume

At the end, this could be a valid 19-digit ICCID, but normally we
would have seen this with a 'F' character as padding, not a 'C'
character in the middle separating the issuer code and the account
number.

What should we do with this? should we for example, allow having
19-digit ICCIDs that may include an additional character anywhere to
form the 20-digit value we read from the SIM?


-- 
Aleksander
https://aleksander.es


More information about the ModemManager-devel mailing list