My modules have 512kB ROM capacity for application size. I wonder if for DOTA to work it is neccesary to limit the application size to half (256k).
It seems logical to me as I assume the module needs some different extra space to save the downloaded code so a safe removal of the old one can be done.
Actually my code is 257828 bytes, so as you can see I’m very close to 256k.
In case of OS 6.55 you can go as far you reach the AD space size or the defined application ROM size. the maximum DOTA capable config is 768 KB data storage and 768KB appli ROM space. (configurable with AT+WOPEN=6)
In case your OS 6.50 you can update your whole 512 KB space, but i think you can’t configure that size.
Anyway, we can hardly use OS 6.55 or 6.50 soon, because Wavecom not accept orders for the old 24 series anymore, so the only option in that form size is the new 24NG series and it runs OS 6.57.
So you are saying that if for instance my code size running on the module is about 450KB, I can DOTA and install a new code about the same size ?
The reason I ask is because the module has to have some extra space differente than the space where the running code resides so it can assure the module can be recovered in case of a failing DOTA transfer or a corrupted firmware download. I’m not sure how can the module achieve this if the remaining free code space is not enough for the new app. to be saved.
I got the answer from Wavecom:
The code size HAS TO LIMIT TO HALF THE TOTAL CODE SPACE in order for DOTA I to work.
So in my case: 512KB code space implies that my code can not exceed 256KB for DOTA I to work.
Sorry for the wrong suggestion. I used OS 6.50 very long ago.
“I assume the module needs some different extra space to save the downloaded code so a safe removal of the old one can be done.”
And in this case you have one instance of the old appli and two instance of the new appli in the flash space. Would not be nicer to simply (test) load the new application from an other address? ( from the AD space where you put it )
I think this kind of loader is implemented from OS 6.55, where you have much more space for DOTA. However, the real situation might be little more complicated because of compressed files.
Well, I think I got a bit confused.
Now I see I missunderstood the available space for code and for dowloading:
I forgot that the downloaded code is not downloaded on the same space as where the actual running code is. The downloaded code is stored on a different place, the A&D, so my assumptions about the code size being limited to half the code space ARE WRONG.
In order for DOTA 1 to work, your code size can be as large as your free A&D space is.
So, on OS6.51:
Space for code :512K
Space for A&D: 512K
Meaning that if I don’t use the A&D space, my code can be as large as 512K and I will still be able to DOTA 1.