Release Notes for MPLAB® PM3
Device (Production) Programmer

MPLAB® IDE v8.56

DLL and Firmware versions:

 MPPm3.dll   v2.40.1.45  
 PM3 Suite (OS, FW)   v2.03.16  (pm3020316.mjc)

 

August 13, 2010

 

IMPORTANT: Do not allow Windows® OS to pick a USB driver; MPLAB PM3 will not work with this driver. You must follow the procedure specified at MPLAB IDE software installation for USB driver set-up. If you did not set up the port during installation, see the section in this readme file on USB Port Setup.

Table of Contents

1      Device Support

2      Operating System Support

3      HCS Support and Programming Information

4      Reference Documents

5      What's New in v8.56

6      Repairs and Enhancements in v8.56

7      Autorun

8      Known Problems

9      Important Notes

10     USB Port Setup

11     Socket Support

12     Tested SD/MMC Cards

13     Definitions

14     Declaration of Conformity

1         Device Support

Click the link below to see device support for the programmer (PM3).

·         Device Support List

2         Operating System Support

This tool has been tested using the following operating systems:

32-Bit: Windows® 2000 SP4, Windows XP SP2, Windows Vista™ and Windows 7 OSs

64-Bit*: Windows XP 64, Windows Vista 64 and Windows 7 64 OSs

NOTE: Windows NT® and Windows 98/ME OSs are NOT supported.

*MPLAB PM3 P/N 10-00359 does not support 64-bit drivers.
*MPLAB PM3 P/N 10-00398 supports 64-bit drivers.

IMPORTANT NOTICE: Beginning with MPLAB IDE v7.51, MPLAB IDE and MPLAB PM3 will no longer be tested on Windows 98 or Windows ME OSs. MPLAB IDE and MPLAB PM3 may continue to work under these operating systems, but their operation will no longer be verified through testing.

3         HCS Support and Programming Information

As of MPLAB IDE 7.41, MPLAB 5.xx is no longer required to create SQTP files for the programming of an HCS devices.  SQTP file creation for HCS devices is now available by using the KeeLoq Plug-in.  This component is offered during the MPLAB IDE Installation.  When installed, the KeeLoq Plug-in becomes available under the Tools menu in the MPLAB IDE.  Encoder, Decoder and Transponder options are offered on the KeeLoq dialog for the SQTP file creation.

4         Reference Documents

The following documents may be found on our website or MPLAB IDE CD-ROM:

·         MPLAB PM3 User's Guide                                       DS51464

·         Setting Up the MPLAB PM3 Poster                          DS51405

·         Programming Specifications for devices                  various DS numbers

·         Development Tools Selector

On-line help (Help>Topics) is also available for this tool:

·         Programmers>MPLAB PM3                                     hlpMPLABPM3.chm

5         What's New in v8.56

None.

6         Repairs and Enhancements in v8.56

Key

Summary

Device Affected

PM3-405

For 16F19XX devices if you load an SQTP .NUM file that uses EEPROM, the Program Memory *also* gets programmed with the SQTP value.

PIC16F19XX

 

 

PM3-407

Failure displayed with Oscillator Calibration Memory location when programming another device

Mid-Range

7         Autorun

To automatically load an environment into the PM3 at power-up, Autorun can be used on a memory card (PM3Card).  Create a file called autorun.run at the root directory level of the memory card and include these commands in the file:

 

LOAD <Enviroment Path>\<Environment Name>

END

 

For example, if an environment has been saved on the memory card (PM3 Card) called PIC18F4321 in directory PIC18F4321, the following lines should be placed in the autorun.run file:

 

LOAD PIC18F4321\PIC18F4321.pm3

END

 

Note: Make sure there are no leading or trailing spaces on the command line or the command will not be recognized.

8         Known Problems

The following is a list of known problems. For information on common problems, error messages and limitations, please see “Troubleshooting” in the online help file for MPLAB PM3 (hlpMPLABPM3.chm).

8.1           Loss of Communication

·         The MPLAB PM3 does not timeout if a communication error is received. If this occurs, turn the power to the MPLAB PM3 off then on. Disable and then Enable the MPLAB PM3 within MPLAB IDE.

8.2           MPLAB IDE

·         Once address ranges are set in the Programmer Settings dialog, Program tab, the settings will stay set and not revert to default values after an operation.

8.3           GENERAL

·         Memory Areas, Program Memory Range, Preserve EEProm and Erase All Before Program options set on the MPLAB PM3 hardware for Stand Alone use cannot be controlled by the MPLAB IDE, Visual PROCMD or PM3CMD, nor are they saved with Environments.

·         With PIC18F8xxx devices set in boot block processor mode, memory past the boot block range is not accessible. Therefore, verifying after the boot block range will fail in this mode. In microprocessor mode, all of program memory will fail a verify. In some devices, configure and ID memory will also fail.

·         For ICSP of PIC18Fxx20 and dsPIC30F devices, you must connect the AVDD and AVSS pins for the devices to program.

·         ICSP is not currently supported for Serial EEProm devices.

·         ICSP programming of dsPIC devices may require a short cable and/or impedance matching resistors for optimal speed. On some of the smaller pin count devices, crosstalk between the PGD and PGC does not allow the device to get into ICSP mode. Keep the cable length under 6 inches and/or place 100ohm resistors in-line with the PGD and PGC signals to minimize the crosstalk.

·         The OS Suite that has been released with the MPLAB IDE version installed on the workstation must be used for programming. If not, conflicts can occur between the MPLAB IDE and the MPLAB PM3 firmware detected on the programmer.

·         If you encounter a problem with downloading an MPLAB PM3 BIOS using a USB connection, under certain conditions, an MPLAB PM3 may lose communication with the PC. during the BIOS download. If this occurs, the MPLAB PM3 screen will appear blank upon restart. At this point, the new BIOS may be downloaded using MPLAB IDE through a Serial Port connection.

·         Programming issue on the PIC16C5X – The PM3 may have difficulty programming the 16C5X device. To work around this issue, place 0.1uf cap on both Vdd to ground and Vpp to ground. In addition, connect the device ground pin to the system ground located on the socket module. Turn the socket module over and find connector P1. The bottom pin on the inside edge of the connector is ground. Make sure to ground the associated ground pin of the device to system ground.

·         There are some cases in which PIC16C5X devices failed to program due to excessive current sink at vpp/MCLR pin. Please refer to ETN 28 found on www.microchip.com for further information.

·         For the PIC18F14K22 family, MPLAB IDE debug/programming tools will not work below 1.9v. The work-around is to run the device above 1.9v.

·         PIC18F2520 MCUs: Table Read Protect (EBTRx) will not work unless Code Protect (CPx) is enabled. Also, once Table Read Protect is enabled, you cannot perform a Verify on the protected block.

8.4           SSRs (System Service Requests)

·         SSR 25254 - Some devices require that a .1uF bypass capacitor be placed from the VDD pin to the VSS pin of the device to successfully program the device. If programming failures still arise, try increasing this value incrementally to a maximum of 10uF. The parts affected are:

            PIC16F737        PIC16F747        PIC16F767        PIC16F777

            PIC16F818        PIC16F819        PIC18F1220      PIC18F1320

            PIC18F2220      PIC18F2320      PIC18F2331      PIC18F2431

            PIC18F2410      PIC18F2420      PIC18F2455      PIC18F2480

            PIC18F2510      PIC18F2515      PIC18F2520      PIC18F2525

            PIC18F2550      PIC18F2580      PIC18F2585      PIC18F2610

            PIC18F2620      PIC18F2680      PIC18F4220      PIC18F4320

            PIC18F4331      PIC18F4431      PIC18F4410      PIC18F4420

            PIC18F4455      PIC18F4480      PIC18F4510      PIC18F4515

            PIC18F4520      PIC18F4525      PIC18F4550      PIC18F4580

            PIC18F4585      PIC18F4610      PIC18F4620      PIC18F4680

            PIC18F4682

·         SSR 26990 - The PIC10Fxxx, PIC12F510 and PIC16F506 support programming down to 2.25 volts. Programming below this voltage may cause the program memory and calibration data to be improperly programmed.

·         SSR 28011 - The PIC17Cxxx devices cannot be programmed under ICSP with all MPLAB PM3 ICSP Monitor cards or FPGA versions found in the MPLAB PM3. For example, if either the ICSP Monitor card or FPGA versions are improper, attempting to enable the MPLAB PM3 with a PIC17C756A will yield the following error messages:

MPLAB IDE

The current hardware configuration does not support ICSP for PIC17C devices. Please contact Microchip support for the latest MPLAB PM3 hardware revision. The following sockets are supported:

AC164301

AC164308

AC164319

Stand Alone Mode - MPLAB PM3 Display

Your MPLAB PM3 does not support PIC17CICSP. Please contact Microchip for a hardware upgrade.

·         SSR 28427 - PIC18F24J10:  Fails to Erase/Program (Revision 2 motherboard issue). If you experience this Revision 2 Motherboard problem, please contact Microchip for hardware replacement.

·         SSR ICD2-81: ICSP mode fails to program/verify the PIC24FJ128GA010 device when user code does runtime flash erase /write operation. It appears the device is executing code before the full programming cycle is complete.

For PIC24F devices during a programming/verify operation (or subsequent verification operation) of user code that performs self-writes and/or self-erases to program space, a verify sequence may fail if the code execution occurs within the first execution cycles following reset.

 

Workaround: Place a delay in your code before the code section that performs the self-write and/or self-erase.

The specific delay value may need to be adjusted, but 100 ms would be a conservative value to start

out with. Here is a C language example that illustrates the workaround:

 

int main (void)

{

 

    // Place 100 ms delay here before any self-write/self-erase code

 

        .       .       .

        .       .       .

        .       .       .

 

}

 

Key

Summary

Device Affected

PM3-373

Checksum information is not displayed on the PM3 Standalone box with PIC32 devices

32MX family

PM3-372

Vdd level is not being monitored.

All

PM3-370

Warning messages appear after creating an environment

any devices

PM3-362

PM3CMD does not save the '/w' setting to an Environment

 

PM3-352

PM3CMD -Exporting a Serial EE memory hex file results in a hex file that is separated by 0x00

All SEE memory devices

PM3-348

When performing LVP programming, programming fails when using power from target

18F2520

PM3-329

16F877A can't range program PM when "erase all before programming" is unselected.

16F877A

PM3-324

PIC17C756 and PM2 socket module AC174007 (with adapter) does not work, reads back wrong values.

17C756

PM3-308

dsPIC33FJ256GP710 fails to program from MPLAB IDE. Returns "Serial Receive Error"

33FJ256GP710

PM3-293

PIC16F88 does not erase/blankcheck when voltage settings are set below 4.5V.

16F88

PM3-286

Performing erase on 16F676 with no device in socket produces "Erase not successful" as expected. Programming random data with no device in socket also produces "Erase not successful" message which is misleading.

16F676, 12F510

PM3-275

Noticed a large increase in time required to load environment from PM3 CARD from 3 seconds to 13 seconds.

 

PM3-274

When loading environment from MPLAB PM3 card settings such as Memory Regions, Memory Range do not get loaded properly into MPLAB IDE.

All

PM3-208

18C252 programmed hex file differs from read hex file.

18c252

PM3-199

High programming voltage is still being applied even though LVP is checked, due to LVP being turned off code

ALL

PM3-191

Progress bar does not show up in display

25AA256

PM3-188

After an 'Erase All' command is sent to the MPLAB PM3, MPLAB IDE output window states 'Operation Succeeded', but the message is displayed only to indicate that the command was sent, not that the Erase was really done.

 

PM3-164

Programming array is getting erased no matter if how the checkbox is checked

18F87J50 family

PM3-162

Use ICSP on the PIC16F88 at Vdd around 3.3V. Program some data on a blank device. Erase the device. Notice that the blank check will fail and that the erase did not occur. The PIC16F88 and other devices in this family (PIC16F818, 819, 87, 873A, 874A, 876A, 877A) do not support a low voltage bulk erase command. To clear the program memory space, perform a "Debugger>>Clear All Memory>>All Memory" command, then program this image into the device.

 

PM3-158

18F86J15: 'SIGN' configuration bit reported after an Erase of a code protected device and attempting to verify that it was blank

18F86J15

PM3-157

Calibration Tab Page 'New Value' Text Box: Still accepts certain invalid values; Programming is allowed

10F2xx, 12F629/675, 12x50xx, 16F50x, 16F630/676, 16C43x

PM3-152

Use of the 'Manual Download' option may cause some MPLAB PM3 units to clear the BIOS just as the download begins; it hangs. If this occurs, toggle the power on the MPLAB IDE PM3 and exit the MPLAB IDE. Restart the MPLAB IDE and accept the 'Automatic Upgrade' that will be offered when the MPLAB IDE detects that the BIOS and possibly other components require update.

 

PM3-151

Load Environment: No error message displayed if the environment selected does not match the device selected in the MPLAB IDE

Any

PM3-122

Use of Pro Mate II Socket Modules: Add for dsPIC Devices

dsPIC30Fxxxxx

PM3-68

PIC16C433: Calibration value cannot be programmed into a memory area though completely blank.

 

PM3-62

PIC17C752/17C44 - Code protected checksum before programming does not match checksum after reading a CP part.

 

PM3-10

PIC18Cxxx: Using Stand Alone mode, range is not restricted to a 2 byte boundary rule.

 

 

9         Important Notes

9.1           Checksums

Please see the MPLAB IDE readme for any important updates on checksums.

9.2           MCP Devices

MCP devices are now supported. Hex files for MCP CAN extenders can be created in two ways using the .ASM and .INC files available from Microchip FAEs, CAEs or applications engineers:

1)       Select the appropriate values for each parameter in the .ASM file and assemble it using MPASM or MPASMWIN. The potential values for each parameter are listed in the .INC file. Import the resulting hex file and program the device.

OR

2)       Choose values for each parameter in the GUI (graphical user interface) and generate the hex file. Import the resulting hex file and program the device.

9.3           PIC17CXXXX ICSP Support

For support of PIC17CXXXX ICSP, the following is required in your MPLAB PM3:

·         Minimum ICSP Monitor card version 2.83

·         Minimum FPGA version 1.11.00

Contact Microchip for the procedure to update the FPGA version and the required file.

10    USB Port Setup

Installation and setup instructions are dependent on your operating system. Open the appropriate file for your OS in a web browser and follow the instructions to install the driver(s).

Note: If you have accidentally installed the Windows OS default driver, these instructions will direct you to how to "clean" your system first before installing the correct driver(s).

Notes:

Win 2000/Win XP/Win Vista/Win 7

Find detailed instructions at:
C:\Program Files\Microchip\MPLAB IDE\MPLAB PM3\Drivers\ddpm3.htm

Basic instructions are as follows:

  1. Install MPLAB IDE v8.40 or higher.
  2. Insert a communication board (standard or high-speed) into the MPLAB PM3.
  3. Connect the MPLAB PM3 to a PC USB port using a USB cable.

4.       Follow the “Found New Hardware Wizard” to install the drivers (software):

a.       automatically for Win 2000/XP.

b.      manually for Win Vista. The drivers are located in:
C:\Program Files\Microchip\MPLAB IDE\ MPLAB PM3\Drivers

 

Win XP 64/Win Vista 64/Win 7 64

Find detailed instructions for Win XP 64 at:
C:\Program Files (x86)\Microchip\MPLAB IDE\Drivers64\XP64\ddxp64.htm

For Win Vista 64:
C:\Program Files (x86)\Microchip\MPLAB IDE\Drivers64\Vista64\
ddvista64.htm

For Win 7 64:
C:\Program Files (x86)\Microchip\MPLAB IDE\Drivers64\Win7_64\
ddwin764.htm

Basic instructions are as follows:

1.       Install MPLAB IDE v 8.14 or higher (for Win XP/Vista 64) or v8.43 or higher (for Win 7 64).

  1. Insert a communication board (standard or high-speed) into the MPLAB PM3.
  2. Connect the MPLAB PM3 to a PC USB port using a USB cable.

4.       Follow the “Found New Hardware Wizard” to install the drivers (software) manually.
C:\Program Files (x86)\Microchip\MPLAB IDE\ Drivers64

 

IMPORTANT NOTICE: Beginning with MPLAB IDE v7.51, MPLAB IDE and MPLAB PM3 will no longer be tested on Windows 98 or Windows ME OSs. MPLAB IDE and MPLAB PM3 may continue to work under these operating systems, but their operation will no longer be verified through testing.

Win 98
C:\Program Files\Microchip\MPLAB IDE\MPLAB PM3\Drivers\ddpm398.htm

Win ME
C:\Program Files\Microchip\MPLAB IDE\MPLAB PM3\Drivers\ddpm3me.htm

11    Socket Support

Refer to the Development Tools Selector (DTS) located on the Microchip web site (www.microchip.com). Select "Development Tools" under "Design", then select "Development Tool Selector" under "Resources" from the MPLAB IDE CD-ROM you used to install MPLAB

12    Tested SD/MMC Cards

Microchip is continuing to test MMC and SDMMC cards from various manufacturers. At the time of this release, we suggest using cards greater than 16 MB.

The following SDMMC and MMC cards have been tested with the MPLAB PM3:

Manufacturer

Type

Size

ATP

SD

1 GB

Generic

SD

128 MB

Integral

SDMMC

64 MB

Kingston

SDMMC

32 MB & 128 MB

Kingston

MMC

64 MB

Lexar

MMC

32 MB

Lexar

SD

512 MB

PQI

SD

128 MB

PNY

SD

128 MB

PNY

SD

256 MB

PNY

SDMMC

256 MB

SanDisc

SD

128 MB

SanDisk

Ultra II SD

256 MB

 

Microchip does not support FAT32 and FAT12 formatted cards. MPLAB PM3 will reformat non-supported formats to FAT16.

13    Definitions

Image

An image encompasses all the information needed to program a device. MPLAB IDE first transfers an "image" to the MPLAB PM3 before it verifies or programs a device. In addition, when you read a device you are creating an image on MPLAB PM3 which later will get transferred to MPLAB IDE.

MPLAB PM3 Operating System (OS)

The MPLAB PM3 OS (aka Firmware) is the suite of machine code that allows the programmer to operate much like Windows is to your PC. MPLAB IDE will automatically alert the user when a new upgrade is available.

Environment

The MPLAB PM3 Device Programmer uses a new concept called an MPLAB PM3 Environment. An Environment is a snapshot of the current programming settings for a specific device. It contains all the necessary information to recreate the current programming state, including a binary image of the device’s memory data, links to an optional SQTP file, and specific part information. When an Environment is saved, a folder is created on the selected drive on a PC or on the removable MPLAB PM3 Card.

See the MPLAB PM3 User's Guide for more information.

14    Declaration of Conformity

We

Microchip Technology Inc.

2355 W. Chandler Blvd.

Chandler, Arizona 85224-6199

USA

hereby declare that the product:

MPLAB PM3

 

complies with the following standards, provided that the restrictions stated in the operating manual are observed:

Standards: IEC 61010-1 Safety requirements for electrical equipment for measurements, control and laboratory use.

Standards: IEC 61326-1  Electrical equipment for measurement, control and laboratory use - EMC requirements

Microchip Technology, Inc.

12 November 2003

 

Important Information Concerning the Use of the MPLAB PM3

 

Due to the special nature of the MPLAB PM3 programmer system, the user is advised that it can generate higher than normal levels of electromagnetic radiation which can interfere with the operation of all kinds of radio and other equipment.

To comply with the European Approval Regulations therefore, the following restrictions must be observed:

  1. The system must be used only in an industrial (or comparable) area.
  2. The system must not be operated within 20 meters of any equipment which may be affected by such emissions (radio receivers, TV´s etc.).