This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Full modem firmware update for modem v1.3.0

I am working in a project where we want to be able to do full modem firmware update with FOTA for modem version 1.3.x. According to the release notes, in order to do this, we need to use the .cbor file in the zip from the release.

I have tried to follow the example in samples/nrf9160/http_update/full_modem_update. This sample however only uses v1.2.1 and v1.2.2. Can I follow the same steps for v1.3.x using the .cbor file? Or do I need to do something more? Like some digest?

I have modified the sample to fit my project. My hardware has a nrf9160 which downloads the firmware via LwM2M. The hardware also has an external flash memory which I use for the firmware update. I am currently using NCS version 1.6.1.

  • Hi Waqar,

    I have not used AWS (MQTT), but the files should still be the same. In order to update from modem firmware v1.2.3 to v1.3.1 you need to do a Full modem firmware update (FMFU), and for that you can use the following link:

    https://www.nordicsemi.com/-/media/Software-and-other-downloads/Dev-Kits/nRF9160-DK/nRF9160-modem-FW/mfw_nrf9160_1.3.1.zip

    That .zip-file contains various files, but the file that you should use for FMFU is

    firmware.update.image.cbor

    which is a binary file, encoded using cbor.

    Hope it works!

    /Andreas

  • Or, if you want to use a URL directly in your application, and maybe use the download client library to download it, you can use the following URL:

    https://nrfconnectsdk.s3.eu-central-1.amazonaws.com/fmfu_1.3.1.bin

    You can look at the sample https://github.com/nrfconnect/sdk-nrf/tree/main/samples/nrf9160/http_update/full_modem_update for reference.

    /Andreas

  • Hi Andreas,
    Thanks for reply .after reading I downloaded the .bin file from https://nrfconnectsdk.s3.eu-central-1.amazonaws.com/fmfu_1.3.1.bin.

    But i OTA failed and give me this error

    2022-03-09T14:54:21.976Z DEBUG modem << D: MQTT_EVT_PUBACK: id = 29191 result = 0
    2022-03-09T14:54:22.345Z DEBUG modem << I: Configuring socket timeout (60 s)
    2022-03-09T14:54:22.362Z DEBUG modem << I: Connecting to dl40-fota.s3-eu-west-1.amazonaws.com
    2022-03-09T14:54:22.982Z DEBUG modem << I: Downloading: fmfu_1.3.1.bin [0]
    2022-03-09T14:54:22.984Z DEBUG modem << D: AWS_FOTA_EVT_START
    2022-03-09T14:54:22.986Z DEBUG modem << AWS_IOT_EVT_FOTA_START
    2022-03-09T14:54:22.989Z DEBUG modem << PSM mode off requested due to FOTA update
    2022-03-09T14:54:23.282Z DEBUG modem << E: Server did not honor partial content request
    2022-03-09T14:54:23.285Z DEBUG modem << E: Download client error
    2022-03-09T14:54:23.287Z DEBUG modem << I: Modem upgrade aborted.
    2022-03-09T14:54:23.290Z DEBUG modem << E: Failed to close modem DFU socket.
    2022-03-09T14:54:23.292Z DEBUG modem << E: Unable to clean up dfu_target
    2022-03-09T14:54:23.294Z DEBUG modem << E: Unable to deinitialze resources used by dfu_target.
    2022-03-09T14:54:23.297Z DEBUG modem << E: FOTA download failed, report back
    2022-03-09T14:54:23.300Z DEBUG modem << E: AWS_FOTA_EVT_ERROR

  • if i use .cbor files  i am getting this error
    I am using nrfConnect sdk 1.5.0

    2022-03-09T15:02:35.224Z DEBUG modem << D: MQTT_EVT_PUBACK: id = 53713 result = 0
    2022-03-09T15:02:36.103Z DEBUG modem << I: Configuring socket timeout (60 s)
    2022-03-09T15:02:36.106Z DEBUG modem << I: Connecting to dl40-fota.s3-eu-west-1.amazonaws.com
    2022-03-09T15:02:36.243Z DEBUG modem << I: Downloading: firmware.update.image.cbor [0]
    2022-03-09T15:02:36.245Z DEBUG modem << D: AWS_FOTA_EVT_START
    2022-03-09T15:02:36.247Z DEBUG modem << AWS_IOT_EVT_FOTA_START
    2022-03-09T15:02:36.250Z DEBUG modem << PSM mode off requested due to FOTA update
    2022-03-09T15:02:37.154Z DEBUG modem << Feeding watchdog
    2022-03-09T15:02:37.269Z DEBUG modem << I: Downloaded 1024/2015653 bytes (0%)
    2022-03-09T15:02:37.271Z DEBUG modem << E: No supported image type found
    2022-03-09T15:02:37.273Z DEBUG modem << E: Unknown image type
    2022-03-09T15:02:37.275Z DEBUG modem << E: dfu_target_init error -134
    2022-03-09T15:02:37.276Z DEBUG modem << E: FOTA download failed, report back
    2022-03-09T15:02:37.278Z DEBUG modem << E: AWS_FOTA_EVT_ERROR
    2022-03-09T15:02:37.280Z DEBUG modem << AWS_IOT_EVT_FOTA_ERROR/nPublication reset to default value/nI: Modem upgrade aborted.
    2022-03-09T15:02:37.282Z DEBUG modem << E: Failed to close modem DFU socket.
    2022-03-09T15:02:37.283Z DEBUG modem << E: Unable to clean up dfu_target
    2022-03-09T15:02:37.284Z DEBUG modem << E: Unable to reset DFU target
    2022-03-09T15:02:37.287Z DEBUG modem << I: Fragment refused, download stopped.

  • Since I don't know what your application code looks like, it's hard to determine the root error.

    I have never seen the issue "Server did not honor partial content request" so I don't really know what that means.

Related