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!
Use Enter as Serial Monitor keyboard send trigger
arduino/arduino-ide#1402
, arduino/arduino-ide#572
Messages can be sent to the Arduino board via Serial Monitor. In Arduino IDE 1.x, this has always been done by pressing the Enter key. Previously, the Arduino IDE 2.x Serial Monitor required Ctrl+Enter instead. Users found this unintuitive, inconvenient, and inconsistent.
The trigger has now been changed to the standard Enter. Ctrl+Enter continues to work for any who have grown accustomed to the different trigger.
(Thanks @geertvw)
Fix incomplete autoscroll in Serial Monitor
arduino/arduino-ide#1446
, arduino/arduino-ide#972
Previously, the Serial Monitor autoscroll only made the bottom line partially visible.
(Thanks @weshowe)
Add message history to Serial Monitor
arduino/arduino-ide#1562
, arduino/arduino-ide#1404
Messages can be sent to the Arduino board via the input field in Serial Monitor. Previously sent messages can now be loaded into the field by pressing the ↑ and ↓ keys.
(Thanks @skippyuk)
Support all specified delimiters in Serial Plotter input
arduino/arduino-ide#1516
, arduino/arduino-serial-plotter-webapp#12
, arduino/arduino-serial-plotter-webapp#16
, arduino/arduino-serial-plotter-webapp#8
, arduino/arduino-serial-plotter-webapp#13
, arduino/arduino-serial-plotter-webapp#15
Previously, only a limited and inconsistent subset of the field and record delimiters allowed by the Arduino IDE 1.x Serial Plotter were supported.
Give Serial Plotter window focus when selected from IDE
arduino/arduino-ide#1410
, arduino/arduino-ide#1346
The Serial Plotter has its own dedicated window. This window is opened when the button on the IDE toolbar is clicked or Tools > Serial Plotter selected.
Previously, after the window was already open, either of these actions had no effect. This could give the user the impression that the plotter was not opening if they didn't remember they had opened it previously.
The existing window is now given focus when Serial Plotter is selected in the main Arduino IDE window.
(Thanks @sjonnyc)
Remove minimum height of bottom panel
arduino/arduino-ide#1517
, arduino/arduino-ide#308
Previously, an arbitrary minimum height was imposed on the bottom panel that contains the "Serial Monitor" and "Output" views. This required it to occupy a significant amount of the IDE window when open in cases where the window dimensions where small.
The user can now size the bottom panel according to their preferences.
Fix clipping of parts of UI at smaller relative window dimension
arduino/arduino-ide#1517
, arduino/arduino-ide#1515
When the Arduino IDE window was sized to a small dimension, and the interface scale increased, some of the UI components could be clipped, making the IDE difficult to use under these conditions.
Fix intellisense widgets being covered by the bottom panel
Arduino IDE 2.x has an autocomplete functionality. While writing code, the user can select from a list of completions generated by the IDE. Previously, if the line of code being written was located near the bottom panel of the IDE window, this menu was truncated at the margin rather than overlapping over the panel.
Always show controls on Boards and Library Manager entries
arduino/arduino-ide#1568
, arduino/arduino-ide#1575
, arduino/arduino-ide#1455
, arduino/arduino-ide#1403
, arduino/arduino-ide#1425
Previously, the version menu and "INSTALL" button appeared when the mouse pointer was hovered over an entry in Boards Manager or Library Manager. This behavior was identified as a frequent cause of bugs and unpleasant user experiences, as well as not conducive to accessibility.
The controls are now always shown on the Boards and Library Manager entries.
(Thanks @JimEli)
Sort official libraries and platforms at top of Library/Boards Manager
arduino/arduino-ide#1541
, arduino/arduino-ide#1106
In addition to the huge number of 3rd party libraries and boards platforms contributed by the Arduino community, Arduino maintains a collection of libraries and platforms.
In order to make them easy to find, these are now listed at the top of the listings in Boards Manager and Library Manager, as done in Arduino IDE 1.x.
Only download package indexes after change to "Additional Boards Manager URLs" preference
arduino/arduino-ide#1418
, arduino/arduino-ide#1156
After the user adds a new URL to the "Additional Boards Manager URLs" preference, the IDE must download the package index file from the provided URL in order to update the entries in Boards Manager.
Previously, the Library Manager index was also downloaded at this time unnecessarily. Due to the large number of Arduino libraries, that index is quite large and so avoiding downloading it makes the index download process faster.
Don't download indexes on startup if downloaded recently
Previously, the indexes used by Boards Manager and Library Manager were downloaded on every startup. In cases where the IDE had been started recently, this was unnecessary. The download will now be skipped if the last download was more recent than 4 hours.
Support http://boardsmanager
and http://librarymanager
links in sketch comments
arduino/arduino-ide#1481
, arduino/arduino-ide#1442
Arduino IDE 1.x supports the opening of Boards Manager or Library Manager with a search query loaded by clicking a link with a special form in a comment in the sketch:
https://arduino.github.io/arduino-cli/latest/sketch-specification/#libraryboards-manager-links
Support for these links has been added to Arduino IDE 2.x.
In addition, the feature has been enhanced:
- The "Type" filter is set according to the first component of the URL path.
- For Library Manager links, the "Topic" filter is set according to the second component of the URL path.
Fix IDE lagging when sketch has very long line
arduino/arduino-ide#1450
, arduino/arduino-ide#1343
In cases where sketches contain automatically generated data such as images, lines of code may contain huge numbers of characters.
Previously, opening such a sketch would make the IDE UI laggy or even unresponsive. These sketches can now be used in the IDE without any performance problems.
(Thanks @andrewashe)
Create sketchbook folder on startup if missing
arduino/arduino-ide#1448
, arduino/arduino-ide#1445
Previously, after a first install, the user was unable to adjust preferences until they had manually created or set a sketchbook folder.
The IDE will now automatically create the folder if it does not already exist.
Allow translation of all IDE UI text
arduino/arduino-ide#1449
, arduino/arduino-ide#1431
Thanks to the valuable translation work from the community, the Arduino IDE interface is now localized to 17 languages. Previously, some menu items and other UI components could not be translated and so remained in the default English language despite full translation coverage for that language.
Update translations
arduino/arduino-ide#1449
, arduino/arduino-ide#1496
The community work to make Arduino IDE accessible to everyone in the world continues, attaining high coverage levels for several languages.
In addition to the ongoing work on the languages present in previous versions of Arduino IDE 2.x, the following languages have been added:
- Bulgarian
- Hungarian
- Korean
- Polish
- Russian
- Turkish
- Ukrainian
If you would like to contribute to the Arduino IDE translations, please see the information here:
Sort board menus according to order specified by platform author
arduino/arduino-ide#1520
, arduino/arduino-ide#802
Previously, the boards were sorted in alphabetical order under the Tools > Board submenus. It sometimes makes sense to place boards into logical groupings or order by importance. For this reason, the boards platform author is now given control over the order of the boards, as was already done in Arduino IDE 1.x.
Allow uploads without a port selection
arduino/arduino-ide#1564
, arduino/arduino-ide#770
Some Arduino boards do not produce a port and their upload method has no need for one. Previously, the upload button was disabled when no port was selected in the IDE. It was necessary for the users of these boards to select an arbitrary port unrelated to the board as a workaround in order to be able to upload.
A port selection is no longer required to initiate an upload process. In cases where a port is required, the problem will be communicated to the user by error messages shown in the notification and output.
Allow customization of default sketch
arduino/arduino-ide#1559
, arduino/arduino-ide#
When a new sketch is created, Arduino IDE populates it with the bare minimum empty setup
and loop
functions.
Some users may wish to adjust this code. That is now possible by specifying the path to a file containing the custom content in the advanced settings:
- Press the Ctrl+Shift+P keyboard shortcut (Command+Shift+P for macOS users) to open the "Command Palette".
- Select the "Preferences: Open Settings (UI)" command from the menu.
- A "Preferences" tab will now open in the IDE. In the "Search Settings" field, type
arduino.sketch.inoBlueprint
- Add the path to the file containing your custom new sketch content in the field under the "Sketch: Ino Blueprint" setting.
- Click the X icon on the "Preferences" tab.
- Select File > Quit from the Arduino IDE menus.
- Start the Arduino IDE.
(Thanks @dougp)
Communicate problem to user when attempting to open an invalid sketch via file association
arduino/arduino-ide#1563
, arduino/arduino-ide#964
In order to be valid, an Arduino sketch must contain a file with name matching the folder. Users who are not aware of this fact might try to place sketch files in folders of arbitrary names.
Previously, when opening such an invalid sketch via file association was attempted, it failed silently, with the IDE simply opened as it would have with no sketch argument.
The IDE now clearly communicates the problem to the user and offers to move the file to an appropriately named folder.
Fix spurious "Unable to watch for file changes in this large workspace" warnings
arduino/arduino-ide#1409
, arduino/arduino-ide#39
Previously, the IDE would occasionally show an "Unable to watch for file changes in this large workspace" warning notification which had no significance.
Fix missing port label in Board Selector menu
arduino/arduino-ide#1412
, arduino/arduino-ide#1383
Under certain conditions, the port label (e.g., "COM42") was not shown in addition to the board name in the "Board Selector" menu on the IDE toolbar.
Show "Configure And Upload" dialog again on next attempt after failed upload
arduino/arduino-ide#1415
, arduino/arduino-ide#1386
It may sometimes be necessary for the user to provide additional information to the IDE in order to do an upload. For example, the password for doing an authenticated OTA upload. The IDE shows a dialog to gather this information from the user.
For the sake of convenience, that information is cached. If the information is not correct, the upload may fail. The IDE now shows the dialog again on the next upload to allow the user to update the information.
Move primary button to the right side of dialogs
arduino/arduino-ide#1382
, arduino/arduino-ide#1368
For the sake of consistency, the primary button is now always placed rightmost in the custom Arduino IDE dialogs (as is the custom on Linux and macOS).
Buttons on native dialogs continue to be placed according to conventions of the user's operating system.
Fix spurious IDE update notifications when using snapshot or nightly builds
arduino/arduino-ide#1492
, arduino/arduino-ide#1440
Previously, users of the recent nightly or tester builds would receive "update" notifications for Arduino IDE 2.0.0, even though the version in use was newer than 2.0.0.
Fix manual update check failing when automatic update checks are disabled
arduino/arduino-ide#1490
, arduino/arduino-ide#1437
The user can manually trigger a check for an available Arduino IDE update by selecting Help > Check for Arduino IDE Updates from the IDE menus. Previously, this failed if the user had disabled automatic update checks in the advanced settings.
(Thanks @sterretje)
Give dialog controls focus on open
arduino/arduino-ide#1472
, arduino/arduino-ide#1373
When a dialog is opened, the controls should be given focus so the user can immediately operate them via the keyboard. Previously, this was not done in some of the IDE dialogs.
Fix silent failure when attempting to open deleted sketch from menus
arduino/arduino-ide#1333
, arduino/arduino-ide#53
The IDE lists sketches in the File > Examples and File Sketchbook menus. If the user deletes a sketch externally while the IDE is running, it is possible for sketches to be listed in the menus which don't actually exist. Previously, attempting to open such a sketch would fail silently, not communicating the problem to the user.
Update built-in example sketch formatting for IDE 2.x auto format
arduino/arduino-ide#1519
, arduino/arduino-ide#58
The change to a new code formatting tool in Arduino IDE 2.x resulted in some changes to the code style produced by the IDE's Edit > Auto Format feature.
The example sketches accessed via the File > Examples > Built-in examples section of the IDE menus have been reformatted to align with this code style.
Fix formatting of editor hover
arduino/arduino-ide#1504
, arduino/arduino-ide#1503
When the user hovers the mouse pointer over a code component in the IDE editor, a "hover" appears which shows information about that code. This information is separated into sections with horizontal rules.
Previously, the spacing of the horizontal rules relative to the text was incorrect.
Full changelog here:
https://github.com/arduino/arduino-ide/releases/tag/2.0.1
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: