Arduino Maker Workshop
The ultimate tool for makers to bring Arduino projects to life in Visual Studio Code.
The following platforms are fully supported:
- Windows x64,
- macOS (Intel + Apple Silicon)
- Linux x64
The following platforms are partially supported:
- Windows ARM: Serial Monitor not supported
Other platforms are not officially supported yet; you can try installing your own arduino-cli and pointing the extension to it, and help is needed for other platforms.
All the platforms supported by the Arduino CLI (the CLI is included in this extension).
Tutorials
Settings
- You can set the user directory, equivalent of the Arduino IDE's 'sketchbook' directory. Library Manager installations are made to the libraries subdirectory of the user directory
- You can change the Arduino CLI used (not recommended) instead of using the built-in Arduino CLI (recommended)
- You can disable automatic port detection on Windows
- You can enable or disable verbose compilation (default is verbose)
Features
Profiles Manager (Reproducible build profiles)

Arduino Code Snippets
Documentation

New Sketch
Make sure you have a workspace open.

Board Selection

Board Configuration

Boards Manager

Library Manager

Clear CLI Cache
If the Library Manager or Boards Manager does not refresh after installing cores/libraries externally, use the command palette:
- Open the Command Palette (
Ctrl+Shift+P / Cmd+Shift+P)
- Run
Arduino Maker Workshop: Clear CLI Cache
Library Example

About IntelliSense
IntelliSense data (c_cpp_properties.json) is generated after each successful compile.
For a new project, IntelliSense mark almost everything as "undefined" until you make your first good compile.
IntelliSense is generated based on the arduino-cli build outputs.
Troubleshooting
If you get this error message:
No workspace available, open a workspace by using the File > Open Folder... menu, and then selecting a folder
It means you must open a workspace in Visual Studio Code, see the official documentation.
Contributors
Contributors are welcomed!
Take a look at the project to see features to be implemented or bugs to be fixed
If you want to submit pull requests, here is how you can do it.
Extension Development
Install the dependencies:
- run
npm install in the main folder of the extension
- run
npm install in the webview folder
Testing
- Use
npm run watch in the main folder to debug the extension in Visual Studio Code
- If you modify the webview, you must build it before testing the extension with the command
npm run build
- You can test the webview in standalone mode using the command
npm run dev, (in the webview folder). In development the webview uses mock files to simulate call to the Arduino CLI.