This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Problems in transfer of a firmware image

Hi All,

I have transferred an init packet and now prepare to transfer a firmware image.

Both central master and peripheral are nrf52840.

However, I have two questions.

1.When I send create command{0x01,0x02,0xb8,0xb9},I get {0x60,0x01,0x04} which means not enough memory for the data object. The picture below is the LOG when 

I send select command and create command. I have no idea about how to solve the problem.

2.If I get a correct return after sending create command, Which file should I send?(I guess only .bat flie?) 

Best regards,

Steven

Parents
  • Hi,

    Are you implementing a BLE central for performing DFU between two nRF52840 devices? Which SDK version are you using?

    The Message sequence charts for Secure DFU over BLE can be found in the SDK documentation. If you get a response that the object cannot be created due to it being too big, there is most likely not enough free space in flash to store the object. Do you have much free space in the device?

    2.If I get a correct return after sending create command, Which file should I send?(I guess only .bat flie?) 

    Do you mean .bin file? You should send the binary data in pieces as described in the MSC.

    Best regards,
    Jørgen

  • Hi Jørgen,

    Are you implementing a BLE central for performing DFU between two nRF52840 devices?

    Yes I want to send firmware image from central to peripheral by BLE, both of them are nRF52840 devices.

    Which SDK version are you using?

    nRF5_SDK_16.0.0

    Do you have much free space in the device?

    After I send select command (0x06 0x02), I receive 60-06-01-00-10-00-00-00-00-00-00-00-00-00-00.I know the maximum object size is 4kB (0x1000 bytes). However,my firmware image(.bin file) is about 47kB, if I send all 47kB file and 0x03 to the peripheral, I will receive 60-03-01-f0-0f-00-00-66-ee-47-e7. I guess I need to create another object to send the rest .bin file? I wonder if I need to send create command(01-02-00-10-00-00) every time before sending firmware image(.bin file)?

    Do you mean .bin file? You should send the binary data in pieces as described in the MSC.

    Yes,I mean .bin file.

    Best regards,

    Steven

Reply
  • Hi Jørgen,

    Are you implementing a BLE central for performing DFU between two nRF52840 devices?

    Yes I want to send firmware image from central to peripheral by BLE, both of them are nRF52840 devices.

    Which SDK version are you using?

    nRF5_SDK_16.0.0

    Do you have much free space in the device?

    After I send select command (0x06 0x02), I receive 60-06-01-00-10-00-00-00-00-00-00-00-00-00-00.I know the maximum object size is 4kB (0x1000 bytes). However,my firmware image(.bin file) is about 47kB, if I send all 47kB file and 0x03 to the peripheral, I will receive 60-03-01-f0-0f-00-00-66-ee-47-e7. I guess I need to create another object to send the rest .bin file? I wonder if I need to send create command(01-02-00-10-00-00) every time before sending firmware image(.bin file)?

    Do you mean .bin file? You should send the binary data in pieces as described in the MSC.

    Yes,I mean .bin file.

    Best regards,

    Steven

Children
No Data
Related