Skip to content
| Marketplace
Sign in
Visual Studio Code>Debuggers>Mantissa BridgeNew to Visual Studio Code? Get it now.
Mantissa Bridge

Mantissa Bridge

Mohammadreza Naghibzadeh

|
19 installs
| (1) | Free
Companion to the Mantissa desktop app (mantissadsp.com): exposes the active VS Code debug session to Mantissa's Debugger mode. No configuration; activates automatically when a debug session starts.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Mantissa Bridge — VS Code extension

This extension is mainly a bridge. It connects VS Code to the free Mantissa desktop app, which is where the full analysis lives. (It does ship two small standalone tools — a fixed-point decoder and a waveform snapshot plot — but the app is the point.) Download Mantissa here.

A tiny extension that exposes the active VS Code debug session to Mantissa's Debugger mode, so Mantissa can read your locals, evaluate expressions, and chart fixed-point variable pairs against their float reference while you're stopped at a breakpoint.

What it does

When a debug session starts, the extension:

  1. Opens a localhost-only TCP server on a random free port.
  2. Writes a small discovery file in your OS temp folder (e.g. C:\Users\<you>\AppData\Local\Temp\mantissa-vscode-49823.json) containing the port, your VS Code PID, and the session name.
  3. Speaks a tiny DAP-shaped JSON-RPC dialect — every request is forwarded to the active debug session via VS Code's customRequest API.

When the session ends, the server closes and the file is deleted.

Mantissa scans for those files, finds the port, connects, and you see your session in the picker.

Why?

Mantissa used to ship a gdb plugin that did the same job at the gdb level. It worked, but every install topology (WSL gdb, MinGW gdb, native Linux gdb, lldb on macOS) needed its own probe path, and getting the plugin loaded meant editing ~/.gdbinit and restarting the gdb session.

This extension lives one layer up — inside VS Code — so the install is identical on every OS, and it works for every DAP debugger (cppdbg / lldb / cppvsdbg / debugpy / CodeLLDB / …) instead of just gdb.

Install

From the marketplace (preferred): in VS Code's Extensions panel (Ctrl+Shift+X) search "Mantissa Bridge" and click Install. Or from a terminal:

code --install-extension mantissa.mantissa-bridge

From a .vsix file (e.g. an offline install, or to pin to a specific version):

code --install-extension <path-to-mantissa-bridge-X.Y.Z.vsix>

That's it. There's nothing to configure. Make sure the Mantissa app is installed, start any debug session, and Mantissa's "Search debugger sessions" will list it.

Decode fixed-point values

Mantissa: Decode fixed-point value — right-click a variable in the debug sidebar's Variables (or Watch) panel, right-click a selection in the editor, or run it from the command palette.

While stopped at a breakpoint the variable is read through the active debug session; with no debugger at all you can type a raw integer (hex 0x… works). You get the value decoded at the common Q-formats for its word width, with the LSB and representable range per row; picking a row copies the decoded value. Word width, signedness, and a custom Q are one keystroke away in the same picker.

Conventions match the app's converter: a signed N-bit word with Q fractional bits, so E = (N − 1) − Q and the value is raw / 2^Q. For watching those values change over time, charted against their float reference while you step — that's the Mantissa app.

Plot an array as a waveform

Mantissa: Plot array as waveform draws a one-shot snapshot of an array/buffer at the current breakpoint. Easiest path: right-click the variable in the debug sidebar's Variables (or Watch) panel and pick it from the menu. Also available from the command palette or by right-clicking a selection in the editor (for pointers, use a slice expression — gdb: *ptr@256). If the data is integer you pick a Q-format scale, then a side panel shows the waveform with min / max / mean / RMS. Buffers are capped at 4096 points; anything denser than the pixel grid draws as a min/max envelope.

The plot is deliberately static. Watching it evolve as you step, overlaid on its float reference, with spectrograms and WAV export — that's the Mantissa app.

Settings

Key Default What it does
mantissa.bridge.enabled true Turn the bridge off without uninstalling
mantissa.bridge.host 127.0.0.1 Listen address (loopback by default)

Security

The TCP server binds to loopback only. There's no authentication — any process on the same machine can read the discovery file and connect, just as any process on your machine can already attach gdb to your running debugger. If you don't want that, set mantissa.bridge.enabled to false.

The extension never reaches out to the network. The full source is in the Mantissa repo at mantissa/integrations/vscode-bridge/.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft