Module 1: Understanding the Shift from MPLAB® X IDE to VS Code®
Overview
In this lesson, we will establish the mental model you need to be successful with using the MPLAB® for VS Code®. You will learn how the VS Code–based firmware development workflow differs fundamentally from the traditional MPLAB X IDE, including how functionality is distributed across extensions and tasks. You will explore the VS Code interface and MPLAB Extensions components to orient yourself and reduce initial confusion when familiar MPLAB X IDE concepts appear in new forms.
Learning Objectives
Understand the new mental model for firmware development tasks using MPLAB for VS Code:
- What has changed: Integrated Development Environment (IDE) vs. editor‑centric workflows
- How MPLAB X IDE functionality is distributed across MPLAB for VS Code
- Comparison table: MPLAB X IDE actions vs. VS Code workflows
Activity
Follow this guided walkthrough of the VS Code interface and MPLAB for VS Code components.
From MPLAB X IDE to VS Code: Expanding How You Work
MPLAB X IDE represents a traditional, integrated approach to embedded development. Most actions—creating projects, configuring tools, building and debugging—are performed through menus, icons and dialog boxes. This Graphical User Interface (GUI)‑driven model is familiar, highly discoverable, and continues to serve many developers well by clearly separating writing code from operating the tool.
MPLAB for VS Code introduces an alternative workflow—one that emphasizes flexibility and developer choice. Instead of relying primarily on menus and toolbars, actions can be invoked through commands, keyboard shortcuts, tasks, or the Command Palette. Project configuration lives in plain‑text files alongside source code, making settings explicit, visible and easy to version‑control. Importantly, this does not remove the ability to use graphical interfaces—it simply adds more ways to interact, allowing developers to choose what best fits their habits.
For many users, this results in a more fluid experience: coding, building, debugging, committing to Git, or reviewing issues can happen without leaving the editor or needing to reach for the mouse—though the option is always there. MPLAB X IDE is not being forcibly replaced; rather, VS Code offers an open, modular alternative to the monolithic IDE model. Developers can move at their own pace, adopt new workflows incrementally, and choose the environment that best supports how they work today—while gaining access to a broader ecosystem for tomorrow.
Mental Map Comparison
| MPLAB X IDE | MPLAB for VS Code | |
|---|---|---|
| Interaction Model | GUI‑driven with menus, icons and modal dialogs | Command‑driven using the Command Palette, tasks and shortcuts |
| Workspace Concept | Apache Netbeans®‑based workspace, largely hidden from the file system | Project folder *is* the workspace |
| Configuration | Dialog‑based, changes applied via OK/Apply | File‑based (JSON), changes are immediately visible and saved (can also be viewed as Settings GUI) |
| Project Structure | Logical (virtual) folders that may not match disk layout | Physical folders that directly reflect the file system |
| Customization & Ecosystem | Limited to MPLAB X IDE plugins | Full VS Code ecosystem (Git, issue tracking, CI, AI, extensions) |
| User Interaction Style | Mouse‑heavy, click‑through workflows | Keyboard‑centric, flow‑oriented workflows (mouse optional) |
| Installation Model | Single, monolithic IDE installer | Modular extensions installed as needed |
Make the Switch to MPLAB for VS Code
Overview of Working With MPLAB for VS Code
Once you start working with MPLAB for VS Code, you may notice some similarities to the MPLAB X IDE default view.
| 1 | Activity Bar | In the interface's left sidebar, the Activity Bar (1) displays the project along with its source and other files in Explorer view. |
| 2 | Primary Side Bar | The Primary Side Bar (2) displays the contents of the currently selected Activity Bar view. |
| 3 | Editor Groups | In the upper middle of the interface is the Editor (3). The content shown relates to a selected file in the project (pic32cmjh-blink-led-mplab-harmony-mplab.json.) |
| 4 | Panel | In the lower middle of the interface, there is Panel (4) for additional views. In this case, the project name is output to the terminal on opening. |
| 5 | Secondary Side Bar | On the right side of the interface, in the Secondary Side Bar (5), is the Chat view. |
| 6 | Status Bar | Finally, on the bottom of the interface is a Status bar (6). |
For more details on the layout of the interface, see the Visual Studio Code documentation, "User interface" page.

Find MPLAB for VS Code Extensions
VS Code has a rich ecosystem of extensions that enable specialized workflows. MPLAB for VS Code extensions are just one group of extensions that you can use. Add other extensions from the Visual Studio Code Marketplace.
To view details about an individual extension, click on it in the Marketplace or in VS Code if installed. For more information about extensions, see the "Extension Docs" page.
