kair.us/ projects/ pickitminus/

PICkit- software suite

You can use your trusty old PICkit2 and PICkit3 with the new Microchip PIC microcontrollers with PICkitminus program. It adds support for many chips not covered by the original PICkit software. There are GUI and command line versions available. Both will automatically detect PICkit2, PICkit3 and PKOB. The PICkit3 firmware is improved and now supports all the features as PICkit2 does.

Modified and enhanced PICkit2 minus software supports new
          SPI-type PICs



I was looking a way to program PIC16F15355 using PICkit2, and came across this post by bequest333. He had modified the PICkit software to support SPI-type programming protocol, and created the required new scripts. I developed his software further, and released it together with modified source files. I gave it name 'PICkitminus', because I considered it just a quick and dirty hack compared to PICkit+. But over time, I have developed PICkitminus further, adding device support and many features which don't exist in PICkitPlus.

The PICkitminus device file is based on last publicly available PICKitPlus device file, dated December 2020. Since then, I have added over 400 new devices (including Q20, Q24, Q40, Q41, Q71, Q83, Q84, J72, J93, J94, 16F131xx, 16F152xx, 16F180xx, 16F181xx, 16F171xx, some PIC24, PIC32MX families) and fixed errors in at least 100 existing devices. I have also optimised all 40+ scripts used in MSB1st parts, yielding speed improvements. The download packages below include the latest device file. It has currently support for 1382 parts (listed here), but I don't know if all of them work with my modified software. Despite fixes in many devices, I am quite sure there are still many errors. If you find problems with some part, please send me an email.

Notes on PICkit3 and PKOB

The PICkit3 and PKOB (PICKit On Board) require a special 'scripting' firmware, just like the Microchip original PICkit3 standalone GUI software. It is easiest to use the PICkitminus GUI software to update this firmware. When you start the software, it guides you to update the firmware if needed. The pk2cmd doesn't yet support firmware updates for PICkit3 or PKOB.

When you want to use MPLAB, MPLAB-X or MPLAB-X IPE again, you must revert the PICkit3 to bootloader. To do this, select 'Revert to MPLAB mode' from Tools menu. Then start MPLAB(-X), and it will update the correct firmware for MPLAB usage. If you don't do this, you will get all kind of errors when trying to use your PICkit3 or PKOB with MPLAB.

Notes on Linux

For pk2cmd on Linux, you need to install libusb-dev with apt-get, or alternatively download libusb-0.1.12 from sourceforge. There are also Linux prebuilt binaries in AppImage format, which should run on many distributions.

If you run pk2cmd on Linux and get a message 'PICkit 2/3/PKOB not found', quite probable reason is that normal user doesn't have proper rights to the USB device. A simple solution is to run pk2cmd as root, but this is a bit ugly. On systems with udev, you can use this udev rules file which gives appropriate rights for PICkit2 and PICkit3. Just copy this file to /etc/udev/rules.d/ and restart udev (or restart PC). You will also need to re-plug the PICkit.

Final note for Linux; the pk2cmd currently doesn't support updating PICkit3 firmware. If your PICkit3 doesn't have scripting firmware installed, you must use the GUI software on Windows PC to update it.

GUI Downloads

The GUI software runs on Windows systems and requires .NET Framework 2.0. It is available for Windows 2000 up. For newer Windows systems, you want to install .NET Framework 3.5, which provides support for older .NET versions like 2.0.

PICkitminus_installer_3_25_00.zip  11.5.2024. This package contains PICkit- GUI application installer for PICkit2 and PICkit3. Latest device file is included.
PICkitminus_3_25_00.zip                 11.5.2024. This package contains PICkit- GUI application for PICkit2 and PICkit3, device file and modified source files. Just the .exe, no installer.

Command line tool downloads

For command line tool, there is full source package and prebuilt binaries for Linux, Windows and MacOS. The PK2CMD Windows version is 32-bit statically linked application targeted for XP, so it should run on Windows versions from XP to 11. Mac version is compiled on OSX 10.13 High Sierra, I don't know if it works with other versions.

pk2cmd_win_1_26_00.zip                29.2.2024. This package contains PK2CMD- command line tool for Windows, device file and compatible firmware for PICkit2, PICkit3 and PKOB
pk2cmd_mac_1_25_00.zip               28.1.2024. This package contains PK2CMD- command line tool for MacOS, device file and compatible firmware for PICkit2, PICkit3 and PKOB
pk2cmd-x86_64.AppImage               29.1.2024. pk2cmd 1.25.00 for 64-bit Linux systems in AppImage format. Built on Ubuntu 18.04, verified to work on Ubuntu 21.04
pk2cmd-i386.AppImage                    28.1.2024. pk2cmd 1.25.00 for 32-bit Linux systems in AppImage format. Built on Xubuntu 16.04, verified to work on Knoppix 9.1
PK2CMD_SourceV1_26_00.zip       29.2.2024. This package contains full source of the command line utility. Can be compiled on Win, Linux and Mac OSX.


I haven't developed these software all by myself. The biggest part has of course been Microchip's original work, and all the contributions they had received from PICkit2 users. In addition to that, I have used work from other people. My thanks go to all contributions listed below:

kair.us/ projects/ pickitminus/

page created 29.5.2021
last updated 11.5.2024 webmaster@kair.us