MPLAB® Harmony v3 Configurator Overview

This tutorial shows instructions with MPLAB® Harmony Configurator (MHC) as the Graphical User Interface (GUI) tool. MPLAB Harmony v3 is now configurable through MPLAB Code Configurator (MCC). Click here to visit the same tutorial page with instructions using MCC as the GUI tool

This page shows you how to download the MPLAB® Harmony framework and launch the MPLAB Harmony 3 Configurator. It also provides a brief overview of the MPLAB Harmony Configurator (MHC) user interface.

  1. Download MPLAB Harmony Framework
  2. Launch MPLAB Harmony Configurator

MPLAB Harmony Configurator is a graphical user interface for the MPLAB Harmony framework. It dramatically simplifies 32-bit (SAM and PIC32) core and peripheral configuration. It 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.

You must install the following tools to use MPLAB Harmony 3 Software Framework:

Download MPLAB Harmony Framework

The first step is downloading the MPLAB Harmony Content Manager (MHCM) tool. This tool includes a downloader that reads the MPLAB Harmony GitHub repository to create a list of available packages. You choose which packages you want to download from this list. The MHCM is a standalone Java application in the “contentmanager” MPLAB Harmony package.

If you haven't yet downloaded the "contentmanager" Harmony package, download it by manually cloning it from GitHub.
To manually clone a repository, follow the instructions available at:


Based on your operating system and processor architecture, download JRE 8 with FX support from the given link (


Extract the compressed jre to any location in your system and set the "PATH" variable to "/bin"
File/Folder Description
*.jar Java libraries.
harmony-content-manager.jar Main Java executable (run: java -jar harmony-content-manager.jar)
runme.bat Windows shell script to run standalone MHCM GUI. non-Windows shell script to run standalone MHCM GUI


Open the command prompt and navigate to the location where harmony-content-manager.jar is present and execute the command "java -jar harmony-content-manager.jar"


Alternatively, you could run the shell script runme.bat (on Windows operating system) or (on non-Windows® operating systems)


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



Wait while the content manager tool queries the repository and generates a list of all available packages. If this is your first time using this tool, or if you've selected a new folder to download the framework into, the content manager window will look like the following image.


Note the Local Packages list is empty (you haven't downloaded any yet), and the Remote Packages list shows all packages found on the MPLAB Harmony GitHub site. Also, note that the packages selected for download by default as these are required for all Harmony projects. Additionally, add the "mhc" package.

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

Check the boxes beside all packages you want to download, then click Download Selected (top left corner). You may want to check the Select All box (top left corner) so you can access all the demonstration applications included in the Harmony framework. After accepting the license agreements, the download will start.

If you've previously downloaded packages into the folder you specified, the content manager will show those packages in the Local Packages list. The Remote Packages list will show the following:

  • All packages not found in the folder you specified.
  • All packages that have an update available.

Launch MPLAB Harmony Configurator

The MPLAB Harmony Configurator functionality is now integrated into the MPLAB Code Configurator (MCC). It is suggested to use MCC for new and improved features. However, for existing users who want to use MHC, MHC is available as a standalone java application.

If you haven't yet downloaded the "mhc" Harmony package, download it using MPLAB Harmony Content Manager tool by following the instructions mentioned in Download MPLAB Harmony Framework section.


Navigate to the local directory where you have downloaded the "mhc" repository


Open the command prompt and execute the command "java -jar mhc.jar -mode=gui -fw=../".


Alternatively, you could run the shell script runmhc.bat (on Windows operating system) or (on non-Windows operating systems).
This will launch the MHC as an standalone application.


This will launch the MHC as an standalone application.


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 is 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 the 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 and select above mentioned available plugins.
Configuration Options Displays the tree view of the selected component under the 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 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.
© 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.