Emulator company iSystem offers free Cortex debugger. There are couple of options on how to get it. Most intriguing is the DIY option. The design is similar to STM32F4-Discovery board. I successfully managed to make it with the actual Discovery board. Following is how.
To supply the board from device USB port the connection from PA9 to 5V is needed (red wire). Further the BOOT0 needs to be connected to 3V (brown wire) to boot the device in DFU mode after power on. Also, I had onboard debugger disabled.
With these connections I followed the official guide on how to program the initial firmware (with iTAG_Public.exe) to STM simulating J2 (see documentation) with brown wire. There were some problems programming it from 32bit virtual machine. It worked on my 64bit W7 machine. Debugging was later possible in virtual machine.
Debugger works with free iTAG winIDEA IDE. Updating the firmware with winIDEA worked as described.
Output debug signals can be found in iTAG schematics (also available). I connected them to other STM32F4-Discovery board and downloaded the RTOS winIDEA sample to target on the other board for test. Supply for target was taken from debugger board.
|Debugger - target connection (BOOT wire removed)|
|Debugging in winIDEA|
- http://www.isystem.com/products/itag - initial page with winIDEA download link
- http://www.isystem.com/products/itag/itag-instruction/files - downloads page with schematics, guides and program utility
- http://isystem.freeforums.org/itag-f3.html - forum
- Schematics, utility, gerber files, iTAG winIDEA IDE available for free online
- No registration required
- No download size limit
- GCC 4.7.0 compiler build for ARM/Cortex projects included with winIDEA
- No trace functionality
There are two optional connectors on the official iTAG board. They seem like analog and digital extension ports like on some professional tools the company offers. However there are no options to configure them. Also, the SWO signal is connected to UART Rx pin on the debugger. This could mean that SWO trace option was planed. Hopefully the functionality will come with updates.