MPLAB® X IDE is a software program that runs on a PC (Windows®, Mac OS®, Linux®) to develop applications for Microchip microcontrollers and digital signal controllers. It is called an Integrated Development Environment, or IDE, because it provides a single integrated “environment” to develop code for embedded microcontrollers.
MPLAB X Integrated Development Environment brings many changes to the PIC® microcontroller development tool chain. Unlike previous versions of MPLAB which were developed completely in-house, MPLAB X is based on the open source NetBeans IDE from Oracle. Taking this path has allowed us to add many frequently requested features very quickly and easily while also providing us with a much more extensible architecture to bring you even more new features in the future. It also provides many new features that will be especially beneficial to users of our 16-bit and 32-bit families. The downside is that those of you who are veteran users of MPLAB will have a new IDE to familiarize yourselves with and may need some assistance to get back to your previous level of expertise.
The purpose of this section of the help center is to provide answers to the most commonly asked questions from our veteran users so that you can get up to speed with the new IDE as quickly as possible. Over time, we will also add more content directed at novice users to give you a jump start into developing applications with the PIC microcontroller family.
Installation and Configuration
- Minimum system requirements
- Minimum compiler requirements
- How to install Java
- How to point MPLAB X IDE to a specific version of Java
- How to install MPLAB X IDE
- How to install and configure a C Compiler Under Construction
- How to install MPLAB X Plug-ins
- How to install an MPLAB PICkit 3
- How to install an MPLAB ICD 3
- How to install an MPLAB REAL ICE
- How to work with the Tools Options window
- How to swap USB drivers between MPLAB 8 and MPLAB X (Windows® Only)
- How to manually install drivers for REAL ICE or ICD (Windows® Only)
- How to work with external tools and plug-ins
- How to tweak MPLAB X for optimal performance
Projects
How to Create New Projects
- How to create a standalone project
- How to create a library project
- How to create a prebuilt project (How to import a hex file)
- How to work with multiple project configurations
How to Import Legacy Projects
How to Configure Project Options
- How to configure a project's paths
- How to configure a project's build options
- How to configure a project's programming options Under Construction
- How to work with the Project Properties window
How to Display Project Information
How to Manage Projects
- How to open an existing project
- How to prevent the last open project from opening on startup
- How to save a project
- How to save a file
- How to close a project
- How to rename a project
- How to copy a project
- How to work with the Projects tab and Files tab Remove when topics below are complete
- How to work with the Projects windowUnder Construction
- How to work with the Files window
- How to work with the Favorites window
- How to add a new file to a project
- How to add existing files to a project
- How to work with logical folders
- How to choose auto, relative, or absolute paths
- How to remove a file from a project ◀ PLEASE READ THIS TO AVOID LOSS OF DATA
- How to work with the Tasks list
- How to work with a file's local history
- How to package a project into a zip file
- How to view and set configuration bits
How to Build Projects
- How to build a project for debugging
- How to stop code from running immediately after programming
- How to build a project for release
- How to modify a project's make file for custom builds
- How to change the link order
- How to change an individual file's build options
- How to enable make's job server mode to reduce build times
How to Navigate Projects
- How to work with the Navigator window
- How to work with the Navigate menu
- How to work with Find Usages
- How to work with the Call Graph
How to Work with Multiple Projects
- How to work with multiple projects Under Construction
- How to work with project suites
- How to select the active project
- How to work with project groups
- How to set a Main Project
- How to clear the Main Project
- How to work with two debug tools at the same time
How to Customize Projects for Special Circumstances
- How to work with a custom Linker Script
- How to prevent data stored in flash from being erased when reprogramming
How to migrate projects to different platforms
Version Control Systems
- How to work with Subversion Under Construction
- How to work with CVS
- How to work with Mercurial
- How to work with a file's local history
Issue Trackers
- How to work with Bugzilla Under Construction
Editor
- Editor Features
- Find / Search and Replace
- How to customize editor options
- How to turn on/off line numbers
- How to work with code folding
- How to work with the editor toolbar
- How to view two files simultaneously
- How to create a split view of the same file
- How to work with the MPLAB editor
- How to hide the right margin (red vertical line)
- How to work with a file's local history
- How to work with the diff utility
- How to dock and undock windows
- How to work with multiple monitors
- How to configure the tab key
- How to view the disassembly listing
- How to remove highlighting from search results or selection matches
- How to perform a rectangular edit
- How to work with the error stripe and glyph margin
- How to add documentation to the auto-complete pop-up window
- How to jump to the matching brace in C code
Building, Debugging, and Running Applications
- How to build your code
- How to test and debug a project
- How to debug runtime errors
- How to work with the Watches window
- How to work with breakpoints Under Construction
- How to measure time between breakpoints
- How to run a project
- How to work with the debug toolbar
- How to view Data Memory (RAM)
- How to view Special Function Registers (SFRs)
- How to view Program Memory (Flash)
- How to view Configuration Bits
- How to change the value in a File Register
- How to view an application's memory usage
- How to exclude startup code from the link process
- How to work with the call stack Under Construction
- How to work with the stopwatch Under Construction
- How to work with the logic analyzer
- How to work with the DMCI (Data Monitoring and Control Interface)
- How to build, program, and run a project in discrete steps
Hardware Debug and Programming Tools
Toolbar Quick References
- MPLAB Main Toolbar Icons
- How to customize the main toolbar Under Construction
- MPLAB Editor Toolbar Icons
- MPLAB Debug Toolbar Icons
Frequently Asked Questions
- Which features from MPLAB 8 have not yet been implemented in MPLAB X?
- When I try to build or debug my code, I get an error stating "No rule to make target"
- Can I install MPLAB 8 and MPLAB X at the same time on the same computer?
- How to share a project between MPLAB 8 and MPLAB X
- Where is the USB driver switcher installed on my computer?
- Can MPLAB X projects be opened from Windows Explorer as with MPLAB 8?
General Troubleshooting Techniques
Tips and Tricks
Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.
Windows is a registered trademark of Microsoft Corporation in the United States and other countries.
Mac OS is a trademark of Apple Inc., registered in the U.S. and other countries.


