cancel
Showing results for 
Search instead for 
Did you mean: 

64kb flash file on a 128kb device

Haavard Guttormsen
Associate
Posted on October 16, 2017 at 10:52

Hi, I have a board with a STM32F103C8T68 (64kb) cpu and I have produced a series of boards with wrong CPU STM32F103CBT6 (128kb).

I have a flash file for the 64 kb edition. Is there an easy way to get the hex file to run on the 128Kb version?

4 REPLIES 4
Posted on October 16, 2017 at 11:29

Does it not run? Do you have any internal dependencies on the size of the flash sectors?

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Posted on October 16, 2017 at 11:41

This is  a code for a led driver. It receives commands on a com port and drives 3 multi colored LED's with PWM .

The original part was a 64 kb device. We do not have the source code.

I have the programming HEX file from the factory and I can read out the file from a working device.

When I compare files they are all identical.

https://www.dropbox.com/s/74mu9e9mh5d3oih/test.bin?dl=0

 

https://www.dropbox.com/s/qudaqra7eyws5ii/test.hex?dl=0

 
Posted on October 16, 2017 at 14:23

I don't know how complex the application is, perhaps rewriting it is an option.

Or, use gcc based toolchain for ARM, and do a 'objdump' to disassemble the code.

Your name doesn't sound far-eastern, so I guess no IP issues are involved with reverse engineering ... 😉

Posted on October 16, 2017 at 15:14

I'll assume you're here because it doesn't work...

The higher functioning part should have more features and do everything the lower part does, the only thing I recall changing/managing on assorted F1 targets was the flash sector sizes.

Have you tried running this on debugger?

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..