Installing Marlin (VSCode)
Before reading this article, you should have already read Installing Marlin with PlatformIO.
PlatformIO with VSCode
PlatformIO turns VSCode into a complete IDE for compiling and developing Marlin.
1. Install VSCode
Pointers to setup instructions for the supported platforms are near the top of Setting up Visual Studio Code.
2. Install the PlatformIO IDE
PlatformIO IDE for VSCode Get PlatformIO IDE
3. Clone Git Project
Switch to new PlatformIO View in Activity Bar (left side bar), then Quick Access > Clone Git Project …
4. Select Repository Branch
The name of the active branch is shown in the bottom left corner in the blue bar. Click on the branch name to reveal a list of branches you can work in. There’s also an option to create a new branch.
5. Select Environment
To manually set the environment for your board:
Open the file
platformio.ini and change
default_envs to the environment that your board uses. Look through this file for your chip’s environment name. For example, the environment name for the LPC1768 chip appears as
[env:LPC1768]. Omit the outer wrapper:
When you click the PlatformIO button, you will see the PROJECT TASKS including Build and Upload. These buttons will build and upload your default environment.
If you don’t want to set
default_envs, select the environment for your board from the PlatformIO Project Tasks list.
Identifying the correct environment for the selected board
The PlatformIO environment needed for a motherboard is in the comments for the board in the pins.h file. In Marlin 2.0 it’s located in a subdirectory Marlin/src/pins/pins.h.
The Configuration.h file says
#define MOTHERBOARD BOARD_RAMPS_14_EFB
Search the pins.h file for RAMPS_14_EFB until you come to the following:
#elif MB(RAMPS_14_EEB) #include "pins_RAMPS.h" // ATmega1280, ATmega2560 env:megaatmega1280 env:megaatmega2560'
The first part of the comment lists the CPU(s) used in the board.
The env:xxxx section(s) are the PlatformIO environment(s) that are used for this board.
In this case megaatmega2560 is the one used 99.9% of the time.
Or, Use AutoBuildMarlin
AutoBuildMarlin is a Visual Studio Code extension that automatically selects the correct environment for your
MOTHERBOARD and provides buttons for quick Build and Upload.
Extra steps are needed to install the extension. See the AutoBuildMarlin page for full instructions.
6. Initiate Build, Clean or Upload task
Initiating a task is done via PlatformIO’s Project Tasks, the bottom Status Bar icons or the Auto Build Options.
Working with the build window is a little bit better than shown in Installing Marlin with PlatformIO.
- The panel can be re-sized.
- The console can be scrolled via the mouse scroll wheel or with the scroll bar.
- Text can be highlighted and copied to the clipboard.
Some newer boards require the
firmware.bin file to be copied onto the onboard SD card, and then you must reboot the printer to complete the install. PlatformIO will try to copy the file automatically if the board is connected and your PC can see the SD card, but this may not always work.
In these cases, you’ll need to locate the
firmware.bin file and copy it over to the SD card manually.