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

nRF52 ANT DFU, hangs at wait_for_events()

Hello, I'm trying to implement a buttonless DFU via ANT for a custom nRF52 board. I've got the 212 v4.02 Softdevice and I'm using the 14.0.0 SDK. I am able to transmit and receive via ANT, I am able to go into my bootloader, and I can progress through the bootloader until I hit the "err_code = bootloader_dfu_start();" line. This function progresses until it hits "wait_for_events()". At this point it just hangs waiting for (I assume) an ANT event that never occurs.

When I attempt to connect to the device via "OTAUpdater.exe" I am unable to, thus no ANT event. I set the manufacturer ID and product ID to wildcard (0), select nRF52 as the platform, and it is unable to see my board. When the ANT-FS in the bootloader times out (~2 minutes via default setting), it kicks me back to my main program code, at which point ANT broadcasting starts working immediately.

I am able to perform an OTA update on my nRF52 DK using the same method I am trying with my custom device. Any suggestions?

Parents
  • You were correct, I needed to add the ANT_FS_NETWORK_KEY (and I added the ANT+ network key too). Now I am able to connect to the device, but I am unable to upload an image. It says I have 421888 free space, and my .hex is only 49152.

    When I look at the ao_debug_ANTFSHost.txt file, it shows the device being found, has data, has upload enabled, is not in pairing mode, and is a match. It shows some pinging, downloads, and requests, and then it starts "Requesting Upload..." and continues to do so until it says:

    " 36.156 { 2422468}: ANTFSHostChannel::Upload(): Timeout. 36.156 { 2422468}: ANTFSHostChannel::UploadLoop(): RETURN_FAIL - 2412937 36.281 { 2422593}: ANTFSHostChannel::Upload(): Tx error sending upload command."

    At this point I lose connection and I am unable to reconnect without restarting the device and putting it back into bootloader DFU mode. What should I do to solve this?

Reply
  • You were correct, I needed to add the ANT_FS_NETWORK_KEY (and I added the ANT+ network key too). Now I am able to connect to the device, but I am unable to upload an image. It says I have 421888 free space, and my .hex is only 49152.

    When I look at the ao_debug_ANTFSHost.txt file, it shows the device being found, has data, has upload enabled, is not in pairing mode, and is a match. It shows some pinging, downloads, and requests, and then it starts "Requesting Upload..." and continues to do so until it says:

    " 36.156 { 2422468}: ANTFSHostChannel::Upload(): Timeout. 36.156 { 2422468}: ANTFSHostChannel::UploadLoop(): RETURN_FAIL - 2412937 36.281 { 2422593}: ANTFSHostChannel::Upload(): Tx error sending upload command."

    At this point I lose connection and I am unable to reconnect without restarting the device and putting it back into bootloader DFU mode. What should I do to solve this?

Children
No Data
Related