Skip to main content

*Update* The MPLAB® ICD 4 Beats Out the MPLAB® ICD 3 in Programming Speed

Following on from the MPLAB® ICD 3 - the much loved and most popular production programmer for Microchip - comes the New MPLAB® ICD 4 in-circuit debugger/programmer launch...





















Design applications are becoming increasingly complicated being driven by both the developments in device capabilities, increasing microcontroller speeds and individuals demands for more powerful feature rich products to meet the growing demands of the modern society in which we live.

Escalating microcontroller speeds put increased demands on in-circuit emulating devices which is where the MPLAB ICD 4 next-generation debug tool provides significant performance enhancements to meet these demands both now and into the future. 


MPLAB ICD 4 has all the features of the MPLAB ICD 3, plus:

  • A wider target voltage of 1.20 to 5.5V
  • An optional 1 Amp of power (using an external power supply - AC002014)
  • Selectable pull up/pull down option to the target interface
  • Programmable adjustment of debugging speed for optimized programming
  • JTAG debugging capability
  • 2 MB of RAM 

It is the next-generation programmer solution for all Flash PIC® MCUs and dsPIC® Digital Signal Controllers (DSCs) and has seamless integration with MPLAB® X IDE

It has reduced debugging time with fast programming speeds which can be seen in the demo project where compared to the older ICD 3.

Side by Side ICD 3 and ICD 4 Demo



The demo shows how fast the ICD 4 and ICD 3 programmed full images to totally fill up one of the largest PIC32MZ2048EF devices. A generic Harmony application that did not need any external dependencies was used. The objective was to compare how fast the two tools programmed a full image into one of the largest devices.

The project was built and packed the unused memory locations to totally fill up the PIC32MZ2048EF devices. This created a hex file of 2MB to program into the flash.

We then run using the MDBCore layer, using scripts to simultaneously start programming the image on both the ICD 4 and ICD 3. While we are programming we have a small graphical utility that measures the time and displays it while the device is being programmed.

The MPLAB ICD 4 programs at almost twice the speed of the MPLAB ICD 3 as demonstrated in this demo (depending on the project), which uses the Explorer 16/32 board (DM240001-2) and with PIC32MZ EF PIMs (MA320019).

In the video, you can see the targets being programmed. The MPLAB ICD 4 programming time was measured at 19.01s. The MPLAB ICD 3 was used to program an identical set-up and the programming time almost doubled to 33.74s.


Overall it is the speed and flexibility that are the most important factors when selecting a debug tool. The speed of the ICD 4 reduces your wait time and improves debugging productivity. This speed and the comprehensive device coverage with new device support and updates via MPLAB X IDE should see the ICD 4 around for many more years of service.

More information

Check out Microchip's 'Getting started with the MPLAB® ICD 4' video to learn more.


Narrowboat support services including maintenance, route planning, navigation and providing web content.