Project Properties Window

Video Tutorial

MPLAB X TV Channel on YouTube

Step-By-Step Tutorial

What is the Project Properties window?

The project properties window is a central location from which you may control all aspects of your project. Some of the things you can do from this window include:

  • Select/change the device, debug tool, and compiler
  • Configure the linker, compiler and assembler build options
  • Configure paths to directories used by your project
  • Configure debugger and programmer options
  • Specify scripts to execute before or after a build

How to open the Project Properties window

See: Open the Project Properties Window

Project Property Categories


The general category provides a place for you to include additional source code directories for the IDE to search when the code is not found in the top level of the project folder.

Click image to enlarge.

Conf: [default]

This is the category that will be selected by default every time you open this window. The default configuration is where you select the microcontroller, debugger/programmer and build tool (compiler or assembler) for the project. All of the other categories below this one are tied to the selections you make here (notice that they are all indented one or more levels in the tree structure of the category list). A project will always have at least one configuration which will be the default. However, you may create multiple configurations to suit a variety of scenarios for building the project.

Click image to enlarge.


This category's title will change, along with its contents in the right hand pane depending on which hardware tool you have selected in the configuration node above. The contents of the right hand pane will vary greatly depending on which hardware tool you have selected (such as MPLAB ICE3, REAL ICE, or PICkit 3) or simulator. As a general rule, things like memory ranges to program, voltages, clock sources and speeds, and a variety of other debug options may be controlled from this category.

Settings for specific tools

Click image to enlarge.


This category is used to select macros or scripts to execute before and/or after building the project. Most of the time, this won't be used. But when you need to add a little extra functionality such as copying or moving some files around before or after the process, this feature helps to automate the entire procedure.

Click image to enlarge.

Compiler Suite Global Options

The compiler suite's global options contain settings that apply to the entire compiler toolchain and will affect the entire build process as a whole.

Click image to enlarge.

Assembler Settings

Assembler settings provide full control over how the assembler builds your code, references files, and what information it should provide as its output.

Click image to enlarge.

Compiler Settings

The compiler settings provide full control over how the compiler builds your code, optimizies your code, and which memory model it uses.

Click image to enlarge.

Linker Settings

The linker settings control the overall build process, locates and integrates library code and specifies which diagnostic outputs are desired.

Click image to enlarge.
© 2024 Microchip Technology, Inc.
Notice: ARM and Cortex are the registered trademarks of ARM Limited in the EU and other countries.
Information contained on this site regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip devices in life support and/or safety applications is entirely at the buyer's risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.