Unable to write IMEI using %IMEIWRITE to nrf9161

Hi

We are working on building a custom board for the nrf9161 as it's the newer chip but are having issues writing the IMEI to the device. I have flashed a modified version of the mosh shell to use RTT so we can communicate over the JTAG connection and flashed the latest PTI image to the modem but some AT commands are just returning error. Below is a sample of the commands but it seems commands interacting with the OTP memory fail.The docs suggest that calling AT+CGSN would return F's instead of error.

mosh:~$ at AT+CGMR
mfw-pti_nrf91x1_2.3.3
OK

mosh:~$ at AT%SIMTEST
%SIMTEST: 0
OK

mosh:~$ at AT+CGSN
ERROR

mosh:~$ at AT%IMEIWRITE=0,"35829984-------"
ERROR

I just wondered if you had any pointers as to if this is likely to be a hardware issue or AT command order issue. I cannot find any official documentation on writing the imei other than the AT command reference.

Thanks

Sam

Parents
  • Hello Sam, 

    Is this a new device on the custom board, or are you testing on a development kit? 

    Please note, as stated in the Write IMEI %IMEIWRITE documentation

    The command is a one-time operation. The IMEI value cannot be rewritten. The device can become unusable if the wrong IMEI is written.

    The command responds with OK and the device's IMEI value if the command syntax is correct. Syntax error returns Error.

    Kind regards,
    Øyvind

  • Hi

    This is a custom board based on a feather but updated for the nrf9161. Every attempt to write the IMEI has failed with an error. The docs suggests that the ERROR is because of a syntax error but from what I can tell the syntax I am using above is correct.

    Thanks,

    Sam

  • Hey Sam, 

    I missed an important detail in your case, you are using MoSH. Please see notes here:

    https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/samples/cellular/modem_shell/README.html#at_commands

    Let me know how that works for you!

    Kind regards,
    Øyvind

  • Did you find a solution?

    I am running into the same issue were I am trying to program the IMEI on a custom nRF9161 board using RTT and the 'at AT%IMEIWRITE=0,"<imei>"; command but also getting the ERROR response. I tried escaping the " characters with a backslash as suggested in the modem shell AT command documentation but with not luck. 

    mosh:~$ Modem domain event: No IMEI
    Network registration status: searching
    Currently active system mode: LTE-M
    LTE cell changed: ID: 17031947, Tracking area: 33902
    at AT+CGMR
    mfw_nrf91x1_2.0.1
    
    OK
    
    mosh:~$ at AT%IMEIWRITE=0,\"<imei>\"
    ERROR


    Kind regards,
    Henrico

  • This is the  solution/steps that have worked for me reliably and consistently for programming the IMEI to over 100 nRF9161 SiPs...

    Make sure you have requested or obtained the IMEI numbers from the nRF Cloud console under IMEI Management.

    1. Flash latest Production Test Image (PTI) (mfw-pti_nrf91x1_2.3.3.zip) to the modem. This PTI modem firmware has the support for IMEI write but not nRF91x1 SiP LTE firmware.
    2. Build and flash at_client app to the nRF9161. The AT_CMD will easily allow you to write the IMEI number
    3. To Write, issue  command: AT%IMEIWRITE=0,”IMEI NUMBER”
    4. It should return/reply with : 

      %IMEIWRITE: 358299840099762
      OK
      This means your write was successful and it has read what you expected to write/wrote

    5. If not, then you have an issue or something is not configured properly. Check that your UART read/write is functioning as expected.

    6. If all goes well and IMEI is successfully written, update the modem firmware with 

      nRF91x1 SiP LTE firmware (mfw_nrf91x1_2.0.1)

    7. Build and flash at_client app again to test the connectivity and modem functionality

    Note there is a difference between Production Test Image (PTI) and nRF91x1 SiP LTE firmware for the modem.

    Hope this helps.

Reply
  • This is the  solution/steps that have worked for me reliably and consistently for programming the IMEI to over 100 nRF9161 SiPs...

    Make sure you have requested or obtained the IMEI numbers from the nRF Cloud console under IMEI Management.

    1. Flash latest Production Test Image (PTI) (mfw-pti_nrf91x1_2.3.3.zip) to the modem. This PTI modem firmware has the support for IMEI write but not nRF91x1 SiP LTE firmware.
    2. Build and flash at_client app to the nRF9161. The AT_CMD will easily allow you to write the IMEI number
    3. To Write, issue  command: AT%IMEIWRITE=0,”IMEI NUMBER”
    4. It should return/reply with : 

      %IMEIWRITE: 358299840099762
      OK
      This means your write was successful and it has read what you expected to write/wrote

    5. If not, then you have an issue or something is not configured properly. Check that your UART read/write is functioning as expected.

    6. If all goes well and IMEI is successfully written, update the modem firmware with 

      nRF91x1 SiP LTE firmware (mfw_nrf91x1_2.0.1)

    7. Build and flash at_client app again to test the connectivity and modem functionality

    Note there is a difference between Production Test Image (PTI) and nRF91x1 SiP LTE firmware for the modem.

    Hope this helps.

Children
No Data
Related