There is no separate “PICkit driver” or standalone MPLAB IPE download. Microchip ships MPLAB IPE inside the MPLAB X IDE installer, and the drivers come with it — so the only real question is which version, and that depends on which PICkit is on your bench. Pick the newest release for a PICkit 3 and it simply won’t show up.

This guide gives you the official download with Microchip’s SHA-256 checksums, one table that nobody publishes in one place — every PICkit’s USB ID, the last MPLAB version that supports it, how much current it can feed the target, and whether it can do high-voltage entry — then the install per OS, the command-line programmer, and the errors that show up most in 195 Electronics Stack Exchange questions about PICkits.

The download: MPLAB X IDE, which contains IPE

⬇ MPLAB X IDE + MPLAB IPE — official Microchip page

Windows (.exe) · Linux (.tar) · macOS (.dmg) · 64-bit only · SHA-256 published per file

microchip.com — MPLAB X IDE

We do not re-host this. The installers are around a gigabyte and come straight from Microchip’s CDN. Heads-up: microchip.com refuses datacenter IP addresses, so the version and checksum data below were read from the Internet Archive’s capture of the official page dated 30 July 2026. Check the live page for anything newer. PICkit 3 owner? Skip to the version table first.

The newest release in that capture is MPLAB X IDE v6.35, dated 24 July 2026. Microchip’s checksums, as published on the page:

File (v6.35) SHA-256 (published by Microchip)
MPLABX-v6.35-windows-installer.exe 64a5247d5c1e2db7c6fb3b8d2fa43d5578d7efebe2e51db44706b20d441c2061
MPLABX-v6.35-linux-installer.tar 4c747363dcfb315726439f968d0e25b0b17214bb9ba5d2fd4a7f3bab28c56705
MPLABX-v6.35-osx-installer.dmg 3bc7fac105ac522f435e0e81eae45ac773566c6828e60f28e70df5f9b33ccfe6

Check it before you run it: certutil -hashfile MPLABX-v6.35-windows-installer.exe SHA256 on Windows, sha256sum on Linux, shasum -a 256 on macOS. The IDE is 64-bit only (since v5.40), runs on Intel/AMD x86-64 or Apple silicon, and supports Windows 11 from v6.05 on.

Which version your PICkit needs

Microchip documents tool support in four places: the MPLAB X page, the readme for each tool, and a separate user’s guide per programmer. Put together:

Programmer USB ID (VID:PID) Newest MPLAB X / IPE Powers the target High-voltage program entry
PICkit 3 04D8:900A v6.20 — removed in v6.25 Up to 30 mA Yes (VPP 1.8–14 V)
PICkit 4 04D8:9012 PIC mode · 03EB:2177 AVR mode · 04D8:9017 bootloader Current, but no new devices since 1 Sep 2023 Up to 50 mA Only when target VDD ≥ 2.8 V (fixed on units labelled 10-10094-R6)
MPLAB Snap 04D8:9018 PIC mode · 03EB:2180 AVR mode · 04D8:9019 bootloader Current No No
PICkit 5 04D8:9036 Current Up to 150 mA Yes, target VDD 1.8–5.0 V
PICkit Basic 04D8:90549057, 04D8:90AB90AE Current No No
Diagram: PICkit 3, PICkit 4, MPLAB Snap, PICkit 5 and PICkit Basic with USB ID, newest MPLAB X version, target power, high-voltage entry and IPECMD tool code
The same data as a bench card. Diagram by TechBenchLab, compiled from Microchip’s user’s guides and v6.30 readmes; USB IDs cross-checked in avrdude, Microchip’s pyedbglib and usb.ids.

The part nobody covers: the USB ID tells you more than the model name. A PICkit 4 or Snap that shows up as 03EB:2177 or 03EB:2180 — under the old Atmel vendor ID, not Microchip’s — is in AVR mode, the mode avrdude needs. The avrdude manual says so directly: these two probes “can only be utilised by avrdude when in AVR mode”, switched with -x mode=avr and back with -x mode=mplab. A 9017 or 9019 means the probe is sitting in its bootloader. A PICkit 5 has just one ID in avrdude’s table, with no AVR-mode entry. So when the IPE tool list comes up empty, run lsusb or look up the hardware ID in Device Manager before you reinstall anything.

The other part: PICkit 3 is not a dead tool. It is named in 107 of the 195 PICkit questions on Electronics Stack Exchange, more than every other PICkit combined. Yet the MPLAB X page now says plainly that “MPLAB X IDE v6.20 is the final version with support for the PICkit 3 programmer, MPLAB ICD 3 and MPLAB REAL ICE”. The v6.30 readme adds that PICkit 3 On Board debuggers on eval kits are gone too. Two leftovers can mislead you: the v6.30 IPE readme still lists PICkit 3 as a supported tool, and IPECMD still documents -TPPK3. Believe the IDE readme — IPE ships in the same package.

Microchip MPLAB X IDE page: legacy tool support notice saying v6.20 is the final version supporting PICkit 3, and the v6.35 release notes
Microchip’s MPLAB X IDE page, “Legacy Tool Support” and the v6.35 release block. Screenshot of the Internet Archive capture of microchip.com, 30 July 2026.

Install, per operating system

Windows

  1. Run the installer. IDE and IPE are both ticked by default. For a production PC that only programs chips, untick the IDE, or run it silently: MPLABX-v6.35-windows-installer.exe --mode unattended --ide 0.
  2. Accept every driver pop-up. The readme is explicit: “Confirm USB device driver installation for all dialogs.”
  3. Plug in the probe. For PICkit 4, Microchip says MPLAB X v4.15 or later “will automatically update any necessary device drivers upon connecting to USB”. The same line is in the PICkit 5 and PICkit Basic readmes. There is no separate driver to download.
  4. PICkit 3: download v6.20 from Microchip’s MPLAB downloads archive. It installs to its own versioned folder (...MPLABXv6.20), so it can sit next to v6.35. If you’re on v6.10, install the five plug-ins it offers at first launch. Without them, PICkit 3 and ICD 3 fail with “Failed to download firmware. Connection Failed”.

Linux

Per the readme: tar -xf MPLABX-v6.35-linux-installer.tar, then sudo ./MPLABX-v6.35-linux-installer.sh. The readme says to run it as root, and the default location is /opt/microchip/mplabx/. Silent install needs an extra --: sudo ./MPLABX-v6.35-linux-installer.sh -- --mode unattended. Anything before the -- goes to the shell script, not the installer.

macOS

Mount the .dmg and run the installer app. Ignore the old warnings in the IPE readme about macOS Catalina and 32-bit apps — MPLAB X has been 64-bit since v5.40. Microchip’s reference configuration is still macOS 12.5.1 Monterey, and the readme warns that parts of the IDE “may not be supported on macOS 14 Sonoma” because of an OpenJFX bug. For scripting on a Mac, use ipecmd.sh, not the .jar.

MPLAB IPE in two minutes

The five errors that come up most

We pulled every Electronics Stack Exchange question that mentions a PICkit — 195 of them, 2009–2025 — through the site’s public API and counted error strings and topics. The MCLR pin comes up in 47. Connection failures in 13, verify/mismatch failures in 11, invalid device ID in 9, VDD/voltage errors in 9. The fixes below come from Microchip’s documentation, with the linked threads as real-world examples.

1. “Target Device ID (0x0) is an Invalid Device ID”

The probe talked to nothing. That means wiring, MCLR or power, almost never the chip. A PICkit 3 + PIC16F684 thread was fixed by dropping the tool’s supply from 5 V to 4.875 V; its second answer blames intermittent jumper cables. A PICkit 5 thread shows the same message with the tool supplying 3.25 V. Microchip’s guides recommend a pull-up from VPP/MCLR to VDD (the Snap guide says 10–50 kΩ), and the Snap guide adds: no capacitors on MCLR, PGC or PGD, because they slow the edges.

2. “…no voltage has been detected on VDD”

The project is set for self-powered, and the board isn’t powered. Example with a PICkit 5. Either power the board, or tick “Power target circuit” — and remember Snap and PICkit Basic can’t do that at all.

3. PICkit 3 missing from MPLAB X

If you’re on v6.25 or later, that’s by design: install v6.20. If you’re on v6.10, install the five plug-ins (thread). On Windows, the MPLAB X readme warns that other software can grab the HID driver the PICkit 3 relies on. Close anything like that and replug.

4. The chip needs high voltage and your probe can’t do it

If MCLR is set as an input or LVP is disabled, entering program mode takes roughly 9–12 V on VPP. This PIC12F629 thread explains the trade-off. Snap and PICkit Basic can’t generate it. A PICkit 4 older than revision -R6 only does it at target VDD of 2.8 V or more. Microchip also published ETN #37, a resistor rework for VPP overshoot latch-up on early PICkit 4 boards.

5. PICkit 4 or Snap vanished after using avrdude

It’s still in AVR mode (03EB:2177 / 03EB:2180). Switch it back with avrdude -c pickit4_updi -p <your part> -P usb -x mode=mplab, or -c snap_updi for the Snap, as documented in the avrdude manual.

FAQ

Is there an MPLAB IPE download without the IDE?

No separate installer — but you can untick the IDE in the same installer, or pass --ide 0.

Can I still buy a PICkit 4?

Its release notes say that as of 1 September 2023 it is “not recommended for new designs and no new device support will be added”. It still works for the parts it already supports. Microchip points new work to the PICkit 5.

Does MPLAB X still matter now that there’s MPLAB for VS Code?

Microchip now recommends the VS Code extension “for both new and existing projects”, but it still ships MPLAB X and IPE, and v6.35 came out in July 2026. For programming a chip on the bench, IPE is still the shortest path.

Sources

Related guides