Skip to content

Mentioning integration into Arduino IDE 2 in README #585

Closed

Description

@felias-fogg

Meanwhile, the GDB server PyAvrOCD provides a shallow integration into the Arduino IDE 2. When you install one of the debug-enabled Arduino board packages, you can easily activate simavr by selecting simavr as a programmer. And with the SVD pane, you have easy access to all peripheral registers. Using the configuration file pyavrocd.options, you can even pass additional arguments to simavr.

If you go the extra mile and install the VS Code extensions Arduino Maker Workshop and Cortex Debug, you get all the goodies of Cortex Debug, including assembly-level debugging, memory views, ...

In short: You may want to add to your README file that meanwhile there is a shallow integration through PyAvrOCD.

Activity

  1. gatk555 commented on Jul 28, 2026

    @gatk555
    Collaborator

    That certainly makes sense, but as a determined IDE avoider, I am not a good person to do it. Would you consider making a PR? There might be a new section. "integrations", following "Extras", with links and short descriptions. It could also link to PlatformIO, PICSimLab and simutron.

    A somewhat unrelated question: I guess all your modified Arduino cores contain configuration, and perhaps code, to add the simavr programmer. Could that be pulled out and made available as a stand-alone item? It could be hosted here, or linked.

    Also not directly relevant: on your page, https://pyavrocd.io/supported-debuggers/, there is a link to https://github.com/gatk555/simavr#using. A version of that document is now hosted here, and the two versions are likely to diverge more in future. I suggest updating to
    https://htmlpreview.github.io/?https://github.com/@raw/buserror/simavr/refs/heads/master/doc/Intro.html#using

  2. felias-fogg commented on Jul 28, 2026

    @felias-fogg
    ContributorAuthor

    I'll try to come up with a PR for Arduino IDE and PlatformIO. I have not yet worked with PICSimLab and simutron, but can insert a link nevertheless.

    The integration is through the Arduino programmer.txt configuration file:

    simavr.name=Simulator (simavr)
    simavr.debug.cortex-debug.custom.serverArgs.1={debug.toolchain.path}/bin/simavr
    simavr.protocol=This_is_not_a_programmer_but_only_a_signal_to_use_the_simulator_when_debugging
    simavr.program.tool=avrdude
    simavr.program.extra_params=
    

    And that is all. That will tell PyAvrOCD to start simavr using the right arguments. It is definitely abusing the programmer definition, but it works ;-).

    And thanks for the pointers. I'll change the PyAvrOCD documentation.

  3. felias-fogg commented on Oct 11, 2026

    @felias-fogg
    ContributorAuthor

    Sorry for the mess. Here comes the promised PR (without any unintended additional baggage): #593

  4. gatk555 commented on Oct 13, 2026

    @gatk555
    Collaborator

    Merged as [5b08da6].

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions