Arduino for Visual Studio - Release Notes

Recommended download method is from inside the IDE via "Extensions and Updates".

For older releases please register on our Forum, with downloads available on the Beta and AS7 Releases, Previous Releases and Release Notifications.

If downloads do not run then > Right click Open With > Visual Studio Version Selector. If you are running a pre-release please uninstall it from extension manager.

Visual Micro 2 Release 22.11.28.2 - 2nd December 2022 - VS 2017-2019, VS2022

  • NOTE: Ensure Visual Studio is up to date when installing this version of Visual Micro
This update will replace an existing Visual Micro installation. Uninstalling and reinstalling older releases is fully supported. Either version of Visual Micro can be installed.

Older Visual Micro projects will continue to work in the new version, but will not benefit from the new intellisense system. Projects created in the new version will not work in the old version. Existing Visual Micro users will not notice any changes in 2.0 unless the new project type is used.
This update will replace an existing Visual Micro installation. Uninstalling and reinstalling older releases is fully supported. Either version of Visual Micro can be installed.

Visual Micro 2.0 is a compatible update for all current users of Visual Micro. It shares the same license and does not prevent return to older versions of Visual Micro (except for the format of new .vcxproj files created with 2.0). The only difference will come when opening new projects, in this case the Microsoft Visual Studio Linux Workload is used for the new project (.vcxproj), instead ot the standard Microsoft VC++ Workload. This change relates entirely to intellisense, the build process is unaffected. Existing projects will continue to use the VC++ intellisense system. We will release an optional "auto convert" to update the .vcxproj file of existing older projects.

  • ESP32: Fix to ensure additional Filesystem Upload options are shown (Reported Here)
  • Micro Explorer: Added resiliency and logging to help identify rendering issues (Reported Here)
  • Hardware Debugging: Improvement to ensure no conflicts between Board Package Debug configurations and vMicro Debug configurations (Reported Here)

Visual Micro 2 Release 22.11.28.0 - 29th November 2022 - VS 2017-2019, VS2022

  • NOTE: Ensure Visual Studio is up to date when installing this version of Visual Micro
This update will replace an existing Visual Micro installation. Uninstalling and reinstalling older releases is fully supported. Either version of Visual Micro can be installed.

Older Visual Micro projects will continue to work in the new version, but will not benefit from the new intellisense system. Projects created in the new version will not work in the old version. Existing Visual Micro users will not notice any changes in 2.0 unless the new project type is used.
This update will replace an existing Visual Micro installation. Uninstalling and reinstalling older releases is fully supported. Either version of Visual Micro can be installed.

Visual Micro 2.0 is a compatible update for all current users of Visual Micro. It shares the same license and does not prevent return to older versions of Visual Micro (except for the format of new .vcxproj files created with 2.0). The only difference will come when opening new projects, in this case the Microsoft Visual Studio Linux Workload is used for the new project (.vcxproj), instead ot the standard Microsoft VC++ Workload. This change relates entirely to intellisense, the build process is unaffected. Existing projects will continue to use the VC++ intellisense system. We will release an optional "auto convert" to update the .vcxproj file of existing older projects.

  • Intellisense: Major improvements for new Linux projects resolving a wide range of intellisense issues for all boards
  • File>New/Open Arduino project now use the newer Microsoft Linux project type instead of the older VC++ project type. This means that only te smaller Linux C++ workfload is required to be installed. The C++ desktop workload is no longer required except for use with older projects.
  • Serial Monitor: Improved for high volumes of data to prevent freezing/crashing.
  • Serial Monitor: Button Highlights fixed to work accross all Windows Versions/VS Themes
  • Board Manager: Fix ensuring all dependant monitors and discoverers are installed as needed (e.g. Teensy Board Manager Package)
  • Board Manager: Teensy Package now available at the top of the Auto-Discovery List
  • Teensy: Fix ensuring ports are discovered and Serial Monitor works when using Board Manager Package
  • Open Arduino Project: Fix ensuring all files are rediscovered correctly when using File > Open > Arduino Project (or vMicro > Open Existing Arduino Project)
  • Fix: Opening and closing a project without making changes caused save dialog to appear
  • Changing board options has immediate affect on intellisense.
  • Intellisense uses the actual code. In Visual Micro 1x releases the intellisense was not fully GCC compatible. For some boards, this provided a less than ideal experiene. Please let us know if you intellisense in Visual Micro 2.0 to be less than excellent!
  • Using a new intelligent intellisense engine,  previously "Unknown to Visual Micro" architecures are now fully supported. Previous to the 2.0 release, support for some less well known (or very new) architecures was weak.
  • Platform specific plugins, such as for Teensy, have been implemented. This means that packages, such as Arduino 2.0 and Teensy for Arduino 2.0, can provide architecure specific menu suggestions for users of Visual Micro. An example being the different security and debugger options for Teensy 2x, 3x and 4x. This combined with support for "extended board properties" provides a simplerwayt to access some of the more advanced features of Teensy.
  • Serial debugger in tutorial mode: Default breakpoint example trace message changed from 1hz to 4hz.
  • First Use After Installation: Defaults to "Arduino 2" IDE (If using Arduino 1.x the location can still be filled in on the IDE Locations screen)
  • Teensy: Fix to use correct GDB and Security tools across all Teensy Installations (Hardware Folder or Board Manager Package)

  • Prototype Generation: Fix for #define expansions within function variables (Reported Here)
  • Teensy4x: Fix to Encryption Fuse Sketch Compilation (Affected Teensyduino v1.5.6 + 1.5.7)
  • Teensy 2x: Addition of boards.append.txt to ensure Teensy2 Board options show up correctly (Reported Here)
  • Teensy Encryption: Added "ON" to "Lockable" Menu item to help users remember when this has been enabled for a project
  • Version Determination: Fix to ensure full version 0.1.0 is used when installing board packages (e.g. Dragino) for Arduino IDE compatability
  • Version Determination: Now Correctly determines versions for items with "extra" bits on the end (e.g. 4.8.1-arduino5 results in 4.8.1 instead of 4.8.15) 
  • Annual Licenses: Output message shown at end of build for last 45 days of the licenses validity e.g. Annual License of Visual Micro (Expires in 15 days, on 15 October 2022)
  • InheritedBoardPackage: Amendment to setting of runtime.tools for build/upload/bootloader to come from inherited core instead of tools specified in board's package index (Reported Here)
  • Activation: Amendment to error message when activation fails to point to background page instead of "Try/Buy Web Page"
  • Intellisense: Fix for blank line at end of Intellisensecode.h for ESP32, RP2040, SAMD, ESP8266
  • Add Library to Solution: Reversed ordering of headers as added to sketch to ensure they end up in the correct order (Reported Here)
  • InheritedBoardPackage: Fix for e.g. Arrow Boards (SAMD) to use the Contributed Board Package if it is not found in the IDE folder
  • Show/Hide Hidden Files: Fix to ensure correct thread used when Showing/Hiding to improve reliability (Reported Here)
  • Build: Fix for when multiline macros are used to ensure no erroneous space is added after backslash (Reported Here)
  • IncludePaths: Fix to prevent erroneous include paths causing header suggestions to be incorrect (Reported Here)

Visual Micro Release 22.09.05.7 - 14th September 2022 - VS 2017-2019, VS2022

  • NOTE: Ensure Visual Studio is up to date when installing this version of Visual Micro

  • Update VS2022 packages to ensure they are compatible with VS2022 17.0 onwards, instead of being reliant on VS2022 17.2+

Visual Micro Release 22.09.05.4 - 12th September 2022 - VS 2017-2019, VS2022

  • NOTE: Ensure Visual Studio is up to date when installing this version of Visual Micro
  • In some cases the UI startup would be unresponsive until the focus of the app changes. A workaround has been to prevent information messages from appearing during startup. The issue will be reported to Microsoft.
  • Resolve project detection issues. The latest VS2022 version creates an empty project in background at startup. (Visual Micro incorrectly assumed it was a folder only project).
  • Update VS2022 packages. Some Microsoft packages have still not been converted fully to VS2022. However this updates uses their latest packages which no longer rely on some older 16x references.
  • Update: Serial Debugger now works on Portenta H7 Board (on M7 Core)

Visual Micro Release 22.09.05.0 - 6th September 2022 - VS 2017-2019, VS2022

  • Update: Serial Debugger now works on Raspberry Pi Pico W Board
  • Fix: Intellisense improvements for STM32 boards
  • Fix: Defaulted "Compiler > Always Copy Build Output to Intermediate" to FALSE
  • Fix: ESP32 Compiler Pattern did not have -MMD removed causing erroneous *.d files to be created as part of Deep Search for v2.0.0++ (Reported Here)
  • Update: Added a global option "Communications > Serial Read Frequency" (Default:75ms) to refresh the entire Serial Monitor. (Previous default was 100ms. Min allowed is 15ms)
  • Update: Added a global option to set the "Communications > Serial Read Timeout". Default changed from 100ms to 200ms.
  • Update: Upload property upload.pause_before_ms defaulted to 200ms if not set in board.txt (Reported Here)
  • Fix: Intellisense: MegaAVR Fix for missing String.h functions e.g. memset (Reported Here)
  • Update: Startup for clearer messaging regarding loading toolchains, and delays registering c++>.ino file extension
  • Update: Minor changes to messages and menu caption for non-activated use
  • Fix: IDELocations: Trims Double Quotes from Paths when entered
  • Update: Added a board property to try out pause before upload. set to milis:- upload.pause_before_ms= (Reported Here)
  • Update: Try/Buy Screen cleaned up for clearer explanation of Visual Micro to new Users
  • Fix: ESPExceptionDecoder - Ensure #line is included for both Debug:Off and Debug:Hardware (Reported Here)
  • Fix: ESPExceptionDecoder parses lines with "(discriminator x)" correctly to jump to code line correctly
  • Fix: HardwareId Generation improved to ensure this is calculated as early as possible
  • Fix: Correct environment font measured for presentation of boards list
  • Fix: Startup messaging improved
  • Fix: Shutdown stability improved
  • Fix: Intellisense improvements for SAMD Standard C functions e.g Memcpy (Reported Here)
  • Update: ESP32/ESP8266 no longer requires Bonjour Service to be installed to perform network discovery of boards.
  • Fix: Activation Form now removes leading & trailing spaces when submitting license key to reduce accidental errors in activation.
  • Fix: IDE Locations checks ensuring the same paths are not used for IDE Location / Sketchbook / Downloaded Board Packages (Reported Here)

Visual Micro Release 22.06.11.0 - 14th June 2022 - VS 2017-2019, VS2022

  • Compiler and lib search improvements
  • Advanced users: "Build into project intermediate" now suffixes the "board id" to the "build folder". Also now allows "copy to intermediate" work in tandem. This allows cahing to work correctly with different boards on the same code.
  • "Cpp only" projects will build faster than .ino projects for advanced users. (reminder: Non-ino cpp only projects lack automatically created prototypes + serial/wifi debugger)
  • Cores that do not create .d dependency files will now allow caching if the source has not altered. In verbose mode a warning is displayed in the build output stating the .d files are not available. note: Without .d dependanty files recompile of source code does not happen if the source has not changed but an #included source has changed. Normally we would expected a change to #included source to cause recompile of all other source that uses it.
  • Improved cleanup of teensy virtual serial port scan

Visual Micro Release 22.06.07.0 - 8th June 2022 - VS 2017-2019, VS2022

  • Fix to ensure Prototypes are not generated if they are already in the sketch (when Deep Search for Libraries + Accurate Prototype Insertion (Gcc-E) is enabled)
  • Cpp only projects failed to build when deep search for libraries is enabled
  • Prevent creation of prototypes for CppOnly projects. (fyi: The prototypes are not auto inserted for Cpp projects therefore this change simply improves build speed)
  • Portenta intellisense improved.
  • Intellisense moved to Cpp17/C11
  • Project property to disable prototypes was not applied when using CTags to extract the prototypes. It was only possible to switch off extraction of prototypes via the board.txt setting vm.ctags=false.
  • Fix: BuildProjectInIntermediate: Solution Clean to clean correct build folder (Reported Here)
  • Fix: BuildProjectInIntermediate: Files no longer recursively copied one layer deeper every compilation (Reported Here)
  • Fix: BuildProjectInIntermediate: CPP Files not being recognised as cached on second build (Reported Here)
  • Fix: RP2040: Conflict with rp2040_rpipicopicoprobe board for Upload Tools
  • Update: UploadUsingProgrammer: mbed_rp2040 board Package has all programmers available for use
  • Fix: Library Installer - Comparison of Dependency Lib Names now includes spaces to match 3rd Party Spec (Reported Here)
  • Update: HardwareDebug - Addition of RasPiPico "PicoProbe" Debugger to options (Reported Here)  (PicoProbe Documentation)
  • Update: PlatformSupport - Addition of support for RP2040 Core, and debug tools (GitHub: Board Package)   (Debug Documentation)
  • Update: LicensingUI - Expiry Message now contains date string for annual licenses (e.g. 29 April 2022)

Visual Micro Release 22.04.29.3 - 14th May 2022 - VS 2017-2019, VS2022 and AS7

Visual Micro Release 22.04.29.2 - 6th May 2022 - VS 2017-2019 and VS2022

  • Fix: GDB: GdbScript Tooling which was incorrectly replacing adapter_khz in the pattern (Reported Here)
  • Fix: Build: ZWave Uno, ensuring SketchName.cpp.interim is copied to SketchName.ino in Build folder (Reported Here)
  • Fix: Serial Debug > FreeMemory Chart fix for Dark Theme wasn't reliable, now fixed in all scenarios to a Blue Line
  • Fix: Correction to Information in VS>Help>About to reflect VMicro Version Installed (2019/2022)
  • Fix: Licensing: Removed reliance on needing available network device once activated succesfully
  • Fix: Intellisense: Added MBED_Portenta paths to resolve issues (Reported Here)
  • Fix: ESP32: Exception Decoder Fixes for new ESP32 Core 2.0.0++ (Reported Here)