VisualGDB supports debugging embedded hardware through integration with third-party GDB stubs. Most popular devices can be configured by just selecting the debug method and the device settings in VisualGDB project wizard and project properties.
For ARM devices VisualGDB supports the following debug methods:
- Segger J-Link
- Texane ST-Link
For out-of-the-box debugging experience we recommend using Segger J-Link devices with the Segger debug method.
If you are using a different JTAG/SWD programmer, use OpenOCD as it provides the most functionality.
If you are using ST-Link and your device is not supported by OpenOCD or does not work with it, try the Texane ST-Link tool, however it supports fewer features than OpenOCD.
Normally the only thing to configure when using Segger J-Link is the location of your J-Link software package:
The J-Link software is provided and supported by the J-Link manufacturer, so it normally works out-of-the-box.
OpenOCD is an open-source debugging tool with a large community that supports most popular devices and USB programmers. VisualGDB provides easy configuration templates for most of them, so all you need to do is connect your JTAG/SWD programmer and select it in the “USB Devices” view:If your device is not listed, OpenOCD may still support it through one of 500+ scripts shipped with it. Simply select “Debug Methods” and search for a script for your device:
If you are using a very rare device, the OpenOCD community may still have a user-contributed script for it available online. Please search online for an OpenOCD script for your device or contact our support for assistance.
The recommended debug method for MSP430 devices is the gdbproxy++. This is an open-source tool maintained by Sysprogs that allows debugging devices supported by the MSP430 debugging DLL:Note: the core debugging functionality is implemented in the msp430.dll file provided by TI. If your device does not work with msp430-gdbproxy++, please replace the msp430.dll file with a newer version from TI.
Other device families
If you are not using an ARM or msp430 device, then you need to download the GDB stub for your programmer. A GDB stub is a program provided by the programmer’s manufacturer that connects to the programmer and then accepts connections from GDB via a TCP port allowing it to communicate to your device. Once you download the GDB stub, select “Custom GDB stub” in VisualGDB debug settings:
Then specify the following parameters from the GDB stub documentation:
- The path to the GDB stub program
- Any additional arguments (e.g. device name)
- TCP port where the stub will be listening for connections from GDB