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

  • lolifrog said:
    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)?

    Yes, that should work.

    I would recommend you to capture a sniffer trace of the DFU process with the same ZIP package from a mobile phone running nRF Connect or nRF Toolbox applications. Then you can see the exact commands used by our implementation, and replicate this in your own DFU central implementation.

Reply
  • lolifrog said:
    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)?

    Yes, that should work.

    I would recommend you to capture a sniffer trace of the DFU process with the same ZIP package from a mobile phone running nRF Connect or nRF Toolbox applications. Then you can see the exact commands used by our implementation, and replicate this in your own DFU central implementation.

Children
Related