Skip to content

Enhancement: Support for Black Magic Probe debugging? #241

Open
@rpavlik

Description

@rpavlik

I know I saw this once before on the old SF site, but I wanted to bring this up here.

The Black Magic Probe - is both a piece of hardware, and a somewhat-portable firmware (can flash it to ST-Link and some other devices) that implements an SWD and JTAG probe for Cortex-M (and some Cortex-A), and internally implements the GDB server, so that the serial port it exposes to the system can be directly connected to with target extended-remote \\.\com31 or your platform's variant - see https://github.com/blacksphere/blackmagic/wiki/Useful-GDB-commands for high performance and simple usage. It also supports SWO.

A plugin would be useful for a few reasons. One would be auto-selection of serial ports: the CDC-ACM device exposed, since it can be determined from the USB interface number. Another, naturally, would be the same sort of easy configuration of the stuff that usually goes in a GDB init script. The other, would just be getting it to work in modern Eclipse...

I've tried the built-in "GDB Hardware Debugging" plugin (in the latest gnu-mcu-eclipse download - a Neon.3 build) but I'm getting MI errors that suggest it's trying to connect with just the equivalent of remote instead of extended remote. From what I've been able to search, it seems like recent versions of eclipse updated debugging frameworks to DSF and since there is no "standard" alternate plugin left around, there's apparently no way to configure it from the Eclipse GUI; even though, e.g., Visual Studio Code GDB plugin works just as well with it as with the J-Link, with just a different init script. At this point, I'm out of my league in Eclipse, so I'm filing a bug/request as a way of throwing my hands up - the BMP works great if I'm willing to do it all in the terminal, otherwise I basically have to use a nucleo-jlink.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions