User Tools

Site Tools


Configuring Visual Studio Code for Arduino development

Possible alternative to NetBeans for Arduino development.

Needed extension(s)

File associations

This may not be needed. But in case *.ino files aren't automatically or fully interpreted by Code as a C++ file, I added:

// Files
    // Configure file associations to languages (e.g. "*.extension": "html").
    // These have precedence over the default associations of the languages 
    // installed.
    "files.associations": {
        "*.ino": "cpp"

to my global settings.json file.

C++ settings

The settings file

Create a c_cpp_properties.json file inside the project's .vscode folder by doing one of the following

  • Ctrl-Alt-P and C/Cpp: Edit configurations.
  • Hover over the light bulb to the left of a green squiggly in an #include directive and select “Add include to path settings.” FIXME: details of what this produces/changes.

Add the following Arduino configuration to c_cpp_properties.json:

            "name": "Arduino",
            "includePath": [
            "browse": {
                "limitSymbolsToIncludedHeaders": true,
                "databaseFilename": ""

Note: the actual list of directories might change. Arduino Code Completion Directories is more likely to be up to date than the list here.

FIXME: TODO: Standard Arduino libraries (Serial, etc.) FIXME: TODO: Project-specific libraries FIXME: TODO: How to do the global configuration per user rather than per project?

Select configuration

Set the project to the Arduino configuration you added by Ctrl-Alt-P and C/Cpp: Select a configuration.

Build/Run commands



arduino/configuring_visual_studio_code_for_arduino_development.txt · Last modified: 2017/01/16 17:51 by mithat