Hello, I am having problems with using the ICD Module from MicroChip to put a bo= ot loader on a PIC16F877. Can anyone give me a tip as to what I am doing wrong? Background: I bought this serial LCD from www.earthLCD.com that has a 16F877 with Shane=92s bootloader burned into already. Worked great; been using it for a long time. I picked up the MicroChip ICD modu= le recently and tried to use it to debug my programs. It, of course, uses t= he same spot in high memory as the bootloader, so it overwrote the boot load= er while I was using it. Fair =91nough. Problem: Now I am trying to use the programming feature of the ICD module to put y= our bootloader back onto the PCI16F877. It appears to program the chip, but t= hen the chip does not respond to the PC downloader program. I start the downloader =91searching=92 and then reset (or power cycle) the PIC16F877,= but the downloader still searches like the poor chip is not even there. Details of How I am Programming the PIC16F877: 1) Open MLAB from scratch. (I use Win2k) 2) In Menu -> Option->Dev Mode -> choose ICD 3) In ICD window that pops up, choose =91options=92 to expand window 4) In Menu -> File->Import -> select hex file =9162019 - bootldr-v2-16F876-77-20Mhz-19200bps.hex=92 (I ot this from Shane=92s web = site) 5) Open ROM window; verify that first 3 bytes have the jump, then 0xFF=92= s, then address 0x1F00 to 0x1FFF has stuff. Does this seem right? The first= 3 instructions are =93bsf 0xA,0x3=94 =93bsf 0xA,0x4=94 =93goto 0x706=94 is= that a long jump to 0x1F00? 6) I set options as shown below. 7) select =91Program=92 and a msg box pops up saying =93there is code pas= t 0x1F00, continue=94. I assume this is good because it is warning that the ICD OS= is about to be rewritten. Options I set in the ICD Programmer window: Device: PI16F877 Oscillator: RC (this was the default) Watch Dog Timer: Off/disable Power Up Timer: Off/Disable Brown out Detect: Off / Disable Low voltage programming: enable Code Protect Data EE: off Flash Memory Write: Memory written to by EECON Code Protect: Code Protection Off Checksum: 0x1BBB<3FBB> (this was the default) ID Code: 010B0B0B Use Checksum as ID: checked Program Start Address: 0x0000 Program End Address: 0x1FFF Program Memory: checked Configuration bits: checked ID Locations: checked EEPROM Data: not checked Erase all before program: checked Enable Debug Mode: not checked So can anyone see what I am doing wrong? Thank for the help.\ --BobG -- http://www.piclist.com hint: The list server can filter out subtopics (like ads or off topics) for you. See http://www.piclist.com/#topics