Camstore LPT Trouble Shooting

Rybett Controls WebDoc 205   (Copyright 2008)   Return to [Index]

The Camstore LPT BTR (Behind Tape Reader) interface allows older NC machine tools with inadequate I/O to connect to DNC computers. Camstore LPT runs under DOS, Windows 3 and Windows 95/98. It does not work under later versions of  Windows such as NT or XP. The LPT BTR may be used to eliminate tape reader problems, provide a DNC link, load data to NC memory or dripfeed long programs directly from a computer hard drive. The LPT BTR itself has no memory; it is a link between the NC  tape reader input logic and a parallel printer port on a PC computer. Click on any subject: [Hardware]  [LPT]  [BTR]  [Options]  [Running]  [Machine Setup]  [Noise]


The general purpose Camstore LPT BTR is shipped as an installation kit including instructions and the following items.

1. An interface card with AX99 adapter for your NC control type.
2. An interface harness specific your NC control type.
3. A Camstore uP cable to connect the interface uP pins to a DB25 cabinet connector.
4. A DB25 connector plate to facilitate installation.
5. A short (10 to 25 foot) BTR printer port cable to a PC computer printer port.
6. Camstore DOS software and printer port test programs.
7. A double ended test plug which may be used as:
    a) DEADHEAD to place BTR in a test condition or to run from the tape reader.
    b) LPTTEST plug to verify your computer printer port using the LPTTEST program.


The LPT interface connects to one of your printer ports. To test a printer port, use the Rybett LPTTEST program by changing to your DNC directory and typing LPTTEST without any parameters. In response, the program will report "Invalid base address/interrupt parameters" along with the available ports and addresses. Normally:

PRN LPT1 Address: 3BC Interrupt: not used
BTR1 LPT3 Address: 278 Interrupt: 5
BTR2 LPT2 Address: 378 Interrupt: 7

We suggest you use LPT1 as your printer port and LPT3 as your first BTR port. To test an assumed LPT3 port, plug the LPTTEST plug (the other end of the Deadhead) onto the proper PC connector and type "LPTTEST 278 5" followed by <Enter>. The program will perform a variety of tests to verify your printer port hardware, address and interrupt assumptions. Do not continue until the LPTTEST program accepts your chosen address and interrupt values.

If you wish to use the input/output capability of Rybett interfaces, a bidirectional printer port must be installed. To test whether or not your port is bidirectional, use the LPTTEST program with a -B switch. For instance, type "LPTTEST 278 5 -B".


All Rybett BTR (Behind the Tape Reader) products are designed for easy installation and removal. The heart of our BTR is an interface card and harness adapted to your specific machine control model.

The Camstore LPT interface card may be placed in a Bypass condition whereby the tape reader may be operated independently of the PC computer. Replace the data cable from the PC printer port with our Deadhead adapter. Make sure the end of the adapter marked "Deadhead" with an arrow is plugged into the DB25 connector mounted on the NC control cabinet. When the Deadhead is in place, the machine should operate from the tape reader as if the BTR was never there. If the deadheaded interface works with tape, there is no need to repair it.

If the interface does not work in deadhead, remove it entirely and replug the original machine wiring. Test the machine with all BTR parts removed to see if the NC tape reader logic is working properly.


A tee shaped AX99 card plugs onto the center uP connector of any Rybett interface card to form a complete Camstore LPT interface. The AX99 LPT card has three option jumpers which may short the left or right option pins described below:

Bypass On/Off: In Bypass mode, tape reader data is fed directly to the machine control. If the jumper is set to On, this data is displayed.

Slew/Pulse: Reader forward/reverse from the machine must generate interrupts to control the LPT interface. Slew mode is intended for steady commands; pulse mode, for edges.

Fix/Adjust: Slew mode enables an oscillator to generate processor interrupts. The Fixed option sets this rate to 200 CPS. Adjust allows the rate to be varied by a small Rate Adjust pot.


When both the computer port and interface have been successfully tested, remove the DEADHEAD/LPTTEST plug and use the included port extension cable to connect the computer to the BTR interface. If you wish to run Camstore Menu software, at the DOS prompt, simply change to the CAM3 directory and type CAM3.

Choose the Machine Setup menu option and make sure the port address and interrupt settings match your chosen values. For instance, if you use the LPT3 definition from above, set PORT/MODE = BTR1:278,5 and then DRIVER = LPTBTR -I -L. Make sure that the settings for DATA CODE match the ASCII, EIA or BINARY format of your control and that the END BLOCK FORMAT also matches. (Note that ASCII programs can be formatted with various combinations of <Cr> and <Lf>, but EIA programs are always formatted as <Cr> only.) If you are unsure of the format for you control, count the holes on the tape. Ignoring the small sprocket holes, an even count per character means ASCII and an odd count means EIA.

If possible, it is always best to upload a known good tape as a first step. This requires a bi-directional printer card but it insures that your captured file will run the machine. Beware, many CAD/CAM systems produce slightly different files when you change from tape punch output to disk file output. Using a good file, download to the machine and operate as if running from the tape reader. The LPT BTR pretends to be a tape reader, so push all the buttons on the N/C control just as if a tape were in the reader. For instance, a Fanuc requires that the AUTO/MANUAL switch on the tape reader be in the AUTO position to read tape or BTR data.


Following are important fields under the Machine Setup menu pick.  These fields are common to all Rybett DNC software programs.

(1) PORT/MODE defines the port name (which must end with 1, 2 or 3) and address and interrupt values. Use the following syntax: "PortName:Address,Interrupt". For instance: "BTR1:278,5".

(7) DATA CODE defines the tape data format expected by your machine tool control and may be even parity ASCII, odd parity EIA or no parity BINARY for executive tape files.

(8) END BLOCK FORMAT defines the EOB code required by your machine tool control and may be <Cr><Lf>, <Cr> or <Lf> only. Note: for EIA format files, set END BLOCK FORMAT to <Cr> only.

(9) MACHINE DRIVER calls the appropriate communications software and should be set to LPTBTR (foreground) or LPTBTRC (background). Background operation is only available with Phantom DNC software. You may attach parameters to the machine driver by adding a space, dash and letter to modify operation as follows:

-b binary mode for executive tape operation
-h strip parenthetic data before output
-i enable data input from the tape reader
-k strip the Up End string from uploaded data
-m override auto-sense and force mono display
-n simulates starting from a null character when in binary mode (defaults to delete)
-l enable dripfeed and continuous loop operation
-s=yyy stop output on EOB following "yyy" string
-o=xxx increase the offtime of the tape waveform (use a negative number for CIN AC5)

The -o parameter is used to adjust the offtime of the sprocket and data signals sent to the machine tool BTR interface. The LPT BTR emulates a tape reader by dropping sprocket and data, waiting a short offtime and then raising data and sprocket true. To maximize the throughput for other tasks, the offtime should not be excessive and on a 386SX running at 40MHz it defaults to approximately 15us. For most machine controls, this is satisfactory; however, in special cases, you may wish to increase the offtime.

The following Machine Setup fields are sometimes useful for specific machines with tape readers that are difficult to emulate:

(10) CHARS TO FILTER: Filters characters during tape upload. It is often useful to place a home base character in this field to filter tape leader: ASCII null, EIA space or delete. Enter the home base character by holding down <Ctrl> and <Backspace>.

(11) DOWN START: Add characters to the beginning of a tape, Some controls require a % (end of record) at the beginning of a program or a ^M^J (end of block) before data.

(13) DOWN STOP: Add characters to the end of a tape. Some controls require ^@^@^@^@^@ (null leader) to end a tape load to memory.

(18) UP END: End of file string signals the last block of a tape upload. This string will be part of the uploaded file unless you use the -k option. Some examples of UP END are:

<Ctrl><Backspace>       stops after 1 leader character
M02^M^J                     stops after M02 program stop command
G50^M^J                      stops after G50 end of program command


Printer port signals use TTL low level (0 to 5 volt) voltage swings. For this reason, the cable interconnecting the PC computer and the machine tool must be 25 feet or less in length. If you experience highly random and intermittent reading errors, try the following:

1. Shorten the computer cable to a minimum length.
2. Move the computer cable away from any high current wiring. For instance, do not route through the same cabinet cutout as 240/480 volt power lines.
3. Use a ground strap between the computer chassis and the machine tool control cabinet.
4. Try powering the computer from a different source.
5. Do not operate near plasma arc burning equipment or other sources of high electrical noise.

If reading errors seem to occur mostly following certain M or G code blocks, perhaps electrical noise is generated by a machine function. For instance, a solenoid with a faulty suppression circuit may cause a noise spike every time it is de-energized by a relay contact.