cancel
Showing results for 
Search instead for 
Did you mean: 

DFUSE customized development

royston
Associate II
Posted on July 09, 2011 at 10:53

Hi,

We need to upgrade the firmware of a STM32 MCU (used in a commercial product) using a proprietary PC application. the STM32 supports the DFU mode and has a PC application called DFUSE which provides the user interface.

We want to integrate commands which DFUSE is using and have a proprietary interface to upgrade the firmware of the ST32. Is there any source code available for the DFUSE utilty or any dll library which can be used for developing the application.

If a library is provide can you share a link to the documentation providing details of API's used.

Does anyone have prior experience in doing this?

Thanks in advance for your replies.

Royston

13 REPLIES 13
Posted on February 10, 2015 at 14:38

Ok, the Discovery Demo isn't designed to be delivered that way, it has an assumed basis of 0x08000000

So it sounds like you haven't done something right. You'd want to confirm where vector and functions are situated via the .MAP. You'd need to examine the vector table content and confirm the values are pointing to the +0x20000 region. You'd want to check the value programmed into SCB->VTOR is actually 0x08020000 and not some other value. Refine your debugging skills.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Linda
Associate II
Posted on February 11, 2015 at 19:54

I use debug to check:  the SCB->VTOR is actually 0x08020000. I tried to change the size of buffer, it did not help.

There is a code size limit to use FW_upgrade? in AN3990 page 12, it says:

With BUFFER_SIZE = 512 * 64 = 32 Kbytes and image size = 990 Kbytes, the

DOWNLOAD operation takes about 12.7 seconds (7.76s erase time + 4.94s program

time).

That means the image size can be at least 990K. right?

And our program are base on the demo. we need to make it with STM32F429I-Discovery_FW_V1.0.1\Projects\FW_upgrade. The dead line of mass production is coming. Could you please help us to make it work?

Thanks a lot

Posted on February 11, 2015 at 21:14

For commercial project you'd want to find a contractor/consultant in your price range and vicinity. I'm not responsible for your deadlines.

If the part has 1MB and your loader is using 128KB (+0x20000), then the largest application space would be 896KB, surely? Does the loader actually take 128KB or could you shrink it down by a couple flash sectors?

For a 2MB part, 1920KB should be possible, but you'd need to review the behaviour of the code, in both the erase routines, and writing ones.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Linda
Associate II
Posted on March 05, 2015 at 16:28

Finally make it work by debbuging.

Thanks