There will come a time when Microchip has come out with their version 14.8 of MPLAB and you will need to upgrade your MCP Programmer to be fully compatible.
How will you know you need an upgrade? When you try to program a newly released PIC and MPLAB gives an error message like:
"This device requires firmware version x.y.z or higher."
The MCP programmer will always be fully supported under MPLAB. As new versions of MPLAB come out, new firmware releases will be released for the MCP as well.
Get the newest MCP firmware from Olimex
Update 6-16-05: Olimex has released their latest firmware version 711-121c. This version can only run on a PIC 18F252. This PIC is slightly more expensive, but has double the space than the 16F876A. This has allowed Olimex to include a boot loader on the 18F252. Now, all future firmware revision will be done without the need to remove the PIC.
When Olimex releases a new MCP firmware version, a simple serial program will flash the new firmware onto the 18F252 - you will not need these instructions. These instruction are only for the 16F876A -> 18F252 migration.
A firmware upgrade will take less than 5 minutes and requires an extra 18F252 and a small flat head screw driver.
You can always check the current firmware revision on your MCP by first enabling the programmer then selecting About under the Programming menu on MPLAB.
Please Note: If the PIC on your MCP Programmer has a date code of '02' or before, an upgrade may not be possible. We have not been able to correctly flash these early versions of the MCP. This problem shows up as a "Communication Error" every time you attempt to 'Start Programming' under the upgrade program. You will need to order a pre-loaded 876A. You can find the date code next to the 'M' logo on the top of the chip. Example : 03150KC is fine for an upgrade.
So you've downloaded the MCP Firmware, you've got your MCP hooked to your serial port and powered.
Make sure you have MPLAB closed and run the PIC-MCP-upgrade-###.exe that was contained in the downloaded zip file.
Insert the 18F252 into the ziff socket and close the arm. Yes, you must have a 18F252. The upgrade software is expecting both the available program space of the 18F252 (no 16F876A's). Make sure the ICSP jumper (labeled JP) is removed/open.
Now click on Settings and make sure you have the correct Com Port selected. Once you are sure everything is set, click on Start Programming.
You should have the chip in - just click OK.
The MCP will chug along. The PGM LED should be lit, flash, and do its thing. The programming process takes around 20 seconds.
The happy window.
Once programming is complete, the new PIC will be verified. If everything goes as planned, you should get a confirmation window.
Remove the new PIC. Disconnect the serial and power connections. Grab your mini-screw driver.
You will need to be patient with this part of the process. Try to get the screw driver under the edge of the PIC and rotate it so that you are pushing down on the socket and up on the PIC. Work from both ends. Slowly work out the old PIC. Don't get too crazy prying it up. This will prevent damage to the MCP board and all you to use the old 16F876A in a project or development board.
If you are careful, you can remove the old PIC without bending any pins. Now you will need to insert the newly programmed PIC into the socket.
Be sure to insert the new 18F252 into the MCP. Make sure the Pin 1 dimple of the new PIC is aligned with the white dimple just above the socket. You may want to slightly shape (bend slightly) the pins on the new PIC inward to better line up with the permanent socket. Again, don't get carried away, just a little at a time.
Once you have the new PIC in place, make sure the PIC is seated down in the socket. Power the board, hook up the serial cable and start MPLAB.
Under Programmer -> Select Programmer -> PICSTART Plus
Programmer -> Enable
Programmer -> About
MPLAB should display the new firmware revision of your MCP. You will now be able to program all of the newest PICs supported under MPLAB.
If you run into problems, let us know! Please use the SparkFun Electronics and Olimex Support Forum.