Tomi Virtanen wrote: > I tried the following: > 1. load data all '1's (000010b, 0b, 11111111111111b, 0b) > 2. bulk erase pgm mem (001001b) > 3. begin programming (001000b) > 4. I waited 10ms before doing anything else to it.. > > But no bulk erase happens... Close. It seems the bulk erase commands work like the load data commands and need data. Here's what I do: 1. send 001001 bulk erase program memory 2. send 0111111111111110 all 1s data (padded with 0s) 3. send 001000 begin programming 4. delay 10ms With a similar sequence for bulk erase data memory. By the way, the C source code of my own programmer software is contained in: http://www.man.ac.uk/~mbhstdj/files/pic84v04.zip David