Hi,
I am trying to implement DFU on the eval board (MCBSTM32 ver 5.1.1)
I have installed the driver that comes with the app note on STMicro's website. I am confused with the hardware aspect of the implementation. As I understand from the documentation, USB COM is used for implementing the DFU which is shared by power supply to the eval board.
My objective is to start with the Blinky example and work my way up to implementing on our PCBA. However, the Blinky example in C:\Keil\ARM\Boards\ST\CQ-STARM2 only works with CQ-STARM2 board. I can't seem to find information about this board on your website either. Appreciate if someone could point me in the right direction in getting me started.
Thanks,
"STM32 - building user application for DFU" http://www.keil.com/forum/docs/thread12457.asp
"As I understand from the documentation, USB COM is used for implementing the DFU which is shared by power supply to the eval board."
ST Micro applies USB DFU class, not USB CDC (COM, as your word).
"I am confused with the hardware aspect of the implementation."
- pull-down BOOT0 and BOOT1 pins - user FLASH memory mode - PB9 pin: 0 - DFU, 1 - run app code CQ-STARM is an additional board for a Japanese magazine, "DesignWave, May 2008", from CQ publishing co.ltd. It mounts STM32F103VB.
On their web page, you can see excerpted chapters of this magazine issue, but in Japanese. www.cqpub.co.jp/.../dwm0126i.htm
In these couple of years, attachment of a tiny MCU board is a fashion of Japanese electronics magazines. And then, they continue related articles for the next 2-3 months. This web page shows the board gallery (in Japanese, too) homepage3.nifty.com/.../sup1.htm
Tsuneo
Thanks for getting back to me Tsuneo. On the MCBSTM32 eval board, the BOOT0 and BOOT1, jumpers are in lower position (between middle pin and GND), so they are pulled down. Not sure I understand PB9 pin in your message. There is a resistor PB9 in the CAN circuitry on the eval board.
Anyway, I have generated the DFU file for the standard Blinky example. Where I am stuck is being able to download the DFU file to the board.
Another issue I want to point out is that when I connect the USB cable to the PC, it is unable to recognize the device. According to section 1.3.2 "Hardware Installation" section of the DfuSe documentation from STMicro (UM0412), I should be able to install the driver file STDFU.INF. I have the driver file but can't associate with the USB device as I don't see the USB device in the listing in my PC.
Appreciate your help,
First of all, you have to FLASH the DFU firmware to the STM32F103xB over a debug adapter, or by the FLASH loader over COM port.
"Flash loader demonstrator" www.st.com/.../13916.pdf www.st.com/.../um0462.zip
"AN2606: STM32F101xx and STM32F103xx system memory boot mode" www.st.com/.../13801.pdf
The DFU firmware is included in STM32F10xUSBLib on this ST Micro site www.st.com/.../devicedocs-STM32F103VB-110.html
STM32F10xUSBLib www.st.com/.../um0424.zip
In above um0424.zip, you'll find the DFU firmware project in this folder USBLib\demos\Device_Firmware_Upgrade\
You may need to customize this project to fit to your board.
Detailed document lies in "4 Device firmware upgrade" section of "STM32F10xxx USB development kit" www.st.com/.../13465.pdf
Thanks for the information Tsuneo. I have been able to modify the DFU program that I got from ST micro website so it will run on KEIL eval board (I don't have ST eval board and only have the KEIL one). I am able to build and download the code on the board and the USB is recognized. I can now open the DFU Manager tool and see the STM device in DFU mode. I also generated the .dfu file for blinky project from KEIL. When I try to upload this blinky.dfu file though, it gets stuck. I get "Target 00: Upgrading - Erase Phase 919%]..." at the botton of the DFU manager screen. Before creating the blinky.dfu, I did make sure to change the settings for the target for the vector offset 0000 3000 and target and linker options to start the flash address at 8003000 instead of 8000000 as I read that the boot loader resides in the address 8000000 to 8002fff.
I would like to get the blinky.dfu downloaded successfully. I appreciate your help. Thanks!
I also tried downloading one of the dfu files that comes in the DFU library from st micro with same outcome, it hangs up during erase...