PP06 PIC Programmer Software

83 PIC's

6 Programmers

Windows, Linux, DOS

Now Programs 16F818/9,12F675, 12F629,16F630,16F676!

  • New Rev 3 Programmer PCB with 8,28,40 pin sockets and ICD connector.

  • Release 1.18 Supports "El Cheapo" programmer. Adds 16C745,765 USB PICs

  • V1.17: 16F818/9, 16F628A Tested; Adds 16F627A,628A,648A; Assert bugs fixed (linux, win2k)

  • Bare programmer PCB's are available now.
  • Flash Issues Page Some problems and Issues with new flash parts
  • New timing options and Force Code Protect options

PP06 is an open-source Production programmer for Microchip's PIC micros. Specifically designed for use in factory in-circuit programming, and development of master/slave systems it supports many pics,and is easily extended to different hardware.


  • Production (3 Level) Programming Algorithm for manufacturing and ATE use
  • Fully Assembled Production (3 level) Programmer available
  • 12 and 14 Bit Eprom and Flash PICs: 12CXXX, 16CXXX, 16FXXX
  • Dual Channel to program 2 different pics in Master/Slave systems
  • Overwrite/Burn-down and Lax modes for fast programming and longer flash life
  • Supports 4 new flash types 16F7X, 12F675, 16F877A,
  • Checks and displays Device ID and mask revision number
  • Displays and saves OSCAL and BGCAL bits in EProm and Flash
  • Display and overwrite of OSC-CAL for developing with windowed parts (eg 12C671)
  • Win9X, Win-NT/2000, DOS, LINUX
  • 78 Pics
  • 6 types of Programmer currently supported

This software is now Open Source.

PP06 Project Page onSourceForge is the place to find all up-to-date information, make bug reports etc.

It is freely available for any purpose, including use with commercial programmers or other products

To be kept up to date join the pp06-news list

If you havn't already, join Sourceforge, and fill out the new user survey and you will get notified of new releases.


  • I2C-Chip: PC to I2C/SPI/Dallas 1-Wire Adaptors and I2C devices
  • jpictools.sourceforge.net Java based pic tools
  • gputils.sourceforge.net Cross platform Assembler and other tools. (gpasm has some silent faults, but it's 6x faster than MPASM)
  • Realterm: Serial terminal software
  • PP06 Project Page SourceForge
  • 8x51 Tools: www.designtools.co.nz
  • More Links

Command Line Reference

This (pp06.html) is the main command reference

The program emits its own help and html help file. This is the primary command reference for options, supported PIC's etc, and should be referred to in preference to these web pages.

This is a fairly recent version, but always make yourself to a fresh one

PP06 -help=[topic] will emit help on "topic"
PP06 -help=all | more will display all help screens

To dump all help as an html file:

PP06 -help=html > pp06.html

(More about help )

back to contents

PP06 is a commandline program. It uses gnu style long options

Programmer Hardware Types

Currently known Programmers

This software works with (currently) 6 different generic types of parallel port programming hardware, but is tested with the BEL Dual Pic Programmer. The s/w allows New Hardware Types to be easily added with a few new macros.

To select a programmer you can use the commandline option -hw eg for "El Cheapo" hardware use pp06 -hw=6

PIC Types

Currently known Pic Types

The programmer supports 12 and 14 bit ICP parts (ie 16CXX,16FXXX,12CXXX), EProm, OTP and Flash. New PIC types can be easily added with a single line of source code.

back to contents

Operating Systems

Adding new Operating Systems and PC Hardware

Programmer & Software Functionality

Capabilities of Dual Pic Programmer

Latest Versions

Zip Files Source and Binary releases are available here

back to contents

Browse the CVS (source code)

Test Programs

In the zip file you will find a set of batch files, and a printer-port control program that will exercise the port pins directly, or can be used to reset the target, turn the power on/off etc.

PP06 -debug will enter debug mode, and the pins and timing can be tested.

back to contents

Compile, Assemble, Program

I use the batch file BLOCASM.BAT from within MultiEdit. They have an eval version, and it is thoroughly recommended. If you are using Multiedit, I can send you my MECONFIG.DB file with language and tool setups.

back to contents

Is it the same as David Taits Program?

It will work with 6 types of tait-ish hardware. It was originally very similar, but since the addition of 12 bit devices, Eprom, data eeprom, id_bytes, cpu_id's, config in file, GNU command lines etc, it is now very different.

The commandline options have been totally re-written using the gnu long_options library to make them self-evident.

Contact Us

back to contents