---
name: "picp-isp"
section: "1"
platform: "linux"
package: "picp"
version: "0.6.2-3"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/picp"
---

# picp-isp(1)

command line utility to drive a PICSTART programmer

Part of [picp(1)](/picp/1.md).

## NAME

picp, picp-isp - command line utility to drive a PICSTART programmer

## SYNOPSIS

**picp** ttyname devtype \[-h\] \[-q\] \[-v\] \[-s \[size\]\] \[-b\|-r\|-w\|-e\]\[pcido\]\

## DESCRIPTION

This manual page documents briefly the **picp** command. This manual page was written for the Debian GNU/Linux distribution because the original program does not have a manual page.

**picp** is a utility which allows you to use the Microchip PICSTART programmer, where you would normally be required to use the Windows software.

**picp-isp** should be used for programming ICSP devices using the Warp-13 programmer. So far it appears that picp-isp is only required with Warp-13 firmware BluePole version 1.5. Try picp first, and if it fails, then picp-isp.

## OPTIONS

A summary of options is included below.

- **-h**

  Show summary of options.

- **-s**

  \[size\] shows a hash mark status bar of length \[size\] while erasing/writing

- **-q**

  sets quiet mode (excess messages supressed)

- **-r**

  initiates a read (Intel Hex record format)

- **-b**

  blank checks the requested region or regions

- **-f**

  ignores verify errors while writing

- **-w**

  writes to the requested region

- **-e**

  erases the requested region (flash parts only)

- **-v**

  Shows PICSTART Plus version number

- **p \[filename\]**

  program memory, optionally reading/writing filename

- **c \[val\]**

  configuration bits (val is a numeric word value when writing)

- **i \[val\]**

  ID locations

- **d \[filename\]**

  data memory, optionally reading/writing filename

- **o \[val\]**

  oscillator calibration space

- **filename**

  optional input or output file (default is stdin/stdout)

## NOTES

Flags are operated on in order, from left to right.  If any operation fails, further execution is aborted.  Thus, a part can be blank checked and programmed with a single command, e.g.:

```
picp /dev/ttyS0 16c505 -bp -wp program.hex
```

This example will blank check the program memory of a PIC16C505 then write the contents of the file program.hex to the program memory only if the blank check succeeded. The -wc, -wi, and -wo options must be followed by a numeric argument which represents the value.  The number may be binary (preceeded by 0b or 0B), hex (preceeded by 0x or 0X), or decimal (anything else).

```
supported devices:
```

12C508, 12C508A, 12C509, 12C509A, 12CE518, 12CE519, 12F629, 12C671, 12C672,  12CE673, 12CE674, 12F675, 14000, 16C505, 16C52, 16C54, 16C54A, 16C54B, 16C54C,  16HV540, 16C55, 16C55A, 16C554, 16C558, 16C56, 16C56A, 16C57, 16C57C, 16C58A,  16C58B, 16C61, 16C62, 16C62A, 16C62B, 16C620, 16C620A, 16C621, 16C621A,  16C622, 16C622A, 16CE623, 16CE624, 16CE625, 16F627, 16F628, 16F628A, 16C63,  16C63A, 16F630, 16C64, 16C64A, 16C642, 16F648A, 16C65, 16C65A, 16C65B, 16C66,  16C662, 16C67, 16F676, 16C71, 16C710, 16C711, 16C712, 16C715, 16C716, 16C717,  16C72, 16F72, 16C72A, 16C73, 16F73, 16C73A, 16C73B, 16C74, 16F74, 16C74A,  16C74B, 16C745, 16C76, 16F76, 16C765, 16C77, 16F77, 16C770, 16C771, 16C773,  16C774, 16C781, 16C782, 16F818, 16F819, 16F83, 16C84, 16F84, 16F84A, 16F870,  16F871, 16F872, 16F873, 16F873A, 16F874, 16F874A, 16F876, 16F876A, 16F877,  16F877A, 16C923, 16C924, 16C925, 16C926, 17C42, 17C42A, 17C43, 17C44, 17C752,  17C756, 17C756A, 17C762, 17C766, 18C242, 18F242, 18F248, 18C252, 18F252,  18F258, 18C442, 18F442, 18F448, 18C452, 18F452, 18F458, 18C658, 18C858,  rf509AF, rf509AG, 18F6520\

## AUTHOR

This manual page was written by Josh Huber \<huber@debian.org\>, for the Debian GNU/Linux system (but may be used by others).
