Renode Specific Configuration Options - Marus/cortex-debug GitHub Wiki

What is Renode?

Renode is an open-source Emulator for embedded platforms. Today, it supports x86 (Intel Quark), Cortex-A (NVIDIA Tegra), Cortex-M, SPARC (Leon), and RISC-V based platforms.

GDB Integration

First, make sure Renode spins a GDB server and bind it to port 3333:

(machine-0) machine StartGdbServer 3333
(machine-0)

A Renode-based launch.json configuration could look like this:

{
    "name": "Renode attach",
    "cwd": "${workspaceRoot}",
    "executable": "${workspaceRoot}/build/binaryToDebug.elf",
    "device": "EFR32MG24",
    "request": "launch",
    "type": "cortex-debug",
    "runToEntryPoint": "main",
    "servertype": "external",
    "gdbTarget": "localhost:3333",
    "toolchainPrefix": "arm-none-eabi-",
    "gdbPath": "arm-none-eabi-gdb",
    "overrideLaunchCommands": ["monitor start"],
    "overrideRestartCommands": ["monitor pause", "monitor runMacro $reset"],
}