# Upgrading application using binary diff?

**URL:** <https://forum.sierrawireless.com/t/upgrading-application-using-binary-diff/5431>\
**Category:** Open AT\
**Created:** [February 2, 2012, 7:41am UTC](https://forum.sierrawireless.com/t/upgrading-application-using-binary-diff/5431 "2012-02-02T07:41:09Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![rudolfl](https://avatars.discourse-cdn.com/v4/letter/r/ecd19e/32.png) [@rudolfl](https://forum.sierrawireless.com/u/rudolfl)\
**Post date:** [February 2, 2012, 7:41am UTC](https://forum.sierrawireless.com/t/upgrading-application-using-binary-diff/5431/1 "2012-02-02T07:41:09Z")

</div>

Hi, all

We currently have a system where we can upgrade our application remotely (we use our own solution, not the Sierra Wireless one). New application is being loaded into flash and we call adl\_adInstall().  
We want to minimise amount of data we are sending down and would like to send down binary patches. The idea is to read existing binary from flash (we know the address), patch it, archive it into DWL file in a different location in the flash and then use adl\_adInstall(). Use of uncompressed binary is no good, as there is not enough space in flash to store new version.  
So, firstly, tell me if I am crazy for even thinking about it?  
If not, did anyone tried to do upgrade with binary patch? Is there any detailed information on DWL file format?

Thanks,  
Rudolf

---

<div class="post-metadata">

**Author:** ![tomridl](https://sea1.discourse-cdn.com/flex025/user_avatar/forum.sierrawireless.com/tomridl/32/2704_2.png) [@tomridl](https://forum.sierrawireless.com/u/tomridl)\
**Post date:** [February 3, 2012, 8:16am UTC](https://forum.sierrawireless.com/t/upgrading-application-using-binary-diff/5431/2 "2012-02-03T08:16:17Z")

</div>

You aren’t crazy, I want to do something similar! You are able to do it when using AirVantage but I asked SiWi, they told me diff updates are only available on AirVantage ☹ There must be a better way then downloading the entire file.
