Pocket Programmer

Order information

Pocket Programmer

Phone and email Support

Before you call or write be sure to have your system up and running. Be prepared to provide:

Try to use email first - gindorf@directmw.com


Return it insured to:

612 Newton
Edwardsville, KS 66113

Put this RMA number "ship date-R" on the outside of the package. Also send a detailed description of the problem. Include:

The flat cost for repair is US$99 + shipping

Change log and update links for the USB Programmer

Pocket Programmer updates

Software Updates

Common problems FAQ

First time Programming

This will typically bring up a diagram that shows how to put the chip in the socket - and the jumper location.

How to copy a chip

This will typically bring up a diagram that shows how to put the chip in the socket - and the jumper location.

USB driver installation problems

Normally, the windows approved USB drivers install without any problems. Sometimes old non compliant drivers can cause a problem - by looking in the device manager and plugging and unplugging the USB programmer you should be able to see it as a device - un-install the associated driver and reinstall our software. Symptoms may be instant programming with a verification failure.

You may also have to uninstall dirty drivers that are listed as USB COM devices.

Driver Debugging

The driver that we use is from FTDI and Windows certified - but there are a lot of other drivers that are not. Some of these other drivers will sometimes try to grab the port and cause drop outs.

mmc devmgmt.msc
C:\program files\xtronics\PP???\CDM_v2.12.10_WHQL_Certified.exe

Display Problems

If you have messed with your default font size ( Desktop properties/settings/advanced/fontsize Bad things can happen. Use the default system font. (This would mess up many other programs as well )

Power adapters, Overseas mains power Running with car power

To see what you need to get for local mains power other than 120Vac Look at our wall adapter page. The 'Pocket programmer USB' is now center positive (don't interchange - but the new one won't get hurt by backward voltage!) Programmers with an LED can have either polarity. Do not use the Nortel power supplies with any programmer with a LED pilot light.

To run the programmer with power from a car get the cigarette adapter. Don't try to just make a cable - the 12-14Vdc of a car have been known to break the programmer. You can run it off a battery (just don't go above 12.2 volts).

If you test a power adapter, it is normal for it to read high without a load - it is rated at 9Vdc with a 300mA load - you may see as much as 13Vdc without a load.


Why isn't the check sum the same? Several things can cause this - if this is a hex file the sum-check depends on what was in the buffer before the the data was overlaid in the buffer. You might try filling the buffer with 00s or FFs. Also, you may be comparing the file check-sum with the ROM check-sum -- they are not the same thing.

There are many types of checksums! The Checksum the pocket programmer does a Byte Checksum while GM does a Word Checksum, because they are using a 16bit CPU. They also store their checksum at the beginning of the Hex file without including it in the actual ROM code.

A Byte Checksum is where all bytes are added together throwing away any 16th bit carries to keep the Sum check one word or 16 bits in length. i.e. 12h + BDh + 56h + C8h = 01EDh In other words, the pocket programmer makes a 16-bit check sum by adding all the 8 bit values in the buffer while throwing away all the carries above the 16 bit boundary.

A Word Checksum is done by adding all the 16 bit words and throwing away any 16th bit carries to keep the Sum check one word or 16 bits in length. i.e. 12BDh + 56C8h = 6985h

Check-sums are calculated on Move device, load file, and edit buffer.

Testing Vpp voltage

There is a way to test your programming voltage.

You can now press the Vpp button and change it to the value you want to test (you must press the new Vpp button at least once). Put paper clips in the Pin 1 and 16 socket holes as most meter probes won't reach. Normal ranges for Vpp are as follows

12.5V - 12.7 to 12.9
21V - 20.5 to 21.5
25V - 24V to 26V

What is all this buffer start stuff about?

Most of the time you will never have to touch any of these unless you are splitting ROMs or pasting together files.

Buffer-start Automatically set - but you can change where the software thinks the beginning of the binary file data gets loaded. The buffer-end is always the buffer-start plus the device size.
Device start Normally 0 but you can change so that it will start putting buffer start data at some other address.
Device End Should be the end of the device or equal to device size + device start - tells the program where to stop programming at.
Hex file start Most should never touch this - for pasting together hex files. works the same as buffer start. IF you have to ask you shouldn't be using this.
Hex file end Most should never touch this - for pasting together hex files. works the same as buffer start. IF you have to ask you shouldn't be using this.
Hex offset Makes it load hex file data at different place in the buffer

The buffer size is always the same as the chip size -- extra data will wrap around!

To manipulate the data, you can make use of the buffer or hexfile-start and end settings which will load the buffer from the start point to the end point and will ignore the rest. This is useful if you have a lame compiler that includes the stack as part of the data.

The hexfile offset increases the address of where the file is loaded. To move it down you would need to increase it enough to cause it to wrap around.

Remember that you have to set the Device start back to zero when you are done as it will cause problems doing other types of programming jobs.

To put a 27C256 chip in a 27SF512 chip you would similarly set the start of device to 8000.

How do I put a 1 meg Bin file into two 27C512s (or similar splits)? Assuming a linear split, load the buffer and burn the first chip normally. Then change the start of buffer to 10000h (or what ever the capacity of the chip is) and burn the second chip.

Problems with Particular chips and adapters


When using with the Pocket programmer-USB3 be sure that the adapter is all the way towards you - that is pins 1-4 and 36-40on the programmer are empty.


27C256R - I can't reprogram this why? - it is a OTP(One Time Programmable) It can't be reprogrammed.


2732 - It was working and then I erased it and now it won't program - all of them from that batch act the same way. - Often these were programmed at the wrong voltage - once erased they will never work again.

What is the correct programming voltage for 2732s? 2732 - Oh, this is a nasty chip - it comes with more than one suffix and has differing programming voltages. If you program it with too high of a voltage you can ruin the chip. Be VERY careful about WHICH 2732 you are working with. Look at the suffix to the part number A's use 21V B's and C's use 12.5 anything else use the plain 2732 setting. If you aren't sure - you can try using the lowest voltage first and work your way up until it verifies - at your own risk of course.

Best to replace 2732 with 27C32s if you can find them..

Using 27SF512 chips as a substitute for a 27C256

First this is, was and remains a bad idea. You should instead use a high speed chip with an industrial temperature rating. Also, you need to have at least a pocket-programmerII to program this chips, earlier units will not work.

To read a 27SF512 top as a 27C256:

To program a 27SF512 chip from a 27C256 file

If you have problems with this - please don't call us.

875X-USB3 Adapter

The ZIF lever of this adapter faces opposite the ZIF lever of the programmer. Pin one of the chip goes??

Empty holes in the programmer socket go ?

The PIC Adapter

Can't find the PIC chip on the list? Are you running the special PIC program? The PIC devices require you to run a different program. Some PIC parts require a special adapter. See I-PICUSB3 adapter.

PLCC Adapters

PLCC chips and pin 1 orientation

PLCC chips are a bit different than DIP chips in that Pin one is not on a corner of the chip. Looking at the chip from the top (part number visible and right reading) you will see that one corner has a beveled corner. This corner should be on the top left. With the chip so oriented, pin-one is in the middle of the top ro of pins - often marked by a indentation or dot.


Both the PLCC adapters are plugged in in a similar manor with empty holes in the programmer socket up towards the handle.

Empty holes

There are two PLCC adapters the I-PLCC28-32 which handles both 28 and 32 pin PLCC packages and the I-PLCC44 for 44 pin PLC chips.

Configuring The PLCC28-32

If you are programming 32 pin PLCC parts you need to remove the bottom header from the adapter.

Un plug daughter board

Reassemble the daughter board for 28 pin chips. Make sure pin-1 of the daughter board gets plugged into Pin-1 of the adapter - they are marker on the circuit board.

Reassemble for 28 pin packages

Hex and ROM image file types

To identify the type of hex file - open it in a text editor ( hex files are text files - if you just get gibberish it is a bin file). In Intel hex files, every line starts with a colon, for Motorola hex files each line starts with an 's' - ASSCI hex files just have hex characters.

If you have a hex file instead of a Bin(binary) file and don't have the unit set to hex, it will program the part with the ASCII representation of hex instead of the binary. You need to set the software to the correct file type.

I am working with S-Record files do you have any utilities? Download the Srecord utilities that convert Srecords to Bin and Bin to Srecords. To contact the author of these utilities, Mr. Ant Goffart, Email him at ant@goffart.co.uk Please thank him for giving permission to share his software.

We also have a Hex to bin converter available for download.

Saving as a Hex file

We don't support it (and for a very good reason). There are many versions of Hex-files and Ascii-hex-files etc. Even the simplest versions can vary with what they use at the end of a line - or if they have spaces between the bytes. There is a free program that should solve most of these issues. Simply save as the buffer (it will be a binary file no matter what the file type setting) and get the program available (free!) at gdargaud.net

Hex-files and multiple chips

Best explained as an example. Assume you have a 256kbit file and you are splitting it into 64kbit chips(27C64). Instead of selecting a 27C64 to start, you need to select a chip the same size as the hex-file image. Thus:

  1. Select a 27C256
  2. Load the file select the chip you want to burn.
  3. Burn your first chip.
  4. Change the buffer start to $2000
  5. Burn the next chip -- etc.

Programming algorithms

Do you support SNAP or other programming algorithms?

The SNAP algorithm is only one of several that works; its advantage is one of speed. When programming UVEPROMS one must keep pulsing the cells until they are programmed and then add programming time to insure that they are programmed enough that they won't flip under different temp, Vcc conditions. By increasing Vcc it helps provide a worst case condition. Other parts of the algorithm count the number of pulses to flip the bit and then multiply that by some factor and add insurance pulses. There are all numbers of recipes for doing this. Some expose the chip to excessively high Vcc that can effect the life time of the part. Some are quite slow.

The pocket programmer uses the quick intelligent algorithm (often just called quick) with an elevated Vcc which is supported by all the manufactures (ask you sales rep to get you in touch with a factory engineer if you doubt me). It is a somewhat more conservative system that stresses the chips less (as is required by some military specifications) and uses a bit more time in programming.

The snap algorithm is for programming chips in consumer products in a minimum time (cost), but at the expense of more stress to the part.

It is possible (but not recommended) to program without raising the Vcc and using a very high number of insurance pulses, but with the larger chip sizes that takes a very very long time and fails to provide a worst case check that the elevated Vcc provides.

UV Eraser

How long should I erase a UV erasable chip (27xx types?) Take a programmed part - put it in the eraser for a minute at a time checking each time to see if it is erased. once it is erased triple the time for all chips of that particular part number AND manufacturer. See the D_erase

My eraser rattles is the bulb broken? No. it is normal to make a slight sound.

My eraser won't light up? Most likely because the door is open. There is a tiny safety interlock that keeps it off unless the door is closed. You can check the operation by looking at the pilot lamp - it is actually a bit of florescent material that glows from the UV light.

Reading TI's old TMS2716

This part required 3 supply voltages and can not even be read with out these voltages. If you HAVE to read it, you can build your own adapter.

A normal (non-TMS) 2716 versus a TMS2716 pins out like this:

<-- normal 2716 ---><---- TMS2716 pin redefinitions ----><-------------- Changes to Socket -------------->

+-----+ +-----+
A7 |1 +--+ 24| VCC <--- Vcc/PE (PE is Program Enable)
A6 |2 23| A8
A5 |3 22| A9
A4 |4 21| VPP <--- Vbb (-5 volts) (Connect Pin 21 to +5 Volts)
A3 |5 20| /OE <--- A10 (Move A10 to Pin 19 then Connect Pin 20 to Gnd)
A2 |6 19| A10 <--- Vdd (+12 volts) (Move A10 here)
A1 |7 2716 18| /CE <--- S/PGM (chip select/program)
A0 |8 17| D7
D0 |9 16| D6
D1 |10 15| D5
D2 |11 14| D4
GND |12 13| D3

You would supply the voltages as in the center column to read the part. If you want to use a 27C16 as a replacement you can use the right hand column to make the changes.

Also see TMS2716.pdf

Altera and Cypress chips

Programing information for Altera and Cypress has not been made available. Some of these chips can't be supported at this time. If you can provide the programming data sheet we can try to add these parts. One should consider using other sources of parts that are more forthcoming with technical information, as this type of attitude may well effect the successes of your development project.

Top Page wiki Index


This information may have errors; It is not permissible to be read by anyone who has ever met a lawyer.
Use is confined to Engineers with more than 370 course hours of electronic engineering for theoretical studies.
ph +1(785) 841-3089

Email inform@xtronics.com

(C) Copyright 1994-2017, Transtronics, Inc. All rights reserved
TranstronicsĀ® is a registered trademark of Transtronics, Inc.
All trademarks are the property of their respective owners.