MPLAB® Harmony Configurator (MHC) Overview

The MPLAB® Harmony Configurator (MHC) makes it much easier to use the Harmony framework. This menu-driven and graphical user interface is an MPLAB® X IDE plug-in module that extends the functionality of the IDE. It takes care of the overhead and overall structure of Harmony based projects, allowing you to focus on generating the code for your specific application.

MHC also includes the MPLAB® Harmony Graphics Composer (MHGC). This GUI based tool allows you to easily configure and visually design your graphics using the Harmony Graphics Library.

MHC performs the following tasks for you:

  • Adds the Harmony source files needed for your project
  • Generates some Harmony framework source files (based on your MHC selections)
  • Generates starter Harmony application source files
    • Creates a starter state machine for your application
    • Adds minimum functions required for a Harmony project
    • "#include"s all source files needed
  • Generates starter Harmony system source files
    • Initializes the PIC32 (based on your MHC selections for core, clock, & peripherals)
    • Initializes Harmony drivers (based on your MHC selections)
    • Creates stub functions for interrupt service routines
  • Saves your current MHC selections so they can be imported into another project

To view the following video full screen, click on the video title (view on YouTube).

MHC User Interface:

1) Open the MPLAB® Harmony Configurator by clicking:

Tools ▶ Embedded ▶ MPLAB® Harmony Configurator

If you don't see the MPLAB® Harmony Configurator tool, you haven't installed it.
Install MHC >

Click image to enlarge.

2) MPLAB® Harmony Framework Options

Configures the Harmony Framework through drop-down selections provided in a menu format.


3) Clock Configurator

Graphically configures the PIC32 oscillator module through drop-down selections.


4) Graphical Pin Manager

Graphically configures the PIC32 pins.

  • Analog vs digital
  • Inputs vs outputs
  • Pin functionality using Peripheral Pin Select (PPS)

MHC default values are determined by the MHC configuration files (e.g.: tcpip_stack.hconfig). These can be found in the folders at this location:
<harmony install path>/framework/<module>/config
However, if you choose to use a specific Board Support Package (BSP), the corresponding BSP hconfig file will be used instead. Please search "hconfig" in the Harmony Help file for more information.

 Learn More

MHC Tutorial Videos
Learn more >
© 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.