If you are using a recent version of the IDE, you will get an auto-update offer simply by starting the IDE.
Otherwise, the release is available for download here:
https://www.arduino.cc/en/software
This release provides some nice advancements and fixes.
Thanks so much to the forum community for all the valuable testing and feedback that has helped us greatly in identifying and investigating these bugs and enhancements!
Fix garbage data periodically sent to board by Serial Monitor
bugst/go-serial#147
, arduino/serial-monitor#31
, arduino/arduino-ide#375
Previously, garbage data was sent to the connected Arduino board at ~1 Hz while Serial Monitor was open.
Note: This fix was applied to the serial-monitor tool, so will have even taken effect in previous versions of Arduino IDE 2.x as serial-monitor is automatically updated.
(Thanks @stleuch)
Fix garbage data sent to board on settings change
arduino/arduino-ide#1703
, arduino/arduino-ide#375
Previously, garbage data was sent to the connected Arduino board when settings (e.g., "Toggle Timestamp") were changed in Arduino IDE.
(Thanks @jarboer)
Fix garbage data printed in Serial Monitor after upload
arduino/serial-monitor#32
, arduino/arduino-ide#927
Previously, garbage data was printed in the Serial Monitor after uploading to the connected Arduino board.
Note: This fix was applied to the serial-monitor tool, so will have even taken effect in previous versions of Arduino IDE 2.x as serial-monitor is automatically updated.
(Thanks @weshowe)
Select primary sketch file by default when opening sketch
arduino/arduino-ide#1676
, arduino/arduino-ide#643
Arduino sketches may consist of multiple files, which are shown in the Arduino IDE as tabs. The .ino
files of the sketch are concatenated before being compiled, starting with the file with name matching the sketch name. The tags are ordered according to the concatenation order. For this reason, it is most logical for the leftmost tab to be selected by default when opening a sketch.
Previously, Arduino IDE instead selected the rightmost tab.
Update the debugger
arduino/arduino-ide#1706
, arduino/arduino-ide#246
Arduino IDE's integrated sketch debugger is provided by the free open source Cortex-Debug VS Code extension.
The extension dependency was updated from version 0.3.10 to 1.5.1.
Required change to debug_custom.json
for J-Link users on Windows
Some additional configuration is required in order to use a J-Link debug probe with the Arduino IDE integrated sketch debugger.
Windows users may need to make a slight adjustment to the debug_custom.json
configuration files in their sketches when updating to Arduino IDE 2.0.3.
Click to see instructions
If you have set the serverpath
field in debug_custom.json
to point to the path of JLinkGDBServer.exe
, for example:
{
"servertype": "jlink",
"device": "ATSAMD21G18",
"interface": "SWD",
"serverpath": "C:/Program Files/SEGGER/JLink/JLinkGDBServer"
}
starting the debugger will now fail with the notification:
Failed to launch undefined GDB Server: Timeout.
The fix is to change the configuration to point to JLinkGDBServerCL.exe
instead, for example:
{
"servertype": "jlink",
"device": "ATSAMD21G18",
"interface": "SWD",
"serverpath": "C:/Program Files/SEGGER/JLink/JLinkGDBServerCL"
}
Fix failure to start debugger when watch expression set
Previously, if a watch expression had been set in the Arduino IDE integrated sketch debugger before starting the debugger, the debugger failed to start, with the IDE showing an error notification:
Request 4 cancelled on connection close
Fix watched variable values not updating
Previously, if a watch expression had been set in the Arduino IDE integrated sketch debugger before starting the debugger, the value shown in the "WATCH" section of the "DEBUG" panel would not update as the sketch ran.
Fix error on disconnect after stopping debugger
Previously, an error that occurred when stopping the Arduino IDE integrated sketch debugger caused it to fail to re-start.
Fix macOS keyboard shortcuts for switching tabs
arduino/arduino-ide#1686
, arduino/arduino-ide#1685
Previously, it was impossible for macOS users to use the keyboard to change focus to a different tab in the Arduino IDE editor and bottom panel.
Update Theia IDE framework
Arduino IDE 2.x is built on the free open source Eclipse Theia IDE framework. This dependency was updated from version 1.25.0 to 1.31.1.
The update fixed multiple known bugs in Arduino IDE 2.x:
arduino/arduino-ide#1613
: "Editor › Guides: Indentation" setting is not persistentarduino/arduino-ide#1077
: "Editor › Padding: Bottom", "Editor › Guides: Bracket Pairs Horizontal", "Editor › Minimap: Scale" settings are not persistentarduino/arduino-ide#571
: "Editor › Hover: Delay" setting is not persistent
(Thanks @Willem43)arduino/arduino-ide#1602
: Scrollbar covers bottom line of Serial Monitor output
(Thanks @weshowe)arduino/arduino-ide#1550
: View toggles to full screen when tab is double clicked
(Thanks @lorandil)arduino/arduino-ide#1498
: View context menu item not internationalizedarduino/arduino-ide#999
: Window title changes to "index.html" during reload
(Thanks @Xinonix)
Allow creation of remote sketch via File menu whenever authenticated
arduino/arduino-ide#1717
, arduino/arduino-ide#1715
Arduino IDE offers an integration with the Arduino Cloud sketchbook. In addition to pulling existing sketches from Arduino Cloud for local use, and pushing changes back to Arduino Cloud, it is possible to create new "remote sketches" in Arduino IDE. One of the ways to do that is selecting File > New Remote Sketch from the Arduino IDE menus.
Previously, this menu item had no effect if the user hadn't opened the "Remote Sketchbook" in the Arduino IDE Sketchbook panel first.
Full changelog here:
https://github.com/arduino/arduino-ide/releases/tag/2.0.3
If you have any questions or feedback please post here in the Arduino IDE 2.x's dedicated forum category:
https://forum.arduino.cc/c/software/arduino-ide-2-0-beta/93
If you want to see the list of known issues, work in progress, submit a formal report, or contribute to development, the IDE 2.x source code is hosted in this public repository: