How to flash firmware: Difference between revisions

From STorM32-BGC Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 18: Line 18:
:RC-1 = Uart1-Tx -> connect it to Rx of the usb-ttl adapter
:RC-1 = Uart1-Tx -> connect it to Rx of the usb-ttl adapter


'''Comment:''' neither a 5V nor a 3.3V nor any other power pin on the usb-ttl adapter is used... only three wires running from adapter to board
'''Comment:''' neither a 5V nor a 3.3V nor any other power pin on the usb-ttl adapter is used... only three wires running from adapter to board<br/>
'''Comment:''' for v0.17/v1.1 boards the pin assignment differs, see [http://www.olliw.eu/storm32bgc-wiki/index.php5/Boards]
'''Comment:''' for v0.17/v1.1 boards the pin assignment differs, see [http://www.olliw.eu/storm32bgc-wiki/index.php5/Boards]



Revision as of 04:01, 25 February 2014

The following describes the process of flashing firmware onto v1.1 and later boards.


Flashing firmware using a usb-ttl adapter

1. you need a standard usb-ttl adapter (FTDI, CP2102,...), ensure that it's working (drivers installed etc.)

2. you don't have to worry if it's a 5V adapter or not, the pins we're going to connect the adapter to are 5V tolerant

3. the adapter has to be connected to UART1, which is NOT the port labelled UART on the board, the correct pins are found on the port labelled RC! Namely:

RC-GND = GND -> connect it to GND of the usb-ttl adapter
RC-0 = Uart1-Rx -> connect it to Tx of the usb-ttl adapter
RC-1 = Uart1-Tx -> connect it to Rx of the usb-ttl adapter

Comment: neither a 5V nor a 3.3V nor any other power pin on the usb-ttl adapter is used... only three wires running from adapter to board
Comment: for v0.17/v1.1 boards the pin assignment differs, see [1]

4. the board should be powerd via the USB plug or through a battery/power supply connected to the BAT pins (only experts who know what they're doing should use any of the 3.3V pins on the board)

5. run the GUI and go to the "Flash Firmware" tab

6. select the correct board and desired firmware version from the selectors, or browse to a specific hex file

7. select "System Bootloader @ UART1" in the STM32 programmer field

8. select the COM port which your usb-ttl adapter is connected to

Comment: if you're not sure which the correct COM port is, then disconnect the usb-ttl adapter from the PC, inspect the drop-down list in the GUI and memorize the available COM ports, connect your adapter and wait until its enumerated by Win, finally inspect the drop-down list and chose the newley added COM port

9. if required or desired check the "Perform full chip erase" check button

10. this is now important: before hitting the "Flash Firmware" button one has to get the board prepared to be ready for being flashed. For that, with the board connected to power, one has to

  • press and hold down both the Reset and Boot0 buttons (the exact sequence of when which button is pressed is irrelevant, as long as they're both hold down)
  • then, release the Reset button while still holding down the Boot0 button
  • then, release also the Boot0 button

This may sound complicated, but one will quickly realize that this can be done by "rolling" the finger tip from the left to right.

Comment: both leds will stop flashing... they should appear "dead"

11. finally, hit the "Flash Firmware" button


Now a black window (DOS console) should open and run the flash loader program. Wait until it's finished (takes a couple of seconds).


Comment: If the verify fails then check the "Perform full chip erase" check button and repeat, this will however also erase any setting which you might have stored before, in that case save the settings beforehand using the option in the "Setting" menu.



STMFlashLoaderOlliw Error


Error: mfc110.dll is missing msvcr110.dll is missing Application Was Unable To Start Correctly (0xc000007b)

Solution: ich habe das cpp mit Visual Studio compiliert

ich habe nun ide Info gefunden "If you want the program to run on another computer as well, that computer must have VC++ Runtime libraries installed. C++ programs built using Visual Studio require them. You won't need it on your machine because it gets installed with Visual Studio. But you can't expect your clients to have it. Download Link: http://www.microsoft.com/en-us/download/details.aspx?id=30679"

-> hin gehen: http://www.microsoft.com/en-us/downl....aspx?id=30679 und das installieren auf dem win x64 wo das vorher genau deine Fehler gemacht hatte, habe ich einfach vcredist_x86.exe gestartet, danach startete "mein" Flashloader