Arduino-pro-ide: [ INFO ] Debug functionality: an update

Created on 8 Oct 2020  路  7Comments  路  Source: arduino/arduino-pro-ide

We have received a lot of confusing requests from users who had issues with the Debug feature of this new IDE,
From hard to decipher errors to unsupported hardware.

We are aware of the fact that such functionality can create confusion in both novice and advanced users, so the team and I decided to put together this update.

As we move towards a Beta release (it will be announced when we feel comfortable with giving it the monicker), we have been investigating the behaviour of the included debugger and plan to offer a much better working solution in the near future.
Please try not to ask "are we there yet" every week, just know that we're at work and we're not a big team.

A better debugger is coming, we look forward to releasing it into your hands, but we want it to be good :)

For the current debugger functionality you have to know the following:

  • not every board is supported, in fact only ARM Cortex based boards can work
  • our current lineup (MKR, Nano 33, Portenta H7) has support, somewhere it's flaky
  • support for debug (a debug recipe) must be provided by the platform developer, so please don't ask us to enable debug for boards which we have no control over
  • You CANNOT debug an Arduino UNO or a classic Nano
  • in the current version of the debugger Global variables are not working and setting booleans fails miseraby: the solution is on its way
  • you cannot step into library code, and also this is going to work when we release an update for the debug functionality
  • such update will not necessarily come at the next minor Alpha release

Last but not lease: we know that the debug button in the UI is active no matter which board you select, and we're working on this because we don't like it either 馃槵

Please feel free to ask more questions below, we're more than happy to update this issue and help you get more clarity.

Thank you for reading us
Arduino Tooling Team

Most helpful comment

@ubidefeo I got the CLI work nicely with debugger package on

https://raw.githubusercontent.com/DeqingSun/unoDebugTestPackage/main/package_uno_debug_index.json

Screen Shot 2020-10-14 at 2 14 34 PM

The set up is the same to https://github.com/DeqingSun/Debugging-Arduino-Uno without the VScode part.

However the pro-ide gave me -break-insert: Unknown option ``-function'' . No matter I connect debugger or not.

Screen Shot 2020-10-14 at 2 17 09 PM

All 7 comments

It seems arduino-pro-ide shares a lot of code with VScode.
And VScode actually can debug a uno after this merged PR https://github.com/microsoft/vscode-arduino/pull/685
If there is info for making a debug recipe, I can help to get it added.

hey @DeqingSun
I'll look into that one, introducing DebugWire support would be interested for a lot of reasons.

@kittaakos can you also take a look on the Theia side?

can you also take a look on the Theia side?

What exactly, @ubidefeo?

@ubidefeo I got the CLI work nicely with debugger package on

https://raw.githubusercontent.com/DeqingSun/unoDebugTestPackage/main/package_uno_debug_index.json

Screen Shot 2020-10-14 at 2 14 34 PM

The set up is the same to https://github.com/DeqingSun/Debugging-Arduino-Uno without the VScode part.

However the pro-ide gave me -break-insert: Unknown option ``-function'' . No matter I connect debugger or not.

Screen Shot 2020-10-14 at 2 17 09 PM

@DeqingSun
nice progress on this 馃憤
as we are changing the Debug part of the new IDE we'll investigate this further.
Right now please consider the current debugger as broken, we're working to fix it nicely before next release

@ubidefeo Is there a timeline for the next release? If it can be released in 2 week I will try to use the pro IDE for my class, otherwise I'll keep using VScode for teaching this semester.

@DeqingSun
we have a few rough edges to polish, so cannot guarantee it'll be done in 2 weeks.
Also as we continue working on the language server and code assist I think we'll try to squeeze both feature in a single release.
Our release cycle could be faster, but I'd rather make sure things are exciting for users 馃殌

Was this page helpful?
0 / 5 - 0 ratings