DPRG List  

[DPRG] reprogramming PIC controllers

Subject: [DPRG] reprogramming PIC controllers
From: Dale Wheat dale at dalewheat.com
Date: Wed Apr 19 11:07:26 CDT 2006


My PIC experience dates only from the 20th century, so you'll need to verify the 
following assertions with the Microchip datasheet for that particular device 
(datasheets can be found at the Microchip web site).

There are two obstacles to your current plan:

1)  "Code protection" fuses prevent the contents of the programmable memory to 
be read out.  This allows manufacturers to "protect" their investment in 
intellectual property.

2)  The program in the device is in "executable" form, which is nothing but ones 
& zeros.  There are programs called disassemblers that will take that 
mumbo-jumbo and attempt to re-create the original source program, but it will 
lack any sort of explanation of that is going on and how it implements its 
particular function.  It may or may not be obvious how to subsequently bend it 
to your will.


Dale Wheat
(972) 486-1317

ghsrocketman at gmail.com wrote:
> Wow, great information. Thanks a lot.
> So I found out the chip is a PIC16F870. I have a DP9 adapter that connects
> to the 4 wires (+5v, RX data, TX data, and GND). Which program do I need (1)
> to look at the currently flashed progam, and (2) to modify the program?
> Thanks
> Matt
> On 4/17/06, Randy Carter <rwcarter.wa at netzero.net> wrote:
>>It depends on which PIC micro controller is in the device.  All of the
>>current PIC models support In Circuit Serial Programing (ICSP).
>>Microchip has discontinued all of the parallel programed models that
>>required a special programmer.
>>The PIC16Cxx models are OTP (one time program).  Once programmed, that's
>>it if there is a bug in the program it is trash.  They do have UV
>>erasable versions of these for development purposes, characterized by a
>>  window in top of a ceramic package.
>>If it is a PIC16Fxx flash version, it can be erased and reprogramed with
>>3 signal wires and a ground connection.  Careful design of the target
>>system allows programming in circuit so that you don't have to remove
>>the micro controller to change its program.
>>>ghsrocketman at gmail.com wrote:
>>>Okay, first, I apologize if this question sounds dumb.
>>>I have a little altimeter that uses some PIC controller made by
>>>Microchip. The altimeter's original purpose was for use in model
>>>rockets, where it would measure air pressure using an electronic
>>>barometer and convert it to an altitude. Once the altimeter senses the
>>>rocket is heading downwards, it closes a few ciruits, which in turn
>>>ignites electrical matches for parachute deployment.
>>>The creator of this altimeter included a 4 or 5 wire cable that connects
>>>the altimeter to the PC. This connection can be used to either download
>>>flight information to the PC, or upgrade the altimeter's "firmware."
>>>Here's where my question begins:
>>>1) With PIC controllers, is it possible to reprogram the chips?
>>>2) If the model name, number, and manufacture of the controller is
>>>known, is it possible to take a peak at the program flashed onto the
>>>The reason I ask is because instead of having the e-match ignite at
>>>apogee, or when the rocket is heading downwards, I want it to ignite
>>>during the flight, at a specific altitude. I would only change this
>>>value once. There is no altimeter out there that does this. :(
>>>Thank you for your time,
>>>DPRGlist mailing list
>>>DPRGlist at dprg.org
> ------------------------------------------------------------------------
> _______________________________________________
> DPRGlist mailing list
> DPRGlist at dprg.org
> http://list.dprg.org/mailman/listinfo/dprglist

More information about the DPRG mailing list