AnsweredAssumed Answered

A couple of bootloader issues.

Question asked by ronningen.anders on Jun 3, 2015
Latest reply on Jun 4, 2015 by ronningen.anders
On the STM32F429 Discovery I have managed to boot into the bootloader to upgrade the image in flash via I2C. I still have two issues I (or you) need to solve, however.

1. Flash erase.

At first I tried a mass erase of bank 1. That makes the I2C bus busy for ~27 seconds, before I get a Remote I/O error (from linux ioctl) and a NACK.

Then I decided to erase only certain sections. I've managed to erase the 4 sections I need, but only if I do them one by one. If my I2C transaction sets up erase of > 1 section I immediately get a NACK. I've read and reread the instructions on the ERASE command, and can't find anything wrong with my messages.

2. GO

I write my binary image to flash (0x08000000), read it back and verify with a CRC. Then I issue the GO command with the address 0x08000000 and get an ACK from the bootloader, but the image does not start. If I run my program again it does the same, so it is still in the bootloader. If I power off, remove the boot0 pull-up and power on again, it starts from flash with the image I wrote.

Outcomes