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

nRF52 single bank: REMOTE DFU INVALID CRC ERROR

Hi,

I've been trying to get DFU updates working on my device for a while now... I've got the single-bank bootloader compiled and seemingly working (and a combined hex file of sd+bootloader+app works great).

I used nrfutil (3.10.0.14) to create a zip file based on my application:

nrfutil.exe dfu genpkg dfu.zip --application firmware.hex --application-version 0xff --dev-revision 1 --dev-type 1 --sd-req 0x81

I can now upload the zip from my phone, and it gets all the way to 99% and then fails with: REMOTE DFU INVALID CRC ERROR

Any idea what could be causing this? Presumably nrfutil is calculating the CRC (in manifest.json and the .dat file), and this is going straight to the bootloader... What could be confusing things? Is something else part of the crc?

Parents
  • I tried to flash your full hex file. I can't get it to advertise. Tried to reset and holding down buttons.

    I tested the gcc compiled bootloader in SDK 11.0.0. Seems to be working fine. Could you test it?

    Edit: Sorry. Got it working now. I got the REMOTE DFU INVALID CRC ERROR when doing DFU with espruino_1v86.90_nrf52832_dfu.zip. Then I tried with with ble_app_hrs, this zip, and that worked fine. No error.

    But you got the error witha smaller image as well? And with the unmodified dual bootloader from the SDK?

  • Really? I just saved the file espruino_1v86.90_nrf52832_full.hex linked above onto the board and it works great, appearing as Espruino NRF52832DK normally, and DfuTarg when reset with BTN1 held down. You can also connect via Serial at 9600 baud. Do you not get that? I've provided similar firmwares to others and they haven't had any trouble.

Reply Children
No Data
Related