We call PICKitPlusCommandLine for the Raspberry Pi PICKitCMD-Pi.


PICKitCMD-Pi is a new Raspberry Pi application that provides support for the latest generation of Microchip microcontrollers and EEPROMs devices.  The software is feature rich and easy to use via the console.

PICKitCMD-Pi application is the replacement application for existing Raspeberry Pi Python scripts as this is fully supported software.

The intent of PICKitCMD-Pi  is enable operations using either a PICKit 2 or PICKit 3 programmers via the Raspberry Pi Linux console interface.  Console arguments are passed to the software to configure the operation of write, reading, verify.  The software capabilities are shown in the table.

PICKitCMD-Pi supports nearly 1000 different types of microcontrollers and EEPROMS. 

  • PIC10F, PIC12F, PIC16F, PIC18F, PIC24.
  • dsPIC30 and dsPIC33 family.
  • A wide range of EEPROMs.
  • MCP2502X/5X & HCSxx.
  • EEPROM 11LCxx, 24LCxx, 25LCxx and 93LCxx, M25Px and FL127x.
  • See here for the full list of supported parts.

New functionality

  • Turbo mode - optimised write and read operations.
  • Manages Microchip HEF and SAF memory with automatically merge of HEF/SAF memory into target part.
  • New programming protocols to support for new classes of Microchips  microcontrollers.
  • Simple of command line arguments.
  • Part type, revision and family displayed during read operations.
  • Reset of Bandgap.
  • Updated and managed database for Microchip and other EEPROM devices.
  • Automatic programming of programmer firmware.

PICKitCMD-Pi features:

  • Supports the standard Microchip PICKit 2 and PICKit 3 programmer firmware.  PICKitPlus does not require an update to the Microchip PICKit 2 and PICKit 3 programmer firmware.
  • Supports multiple voltages within constraints of physical programmer - noting that some clone programmers do not support voltage control.
  • Read/write program and data memory of microcontroller.
  • Erase of program memory space with verification.
  • Supports IDEs with hold-on-exit.
  • Write/Read and Verify options.
  • Control power on and off independent of programming state.
  • OSCCAL support

Safe Usage Enhancements

  • Generation of log file.
  • Generation of error log file.
  • Internet connection not required.

What is the difference between the PICKitCMD-Pi and other Miccrochip console software?


The table below compares the capabilities.

  PICKitCMD-Pi Other Microchip software

Hex File Operations

  • program
  • extract and save
Same capability Same capability

Device Family - microcontrollers and EEPROMs

  • select part
  • recently used
  • supports legacy and recent Microchip microcontrollers
  • display list of supported parts
Legacy parts and latest parts

PICkit2 software limited to legacy parts.

PICkit3 supports legacy and latest parts via MPLAB-X Java interface. 

Programmer Operations

  • manage Progmem/Config/UserID
  • manage EEPROM
  • read/write/verify/erase/blank check
  • verify on write
  • manage power
Same capability Same capability
  • display device ID and revision
Yes Partial
  • select specific name PICkit2 or PICKit3 programmer as target programmer for operations
  • exit delay
  • support specific ISCP frequency
Yes No
  • HEF&SAF merger management
  • reset Bandgap
  • reset OSCCAL
  • errorlog support
  • logfile support
Yes No

Tool Operations

  • install firmware to programmer
  • change MPLAB and MPLAB-X modes
Yes No
Operation features of the programmers PICkit2 PICkit3
  • maximum current draw

25 mA or lower

30 mA or lower


  • vdd 

Large VDD
capacitances should not be permitted.

Allowed VDD rise time is 500 us or less.

Large VDD
capacitances should not be permitted.

Allowed VDD rise time is 500 us or less.

  • vdd supply from PICkit

range of 2.5v to 5.0v

range of 2.5v to 5.0v

  • operating limits from external VDD

maximum external VDD is 5.0 v

minimum external VDD  is 2.5v

maximum external VDD 5.5 v. 

minimum external 1.8 v