Universal Programmer LabProg-48LV
First impression :
Standard package includes the programmer, power supply, and complete accessories - interconnection cable, diskette with control software, users manual and a testing pod.
The manual is very well written, targeted to people with some degree of technical knowledge. This approach is also demonstrated by the included testing pod, which allows correct functioning of the programmer to be tested.
Power supply:
Programmer is powered by a special, sturdy power supply. It is clear that this one has nothing in common with cheap "universal transformers" sold at various marketplaces. According to the manual, it can switch to power saving mode and reduce total consumption below 1W. According to my measurements, the transformer itself consumes about 1,6W.
Length of the power connector is quite uncomfortable; it needs a lot of space behind the programmer, which is rather big by itself. A 'corner' connector would be more useful. When the LabProg-48LV is inactive, power consumption is 3,7W. When active and working with common circuits, it consumes about 4 to 5W.
Since the transformer is designed for continuous usage, there's no need to worry about any problems with power source.
Software:
The appearance and the basic idea of the software is similar to software for PREPROM. Installer is rather stiff (quite common thing); for example, if you want to change the default installation path without using mouse, you have to press TAB about five times. There seems to be an intention to create an ELNEC_SW directory. Nice thing is that the installer asks if you want to erase source directory.
The screen is intuitively divided into several parts, window arrangement is well optimized. The environment resembles Turbo-Vision; however, it does not support mouse control. Colors are chosen so that everything is perfectly readable even on monochrome monitors. Menu choices are in English, so is a short hint at the bottom line. Help (called up by pressing F1) is in English, German (not yet available), or Slovak language. In the "Options" menu you can even set sound usage, etc.
Overall, the program is user-friendly for a computer literate. It can even search for circuits to be programmed by partial name or number everywhere in the circuit label. This function makes searching in the large circuit database easy. Of course, you can search by type, manufacturer, or alphabetically.
New thing is an information window called "Aditional info", where you can see the memory size of the programmed circuit, its type, and its organization (data/program memory) if applicable. A little disadvantage is that this information is only in HEX; many people can't convert HEX -> DEC by heart very well. Neverthless, this innovation is very useful.
The programming itself is very well-designed. In the "Device" submenu in "Options" menu, you can set anything you can think of - offset for programming, insertion test, SPLIT function (splits a 16-bit code into two 8-bit EPROMs), verification, etc.
In addition, there is an "auto-increment" menu. It is an interesting function; however, protection by simple incrementation of the serial number is very poor. Still, it can make hacking the design more difficult (for example, by adding a big number that overflows, and a good program check). According to the manufacturer, future versions will be able to read identification strings from an external file. This should be more interesting for serial number protection of the series.
Very interesting are buffer functions. Checksum generation and buffer fill are useful. However, I miss a detailed compare of the buffer with an external file. This is quite difficult by itself, so most of us will probably settle for an external utility.
I was very pleased by the possibility of block operations with buffer; this is exactly what a developer needs. It lets you put the code together within the programming environment from several files.
Communication and its software compatibility:
Programmer works under DOS as well as W95 and W98.
When the programmer application is run under W95, everything is OK. If it is inactive in the background, it's still OK. However, when I started programming and jumped to another task, the EPROM is programmed correctly, but the communication with the programmer gets lost. I had to re-run the control program or retry port autodetection. In a future version, a button that would do this for of me would be nice. If you want to use LabProg this way, you can avoid this nuisance by modifying Windows settings. Correct settings, together with this problem (caused by Windows' protection of port access) are described in detail in the user's manual.
Connection of circuits to be programmed:
Programmer has a single 48-pin ZIF DIL socket. There, any circuit in a DIL package can be inserted. SMD devices can be inserted using standard reduction sockets, available from the manufacturer. If you need a special package or adaptor, you can order it from ELNEC. In some cases, the control software allows to set whether a DIL or SMD device is being programmed (different packages and/or pinouts). Besides 48 pins, LabProg supports 3 independently generated voltages for programming, verification at min or max Vdd, etc.
Software does utilize these variable voltages (measured when verifying an EPROM and a FLASH).
Unsurpassed is the circuit insertion detection into the socket. Software will warn you about bad connection at pin XY, shift by X pins up or down in the socket, etc. If you insert the circuit with its key pointing down, result depends on circuit type - in most cases, software will report an error at a specific pin. This applies for broken or oxidized pins as well. Of course, the test is not destructive - nothing can happen either to the circuit or the programmer; and, of course, it can be turned off.
Supported devices:
Support is still under development; however, company has included a huge database already. Unlike similar products, there is an extensive support for locally available circuits. For example, soviet EPROM 2716 is supported (widely used in the Czech Republic not too long ago). Unlike other programmers (including ALL by MITE, which has a similar design including circuit checking), it has never happened to me that the programmer would say an EPROM was programmed OK, while it would "forget" everything when its power has been disconnected.Similarly, reading is well-implemented too. The READ command calls the reading routine twice and reports any differences.
Programmer communicates over the parallel port, and it does utilize full possible speed that the standard parallel port (SPP) allows. In addition it supports extended communication modes - EPP and ECP. Here, the communication is somewhat faster, but the difference is not substantial (max. around 10%) - see the table below.
| DEVICE | SPP | EPP |
| Am27C256 | 9'50" | 9'15" |
| Am27C512 | 23'12" | 22'05" |
| AT29C512 | 19'58" | 18'45" |
| AT29C010 | 37'50" | 35'32" |
Programming speed:
LabProg-48LV is one of the fastest programmers I have ever seen. Here is a table to give you an idea:
| 89C55 - 20 kB FLASH | |
| Operation | time (second) |
| Reading and verification | 9.75 |
| Erasing and erase check | 5.1 |
| Programming and verification | 34 |
| ATMEL AVR 90S1200 - 1 kB FLASH | |
| Operation | time (second) |
| Write (including internal data EEPROM) and verify | 2.4 |
| Read and erase - under 1 sec | < 1 |
Self-test
As I stated before, ELNEC includes a testing pod which can be used to test the programmer. This way, you can greatly reduce incertainity as to where an error resides, when something does not work at all. The programmer test can be performed either entirely by the programmer itself, or you can measure the expected values by hand.
Integrated circuits testing:
Like similar tools, this universal programmer can be used to test basic ICs. So far, a library for the TTL 74XXX series and SRAM circuits is available.
Coming soon is a tool for user creation of such testing libraries. In the example_s.lib, there is a description of how to create a new libraty.
I would label the TTL testing function as a 'beta version', which sometimes reports a circuit being faulty while it is not. However, I have never encountered the opposite.
Connecting external devices:
Warning: No manufacturer likes any external devices to be connected to their products.
Therefore, if you are unsure about safety of the programmer and the device, don't do this.
Whenever you connect any powered, or more complicated device (e.g. EPROM simulator, EEPROM soldered into a PCB, etc...), always make sure that the devices are galvanically separated, that there are no spurious currents, etc. For safety, ALWAYS CONNECT A 0.5A FUSE (internal protection is sized to 1A max. per pin. This applies especially for non-professional EPROM simulators and similar devices (for instance, the EPROM simulator by HW server will kill one of the internal transistor unless protected by a fast 650mA fuse, since it is not designed for such usage :(
Due to the fact that the ground pin is not really a zero-resistance wire connected to the ground, the above precautions need to be observet. If at all possible, avoid such hazardous experiments.
Known problems, technical support:
The ELNEC company has informed us, that the first 20 programmers were shipped with a wrong firmware version burned into the internal processor. They are fully functional; however, programming is about 40% slower. If your programmer has a serial number less than 20, please contact the company and they will exchange the internal processor for you free of charge.
I can confirm from my own experience that the company is doing their best to support their customers. If you send them a description of your problem, be assured it won't end up in the trash. You will receive a qualified answer, or a fixed software version (if applicable). Of course, everything is available on the Internet at www.elnec.com. In particular, a description of this programmer (in Slovak language) is at http://www.elnec.sk/lprog_sk.htm.
Download & Links:
As far as I know, the following companies represent ELNEC in the Czech Republic:
In Slovakia (of course) WWW.ELNEC.SK
Customers from other countries, please see a list of distributors at www.elnec.com.
Current market price is around 15950 Sk (without VAT).
Translated by: Joe Hlavac