VisualGDB 5.5 Preview 4 is out

Today we have released VisualGDB 5.5 Preview 4 focusing on various GUI and usability improvements. In this post I will give you an overview of the new version’s highlights.

IntelliSense-like Popups across VisualGDB Project Properties

If you have a non-trivial project setup with VisualGDB, that involves multiple users, or custom actions, you have probably been to a situation where a misspelled variable or path caused weird errors and took some time to locate. The new VisualGDB build makes such error much less likely by introducing suggestion popups across the VisualGDB Project Properties and QuickDebug GUI:

The suggestions will show the values of the internal variables, as well as file and folder paths both on Windows and Linux sides, depending on the setting you are editing:

We have also redesigned the Build Variables view making it searchable and adding the display of variable modifiers:

Redesigned Quick Debug GUI

The Quick Debug Window allows using VisualGDB to easily debug projects built with other IDEs, command line tools, or just launch gdb, manually connect it to the target and let Visual Studio take over the session once it’s ready. This feature has been around since the early versions of VisualGDB and was gradually getting more and more settings, making them harder to navigate.

The new VisualGDB 5.5 Preview 4 includes a fully redesigned Quick Debug window with better grouping of settings and native support for the high-DPI displays. It also allows debugging embedded devices without installing the SDKs for them, as long as you can manually configure the underlying debug tool (such as OpenOCD):

Deployment Error Diagnostics

If you have ever used a cross-compiler to build code for an embedded Linux board, you know how much faster it is compared to native builds. However, it is also easier to break, since insufficient permissions or invalid paths could easily trigger weird SSH/SCP errors. Previously VisualGDB was simply reporting those errors “as is”, often leading to the dreaded LIBSSH2_ERROR_CHANNEL_FAILURE message. The new Preview 4 is smarter than that. When it encounters an SSH channel error, it will automatically check for common error conditions and will display a much more meaningful message:

It will also allow rechecking the entire deployment setup and will show all the deployment issues in all related projects at once:

Better Hardware Register Viewer

We have also redesigned the Hardware Registers window, improving its view on high-DPI displays. If your target supports background memory reads (most ARM targets do),  you can now tag some registers as “live” and VisualGDB will update their contents even when the target is running:

VisualGDB will also show history popups for registers that were recently changed. It will now also allow quickly viewing the recently used registers, not just the ones explicitly marked as favorite:

Generating .bat files for MSBuild projects

If you were hesitant to upgrade your projects from GNU Make to MSBuild because you need to build them on a machine without Visual Studio, you don’t need to worry about this anymore. VisualGDB 5.5 Preview 4 can automatically generate a batch file that can build your project by running the compiler directly:

Single-file Builds for Advanced CMake Projects

The new Preview 4 build also supports building, assembling, or preprocessing individual source files for Advanced CMake-based projects. This works with both GNU Make and Ninja (including CMake-based ESP-IDF projects):

Better Custom Shortcuts

If you have not been using VisualGDB’s Custom Shortcuts to automate repeating project maintenance tasks, consider giving it a try. If you have, we have a small improvement for you. VisualGDB now allows selecting which shortcuts should be displayed in complex multi-project solutions. You can choose between the active project (i.e. the project of the current source file), the startup project, or all VisualGDB-based projects in the solution:

Give It a Try

VisualGDB 5.5 preview 4 includes many other improvements. It supports importing SW4STM32/STm32CubeID projects, enables profiling RAM-based builds, improves build message parsing performance and much more. You can download the new preview build on the download page. If you have any feedback, don’t hesitate to reach us out via our support form or the VisualGDB forum.