MPLAB® Harmony v3 Configurator Overview

This page will show you how to install MPLAB® Harmony Configurator (MHC), and how to download MPLAB Harmony Framework. It also provides a brief overview of the user interface.

MHC is a graphical user interface for MPLAB Harmony Framework. It dramatically simplifies 32-bit (SAM and PIC32) core and peripheral configuration, and also allows you to enable and configure any of the specific Harmony framework libraries (e.g.: device drivers, system services, USB, TCP/IP, graphics, etc.) you may need for your project.

MHC is available as a plugin extension to the MPLAB® X IDE (see installation instructions below). It is also available as a standalone Java application for use with other tool suites (see here for details).

You must install the following tools to use MHC with the MPLAB® X IDE:

Install MPLAB Harmony Configurator (MHC)


Open the MPLAB X IDE and select Tools > Plugins.



The plugins window will open. Click on the Available Plugins tab, check the box beside 'MPLAB® Harmony Configurator 3', and click the Install button.

Note: Careful to not select 'MPLAB® Harmony Configurator' as this is a different plugin used with the previous version of Harmony (version 2).



Click Next, accept the license terms, and click Install.


Click Finish to restart the IDE.


Select Tools > Embedded to verify the MPLAB Harmony Configurator and framework downloader are displayed in the list.


Download MPLAB Harmony Framework

MHC includes a downloader tool that reads the MPLAB Harmony GitHub repository to create a list of packages. You choose which packages you want to download from this list.


In the MPLAB X IDE, select Tools > Embedded > MPLAB Harmony 3 Framework Downloader.

If you don't see this option, you haven't installed the MPLAB Harmony Configurator.

After downloading the framework once, you'll be able to run the Framework Downloader with a standalone java application (without starting the MPLAB X IDE first).

  • Open a command prompt window.
  • Open the mhc folder from your previous download.
  • Execute the downloader: harmony-downloader.jar.


Choose a folder you want to download the Harmony framework to. You can browse to an existing folder or create a new one. Click Next.



The default repository URL should be correct (see image below). Click Next.



Wait while the framework management tool queries the repository and generates a list of all available packages. Click Next when it's done.



Check the boxes beside all packages you want to download, then click Download. You'll probably want to leave all boxes checked so you can access all the demonstration applications included in the Harmony framework. Checking the top-right box will uncheck all optional packages. Note the following packages are required for all Harmony projects:

Package Name Description
csp Chip support package: includes the Peripheral Libraries (PLIB).
dev_packs Describes all peripherals, memory, etc… of each supported 32-bit device.
mhc Contains the implementation of the MHC tool.

After accepting the license agreement, the download will start. The framework management tool will only download new or updated packages that don't currently exist in the framework install path folder (specified in step 2 above). Click Next when the download is complete.



The Package Configuration window lists the version and status of every package you just downloaded. Click Finish to exit the framework downloader tool.


Create a New or Open an Existing MPLAB Harmony Project

Your computer is ready to use the MPLAB Harmony framework. You can create a new Harmony project from scratch, or open one of the many demonstration application projects that are included in the Harmony framework (see the apps folder in each repository). For more details on how to create or open a project, see the links below:

MPLAB Harmony Configurator Overview

MHC window name Description
Active Components Displays activated/instantiated components.
Available Components Components shown are based on the framework libraries you included in your project. The list of available peripherals are based on the target device you selected for the project.
Project Graph Shows the instantiated components. You can instantiate available components by double-clicking on the component. After successful component instantiation, you can see the instantiated components under Active Components panel.
MHC Plugins Consists of AFEC, DMA, MPU, NVIC, Clock and Pin configuration plugins. To open any of these plugins go to MHC → Tools → select above mentioned available plugins.
Configuration Options Displays the tree view of the selected component under Project Graph Area. You can do the component configuration from here.
Console Displays the MHC operation results.

The MHC User's Guide Wiki provides details on:

  • The Graphical User Interface (GUI)
  • How to use MHC to generate code
  • How to merge this code with your project.
  • How to use these MHC tools:
    • Clock Configuration
    • DMA Configuration
    • Nested Vectored Interrupts Configuration
    • Pin Configuration
    • Event System Configuration
    • MPU Configuration

To learn more, visit the Github Microchip-MPLAB-Harmony/mhc page.

Click image to enlarge.
© 2019 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.