3 Tool Chain Guide

This section shows how to configure a basic LED blink project on the PIC32CM JH00 Curiosity Nano using MPLAB X IDE with MCC and Harmony v3. The same steps apply to the PIC32 CM GV00 family and other M0+-based MCUs available from Microchip Technology.

3.1 What is MPLAB X IDE?

MPLAB X IDE is Microchip’s free integrated development environment for writing, building and debugging embedded applications. It supports a wide range of Microchip devices and it works alongside tools like MCC for streamlined project configuration.

For more information or to download MPLAB X IDE, visit microchip.com/mplabx.

Initial Board Connection and Kit Info

Before starting a new project, plug in your Curiosity Nano board. MPLAB X will detect it and display useful links in the Kit Window, including the user guide, data sheet and other key resources.

3.2 Navigating MPLAB X IDE

Once your project is open, MPLAB X IDE presents a clean, organized workspace:

  • Projects Tab (left): Contains all source files, headers and auto-generated code from MCC
  • Editor (center): Used for writing and editing code. Each file appears in its own tab.
  • Dashboard (bottom): Shows device, compiler, memory usage and tool configuration details
  • Toolbar (top): Provides quick access to build, program, debug and launch MCC Harmony v3 and other MPLAB X Plug-ins
  • Kit Window (right): Offers direct links to data sheets, user guides, and other device-specific documentation

3.3 Creating a New MPLAB X Project

To start a new project in MPLAB X IDE, follow these steps:

  • Start the New Project Wizard: Go to File>New Project or click the New Project icon in the toolbar
  • Choose a Project Type: Under Microchip Embedded, select Standalone Project, then click Next
  • Select Device and Tool: When using a Curiosity Nano, the device and tool are usually auto-detected — no need to type the full part number. The search bar can be used to manually select a device (e.g., PIC32CMJH0064008) and a programming tool, if needed.
    Note: If you're not using a Curiosity Nano, the device can be programmed using a PICkit or ICD.
  • Select a Compiler: Choose a compatible installed compiler (e.g., XC32)
    Note: MPLAB X provides a “Download Latest” link directly in the Compiler Tool chains window, making it easy to install the newest version.
  • Name Your Project: Enter a project name and choose a save location

    Note: The “Use project location as the project folder” option controls whether previous project files carry over. Keep it checked for a clean setup.

    Note: The “Use project location as the project folder” option controls whether previous project files carry over. Keep it checked for a clean setup.
  • Finish: Click Finish to complete the setup. The new project will appear in the Projects tab.

3.4 Opening the Project With MPLAB Harmony v3

Now that the project is created, MPLAB Harmony v3 will be used for project configuration using a graphical interface. Click the MCC shield icon in the MPLAB X IDE toolbar to launch it.

For a step-by-step guide on setting up the necessary tools, including MPLAB X IDE, XC32 Compiler, MCC, and accessing the Harmony v3 framework, check out this video: How to Set up the Tools Required to Get Started with MPLAB® Harmony v3 and MCC.

3.5 Navigating the MCC Harmony v3 Interface

Once Harmony v3 is launched, the MCC interface is organized into several key areas:

  • Project Resources (top left): Displays modules already added to the project, such as the System modules or any instantiated peripherals. Selecting a module here enables its configuration in the panel on the right.
  • Device Resources (bottom left): Lists all available peripherals supported by the selected device
    • Generate Button: Located at the top of this tab, this triggers MCC to generate all source and header files, based on your current configuration
  • Project Graph (center): Shows all active components and their relationships. It also provides access to configuration tools like Pin and Clock setup via the Plugins tab.
  • Configuration Options (right): Displays a tree view for the selected component. This is where peripheral settings and other module-specific options are configured.
  • Output Window (bottom): Displays system messages such as errors, warnings and status updates related to configuration or generation

3.6 Configuring Peripherals

Peripheral setup in Harmony v3 is done in the Configuration Options window. Selecting a peripheral, like the ADC, through the Project Resources or Project Graph tabs reveals settings through drop downs, check boxes, or input fields with no need to touch registers or to write register level code.