Go to file
Gareth McMullin 4282244fb4 stm32f4: Fixed chunk padding for flash programming. 2012-02-08 20:43:12 +13:00
driver Change driver to work as composite device with two ACM interfaces. 2012-01-08 14:07:09 +13:00
flashstub stm32f4: Fixed chunk padding for flash programming. 2012-02-08 20:43:12 +13:00
hardware Added some missing values and footprints to schematic. 2011-02-09 12:02:00 +13:00
scripts Fixed hexprog.py to work with current firmware 'g' packet. 2012-01-30 22:14:31 +13:00
src stm32f4: Fixed chunk padding for flash programming. 2012-02-08 20:43:12 +13:00
upgrade Added unfinished, untested upgrade tool. 2012-01-18 20:46:35 +13:00
COPYING Added README and COPYING 2011-02-07 11:01:10 +13:00
HACKING Updated README, added HACKING. 2011-02-09 16:56:42 +13:00
README Add note that schematic is created in gschem. 2012-01-27 19:17:15 -05:00

README

=======================================
The Black Magic Debug Project -- README
=======================================

The Black Magic Debug Probe is gadget providing an in-application
debug capability for ARM Cortex-M3 and Cortex-M0 microcontrollers.  It
interfaces with the GDB, the GNU source level debugger over the USB
bus, and communicates with the target microcontroller over either a
JTAG or Serial Wire debug port.

Currently supported microcontrollers:

 - ST STM32 Family
 - TI/LMI Stellaris Family
 - NXP LPC11xx Family


Getting started
===============
The Black Magic Probe is available as a built-up product form Black
Sphere Technologies.  Contact <sales@blacksphere.co.nz> should
you wish to order one.  If you would like to work on the project see
the file HACKING for developer's info.

When connected via USB, the Black Magic probe will enumerate as a CDC-ACM
device which the OS should present as a tty device or serial port.  The
GDB remote debugging protocol is implemented over this virtual character
stream.  To connect your ARM GDB to the target device use the following
commands:

(gdb) target extended-remote /dev/ttyACM0
(gdb) mon jtag_scan
(gdb) attach 1

The command 'mon swdp_scan' may be used to use the Serial-Wire Debug Protocol
instead of JTAG to connect to the target.

Once attached, all the standard GDB commands may be used to start and control
the execution of the embedded application.


Project layout
==============
flashstub/ - Source code for flash programming stubs in target drivers.
hardware/ - Schematic (gschem) and PCB layout for the Black Magic Probe
scripts/ - Python scripts useful for programming devices.
src/ - Firmware source code for the Black Magic debug probe.