DOTA ADL_INIT_DOWNLOAD_ERROR message on R7.1b firmware


As the title tells, i receive ADL_INIT_DOWNLOAD_ERROR adl_InitType_e value after completing the DOTA action.

Let me describe from the beginnig. I have just moved to the firmware R7.1b from 663. The dota code is same as 663. I performed dota successfully on 663 firmware. But i can not do a successfull dota on R7.1b firmware. The file is downloaded and adl_adInstall performs a reset but after the reset, i get ADL_INIT_DOWNLOAD_ERROR value which tells dota can not be downloaded.

Where should i start to research about this behaviour on dota? Which topics should i look over?

No - it tells you that the downloaded image could not be installed.

Are you sure that the image hasnt been corrupted in the download?

Are you sure that the image is correct for R7.1b? Does it download OK via AT+WDWL?

Hi awneil,

I use the same file which i can download via AT+WDWL. So the file is correct.

And now i have checked the A&D cell size after i finished ftp download. The cell size is the same as the file size on the ftp. This shows dota file can be downloaded successfully but it can not be installed.

I can not think of anything that i should research. Now what can i do to invent the error?

No: it only shows that you have downloaded the correct amount of data - it does not prove that the data has been corectly stored!

Then how can i know the data is correctly stored or not?

First check if the data received correctly. And because no way to read contents of data cell, you can tx received (writed) data on_the_fly via UART, capture it and compare with original file.

Oh yes you can!

Should i really confirm the stored file while it has the same size with the original file on the ftp? I really can not understand why it does not work as it works on 663 firmware. All the functions seem to be executed correctly and file is downloaded with the correct size. Then what is the problem?

Here is my code flow:

  1. Format A&D space
  2. Connect to FTP
  3. Download the file and write it to A&D cell
  4. Install the file by adl_adInstall

I use v.3.17 ADL with Q24pl, can’t see any adl_ad(READ) functions.

Update: You mean, i can use straight address space reading from pointer, returned by adl_adInfo()? Never know, but can be useful in the future.

If not, you can’t completely concentrate on further investigation. Firmware “special behaviour” maybe…
Why anyway you want to find problem, if you sure problem not exist at all?

This forum bugs… :blush:

Hmm. HTTPS prefix really works?

I have just tried WIP plug-ins sample DOTA project. It gives the same error parameter ADL_INIT_DOWNLOAD_ERROR. Then i thought it is because of the ftp site and i tried to perform dota with old firmware 663 from the same ftp server. And it worked with old firmware&module. So the ftp site is not problematic.

Then what!!! Even sample DOTA project of WIP Plug-In does not work! Anyone tried that? What can the problem be?

Sorry. I’m tied to 6.57h, the last firmware for Q24. Cant check.
.DWL you tryed to download with example is the same example or your main program?

Does the non-WIP DOTA sample work over UART and/or CSD call…?

I could not get what you mean by non-WIP DOTA sample. Both my open at project and wip dota sample can be downloaded through uart with AT+WDWL. But they can not be downloaded through DOTA even if all the bytes are transferred.

I upload an image which shows terminal output messages while terminating WIP DOTA Sample application. Please see the image.

I mean DOTA that doesnt use WIP!

ie, DOTA that uses a CSD call, or DOTA where you implement your own transfer scheme over the UART, etc.

You havent proved that yet!

You have only shown that the correct number of bytes is transferred - you have not yet proved that they are the correct bytes!

Ok so the next step is going to be proving that the transferred bytes are correct. I wonder what i will try if the bytes are correct.

That is fundamental.

I had a similar issue with Q26’s on R74 (upgraded form R71). Apparently some memory addressing bug in R71b.

The DOTA file downloaded correctly, verified through a CRC16 and M2M traces of the AnD write and finalise functions. When calling adl_adInstall() the OS restarted twice in quick succession and registered a “Power up after download failure” init type.

Fixed by resizing AnD space using AT+WOPEN=6,xxx (where xxx is the new size of your AnD space).

That implies that the reason for failure was the incorrect A&D size - not a bug in the firmware, surely?! :confused:

Please clarify!