How to Reflash CARPROG MCU AT91SAM7S256 Step by Step

This post show a step-by-step guide on how to reflash carprog MCU AT91SAM7S256. I bought my Carprog clone 4.01 from digi_obd but after about 50 uses starts a counter: “260 uses left – update hardware to synchronize” and was decreasing, anyway 260 uses is big number to recover the investment (us $209 dlls), the programmer was paid before the counter starts.

 

Need these stuff:
1.- AT91SAM7S256 bin:Contact car-auto-repair.com webmaster for this bin file
2.- Jtag programmer
3.- Jtag software:

Quartus II integrated development environment.
NIOS II IDE integrated development environment.
NIOS II EDS integrated development environment.

We need to prepare the Carprog to connect to Jtag programmer but first the flash need to be erased, the Jtag function in mcu is dissabled, you can’t connect to the mcu before erase the flash. Remove the AT88SC eeprom from the board, please note where is the pin 1 in eeprom before remove:

How to Reflash CARPROG MCU AT91SAM7S256 (1)
Carefully lift the pin 55 (reset) of the mcu and solder a wire and secure it with a small ammount of silicone (you don’t want to broke the pin in the process).
Connect the Carprog (with the pin 55 dissconected) to the 12v supply, wait about 10 seconds and connect the wire from pin 55 to Vcc (3.3V) in Carprog:
How to Reflash CARPROG MCU AT91SAM7S256 (2) How to Reflash CARPROG MCU AT91SAM7S256 (3)
Wait from 5 to 10 seconds after connect the 12v supply, the flash content will be erased and the Jtag option of the Mcu will be enabled now. If not work leave connected for about 3 to 5 minutes. Disconnect the 12v supply from carprog and remove the pin 55 wire from vcc. The pin 55 must remain disconnected until the programming process is done.

Install the H-JTAG software in your pc.

 

Now we can make the connections from Carprog to Jtag programmer:
Carprog Pinout:

How to Reflash CARPROG MCU AT91SAM7S256 (4)

Jtag Pinout:

How to Reflash CARPROG MCU AT91SAM7S256 (5)

And here is the Carprog connected to the JTAG programmer (note that the pin 55 wire is disconnected):

How to Reflash CARPROG MCU AT91SAM7S256 (5)

After the H-Jtag sotware is installed we can procced to configure:
Open the H-Jtag server and make the adjustments:
Select the port:

How to Reflash CARPROG MCU AT91SAM7S256 (7)

LPT Jtag setting:

How to Reflash CARPROG MCU AT91SAM7S256 (8)

TAP configuration:

How to Reflash CARPROG MCU AT91SAM7S256 (9)

Target manager:

How to Reflash CARPROG MCU AT91SAM7S256 (10)

Now connect the carprog to JTag programmer and 12v supply and press “Detect Target” in H-TAG server, now the Carprog Mcu is detected!!!:

How to Reflash CARPROG MCU AT91SAM7S256 (11)

Now we procced to program the AT91 mcu:
Start the H-FLASHER and select the AT91SAM7S256 from the list:

How to Reflash CARPROG MCU AT91SAM7S256 (12)

Go to “4 Programming” in the programming wizzard and press “Check” to verify the communication with the target mcu, if all is ok the values must be:
Flash: AT91SAM7S256 0x270D0940
Target: ARM7TDMI LITTLE-ENDIAN
-In “Type” select: “Plain Binary Format”
-In “Dst Addr” select: “Flash Base Address”
-In “Src File” select the location of the AT91SAM7S256 bin in your hard drive.:

How to Reflash CARPROG MCU AT91SAM7S256 (13)

Now press the “Program” button and wait to finish:

How to Reflash CARPROG MCU AT91SAM7S256 (14)

If the progrmming was succefull you will receive the next message:

How to Reflash CARPROG MCU AT91SAM7S256 (15)

You can verify again if everything is ok by pressing the button “Verify”:

How to Reflash CARPROG MCU AT91SAM7S256 (15)

The programming process is finished!!, disconnect the 12v supply, then disconnect the programmer from carprog, solder the pin 55 wire to Ground (check the picture) and put back the AT88SC eeprom, reassemble the carprog and test it.

How to Reflash CARPROG MCU AT91SAM7S256 (17)

I already made some further tests and the Carprog works well with any version of the software and the COUNTER IS GONE!!!
Tested with versions: 3.75, 4.0, 4.1, 4.5, 4.85 and 4.86, the counter never start again.

 

I made a modification to my Carprog clone for fast reprogramming, if I need to do it again will not be necessary to open it again and redo all connection every time I want or need to reprogram:

How to Reflash CARPROG MCU AT91SAM7S256 (17)

I used the Carprog pins from 15 to 21, those pins are useless for the programmer or any adapter, they are disconnected:

How to Reflash CARPROG MCU AT91SAM7S256 (19)

I used a “selector” like the desktop’s pc for bios, to select the programming mode, in picture from left to right: 1, 2 3, if the jumper is placed at pins 1 and 2, the pin 55 (reset) from the AT91 is shorted to ground, preventing deprogramming or programming the MCU, if the jumper is placed at pins 2 and 3 the pin 55 is shorted to vcc 3.3v and the Mcu is placed in ERASE MODE. Without jumper the mcu is placed in programming mode:

How to Reflash CARPROG MCU AT91SAM7S256 (20) How to Reflash CARPROG MCU AT91SAM7S256 (21)

 

Now is probably a waste of time, in the near future will save me some time but from now I can reflash the AT91 in less than 5 minutes.

Update: I forgot to mention that I doesn’t need to remove the AT88SC eeprom to ERASE/REFLASH the AT91 mcu. After that the Carprog works well. This is MY OWN experience, so, If you want to do the same, do it at YOUR OWN risk.