Go to file
Uwe Bonnes dc3fd2eb06 Classify debug messages
Firmware BMP with ENABLE_DEBUG=1 will print WARN and INFO as before.
PC-Hosted BMPwill alway print to stderr. Warn is printed unconditional,
INFO, GDB, TARGET, DONGLE and WIRE will print if their appropriate bit in
cl_debuglevel is set via the -v verbose command line argument.
INFO will go to stdout with -t or -l.
2020-06-05 14:59:30 +02:00
driver Add udev rules 2019-01-07 13:32:58 +13:00
libopencm3@89074d6a13 libopencm3: Update to Head March 25 2020 to ease windows compilation #394 2020-03-25 11:04:01 +01:00
scripts Fixed overrun and formatting, when dumping data in swolisten. 2020-04-20 00:19:30 +02:00
src Classify debug messages 2020-06-05 14:59:30 +02:00
upgrade Clarify STM32F103x8 Flashsize handling. 2019-09-01 12:11:51 +02:00
.gitignore Build firmware executables as *.elf file 2020-06-05 14:59:30 +02:00
.gitmodules Changed libopencm3 url to https. 2012-10-24 07:34:30 +13:00
.travis.yml CMSIS-DAP support. 2020-06-05 14:59:30 +02:00
COPYING Added README and COPYING 2011-02-07 11:01:10 +13:00
HACKING Replace README and HACKING with references to the Github wiki. 2014-08-01 21:00:25 +12:00
Makefile Addition of pc-hosted variant and extensions to other targets to support it. 2019-10-08 19:16:12 +02:00
README.md README.md: Mention the PC-Hosted GDB server. 2020-06-05 14:59:30 +02:00
UsingSWO swlink: Enable UART2 for SWO. 2018-10-03 15:19:33 -07:00

README.md

Black Magic Probe

Build Status Discord Donate Kickstarter

Firmware for the Black Magic Debug Probe.

The Black Magic Probe is a modern, in-application debugging tool for embedded microprocessors. It allows you see what is going on 'inside' an application running on an embedded microprocessor while it executes. It is able to control and examine the state of the target microprocessor using a JTAG or Serial Wire Debugging (SWD) port and on-chip debug logic provided by the microprocessor. The probe connects to a host computer using a standard USB interface. The user is able to control exactly what happens using the GNU source level debugging software, GDB. Serial Wire Output (SWO) allows the target to write tracing and logging to the host without using usb or serial port. Decoding SWO in the probe itself makes SWO viewing as simple as connecting to a serial port.

See online documentation at https://github.com/blacksphere/blackmagic/wiki

Binaries from the latest automated build are at http://builds.blacksphere.co.nz/blackmagic

BLACKMAGIC

You can also build blackmagic as a PC hosted application "make PROBE_HOST=hosted"

This builds the same GDB server, that is running on the Black Magic Probe. While connection to the Black Magic Probe GDB server is via serial line, connection to the PC-Hosted GDB server is via TCP port 2000 for the first GDB server and higher for more invokations. Use "tar(get) ext(ented) :2000" to connect. PC-hosted BMP GDB server can talk to the Black Magic Probe itself, ST-LinkV2 and V3, CMSIS-DAP, JLINK and FTDI MPSSE based debuggers.

When connected to a single BMP supported probe, starting "blackmagic" w/o any arguments starts the server. When several BMP supported probes are connected, their types, position and serial number is displayed and the program exits. Add "-P (position)" to the next invokation to select one.

PC hosted BMP also allows to flash, read and verify a binary file, by default starting at 0x08000000. The "-t" argument displays information about the connected target. Use "-h " to get a list of supported options.