I have a PIC18F4550 from an old device and I need to see the code. I tried reading it using my ICD3 programmer, but the chip seems to have its code protected. How can I get the code anyway?


In the paper Heart of Darkness - exploring the uncharted backwaters of HID iCLASS TM security is a technique described (section III.C) that might work,but it does require a working device which might not be at hand in your situation.

In short they use a TTL-232 cable in synchronous bit bang mode to emulate the PIC programmer. They then override the boot block by a special dumper firmware. Why it seems to work:

Microchip PIC microcontrollers internal memory is an EEPROM which means that data are stored and erase by pages (which hold a predefined amount of data). The "key" point is that , whenever memory is copy protected, individual blocks can be erased resetting the copy protection bits only for these blocks.

| improve this answer | |
  • 1
    @Gilles my bad, I'm new to the Stack Exchange network and its ethics (=bad excuse). In my defense, my laziness to read the FAQ lost from my desire to answer the question quickly. I've edited to original response to be more constructive. – ixje Mar 22 '13 at 7:19
  • 1
    Thank you! This is exactly the right way to describe an external resource. – Gilles 'SO- stop being evil' Mar 22 '13 at 9:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy