Thu May 29 12:33 1997 NXFax Help Addendum 1........Introduction 2........General Information 2.1..........Demo version of NXFax 2.2..........How to send payment 2.3..........Installation Instructions 2.4..........Lost Passwords 2.5..........Overview of NXFax 2.6..........Password Information 2.7..........Selling your copy of NXFax 2.8..........Shareware Notice 2.9..........Supported modems 2.10.........System Requirements 2.11.........Transferring NXFax to another machine 2.12.........Upgrading from an older version of NXFax 2.13.........Where to get NXFax and Help Addendum 3........Troubleshooting 3.1..........Error and Warning Messages 3.1.1............"Bad magic number" 3.1.2............"Bootstrap service already active" 3.1.3............"Carrier not found on line" 3.1.4............"Fax Modem is not available from this machine" 3.1.5............"Fax software has failed. Restart the computer..." 3.1.6............"hangup[] " 3.1.7............"Initialization failed" 3.1.8............"Input buffer overrun" 3.1.9............"Looking for driver" 3.1.10..........."netmsgserver[22] 3.1.11..........."NXFax driver can't be exported to the local domain" 3.1.12..........."NXFax has detected an active getty process..." 3.1.13..........."page timeout" 3.1.14..........."Printer cannot be exported to this same computer" 3.1.15..........."Retrain requested" 3.1.16..........."Refused to answer phone because spool directory too full" 3.1.17..........."Retransmission requested" 3.1.18..........."Serial [A|B] is already in use by another fax device..." 3.1.19..........."setpriority" 3.1.20..........."Spool directory for modem is getting full" 3.1.21..........."Stale lock file removed" 3.1.22..........."The remote fax machine failed to identify itself correctly" 3.1.23..........."thread_max_priority failed" 3.1.24..........."TIFF Error 3.1.25..........."Time out waiting for connect" 3.1.26..........."Unable to view faxes for modem-name due to server error" 3.1.27..........."Unspecified receive Phase [A-E] error" 3.1.28..........."You do not have permission to access modem-name" 3.2..........General Problems 3.2.1............Caller ID not working properly in NXFax 1.04 3.2.2............Common problems 3.2.3............Fax calls fail to connect 3.2.4............Fax Later problems 3.2.5............Faxes are queued, but never sent 3.2.6............FaxReader reports "Remote fax unavailable" 3.2.7............Garbage characters appear during dial-in 3.2.8............Incoming data calls do not connect properly 3.2.9............Login fails after installing ISASerialPort device driver 3.2.10...........Modem does not answer properly 3.2.11...........Not getting mail notification of fax transmission status 3.2.12...........NXFax does not obey S0 register value 3.2.13...........NXFax hangs while restarting 3.2.14...........NXFaxInstaller hangs 3.2.15...........NXFaxMonitor Preferences panel buttons are disabled 3.2.16...........Outgoing data calls connect with a fax tone 3.2.17...........Received faxes don't appear in FaxReader 3.2.18...........Remote faxes not being sent 3.2.19...........Sendmail bug, uuxqt and 3.3 Patch Update 1 3.2.20...........Sent faxes don't show up in fax queue 3.2.21...........Setgroups not owner 3.2.22...........Streaks in faxes 3.2.23...........Unable to fax a PostScript file, but can print and display it 3.2.24...........Unable to receive faxes with Omni or Elite modem 3.2.25...........Unable to send to or receive from a particular fax device 3.2.26...........Unable to shutdown computer 3.2.27...........Unexpected "activity on port" 3.2.28...........UUCP protocol negotiation fails 3.2.29..........."If no answer, retry" setting does not work right 3.3..........Intel Computer Problems 3.3.1............More than two serial driver instances on a system 3.3.2............Mux installation 3.3.3............Poor quality in received faxes 3.3.4............System lockup using NEXTSTEP 3.3 3.4..........NeXT Computer Problems 3.4.1............Modem works for Communications but not for Faxing 3.4.2............NXFax 1.02 doesn't work after upgrading to NEXTSTEP 3.2 3.4.3............Unable to receive faxes on an '030 NeXT computer 3.5..........3rd Party Software Problems 3.5.1............Determining if there is a conflict with NXFax 3.5.2............Lock file problems 3.5.3............NeXT PrintManager won't configure more than two devices 3.5.4............NXFax failures with 3rd party communications products 3.5.5............NXFax file locking problems with "Cables" 3.5.6............Panic using Kermit and NXFax 3.5.7............Panic using Taylor UUCP and NXFax 3.5.8............PPP reports "device locked" when NXFax installed 3.5.9............Sending faxes with lpr 3.5.10...........SoftPC communications programs don't work 3.5.11...........System lockup using UUCP and NXFax 3.5.12...........Tips for using MicroPhone Pro and NXFax 3.6..........Modem Problems by Model 3.6.1............AT&T DataPort 3.6.1.1..............AT&T DataPort cannot receive at 14.4bps 3.6.2............Boca 3.6.2.1..............Busy detection faillures 3.6.3............Intel 3.6.3.1..............Intel modem can send, but not receive faxes 3.6.4............Multi-tech 3.6.4.1..............Contacting Multi-Tech 3.6.4.2..............Multi-Tech Adaptive Answering does not work 3.6.4.3..............Multi-Tech Hardware Reset 3.6.5............Neuron 3.6.5.1..............Neuron must be upgraded to work with NXFax 3.6.6............Practical Peripherals 3.6.6.1..............FXMT2 needs to use 19200 DTE rate 3.6.6.2..............PM28800 is reported as Unknown modem 3.6.7............Supra Problems 3.6.7.1..............Contacting Supra technical support 3.6.7.2..............Supra Adaptive Answering not working 3.6.7.3..............Supra SilentAnswer feature 3.6.7.4..............Supra Sonic 33.6 modem 3.6.7.5..............Supra with 1.200 ROMs unable to receive faxes 3.6.7.6..............Supra with 1.4 ROMs connecting at 9600 bps 3.6.8............Telebit Problems 3.6.8.1..............Telebit Hardware Reset 3.6.8.2..............Telebit received faxes are elongated 3.6.8.3..............WorldBlazer does not support Adapative Answering 3.6.8.4..............WorldBlazer initialization fails 3.6.9............U.S. Robotics Problems 3.6.9.1..............U.S. Robotics cannot fax with ZyXELs 3.6.10...........ZyXEL Problems 3.6.10.1.............Contacting ZyXEL technical support 3.6.10.2.............DRAM Faxing problem 3.6.10.3.............Elite and Omni ROM version 1.14 won't answer 3.6.10.4.............Fax calls not answered when rings set to >3 on Elite 3.6.10.5.............Unreadable fax pages 3.6.10.6.............ZyXEL cannot fax with U.S. Robotics 3.6.10.7.............ZyXEL Hardware Reset 3.6.10.8.............ZyXEL not connecting to V.FC modems 3.6.10.9.............ZyXEL with 5.00 - 5.02 ROMs won't fax with NXFax 1.04 3.6.10.10............ZyXEL with 6.00 ROMs sends poor quality faxes 4........Frequently Asked Questions 4.1..........Can I change the time between retries? 4.2..........Can I use the DRAM option with NXFax? 4.3..........Does NXFax work with US Robotics modems? 4.4..........How To 4.4.1............Create a fax address book 4.4.2............Create cover sheets 4.4.3............Determine if a modem is Class 2 4.4.4............Determine if NXFax is running 4.4.5............Determine if the cable for a NeXT computer is a NeXT cable 4.4.6............Determine ROM version of a modem 4.4.7............Dial on phones systems with no dial tone 4.4.8............Fax from the command line 4.4.9............Get NXFax Electronically 4.4.10...........Get ROM upgrades 4.4.11...........Halt a fax call 4.4.12...........Install an internal modem on an Intel system 4.4.13...........Make Distinctive Ring work with a non-ZyXEL modem 4.4.14...........Open a console window 4.4.15...........Prevent FaxReader from shrinking faxes. 4.4.16...........Prevent incoming data calls, but allow fax calls 4.4.17...........Put a banner or header on fax pages 4.4.18...........Save a cover sheet for a fax that might be resent 4.4.19...........Send a group fax 4.4.20...........Send commands to a modem 4.4.21...........Send multiple documents in a single fax 4.4.22...........Upload ROM code to the Omni and Elite modems 4.4.23...........Use a fax-back service 4.4.24...........Use Extended Distinctive Ring 4.4.25...........Use one phone line for voice, fax, and data 4.4.26...........View dwrite values for NXFax 4.5..........Are any BABT approved modems supported by NXFax? 4.6..........Does NXFax have any data communications features? 4.7..........Does NXFax support parallel devices? 4.8..........How many people can use 1 copy of NXFax? 4.9..........Is a 57,600 DTE rate supported by NXFax? 4.10.........Is there a SPARC version of NXFax? 4.11.........Is there an HP version of NXFax? 4.12.........What are the faxspool files in the tmp directory? 4.13.........What files does the NXFaxInstaller install? 4.14.........What is Class 1 and Class 2? 4.15.........What is the format of a .fax file? 4.16.........What PCMCIA modems work with NXFax? 4.17.........Where are faxes stored? 4.18.........Where is the NXFax log file? 4.19.........Why do half-tone images sometimes appear enlarged? 4.20.........Will NXFax run under Openstep 4.1? 4.21.........Will NXFax support more than two fax modems on a single system? 4.22.........Will NXFax work with ZyXEL Elite and Omni modems? 5........Reference Information 5.1..........Distinctive Ring service 5.2..........getty process 5.3..........Improperly connected modem 5.4..........Installing PCMCIA modems 5.5..........Multiple fax drivers defined for a single modem 5.6..........NeXT ISASerialPort Driver 5.7..........NXFax documentation 5.8..........NXFax Release Notes 5.9..........NXFaxMonitor Call Enable Buttons Not Checked-off 5.10.........Opening the console 5.11.........Poor quality telephone lines 5.12.........Resetting a modem's factory defaults 5.13.........Restarting NXFax 5.14.........Running faxcleanup manually 5.15.........Serial cable for Intel and HP computers 5.16.........Serial cable for NeXT computers 5.17.........Setting MaxDTERate 5.18.........Setting ResetDelay 5.19.........Setting S62 register for ZyXEL Omni and Elite modems 5.20.........Using modems that do not support Adaptive Answering 5.21.........Using tip with NXFax 1 Introduction =============== This document serves as an addendum to the NXFax on-line Help. This information, combined with the Help text, covers virtually every topic we have ever had occasion to discuss with our customers. Chances are good that the answer you are looking for is right here or in the Help text if you just take a few minutes to look for it. We have tried to minimize use of cross-references to other parts of the document to make it easier for you to get the information you want without looking all over the place. To accomplish this, information is duplicated in many places. Thus, if you think you saw the same thing somewhere else, you probably did. Because this document is generated automatically from a database of information, you can be assured that duplicated information is exactly the same in all locations. Where cross-references do occur we felt that duplicating the information was not appropriate, but we do realize that some people may have only a part of the document and not the part referenced. To you we apologize and hope that you will take the time to acquire the referenced sections as well in an attempt to get the answers you need. 2 General Information ====================== 2.1 Demo version of NXFax -------------------------- You can test NXFax before you decide to purchase. Without a password, NXFax runs in demo mode allowing you to send (but not receive) any number of single page faxes. 2.2 How to send payment ------------------------ Please send a check for $69 (U.S. funds) for each copy of NXFax that you are using or send your credit card number and expiration date to: Black & White Software, Inc. Bridge Street Marketplace Waitsfield, VT 05673-1210 USA Please indicate how many copies of NXFax you are using. If you send a credit card number we will charge your card in the amount of $69 (U.S. funds) for each copy you are using. We can accept VISA, Mastercard and American Express. If you are a corporate or educational customer with credit terms with Black & White Software we regret that Purchase Orders are no longer accepted. You must either send a check or credit card information. 2.3 Installation Instructions ------------------------------ After retrieving NXFax1.04.tar perform the following steps to install NXFax: 1. To unpack NXFax1.04.tar, type "tar xvf NXFax1.04.tar" in a terminal window. This command will create the application wrapper NXFaxInstaller.app in the current directory. 2. Turn on your modem and log in as root. 3. Launch the NXFax Installer by double clicking on NXFaxInstaller.app. 4. Choose Info from the Installer menu. Choose Help from the Info menu. 5. NXFax 1.04 users should read "The Basics" to familiarize themselves with NXFax's on-line help. Click on the topic "Installing NXFax" and follow the instructions there. 2.4 Lost Passwords ------------------- If you are an existing customer and you need to reinstall NXFax and cannot locate your password, please see "Password Information" and use the password there. You must be running version 1.04 of NXFax and have NEXTSTEP 3.1 or later. If you are running 1.02 or 1.03 you must download version 1.04 and upgrade before you can use the password above. 2.5 Overview of NXFax ---------------------- NXFax is a reliable, high speed, fax solution which integrates perfectly with NEXTSTEP on Motorola and Intel based computers. Anything you can print you can fax just by pressing the Fax button on the Print Panel. You read, log, assign, and archive your faxes with the NEXTSTEP FaxReader. NXFax works with your favorite data communications programs like UUCP, SLIP, PPP, tip, Kermit, and Microphone. NXFax offers the following features: * sends and receives faxes under NEXTSTEP * adaptive answering directs incoming fax and data calls * shares serial port with other applications * compatible with tip, UUCP, SLIP, MicroPhone, PPP, and other communications programs * accessible via networked machines * communicates with the NXFax Monitor to provide user-level feedback * demo mode allows unlimited single page sending of faxes The NXFax Monitor application offers: * transmission status displays: current modem state remote connection identifier connect speed fax resolution pixels per scan line inter-scan line delay * halt button terminates transmissions * monitoring of networked fax drivers * animated icon * user preferences control automatic launch * includes extensive on-line help 2.6 Password Information ------------------------- A password is required to fully enable your copy of NXFax. If you have paid for your copy of NXFax, please use the following password: 5e 1d 7f 84 53 d9 3f 33 If you have not paid for your copy of NXFax, please see "How to send payment". 2.7 Selling your copy of NXFax ------------------------------- You may sell or transfer your copy of NXFax to another user provided you remove the software from your computer. 2.8 Shareware Notice --------------------- NXFax is a shareware application. This means you may use the software only after you have sent payment directly to Black & White Software. You may use NXFax in demo mode as long as you like. You may fully enable NXFax to determine if it works properly on your system and with your modem, but if you continue to use it you must send payment. 2.9 Supported modems --------------------- Below is a list of Class 2 modems that have been tested with NXFax 1.04 to date. Boca Research - Boca 14.4, BocaModem 28.8 Diamond - SupraSonic 288 V+ MultiTech - MT1432BA, MT1932ZDX Neuron - 1414 with ZyXEL ROM upgrade Practical Peripherals - FXSA, FXMT, FXPKT *Supra - SupraFAX 14.4 v32.bis, SupraFAX 288 Telebit - WorldBlazer, T3000 Zoom - VFX, 28.8 ZyXEL - all U-1496 models, Omni 288S, Elite 2864 Note that NXFax does not support Class 1 modems. *Note that the SupraExpress 288 modem is not a class 2 modem and does not work with NXFax. Modems that use the Rockwell chip set may not work properly on Intel systems running NEXTSTEP 3.3 with older serial drivers. These modems include Boca, Practical Peripherals, Supra and Zoom. To avoid any problems with these modems please be sure you are using the latest releases (3.33) of the NeXT serial drivers. 2.10 System Requirements ------------------------- This version of NXFax is in Multi-Architecture Format so that it works with NEXTSTEP on both NeXT and Intel hardware. NEXTSTEP 3.1 (or later) is required to use NXFax 1.04. At the time of this writing NXFax worked with OPENSTEP 4.1. 2.11 Transferring NXFax to another machine ------------------------------------------- You may use your existing password if you need to reinstall on a different machine. 2.12 Upgrading from an older version of NXFax ---------------------------------------------- If you have version 1.02 or 1.03 and need to reinstall you may use your existing password. However, if you cannot locate your 1.02 or 1.03 password you will need to upgrade to 1.04 and use the password in section II.D. above. Upgrades to NXFax 1.04 are free for registered customers. No 1.02 or 1.03 passwords are available. 2.13 Where to get NXFax and Help Addendum ------------------------------------------ * Via WWW You can find NXFax and the Help Addendum at the following Web sites: http://www.stepwise.com http://www.blackholeinc.com * Via FTP NXFax can be obtained at ftp://ftp.next.peak.org/pub/next/demos/comm. The files are: NXFax1.04.tar NXFax1.04.README.txt NXFax1.04.HelpAddendum.txt 3 Troubleshooting ================== 3.1 Error and Warning Messages =============================== 3.1.1 "Bad magic number" ------------------------- If you install or restart NXFax and see the console message !! Can't install driver /usr/lib/NextPrinter/NXFax_Fax_Modem_Driver because rld(): /usr/lib/NextPrinter/NXFax_Fax_Modem_Driver bad magic number (not a Mach-O file) you have installed a "fat" or Multi-Architecture Binary (MAB) NXFax driver and are running a release of NEXTSTEP earlier than NEXTSTEP 3.1. NXFax requires NEXTSTEP version 3.1 or higher. 3.1.2 "Bootstrap service already active" ----------------------------------------- If you are having trouble receiving faxes and see the message below in your console, you may have more than one modem defined for a single physical modem. !! %% bootstrap_check_in => bootstrap service already active It is very important that only one fax modem driver (e.g. NXFax) be defined for each physical modem. If you are having difficulty getting NXFax to work properly with your modem, check for extra definitions. This often happens when people try to install NXFax again to resolve a problem, but they use a different name for the modem when they install the second time. To check for multiple modem definitions: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Examine the list. There should be only one modem listed for each modem that is physically connected to your computer unless you are on a network and have set your modem Public. Public modems will have two entries, one local and one remote. If you see an extra entry, remove it. To learn how to do this, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the topic Removing NXFax. 3.1.3 "Carrier not found on line" ---------------------------------- The message "carrier not found on line" generally indicates that the modem answered a call which did not originate from a fax machine or modem (a voice call for example). The message would appear in the console and in the NXFax log file in a context similar to that shown below: %> bandw_fax: activity on port Mon Mar 27 12:00:19 1995 %> bandw_fax: wait for connect %> bandw_fax: ring 1 %> bandw_fax: answer call %> bandw_fax: carrier not found on line %> bandw_fax: call complete %> bandw_fax: port freed Mon Mar 27 12:00:30 1995 %> bandw_fax: ZyXEL modem %> bandw_fax: U1496E V 6.13 M %> bandw_fax: wait for incoming call The "carrier not found on line" message indicates that no communication took place between the caller and the modem. This message can also appear if a device incompatibility prevents the answering modem from recognizing the calling modem or fax device. Fax modems and fax machines can vary greatly from one manufacturer to another. While most fax devices can communicate properly with most other fax devices, incompatibilities between two particular devices are not uncommon. Even though you may hear a fax tone yourself, if it is not recognized by the other fax device due to an incompatibility, no connection will be made. If you are able to send and receive faxes from and to your modem with most fax devices, but not with one in particular, you should contact your modem manufacturer or dealer and report the problem. Often, all that is required to remedy the situation is for you to acquire the latest version of the ROMs for your modem from the manufacturer. 3.1.4 "Fax Modem is not available from this machine" ----------------------------------------------------- The error "Fax modem is not available from this machine" can occur when the NetInfo database information gets out of synch between two or more computers on a network. To eliminate this error, turn to the Error Messages section of the NXFax on-line Help and read the topic "Unable to view faxes for modem-name due to server errorº. 3.1.5 "Fax software has failed. Restart the computer..." ---------------------------------------------------------- The error "The fax software has failed. Restart the computer..." should not occur under normal circumstances. If you see this error, one of the fax processes has stopped or is not responding for some reason. You can generally correct this situation by simply restarting the fax software without actually rebooting your computer. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. 3.1.6 "hangup[] " --------------------------------------- At the end of each fax call, the modem controlled by NXFax reports a hangup message which is posted by NXFax to the NXFax log (and to the console if console logging is enabled). If a fax transaction is successful, the hangup message will look like this: hangup[0]: No errors If the modem reports a failure, one of a series of error codes will appear with in the message along with a short description of the error. Note that these errors are issued directly by the modem and are not NXFax errors. Some of the more common errors include: 1. hangup[26]: DIS/DTC received three times. DCS not recognized. - DIS is a "Digital Identification Signal" and DTC is a "Digital Transmit Command". The DIS /DTC summarizes capabilities of a fax device, while the DCS "Digital Command Signal" is a repsonse to these signals. The called device normally issues the DIS and the calling device returns the DTC. So, in this case the DTC was returned three times without a valid response. This all happens tonally between the two devices while the fax driver sits waiting for a valid handshake. This error can occur due to an incompatability between devices. 2. hangup[27]: Failure to train - The two fax devices failed to establish a tonal handshake at the beginning of a connection or in between pages. A training failure is most commonly the result of line noise. In some cases, training failures may indicate an incompatibility between two fax devices. 3. hangup[52]: No response to MPS after three attempts - The fax modem unsuccessfully attempted to send multi-page signal to the receiving fax device. If the receiving fax device fails to respond to three consecutive MPS signals, the sending fax modem aborts the session and posts the MPS message. While responses to a MPS signal can occasionally be obscured by high line noise levels, it is far more likely that the receiving fax device was no longer on the telephone line at the point the MPS signal was issued. This could result from any number of causes, including a dropped telephone connection, loss of power, or manual termination of the call at the receiving side. 4. hangup[54]: No response to EOP after three attempts - The fax modem unsuccessfully attempted to send a end of page signal to the receiving fax device. If the receiving fax device fails to respond to three consecutive EOP signals, the sending fax modem aborts the session and posts the EOP message. While responses to a EOP signal can occasionally be obscured by high line noise levels, it is far more likely that the receiving fax device was no longer on the telephone line at the point the EOP signal was issued. This could result from any number of causes, including a dropped telephone connection, loss of power, or manual termination of the call at the receiving side. The following may also be helpful: Section 3.1.27 - ""Unspecified receive Phase [A-E] error"" 3.1.7 "Initialization failed" ------------------------------ Normally the NXFaxMonitor reports a status of "Wait for Incoming Call". If you are seeing "Looking for Driver" or "Initialization failed", NXFax is unable to properly communicate with your modem. To learn of possible causes of this situation, read the important notes below and then turn to the Troubleshooting section of the NXFax on-line Help and read the topic "Looking for Driver". IMPORTANT NOTE #1: One of the suggestions in the Help is to use a communications program to verify that your computer can establish a connection with your modem. To eliminate NXFax as a variable, it is best to first disable NXFax and then test the connection with your communications program. Be sure to enable NXFax again after you are done testing. Instructions for disabling and enabling NXFax can be found in the NXFax Advanced Topics section of the NXFax on-line Help in the topic Disabling NXFax. IMPORTANT NOTE #2: If you use tip to verify that your computer can communicate with your modem, be aware that contrary to what it says, the tip message "connected" does not necessarily mean a connection has been established. To verify a connection you must be able to type commands and get responses back from the modem. If characters that you type are not displayed, you do not have a connection. For more information, turn to the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. Some other possible causes of this problem are listed below: Possible Cause #1 -- Improperly Connected Modem An improperly connected modem can cause a variety of problems ranging from not being able to communicate with the modem at all to only being able to send or receive, but not both. - Make sure your modem is plugged into a power source and turned on. - Make sure that the phone line from the wall is plugged into the LINE jack on the back of the modem. The PHONE jack is reserved for a telephone. - If you are installing NXFax on a NeXT computer (Motorola 68040 processor) and are able to connect to your modem with a communication program (such as tip or kermit) but find that NXFax hangs when starting or that the quality of received faxes is very poor, the problem could very well be the cable. You must use a NeXT '040 Hardware Handshake cable on Motorola 68040 systems. While other cables may work fine for some data applications, the correct cable is absolutely necessary for faxing. Another cable, such as a Macintosh cable, will not work, even if it is a "hardware handshaking" cable. The NeXT cable is unique. Note: Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". Possible Cause #2 -- Multiple Fax Drivers Defined It is very important that only one fax modem driver (e.g. NXFax) be defined for each physical modem. If you are having difficulty getting NXFax to work properly with your modem, check for extra definitions. This often happens when people try to install NXFax again to resolve a problem, but they use a different name for the modem when they install the second time. To check for multiple modem definitions: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Examine the list. There should be only one modem listed for each modem that is physically connected to your computer unless you are on a network and have set your modem Public. Public modems will have two entries, one local and one remote. If you see an extra entry, remove it. To learn how to do this, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the topic Removing NXFax. 3.1.8 "Input buffer overrun" ----------------------------- Some of the earlier serial drivers that NeXT shipped with its Intel version of NEXTSTEP had problems adequately dealing with high-speed serial communication. Poor quality faxes and messages about "input buffer overrun" in the console and in /private/adm/messages are indicators of this. The tty overruns indicate that the serial driver is unable to read all data received by the modem before it is overwritten by new data. 1) Problems caused by slow hardware devices or by the inability of the serial driver to operate at high speeds can often be eliminated by lowering the DTE rate that NXFax uses. The DTE rate is the communications speed in bits per second (bps) between the computer and the modem (as opposed to the speed between two modems across a phone line). You might try lowering this setting to 19200. The default DTE rate for NXFax is 38400, but you can change it by modifying the MaxDTERate value in the defaults database. To set the DTE rate: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite MaxDTERate 19200 /usr/lib/NextPrinter/exec_faxes IMPORTANT: If you change the DTE rate, you must also make a corresponding change at the end of your NXFax /etc/gettytab file to match the new speed. For information about the gettytab file see the Data Communications section of the NXFax on-line Help and read the topic /etc/gettytab file. 2) NeXT recently released three new Intel drivers (ISASerialPort (v3.33), PortServer (v3.33), and SerialPointingDevice - all available by ftp from ftp.next.com) which are expected to improve serial and tty performance as well as make it easier to install multiple instances of the serial driver. The new serial driver is more efficient than the one shipped with earlier versions of NEXTSTEP and the expectation is that it will place a lighter load on the system. Once you have installed these packages, explicit instructions for configuring the ISASerialPort, PortServer, and SerialPointingDevice drivers will appear in NeXT's Configure.app Help panel. Note that initial releases of these drivers did not work properly with NXFax 1.04.1. However, it appears that the existing conflicts have been resolved with version 3.33 of the PortServer and ISASerialPort drivers. It is not known whether NeXT plans to port these drivers to other architectures including HP and Sparc. It is hoped that this will help to resolve the poor performance of the serial drivers that were shipped with those platforms. 3.1.9 "Looking for driver" --------------------------- Normally the NXFaxMonitor reports a status of "Wait for Incoming Call". If you are seeing "Looking for Driver" or "Initialization failed", NXFax is unable to properly communicate with your modem. To learn of possible causes of this situation, read the important notes below and then turn to the Troubleshooting section of the NXFax on-line Help and read the topic "Looking for Driver". IMPORTANT NOTE #1: One of the suggestions in the Help is to use a communications program to verify that your computer can establish a connection with your modem. To eliminate NXFax as a variable, it is best to first disable NXFax and then test the connection with your communications program. Be sure to enable NXFax again after you are done testing. Instructions for disabling and enabling NXFax can be found in the NXFax Advanced Topics section of the NXFax on-line Help in the topic Disabling NXFax. IMPORTANT NOTE #2: If you use tip to verify that your computer can communicate with your modem, be aware that contrary to what it says, the tip message "connected" does not necessarily mean a connection has been established. To verify a connection you must be able to type commands and get responses back from the modem. If characters that you type are not displayed, you do not have a connection. For more information, turn to the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. Some other possible causes of this problem are listed below: Possible Cause #1 -- Improperly Connected Modem An improperly connected modem can cause a variety of problems ranging from not being able to communicate with the modem at all to only being able to send or receive, but not both. - Make sure your modem is plugged into a power source and turned on. - Make sure that the phone line from the wall is plugged into the LINE jack on the back of the modem. The PHONE jack is reserved for a telephone. - If you are installing NXFax on a NeXT computer (Motorola 68040 processor) and are able to connect to your modem with a communication program (such as tip or kermit) but find that NXFax hangs when starting or that the quality of received faxes is very poor, the problem could very well be the cable. You must use a NeXT '040 Hardware Handshake cable on Motorola 68040 systems. While other cables may work fine for some data applications, the correct cable is absolutely necessary for faxing. Another cable, such as a Macintosh cable, will not work, even if it is a "hardware handshaking" cable. The NeXT cable is unique. Note: Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". Possible Cause #2 -- Multiple Fax Drivers Defined It is very important that only one fax modem driver (e.g. NXFax) be defined for each physical modem. If you are having difficulty getting NXFax to work properly with your modem, check for extra definitions. This often happens when people try to install NXFax again to resolve a problem, but they use a different name for the modem when they install the second time. To check for multiple modem definitions: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Examine the list. There should be only one modem listed for each modem that is physically connected to your computer unless you are on a network and have set your modem Public. Public modems will have two entries, one local and one remote. If you see an extra entry, remove it. To learn how to do this, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the topic Removing NXFax. 3.1.10 "netmsgserver[22] ------------------------- The console messages "netmsgserver[22]: netname_main.msg_send fails" and "netmsgserver[22]: netname_main.port_type fails" can occur when running NXFaxMonitor with the Host Search button checked. The messages will only occur if a machine that is normally available as an NXFax server is unavailable for some reason, e.g. it is powered down. The messages appear because NXFaxMonitor sees the machine in netinfo and tries to communicate with it, but cannot. In this situation, NXFaxMonitor may take longer than usual to find the other NXFax hosts, but should find them eventually and you can safely ignore the messages. 3.1.11 "NXFax driver can't be exported to the local domain" ------------------------------------------------------------ The error "The NXFax driver can't be exported to the local domain" is issued by the NXFaxInstaller when you use the Access option to export a modem to the same domain it is being exported from. When you export a modem, it becomes available for use on computers in the domain or domains you exported it to. Since it makes no sense to export to the domain where the modem is installed, this error is issued. You can only export a modem if you are connected to a network. You can export to either a single domain or to the root domain. When you export to the root domain, the modem becomes available to each domain within the root domain. An explanation of domains can be found in the NEXTSTEP Network and System Administration guide. 3.1.12 "NXFax has detected an active getty process..." ------------------------------------------------------- The error "NXFax has detected an active getty process..." means that NXFax cannot detect or respond to incoming calls. To deal with this error turn to the Error Messages section of the NXFax on-line Help and read the topic "NXFax has detected an active getty process...". 3.1.13 "page timeout" ---------------------- The message "page timeout" indicates that the modem has not sent along expected data to NXFax. The message would appear in the console and in the NXFax log file in a context similar to that shown below: %> bandw_fax: activity on port Mon Jan 8 18:35:02 1996 %> bandw_fax: wait for connect %> bandw_fax: ring 1 %> bandw_fax: answer call %> bandw_fax: incoming fax call %> bandw_fax: CONNECT FAX ----------NXFax Driver Version 1.04---------- negotiation and handshaking here ... %> bandw_fax: page 1 %> bandw_fax: page timeout %> bandw_fax: receive failed %> bandw_fax: receive finished %> bandw_fax: Mon Jan 8 18:36:05 1996 %> bandw_fax: receive time 00:36 %> bandw_fax: call complete The "page timeout" message is issued by NXFax after it fails to receive data from the modem. Basically what happens is that NXFax gets a message from the modem indicating that the page is about to be sent (page 1) after which the page data should arrive immediately. NXFax waits for 30 seconds and if nothing arrives from the modem, NXFax issues the "page timeout". It is likely, though not certain, that the fax was received OK by the modem, but it is the process of transmitting it to your computer that is causing the problem. The problem is with the modem and not NXFax. The most likely culprit is the ROM code in your modem. We have seen the "page timeout" problem with the 1.09 ROM code in the ZyXEL Elite 2864. The best thing to try is a different ROM version to see if the problem goes away or behaves differently. 3.1.14 "Printer cannot be exported to this same computer" ---------------------------------------------------------- The error "Printer cannot be exported to this same computer" is issued by the PrintManager when you try to export a modem to the same domain it is being exported from. The word ªPrinterº is misleading±it should really be ªModemº. Turn to the Error Messages section of the NXFax on-line Help and read the topic ªThe NXFax driver can't be exported to the local domainº for more information. 3.1.15 "Retrain requested" --------------------------- The message "retrain requested" indicates that the remote fax device requested that the connection speed be renegotiated. The message appears in the console and in the NXFax log file in a context similar to that shown below: %> bandw_fax: Fri Apr 28 16:43:07 1995 %> bandw_fax: page 1 %> bandw_fax: confirming page 1 %> bandw_fax: retrain requested %> bandw_fax: hangup[0]: No errors. This message is generated when a remote fax device determines that the current fax transmission speed is too high to assure high quality faxes. The most common cause is line noise. 3.1.16 "Refused to answer phone because spool directory too full" ------------------------------------------------------------------ If you see the message below in your console: !! %% Refused to answer phone because spool directory too full. it means that you do not have enough disk space to process and store faxes. Disk full errors are issued by the NEXTSTEP FaxDaemon, not by NXFax. There isn't a particular directory that is getting full -- the disk as a whole is nearly out of space and you should remove unneeded files as soon as possible to avoid this error. While there are no hard and fast rules for how much space you should keep free, we recommend at least 5 or 10 megabytes if you expect to receive faxes regularly. If you have plenty of disk space and are getting this error, it may be that the spool directories were somehow removed or their permissions were changed. Look in /usr/spool/NeXTFaxes. There you should find a directory which matches the name of your modem. If you do not find such a directory the first thing to try is either to Modify your modem with the PrintManager app or re-configure with the NXFax Installer (version 1.04). Then check again for this directory. If it still does not exist, re-install NXFax and it will create the directory automatically. 3.1.17 "Retransmission requested" ---------------------------------- The message "retransmission requested" indicates that the remote fax device requested that the connection speed be renegotiated and the last fax page retransmitted. The message would appear in the console and in the NXFax log file in a context similar to that shown below: %> bandw_fax: Fri Apr 28 16:43:07 1995 %> bandw_fax: page 1 %> bandw_fax: confirming page 1 %> bandw_fax: retransmission requested %> bandw_fax: hangup[0]: No errors. This message is generated when a remote fax device determines that the quality of a fax is insufficient. The most common cause is line noise. Decreasing the negotiated transmission speed and resending the page often resolves the problem. 3.1.18 "Serial [A|B] is already in use by another fax device..." ----------------------------------------------------------------- The error "Serial [A|B] is already in use by another fax device..." occurs when you try to install NXFax and specify a serial port that is already in use by another type of fax software. You should either select another port or disable the fax software currently controlling that port. To see a list of the fax modems and fax software installed on your system: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. Select a modem from the list and press the Modify button. If you wish, you can then press the Delete button to remove the fax software for that modem or simply change the Access pop-up button to Unavailable (this will disable the software without removing it). 3.1.19 "setpriority" --------------------- The message !! %% main(): setpriority shows up in the console in NEXTSTEP 3.2. In NEXTSTEP 3.3 it shows up as: !! %% setThreadPriority(): call to thread_max_priority failed, error -102 The messages come from the NeXT FaxDaemon. We have been told that they are debugging messages which were inadvertently allowed to remain in the release code and that they can safely be ignored. 3.1.20 "Spool directory for modem is getting full" --------------------------------------------------- If you have been receiving email messages from stating: "The spool directory for fax modem modem_name is getting full. Delete some files from the disk where incoming faxes are stored." it means that you are running low on free disk space. Disk full errors are issued by the NEXTSTEP FaxDaemon, not by NXFax. There isn't a particular directory that is getting full -- the disk as a whole is nearly out of space and you should remove unneeded files as soon as possible to avoid this error. While there are no hard and fast rules for how much space you should keep free, we recommend at least 5 or 10 megabytes if you expect to receive faxes regularly. If you have plenty of disk space and are getting this error, it may be that the spool directories were somehow removed or their permissions were changed. Look in /usr/spool/NeXTFaxes. There you should find a directory which matches the name of your modem. If you do not find such a directory the first thing to try is either to Modify your modem with the PrintManager app or re-configure with the NXFax Installer (version 1.04 or later). Then check again for this directory. If it still does not exist, re-install NXFax and it will create the directory automatically. 3.1.21 "Stale lock file removed" --------------------------------- The message "Stale lock file removed" is issued by NXFax when it finds and removes a lock file that is no longer necessary (stale). A lock file is created by a communications program to indicate to other programs that a serial port is in use. A stale lock file is usually the result of a program being terminated before it has had a chance to remove a lock file that it created. Lock files reside in the directory /usr/spool/uucp/LCK. If necessary, you can remove one yourself by simply deleting it, but be sure you know what you are doing. The following may also be helpful: Section 3.5.2 - "Lock file problems" 3.1.22 "The remote fax machine failed to identify itself correctly" -------------------------------------------------------------------- The message "Your fax could not be delivered (2 pages sent, total time 5 minutes and 28 seconds). The remote fax machine failed to identify itself correctly." is displayed when a fax transmission is interrupted and terminated for some reason due to a problem between the two fax devices (as opposed to a problem with NXFax). The only way to know what happened would be to look in the console to see what error NXFax reported back from your modem. To open the console: - Choose Tools from the Workspace menu. - Choose Console from the Tools menu. If there are no messages in the console, look in NXFax log file. This file is named /private/adm/nxfax/log. Note that you must be logged in as root to read this file. 3.1.23 "thread_max_priority failed" ------------------------------------ The message !! %% main(): setpriority shows up in the console in NEXTSTEP 3.2. In NEXTSTEP 3.3 it shows up as: !! %% setThreadPriority(): call to thread_max_priority failed, error -102 The messages come from the NeXT FaxDaemon. We have been told that they are debugging messages which were inadvertently allowed to remain in the release code and that they can safely be ignored. 3.1.24 "TIFF Error ------------------- Occasionally, just after a fax has been received, you may see errors in the console window similar to those shown below. TIFF Error: : Premature EOF at scanline 1119 (x 280). TIFF Error: : Premature EOF at scanline 1120 (x 0). TIFF errors are generally the result of line noise which has affected the content of one or more of the individual scan lines in a received fax. One TIFF error is issued for each bad scan line detected. These errors generally have little impact on the overall quality of the image. If large numbers of TIFF errors occur each time you receive a fax, you may want to ask your local telephone company to check the quality of your telephone lines. Some fax modems occasionally return bursts of excess data at the end of an incoming fax call. If any of this data is stored in the fax file, one or two spurious TIFF errors may appear. These errors seldom affect the quality of the fax. 3.1.25 "Time out waiting for connect" -------------------------------------- The message " time out waiting for connect" generally indicates that the modem has detected another modem or fax device on the line, but timed out before the two devices could complete a handshake. The message would appear in the console and in the NXFax log file in a context similar to that shown below: %> bandw_fax: ZyXEL modem %> bandw_fax: U1496E V 6.13 M %> bandw_fax: wait for incoming call %> bandw_fax: activity on port Mon Mar 27 12:41:21 1995 %> bandw_fax: wait for connect %> bandw_fax: ring 1 %> bandw_fax: answer call %> bandw_fax: time out waiting for connect %> bandw_fax: call complete %> bandw_fax: port freed Mon Mar 27 12:41:52 1995 %> bandw_fax: ZyXEL modem %> bandw_fax: U1496E V 6.13 M %> bandw_fax: wait for incoming call Timeouts more commonly occur on calls over poor quality lines such those used for international calls. By default, NXFax waits 30 seconds for a connection before issuing this message. If you suspect that NXFax is not waiting long enough, you can change the default by resetting the WaitForConnect value in the defaults database. To do this: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite WaitForConnect 90 /usr/lib/NextPrinter/exec_faxes Note that if the "Time out waiting for connect" message started occurring after you upgraded to NXFax 1.04 and you are using a ZyXEL modem, the following will prove helpful. ZyXEL modem users who have older ROMs may encounter problems sending or receiving faxes when using NXFax 1.04. Affected ROM versions are 5.00, 5.01, and 5.02. You can tell your ROM version by looking at the bottom line of the NXFaxMonitor's Info panel. The problem occurs because of changes in NXFax 1.04 that were made to accommodate newer ROMs. These changes were not backward compatible with the older ROMs; however you can correct the problem by performing the following steps which will allow NXFax to communicate properly with the older ROMs. - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite AuxATCommand ATS38=8 /usr/lib/NextPrinter/exec_faxes You should now see the message "user init ATS38=8" in your Workspace Console as NXFax resets the modem. To open the console: - Choose Tools from the Workspace menu. - Choose Console from the Tools menu. If there are no messages in the console, look in NXFax log file. This file is named /private/adm/nxfax/log. Note that you must be logged in as root to read this file. 3.1.26 "Unable to view faxes for modem-name due to server error" ----------------------------------------------------------------- The error "Unable to view faxes for modem-name due to server error" is issued by the FaxReader. To learn how to deal with it turn to the Error Messages section of the NXFax on-line Help and read the topic "Unable to view faxes for modem-name due to server error". 3.1.27 "Unspecified receive Phase [A-E] error" ----------------------------------------------- Occasionally NXFax will report: hangup[#]: Unspecified receive Phase [A-E] error. Hangup errors occur when a modem reports that it is unable to complete a fax connection. The phase identifier indicates at what point the failure occurred: Phase A: Call establishment Phase B: Pre-fax handshaking Phase C: Fax transfer Phase D: Post-fax handshaking Phase E: Call release These errors generally represent a failure in communication between fax devices rather than a problem with a fax driver such as NXFax. Many times a failed fax call which returns a hangup error will complete properly if you try it again. Some of the most common causes of hangup errors are telephone line noise, loss of connection to the remote device, or incompatibilities between devices. The following may also be helpful: Section 5.11 - "Poor quality telephone lines" Section 3.2.25 - "Unable to send to or receive from a particular fax device" 3.1.28 "You do not have permission to access modem-name" --------------------------------------------------------- The error "You do not have permission to access modem-name" is issued by the FaxReader. To learn how to deal with it turn to the Error Messages section of the NXFax on-line Help and read the topic "You do not have permission to access modem-name". 3.2 General Problems ===================== 3.2.1 Caller ID not working properly in NXFax 1.04 --------------------------------------------------- Caller ID phone numbers are sometimes not displayed properly in NXFax 1.04. 3.2.2 Common problems ---------------------- Listed below are causes of the most commonly reported problems. Please take a few moments to see if any of these apply to you. Common Problem #1 -- Improperly Connected Modem An improperly connected modem can cause a variety of problems ranging from not being able to communicate with the modem at all to only being able to send or receive, but not both. - Make sure your modem is plugged into a power source and turned on. - Make sure that the phone line from the wall is plugged into the LINE jack on the back of the modem. The PHONE jack is reserved for a telephone. - If you are installing NXFax on a NeXT computer (Motorola 68040 processor) and are able to connect to your modem with a communication program (such as tip or kermit) but find that NXFax hangs when starting or that the quality of received faxes is very poor, the problem could very well be the cable. You must use a NeXT '040 Hardware Handshake cable on Motorola 68040 systems. While other cables may work fine for some data applications, the correct cable is absolutely necessary for faxing. Another cable, such as a Macintosh cable, will not work, even if it is a "hardware handshaking" cable. The NeXT cable is unique. Note: Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". Common Problem #2 -- NXFaxMonitor Call Enable Buttons Not Checked-off If you have just installed NXFax and are having problems sending or receiving faxes, check that the call enabling buttons on the NXFaxMonitor's Preferences panel are set properly. There was a bug in the NXFaxInstaller which caused some installations to end up with the Fax and Data buttons checked, but not the Data/Fax Detection button. This is an "impossible" situation that can prevent NXFax from operating properly. To see if you have been affected by this problem, look at the Enable section of the panel to see if all three check-box buttons (Fax, Data, and Data/Fax Detection) are checked. If all three are not checked, set them all to checked and then do the following: -- Quit NXFax Monitor. -- Restart NXFax. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. -- Launch NXFaxMonitor again and make sure the buttons are still checked. The following may also be helpful: Section 3.2.15 - "NXFaxMonitor Preferences panel buttons are disabled" Common Problem #3 -- Multiple Fax Drivers It is very important that only one fax modem driver (e.g. NXFax) be defined for each physical modem. If you are having difficulty getting NXFax to work properly with your modem, check for extra definitions. This often happens when people try to install NXFax again to resolve a problem, but they use a different name for the modem when they install the second time. To check for multiple modem definitions: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Examine the list. There should be only one modem listed for each modem that is physically connected to your computer unless you are on a network and have set your modem Public. Public modems will have two entries, one local and one remote. If you see an extra entry, remove it. To learn how to do this, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the topic Removing NXFax. If none of the above are contributing to your problem, please look for an answer elsewhere in this document and in the NXFax on-line help. 3.2.3 Fax calls fail to connect -------------------------------- Problems that occur when two fax devices try to connect to each other are referred to as "handshaking" errors. Listed below are some of the common indications of these errors. - A mail message from agent reads: "Your fax could not be delivered (0 pages sent, total time 0 minutes and 58 seconds). The remote fax machine failed to identify itself correctly." - The log in FaxReader contains an entry like one of the following: S 03/16/95 15:40 0pg 1:09 Handshake failed. S 03/16/95 15:42 0pg 1:34 Not a fax. - The console contains messages similar to those listed below. %> bandw_fax: time out %> bandw_fax: transmit failed or %> bandw_fax: hangup[27]: Failure to train. %> bandw_fax: transmit failed or %> bandw_fax: dial 555-1212 %> bandw_fax: no carrier %> bandw_fax: transmit failed Handshaking errors can occur for a variety of reasons: Possible Cause #1 -- NXFaxMonitor Call Enable Buttons Not Checked-off If you have just installed NXFax and are having problems sending or receiving faxes, check that the call enabling buttons on the NXFaxMonitor's Preferences panel are set properly. There was a bug in the NXFaxInstaller which caused some installations to end up with the Fax and Data buttons checked, but not the Data/Fax Detection button. This is an "impossible" situation that can prevent NXFax from operating properly. To see if you have been affected by this problem, look at the Enable section of the panel to see if all three check-box buttons (Fax, Data, and Data/Fax Detection) are checked. If all three are not checked, set them all to checked and then do the following: -- Quit NXFax Monitor. -- Restart NXFax. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. -- Launch NXFaxMonitor again and make sure the buttons are still checked. The following may also be helpful: Section 3.2.15 - "NXFaxMonitor Preferences panel buttons are disabled" Possible Cause #2 -- Multiple Fax Drivers It is very important that only one fax modem driver (e.g. NXFax) be defined for each physical modem. If you are having difficulty getting NXFax to work properly with your modem, check for extra definitions. This often happens when people try to install NXFax again to resolve a problem, but they use a different name for the modem when they install the second time. To check for multiple modem definitions: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Examine the list. There should be only one modem listed for each modem that is physically connected to your computer unless you are on a network and have set your modem Public. Public modems will have two entries, one local and one remote. If you see an extra entry, remove it. To learn how to do this, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the topic Removing NXFax. Possible Cause #3 -- Fax Device Incompatibility Fax modems and fax machines can vary greatly from one manufacturer to another. While most fax devices can communicate properly with most other fax devices, incompatibilities between two particular devices are not uncommon. Even though you may hear a fax tone yourself, if it is not recognized by the other fax device due to an incompatibility, no connection will be made. If you are able to send and receive faxes from and to your modem with most fax devices, but not with one in particular, you should contact your modem manufacturer or dealer and report the problem. Often, all that is required to remedy the situation is for you to acquire the latest version of the ROMs for your modem from the manufacturer. Possible Cause #4 -- Modem Has Gotten into an Abnormal State Some faxing and communications problems start occurring when a modem has gotten into an abnormal state. This can occur due to power fluctuations, or by improperly made changes to modem settings by a user or by an errant communications program. Listed below are some ways you might correct the situation. - Sometimes all that is needed to cure the problem is to turn the modem off and then on again. - A more certain method is to use a communications program to connect to your modem and then issue the modem command "at&f&w". This will reset the modem to its factory defaults and save those settings. To learn about sending commands to a modem, see the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. You can use a communications program such as tip to issue modem commands. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". - Check your modem's owner's guide for more information on how to reset the modem. The procedure for resetting ZyXEL and Telebit modems can be found in the Modem Hardware section of the NXFax on-line Help under the topic Hardware Reset. Possible Cause #5 -- Poor Quality Telephone Connections If your received faxes frequently contain horizontal streaks or if you are having difficulty making or maintaining connections, there may be noise on your telephone line or, in some cases, other telephone equipment which interferes with the transmission. When testing for interference, isolate your fax modem from any other device that might generate line noise. Remove telephones, voice/fax switches, answering machines, and any other devices which share the line, then try receiving faxes again. If streaks continue to appear in your faxes, notify your telephone company that you are experiencing problems with fax transmissions and ask them to check the quality of the line. If the line is free from noise and you continue to have problems, you may be experiencing a hardware problem with the modem. Possible Cause #6 -- Old ROMs in ZyXEL Modem ZyXEL modem users who have older ROMs may encounter problems sending or receiving faxes when using NXFax 1.04. Affected ROM versions are 5.00, 5.01, and 5.02. You can tell your ROM version by looking at the bottom line of the NXFaxMonitor's Info panel. The problem occurs because of changes in NXFax 1.04 that were made to accommodate newer ROMs. These changes were not backward compatible with the older ROMs; however you can correct the problem by performing the following steps which will allow NXFax to communicate properly with the older ROMs. - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite AuxATCommand ATS38=8 /usr/lib/NextPrinter/exec_faxes You should now see the message "user init ATS38=8" in your Workspace Console as NXFax resets the modem. To open the console: - Choose Tools from the Workspace menu. - Choose Console from the Tools menu. If there are no messages in the console, look in NXFax log file. This file is named /private/adm/nxfax/log. Note that you must be logged in as root to read this file. 3.2.4 Fax Later problems ------------------------- There are a number of known problems with the "Fax Later" feature of the Fax panel. These stem from apps which do not use standard methods to create their PostScript output. NEXTSTEP controls all the imaging and queuing, and then calls the NXFax driver to send the file. NXFax has no control over when the file is faxed. We have seen reports of problems using Preview to fax PostScript files which had been created on a Mac. Other places we have heard of problems are from TeXView and Adobe Illustrator. The NeXT SysAdmin Release Notes for 3.0 say: lpr,lpd and npd conspire to support deferred printing (that is print this job at a given time in the future), a feature which is currently used only for faxing. The implementation is such that it only works for jobs which go through lpd for spooling and printing (as opposed to being handled by npd). You can test the Fax Later function from a standard app like Edit to see that it does work in general. 3.2.5 Faxes are queued, but never sent --------------------------------------- If you send a fax and see the fax in the fax queue, but it is never sent, first check that the queue is not paused. If the queue status is "Printing is paused," click on the Continue button to un-pause the queue. If the queue is not paused, it is likely that NXFax cannot communicate with the modem. Normally the NXFaxMonitor reports a status of "Wait for Incoming Call". If you are seeing "Looking for Driver" or "Initialization failed", NXFax is unable to properly communicate with your modem. To learn of possible causes of this situation, read the important notes below and then turn to the Troubleshooting section of the NXFax on-line Help and read the topic "Looking for Driver". IMPORTANT NOTE #1: One of the suggestions in the Help is to use a communications program to verify that your computer can establish a connection with your modem. To eliminate NXFax as a variable, it is best to first disable NXFax and then test the connection with your communications program. Be sure to enable NXFax again after you are done testing. Instructions for disabling and enabling NXFax can be found in the NXFax Advanced Topics section of the NXFax on-line Help in the topic Disabling NXFax. IMPORTANT NOTE #2: If you use tip to verify that your computer can communicate with your modem, be aware that contrary to what it says, the tip message "connected" does not necessarily mean a connection has been established. To verify a connection you must be able to type commands and get responses back from the modem. If characters that you type are not displayed, you do not have a connection. For more information, turn to the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. Some other possible causes of this problem are listed below: Possible Cause #1 -- Improperly Connected Modem An improperly connected modem can cause a variety of problems ranging from not being able to communicate with the modem at all to only being able to send or receive, but not both. - Make sure your modem is plugged into a power source and turned on. - Make sure that the phone line from the wall is plugged into the LINE jack on the back of the modem. The PHONE jack is reserved for a telephone. - If you are installing NXFax on a NeXT computer (Motorola 68040 processor) and are able to connect to your modem with a communication program (such as tip or kermit) but find that NXFax hangs when starting or that the quality of received faxes is very poor, the problem could very well be the cable. You must use a NeXT '040 Hardware Handshake cable on Motorola 68040 systems. While other cables may work fine for some data applications, the correct cable is absolutely necessary for faxing. Another cable, such as a Macintosh cable, will not work, even if it is a "hardware handshaking" cable. The NeXT cable is unique. Note: Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". Possible Cause #2 -- Multiple Fax Drivers Defined It is very important that only one fax modem driver (e.g. NXFax) be defined for each physical modem. If you are having difficulty getting NXFax to work properly with your modem, check for extra definitions. This often happens when people try to install NXFax again to resolve a problem, but they use a different name for the modem when they install the second time. To check for multiple modem definitions: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Examine the list. There should be only one modem listed for each modem that is physically connected to your computer unless you are on a network and have set your modem Public. Public modems will have two entries, one local and one remote. If you see an extra entry, remove it. To learn how to do this, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the topic Removing NXFax. 3.2.6 FaxReader reports "Remote fax unavailable" ------------------------------------------------- The FaxReader will occasionally report that it is unable to view faxes for a given fax modem. In most cases this problem occurs because the device on which the faxes files are spooled is not available on the network, or because the fax driver and/or spool files have been removed since the FaxReader was run. It is usually a simple matter to eliminate these warnings since the unavailable modem or system is generally dropped from the FaxReader's list of actively monitored devices when you quit the program. If this is not the case, you may wish to clear the defaults database for the FaxReader to see if that eliminates the problem. To clear the FaxReader defaults: - Quit the FaxReader - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - type the following commands, pressing Enter after each. dread -o /tmp/defaults < FaxReader dremove < /tmp/defaults - Restart the FaxReader 3.2.7 Garbage characters appear during dial-in ----------------------------------------------- If you see garbage characters when you dial in to a system being answered by NXFax the following may be helpful. Possible Cause #1 -- NXFax DTE Rate Does Not Match gettytab entry The DTE rate is the communications speed in bits per second (bps) between the computer and the modem (as opposed to the speed between two modems across a phone line). The line speed for incoming data calls must match the DTE rate used by NXFax. If the DTE rate is changed without a corresponding change to an NXFax entry in /etc/gettytab, a speed mismatch will occur when NXFax answers a data call and as a result, login prompts will be garbled. For more information on this subject, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the the MaxDTERate section of the Defaults Database topic. Possible Cause #2 -- Parity Mismatch A parity mismatch may be occurring. In the file /etc/gettytab there are one or more NXFax entries like the following: # NXFax dialup on port A NXFaxA:ap:p8:im=\r\n\r\nNeXT / NXFax (%h) (%t)\r\n\r\r\n\r:sp#38400: In the example above, the "ap" after "NXFaxA" insures that incoming data calls will recognize any parity (ap) in the data stream arriving from the remote device and causes "even parity" logins to be presented back to the caller. In most cases, the easiest way to correct for a parity mismatch is to change the parity setting in the communications program you are using to call the system running NXFax. For example, if the calling communications program is set to use "no parity" try changing it to use "even parity" and then redial. If you must change parity for all incoming callers, you can change "ap" in the entry above to another value. For example, specifying "zp" would cause zero parity logins to be presented to the caller. For more information on parity settings read the Unix man pages for "gettytab". Possible Cause #3 -- Incorrect Serial Driver Configuration If you have configured the Port I/O address using Configure.app with the wrong address you will likely see problems when attempting to get a login prompt. Check to be sure that the Port I/O address for the serial driver is set to actual address of the port. The following may also be helpful: Section 3.2.9 - "Login fails after installing ISASerialPort device driver" Section 3.2.28 - "UUCP protocol negotiation fails" 3.2.8 Incoming data calls do not connect properly -------------------------------------------------- When NXFax detects an incoming data call (or if you have NXFax set to handle all calls as data calls) NXFax invokes the getty program to put up a login prompt and read a login name. Getty then invokes the login program to allow the caller to log in. This is a standard UNIX mechanism for handling logins. If you are having difficulty with incoming data calls, the following information will help you to determine if the problem is related to NXFax. When you install NXFax, the NXFaxInstaller appends entries to your /etc/gettytab file to set configuration characteristics for incoming data calls. Check the contents of your gettytab file to see what the NXFax entries look like. They should look similar to the one below which is for serial port A. # NXFax dialup on port A NXFaxA:ap:p8:im=/ NXFax (%h) (%t):sp#38400: The same structure applies for the port B entry, although the tag would say NXFaxB. If there is anything that looks different about your entry, we suggest that you change it to conform to what you see above. If your gettytab entries look correct, disable NXFax to see if the problem still occurs. To do this, use the PrintManager to set your NXFax fax modem entry's access to "Unavailable". Then edit the /etc/ttys file to turn on getty for the device you are interested in. When turning on getty in /etc/ttys, use the ttydf[a/b] device depending on whether incoming calls are expected to arrive on port A or Port B. In the /etc/ttys file the default entry normally looks like the following: ttydfa "/usr/etc/getty D9600" unknown off To enable getty, change it to: ttydfa "/usr/etc/getty std.38400" vt100 on Remember to use device ttydfb (instead of ttydfa) if your modem is connected to serial port B. Finally, the speed (38400 in the example above) should match the default speed your modem has been answering at with NXFax, generally 38400. To make the changes take affect, open a terminal window, su to root, and issue the command: kill -HUP 1 At this point, NXFax and the changes it made to your gettytab file are out of the picture and you can start experimenting with data dial-ins to see if the problem still exists. When you are through experimenting, you can change the getty "on" parameter for device ttydf[a/b] in the /etc/ttys file to "off" and reissue the kill command. You can then restart NXFax. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. 3.2.9 Login fails after installing ISASerialPort device driver --------------------------------------------------------------- In the past, improper parity handling required that p8 be included in gettytab strings for most dial up connections. With the advent of the the ISASerialPort and PortServer device drivers, parity handling has been corrected. An unfortunate side effect of this fix is that gettytab strings with p8 will cause the login program to fail on dial up connections. Many versions of NXFax used an /etc/gettytab entry similar to the following: # NXFax dialup on port A NXFaxA:ap:p8:im=/ NXFax (%h) (%t):sp#38400: To make this entry compatible with the ISASerialPort and PortServer device drivers, simply remove the p8 value so that the entry looks like this: # NXFax dialup on port A NXFaxA:ap:im=/ NXFax (%h) (%t):sp#38400: The same recommendation applies for the port B entry, although the tag would say NXFaxB. Note: It may not be enought to take p8 out of your NXFax entry if it is also defined in the default entry. If you don't specify p8 in the NXFaxA entry but you did specify it in the default entry it is still used! The solution is to take it out of the default entry too. If you are experiencing this problem with outgoing calls, make the above change in /etc/remote instead of /etc/ gettytab. The following may also be helpful: Section 3.2.7 - "Garbage characters appear during dial-in" Section 3.2.28 - "UUCP protocol negotiation fails" 3.2.10 Modem does not answer properly -------------------------------------- If your modem does not answer or if it answers, but is not making a proper fax or data connection, turn to the Troubleshooting section of the NXFax on-line Help and read the topic Answering Problems. As a basic test, plug a telephone into the phone jack on the modem and be sure that it rings when you dial the modem's number. Also check the NXFaxMonitor Preferences panel to make sure that the Distinctive Ring settings are correct. If you do not have Distinctive Ring service, then none of the four ring types should be checked. If you do have Distinctive Ring service, make sure the right type is checked. The following may also be helpful: Section 3.2.3 - "Fax calls fail to connect" Section 5.1 - "Distinctive Ring service" 3.2.11 Not getting mail notification of fax transmission status ---------------------------------------------------------------- We occasionally receive reports from people not getting mail notification regarding the status of faxes sent or of incoming faxes. While we do not know what causes the problem to occur, we think that the trouble lies somewhere in NEXTSTEP and not with NXFax. An explanation follows. After sending or receiving a fax, NXFax notifies the FaxDaemon (a NEXTSTEP component) of the status of the transmission. The FaxDaemon is responsible for initiating the process of sending mail. The actual sending is done by user 'agent' (which is why when you do get mail notification, it comes from agent). If you are having notification problems, log in as root and look at the file /usr/spool/mqueue/syslog and locate an entry with a timestamp that closely follows the time of a fax you sent or received. A good entry will look something like the following: Oct 5 13:29:05 lexical sendmail[6615]: AA06615: from=agent, size=249, class=0, received from local Oct 5 13:29:06 lexical sendmail[6619]: AA06615: to=george, delay=00:00:01, stat=Sent If on the second line you see "to=nobody" instead of the name of the user you expected to receive notification, you'll understand why notification did not occur. We don't know why this occurs, but offer this information by way of explanation of what is happening. If you are seeing the above behavior on outgoing faxes, it is easy to witness how 'nobody' enters the picture. Put the fax queue on pause, send a fax, and then look in /user/spool/Next/. You will see a control file beginning with the letters "cf". In it you'll see something like Hlexical Pnobody JCompose Clexical Lnobody S1536 100956 fdfA302lexical UdfA302lexical U/usr/spool/appkit/spooled.16 N/usr/spool/appkit/spooled.16 Normally the second and fifth lines should contain the name of a valid user instead of 'nobody'. This file is created by NEXTSTEP as part of the process in which a fax is prepared and ultimately passed on to NXFax for transmission. As you can see, NXFax is not involved in the notification process, but nonetheless, we will keep an eye on this problem to see if we can identify a way to help people work around it. In the meantime we can't offer a solution. As a final note, some of our customers have found that when they have more than one Unrestricted user defined, mail notification is erratic and unpredictable. This is a NEXTSTEP feature and not something over which NXFax has any control. All we can recommend is that you only have one Unrestricted user defined. 3.2.12 NXFax does not obey S0 register value --------------------------------------------- NXFax always sets the s0 register to three more rings than the rings to answer requested in the PrintManager or NXFaxInstaller. It does this to turn on the modem's Auto Answer light and to prevent the modem from auto-answering at the same time NXFax attempts to pick up an incoming call. For example, setting rings to answer to 1 will actually cause NXFax to set the s0 register to 4. The value in the s0 register will not affect NXFax's ability to pick up incoming calls when the requested number of rings is reached. 3.2.13 NXFax hangs while restarting ------------------------------------ Various problems can result in NXFax becoming "hung" meaning that it is not able to operate properly. You can tell if NXFax is hung by opening the console window and then restarting the driver. To open the console: - Choose Tools from the Workspace menu. - Choose Console from the Tools menu. If there are no messages in the console, look in NXFax log file. This file is named /private/adm/nxfax/log. Note that you must be logged in as root to read this file. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. When you restart NXFax you will normally see in the console a message sequence something like the following: %> bandw_fax: user halt %> bandw_fax: hangup signal %> bandw_fax: shutdown 1.04.1 %> bandw_fax: log trimmed to 1000 lines %> bandw_fax: owner:878 users:1 %> bandw_fax: owner:878 users:1 %> bandw_fax: ZyXEL modem %> bandw_fax: U1496E V 6.14 M %> bandw_fax: loaded 1.04.1 Wed Mar 15 15:06:55 1995 %> bandw_fax: Copyright (c) Black & White Software Mon Apr 25 1994 08:21:50 GMT -0400 %> bandw_fax: wait for incoming call If the sequence does not complete by ending with the "wait for incoming call" message, NXFax is probably hung. To deal with this situation, turn to the Troubleshooting section of the NXFax on-line Help and read the topic "NXFaxInstaller hangs". 3.2.14 NXFaxInstaller hangs ---------------------------- If the NXFaxInstaller hangs (the spinning ball does not stop after a minute or two) turn to the Troubleshooting section of the NXFax on-line Help and read the topic NXFaxInstaller Hangs. 3.2.15 NXFaxMonitor Preferences panel buttons are disabled ----------------------------------------------------------- If most of the buttons on the NXFax Preferences panel are disabled such that you cannot change them, the following information should help remedy the situation. Possible Cause #1 -- NXFax Was Restarted, but NXFaxMonitor Was Not Any time that NXFax is restarted, NXFaxMonitor must be quit and re-launched so that communications can be established between it and NXFax. To see if this is the cause of the disabled buttons problem, simply quit NXFaxMonitor and launch it again. The buttons should now be enabled. Possible Cause #2 -- NXFax is Not Running NXFax is a fax driver that works closely with a NeXT process called FaxDaemon. To determine if NXFax is running you need to see if the FaxDaemon is running. If it is not, NXFax is not either. To determine if FaxDaemon is running: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - type the following command and then press Enter. ps -ax | grep Fax You should see an entry containing the text below: /usr/lib/NextPrinter/FaxDaemon If you don't see such an entry, NXFax is not running and you should restart it. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. The NXFaxMonitor Preferences panel buttons should now be enabled. 3.2.16 Outgoing data calls connect with a fax tone --------------------------------------------------- If you are receiving a fax tone after attempting to dial a data call, it generally means that the modem was in fax mode at the time you placed the call. The most common cause for this problem is disabling incoming data calls in the NXFaxMonitor's Preferences panel. When you do this, the modem is forced into a "fax only" mode which must be overridden prior to placing an outgoing data call. To return the modem to data mode, you can issue the following command prior to dialing: AT+FCLASS=0 3.2.17 Received faxes don't appear in FaxReader ------------------------------------------------ If you have received a fax, but it does not appear in the FaxReader, the following information may help you resolve the problem. Possible Cause #1 -- You Do Not Have Permission to Read Faxes In order for a user to be able to use FaxReader to read faxes, their user name must be on the list of users who have been granted permission. To learn about fax reading permissions, turn to the Installing NXFax section of the NXFax on-line Help and read the topic Permission Options. You might also want to look in the NXFax Advanced Topics section of the Help and read the topic Modifying Configuration Options. Note that since permissions are granted by user name, if you are logged in as another user and need to read faxes, you must make sure that that user has also been granted permissions. Possible Cause #2 -- Multiple Fax Drivers Defined You might have more than one fax driver configured for your fax modem. The result is that one driver handles receipt of the fax, but FaxReader is only recognizing faxes received from the other driver. It is very important that only one fax modem driver (e.g. NXFax) be defined for each physical modem. If you are having difficulty getting NXFax to work properly with your modem, check for extra definitions. This often happens when people try to install NXFax again to resolve a problem, but they use a different name for the modem when they install the second time. To check for multiple modem definitions: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Examine the list. There should be only one modem listed for each modem that is physically connected to your computer unless you are on a network and have set your modem Public. Public modems will have two entries, one local and one remote. If you see an extra entry, remove it. To learn how to do this, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the topic Removing NXFax. Possible Cause #3 -- The NEXTSTEP faxcleanup program failed Fax data received by NXFax is converted into a fax file by a NEXTSTEP program called faxcleanup. Although faxcleanup nearly always works reliably, we have occasionally received reports of it failing to do its job properly. If faxcleanup should fail to execute for some reason, it may leave spool files named in the following manner in /usr/spool/NeXTFaxes/: Jan_05_1995_12:59:32.001 Jan_05_1995_12:59:32.002 If you see these files after a fax has been received, you can be sure that faxcleanup failed or was interrupted as might occur in a power failure. If you don't see these files, but you received mail saying a fax had come in and/or you see an entry for a received fax in the FaxReader log, faxcleanup may have failed after already removing the spool files, but before creating the fax file. If you have not rebooted your machine since the fax came in, check the workspace console to see if there are any error messages from faxcleanup. Unfortunately, if the fax is not in /usr/spool/NeXTFaxes/, then it simply is not on your system. The best you can do is to send a fax back to the sender (assuming their number is reported in the FaxReader log) and ask them to re-send. Again, faxcleanup is part of NEXTSTEP and this kind of problem is extremely rare, but is mentioned here for completeness. 3.2.18 Remote faxes not being sent ----------------------------------- If you are able to send faxes from the fax server, but have trouble when using the same fax modem from a remote machine you may need to set up a /etc/hosts.equiv file on the server. This file should contain the names of the hosts that will be using the fax modem. First check if the file exists and if not create it placing one host name on each line by itself as in the example below: lexical nipper bandw 3.2.19 Sendmail bug, uuxqt and 3.3 Patch Update 1 -------------------------------------------------- Several customers have reported a problem that shows up only when they have installed the 3.3 Patch Update 1 and are also using the uuxqt program found on the net that detaches the uuxqt process from the controlling tty. The uuxqt program is a workaround for a bug in sendmail where incoming messages don't stay in the sendmail queue. With both the uuxqt program and the 3.3. patch installed, NXFax reports *** : open failed Device busy continuously. It seems that uuxqt is not closing the device properly. NeXT has fixed this in the 4.0 release. Meanwhile the only solution is to remove the uuxqt program. This, unfortunately, will reintroduce the problem with sendmail which is a NEXTSTEP bug. The following is a brief description of the sendmail bug for your information: Using the bundled uucp software, uuxqt does not detach from the controlling terminal (i.e. /dev/ttydfb). As a result, sendmail is invoked from rmail, and is also attached to the controlling tty. Then sendmail will suspend. This only occurs when rmail invokes sendmail, which of course, only happens during inbound uucp sessions. The effect of this problem is that incoming mail doesn't get delivered. It will get delivered if it is "kicked" by a subsequent inbound uucp from the same site. The uuxqt program detaches uuxqt and then execs the real uuxqt. This worked fine before the patch, but now it causes the device to not properly close. This improper closing of the device (possibly due to a bug from the patch), then meant that FaxDaemon would fail to open the device when it's attempting to reset it. 3.2.20 Sent faxes don't show up in fax queue --------------------------------------------- If you are are able to select and send faxes to a fax modem on the fax server, but the faxes never show up in the fax queue, one of the following may be causing the problem. Possible Cause #1 -- Fax Queue is Paused If you are on a network and you send a fax to a fax modem on the fax server from a client machine, but the fax queue is paused, the fax will not appear in the queue. To check for a paused queue: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Click the Queue button. If the status is "Printing is paused," click on the Continue button to un-pause the queue. Possible Cause #2 -- Remote Modem Selected Instead of the Local Modem If you are faxing from a computer that is also the fax server, you will see both local and remote names for any Public fax modems that are installed. To send a fax using a Public modem, you must choose the local name, not the remote name. If you choose the remote name, you will get no errors and it will appear as though the fax is about to be sent, but nothing will happen. This is a NEXTSTEP idiosyncrasy that prevents NXFax from ever knowing that you wanted to send a fax. Simply choose the local name and send the fax again. Possible Cause #3 -- NXFax is Not Running NXFax is a fax driver that works closely with a NeXT process called FaxDaemon. To determine if NXFax is running you need to see if the FaxDaemon is running. If it is not, NXFax is not either. To determine if FaxDaemon is running: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - type the following command and then press Enter. ps -ax | grep Fax You should see an entry containing the text below: /usr/lib/NextPrinter/FaxDaemon If you don't see such an entry, NXFax is not running and you should restart it. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. Possible Cause #4 -- File /etc/hosts.lpd on the Fax Server Does Not Exist or is Empty To see if the file exists: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - type the following command and then press Enter. ls -lg /etc/hosts.lpd You should see a message similar to the following: -rw-r--r-- 1 root wheel 2 Apr 27 1991 /etc/hosts.lpd To see if the contents of the file: - type the following command and then press Enter. cat /etc/hosts.lpd You should see a single 'plus' sign: + If the file is missing, you must create it with its contents being a single plus. If the file exists, but is empty, add the plus. If you need help performing these steps, see your system administrator. Once the file exists with a single plus, any files queued on client systems should start being faxed. 3.2.21 Setgroups not owner --------------------------- The message "setgroups: not owner" during a data dial-in is caused by a bug in NXFax 1.03 that unreasonably denies login access to users without certain permissions. This problem was fixed in NXFax 1.04. You can get NXFax 1.04 electronically if you have FTP access. * Via FTP NXFax (multi-architecture version only) can be obtained at ftp://ftp.next.peak.org/pub/next/demos/comm. The files are: NXFax1.04.tar NXFax1.04.README.txt NXFax1.04.HelpAddendum.txt (this file) 3.2.22 Streaks in faxes ------------------------ Streaks in faxes can appear due to noise or other problems with long distance phone lines. Note that the quality of long distance phone lines varies depending on the carrier and your location within their network. If you suspect a problem, contact your carrier or, if possible, try experimenting by placing a few fax calls with a different carrier. Streaks can also be caused by using the wrong serial cable. If you are installing NXFax on a NeXT computer (Motorola 68040 processor) and are able to connect to your modem with a communication program (such as tip or kermit) but find that NXFax hangs when starting or that the quality of received faxes is very poor, the problem could very well be the cable. You must use a NeXT '040 Hardware Handshake cable on Motorola 68040 systems. While other cables may work fine for some data applications, the correct cable is absolutely necessary for faxing. Another cable, such as a Macintosh cable, will not work, even if it is a "hardware handshaking" cable. The NeXT cable is unique. Note: Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". 3.2.23 Unable to fax a PostScript file, but can print and display it --------------------------------------------------------------------- If you are unable to fax a PostScript file that you can print and display without problems, look in the console for messages similar to those shown below: syslog: PostScript error: %[ Error: undefined; OffendingCommand: ^D ]% While we don't know how the same file can display and print but not fax, there is apparently some difference in the way the PostScript is interpreted when fax imaging is involved. The imaging of faxes is performed by NEXTSTEP, not by NXFax, so this is not a problem that we can readily investigate or do anything about. Though we do not know of any general solution, it does seem that if you use the Tailor application to display or save the file, it can then be faxed. For information about Tailor contact: FirstClass NV Peter Camps Avennesdreef 32, B-9031 Drongen, BELGIUM +32 9 227 62 48 voice +32 9 227 15 89 fax peter@firstclass.be 3.2.24 Unable to receive faxes with Omni or Elite modem -------------------------------------------------------- For Omni and Elite ROM version 1.14 and higher: If you have recently upgraded your Zyxel Elite 2864 or Omni 288S modems to ROM version 1.14 or higher, you will discover that incoming calls are no longer answered. It is not clear yet what changed between version 1.13 and 1.14, but you can resolve this problem by doing the following: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite AuxATCommand "ATS18=0" In order for the dwrite to take effect, you must restart the fax driver from a terminal window by issuing the following command: /usr/lib/NextPrinter/exec_faxes Note that with ROM version 1.14 or higher it does not matter whether you have set the S62 register or not so long as S18=0. For Omni and Elite ROM versions 1.09, 1.10, 1.11, 1.12 and 1.13: ZyXEL has added a setting that will ensure compatible speed settings. This setting is not a factory default setting so you may need to set the S62 register. Use tip to connect and send commands to your modem. To do this - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - type the following command and then press Enter. tip cua9600 (If your modem is plugged into port B type cub9600.) You should see a ªconnectedº message. Then type: at and press Enter. If the modem responds with ªOKº you have a good connection and you can now type AT commands. Type the following command to set the S62 register: ats62.0=1 To save the changes type: at&w Exit tip by typing ~. (the tilde key followed by a period). If this has no effect, simply close the terminal window and click the Close Anyway button on the Close panel. 3.2.25 Unable to send to or receive from a particular fax device ----------------------------------------------------------------- Fax modems and fax machines can vary greatly from one manufacturer to another. While most fax devices can communicate properly with most other fax devices, incompatibilities between two particular devices are not uncommon. Even though you may hear a fax tone yourself, if it is not recognized by the other fax device due to an incompatibility, no connection will be made. If you are able to send and receive faxes from and to your modem with most fax devices, but not with one in particular, you should contact your modem manufacturer or dealer and report the problem. Often, all that is required to remedy the situation is for you to acquire the latest version of the ROMs for your modem from the manufacturer. 3.2.26 Unable to shutdown computer ----------------------------------- If your system won't shutdown after you have installed NXFax, it may be because you turned off the modem before attempting the shutdown. Unfortunately, this is not something over which we have any control. The problem is caused by the serial driver hanging and not returning when it is unable to communicate with the modem. The best way to avoid the problem is to turn the modem off after the computer, and turn it on before powering on the computer. If the system won't shut down and the modem is turned off, you can turn the modem back on. This generally frees the serial driver and allows the shutdown to proceed. If the system still does not shut down, something else may be at fault. As a last resort, a "dirty" shutdown can be forced by pressing the power key multiple times on NeXT systems or by turning off the power to the computer. 3.2.27 Unexpected "activity on port" ------------------------------------- Some customers have reported a problem with NXFax 1.03 after upgrading to NEXTSTEP 3.3 whereby they see repeated messages in the console indicating "activity on port" when there should be nothing happening. Although our testing here shows that NXFax 1.03 functions normally under NEXTSTEP 3.3, we recommend that you upgrade NXFax to version 1.04 if you are experiencing difficulties. 3.2.28 UUCP protocol negotiation fails --------------------------------------- Please read the following message and modify your script accordingly. The symptom is that the ZyXEL U1496E works reliably for dailup UUCP sessions, but session startup fails with the ZyXEL Elite modem after a successful dialup connection due to a series of bad headers. This is 100% reproducible - the session always starts and ends succesfully with the U1496E but always fails with the Elite. All modem parameters are identical and the same UUCP setup, including the chat script, is used with both modems. The solution consists of a modification to the chat script in L.sys, as shown below, in order to force the serial port to 'no parity' before any commands are sent to the modem. Previously, parity was set to 'none' only after the connection was established. This works fine for the U1496E, but the Elite apparently ignores the new port parity setting and continues to treat the port parity as 'even' after the connection is established. So, unlike the U1496E, the Elite evidently requires parity to be set as 'none' before any other commands. Example 'before' and 'after' chat scripts... uuhost Any DIR 9600 cufa \ ABORT BUSY \ "" AT \ OK~3-AT-OK~3 ATE0 \ OK~5 ATDT \ CONNECT~90 P_ZERO \ <- Old parity setting ogin:~5-\r-ogin:~5 \ ssword:~10 uuhost Any DIR 9600 cufa \ ABORT BUSY \ "" P_ZERO \ <- New parity setting "" AT \ OK~3-AT-OK~3 ATE0 \ OK~5 ATDT \ CONNECT~90 "" \ ogin:~5-\r-ogin:~5-\b-ogin:~5-\b-ogin:~5 \ ssword:~10 The following may also be helpful: Section 3.2.9 - "Login fails after installing ISASerialPort device driver" Section 3.2.7 - "Garbage characters appear during dial-in" 3.2.29 "If no answer, retry" setting does not work right --------------------------------------------------------- The "If no answer, retry" setting determines the number of times the modem will retry a fax call in the event a dialed number is busy or if the number answered, but the transmission failed for some reason. If the dialed number is busy, a retry will occur. If the number answered, but transmission failed before completion, a retry will also occur. However, contrary to what the setting implies, no retry will occur if the number does not answer. This behavior is controlled by NEXTSTEP, not by NXFax. The reason a retry does not occur when the number does not answer is to prevent repeated dialing of numbers which are not answered by a fax machine or modem and which could potentially be answered by a person rather than a mechanical device. 3.3 Intel Computer Problems ============================ 3.3.1 More than two serial driver instances on a system -------------------------------------------------------- Even though the NeXT serial driver is theoretically capable of supporting more than two serial devices, doing so has not generally been considered practical. The serial drivers shipped with NEXTSTEP/Intel are difficult to configure so that they adequately support more than two serial devices per system. In part, this is due to the requirement that serial devices be specified in pairs with adjacent addresses and interrupts. Some people have been able to overcome this limitation by hand-editing the configuration files for the serial drivers, but even then problems arise because the drivers, which are not particularly efficient, frequently cause serial overruns if more than two drivers are active at the same time. 3.3.2 Mux installation ----------------------- Mux is a public domain replacement for the standard serial driver shipped with Intel based systems running NEXTSTEP. Questions concerning installation and configuration of Mux should be addressed to Mark Salyzyn (mark@ve6mgs.ampr.ab.ca). Black & White Software strongly recommends upgrading to the latest serial drivers rather than using Mux. The following is a general installation guide for the Mux driver. Knowledge of NeXT's Configure application and familiarity with interrupts (IRQ's) and port addressing are assumed. In addition to the information presented here, refer to the Mux README file and the configuration examples provided with Mux. This is especially important if you are attempting to use Mux on a system with more than two serial devices where configuration can be a complex matter. Important notes: (1) Systems with a serial mouse (as opposed to a bus mouse) currently cannot be configured to use Mux on the mouse port. For more information, refer to the Mux README file which provides additional information on this and other complex installation procedures. (2) Changes made by the Configure application can have serious consequences if they are performed improperly. It is a good idea to make copies of SerialPorts.config (and Mux.config if you have an earlier version of the Mux driver installed) in the /usr/Devices directory before reconfiguring your serial ports. (3) You must use version 1.7 (or higher) of the Mux driver to insure compatibility with NXFax. (4) With Mux it is possible to configure more than two serial ports on your system. If your system has more than two serial devices and you plan to use one of them for faxing, be sure to configure them with the NXFax Installer's Configuration panel rather than relying on NeXT's PrintManager . The PrintManager recognizes only ports A and B. Using it to configure other devices may modify or damage configuration tables for those devices and cause faxing to fail. To install and configure Mux: - Log in as root - Make backup copies of SerialPorts.config in /usr/Devices - Copy Mux.config to the directory /usr/Devices - Launch Configure.app from the /NextAdmin directory - From the "Devices" panel, select the "Other Devices" icon - Use the "Remove" button to remove any instances of the "On-Board Serial Ports" which are to be replaced with Mux serial drivers. - Use the "Add" button to create an instance of the "Multi-Channel Serial Driver" for each serial device on your system. - Select the device you want to configure from the Device list. - Set the IRQ Level: serial device #1 is normally IRQ4 serial device #2 is normally IRQ3 - Set the Port Address: serial device #1 is normally 0x3F8 serial device #2 is normally 0x2F8 The default IRQ Level and Port Address settings are those normally assigned for the "on-board" serial devices shipped with a system. In some cases, system hardware is shipped without serial devices or with devices which are not configured to use these settings. Refer to the manufacturer's documentation for details on the default serial IRQ Levels and Port Addresses. 3.3.3 Poor quality in received faxes ------------------------------------- Poor quality faxes received on Intel systems are usually caused by problems with NeXT's Intel serial driver. Some of the earlier serial drivers that NeXT shipped with its Intel version of NEXTSTEP had problems adequately dealing with high-speed serial communication. Poor quality faxes and messages about "input buffer overrun" in the console and in /private/adm/messages are indicators of this. The tty overruns indicate that the serial driver is unable to read all data received by the modem before it is overwritten by new data. 1) Problems caused by slow hardware devices or by the inability of the serial driver to operate at high speeds can often be eliminated by lowering the DTE rate that NXFax uses. The DTE rate is the communications speed in bits per second (bps) between the computer and the modem (as opposed to the speed between two modems across a phone line). You might try lowering this setting to 19200. The default DTE rate for NXFax is 38400, but you can change it by modifying the MaxDTERate value in the defaults database. To set the DTE rate: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite MaxDTERate 19200 /usr/lib/NextPrinter/exec_faxes IMPORTANT: If you change the DTE rate, you must also make a corresponding change at the end of your NXFax /etc/gettytab file to match the new speed. For information about the gettytab file see the Data Communications section of the NXFax on-line Help and read the topic /etc/gettytab file. 2) NeXT recently released three new Intel drivers (ISASerialPort (v3.33), PortServer (v3.33), and SerialPointingDevice - all available by ftp from ftp.next.com) which are expected to improve serial and tty performance as well as make it easier to install multiple instances of the serial driver. The new serial driver is more efficient than the one shipped with earlier versions of NEXTSTEP and the expectation is that it will place a lighter load on the system. Once you have installed these packages, explicit instructions for configuring the ISASerialPort, PortServer, and SerialPointingDevice drivers will appear in NeXT's Configure.app Help panel. Note that initial releases of these drivers did not work properly with NXFax 1.04.1. However, it appears that the existing conflicts have been resolved with version 3.33 of the PortServer and ISASerialPort drivers. It is not known whether NeXT plans to port these drivers to other architectures including HP and Sparc. It is hoped that this will help to resolve the poor performance of the serial drivers that were shipped with those platforms. 3.3.4 System lockup using NEXTSTEP 3.3 --------------------------------------- There is a known problem on Intel systems running NEXTSTEP 3.3 that can cause system lockups when using NXFax with modems that use the Rockwell chip set. Some examples are Supra, Boca and Zoom. This problem occurs with the NEXT serial driver versions prior to 3.33 and has been resolved with the latest versions of the drivers (see below). These failures result when the Rockwell based modems unexpectedly revert to command mode and echo large quantities of data to the serial driver before NXFax has an opportunity to detect the condition. Frequently a system lockup occurs which can only be corrected with a reboot. While the cause of the problem is not fully understood, it appears that modifications to the NEXTSTEP/Intel 3.3 system software have altered serial driver timing sufficiently to cause Rockwell based modems to report a "DTE to DCE data underflow" error soon after the fax driver begins to transmit Group 3 encoded fax data. Again, this problem affects only Intel based computers running NEXTSTEP 3.3 with fax modems based on the Rockwell chip set. Rockwell based fax modems can be safely used (1) on Intel systems running NEXTSTEP 3.2 or (2) on any NeXT based system regardless of the NEXTSTEP version. It appears that modems which do not use the Rockwell chip set are unaffected. If you are experiencing this problem, we suggest that you do the following: (1) Install the latest serial drivers from NeXT. NeXT recently released three new Intel drivers (ISASerialPort (v3.33), PortServer (v3.33), and SerialPointingDevice - all available by ftp from ftp.next.com) which are expected to improve serial and tty performance as well as make it easier to install multiple instances of the serial driver. The new serial driver is more efficient than the one shipped with earlier versions of NEXTSTEP and the expectation is that it will place a lighter load on the system. Once you have installed these packages, explicit instructions for configuring the ISASerialPort, PortServer, and SerialPointingDevice drivers will appear in NeXT's Configure.app Help panel. Note that initial releases of these drivers did not work properly with NXFax 1.04.1. However, it appears that the existing conflicts have been resolved with version 3.33 of the PortServer and ISASerialPort drivers. It is not known whether NeXT plans to port these drivers to other architectures including HP and Sparc. It is hoped that this will help to resolve the poor performance of the serial drivers that were shipped with those platforms. 3.4 NeXT Computer Problems =========================== 3.4.1 Modem works for Communications but not for Faxing -------------------------------------------------------- If you are installing NXFax on a NeXT computer (Motorola 68040 processor) and are able to connect to your modem with a communication program (such as tip or kermit) but find that NXFax hangs when starting or that the quality of received faxes is very poor, the problem could very well be the cable. You must use a NeXT '040 Hardware Handshake cable on Motorola 68040 systems. While other cables may work fine for some data applications, the correct cable is absolutely necessary for faxing. Another cable, such as a Macintosh cable, will not work, even if it is a "hardware handshaking" cable. The NeXT cable is unique. Note: Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". The following may also be helpful: Section 3.2.13 - "NXFax hangs while restarting" 3.4.2 NXFax 1.02 doesn't work after upgrading to NEXTSTEP 3.2 -------------------------------------------------------------- Some customers who are running NXFax 1.02 have reported problems after upgrading to NEXTSTEP 3.2. Our testing shows that there should be no problem, so it is probably due to something lost in the upgrade process. If you are running NXFax 1.02 you should consider upgrading to NXFax 1.04 at this time. One thing to watch in doing the NEXTSTEP upgrade is to be sure that the files /usr/lib/NextPrinter/FaxDaemon and /usr/lib/NextPrinter/faxcleanup are upgraded. In some cases the Upgrade app has determined that these should not be upgraded for some reason. 3.4.3 Unable to receive faxes on an '030 NeXT computer ------------------------------------------------------- Users of 68030 systems may not be able to receive faxes with NXFax. The NeXT 68030 cubes do not work as well with high speed fax modems as their 68040 counterparts because of differences in the serial hardware. The '030 does not support hardware flow control and NeXT no longer optimizes their serial driver for performance on the '030 hardware. As a result, serial driver overruns are common at high speed on these older machines. While we cannot promise that NXFax will work properly on your '030 machine, you can increase your chances for success by reducing your DTE rate. The DTE rate is the communications speed in bits per second (bps) between the computer and the modem (as opposed to the speed between two modems across a phone line). You should lower the speed from its default of 38400 to 19200. To do this: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. drwrite MaxDTERate 19200 /usr/lib/NextPrinter/exec_faxes Be sure to replace with the local name given to your fax modem when you configured NXFax. IMPORTANT: When you change the DTE rate, you must also make a corresponding change at the end of your NXFax /etc/gettytab file to match the new speed. Following the steps above should cut down on serial driver overruns. Unfortunately, if they do not, there is nothing else we can do to assist you. 3.5 3rd Party Software Problems ================================ 3.5.1 Determining if there is a conflict with NXFax ---------------------------------------------------- At present, there are no known problems with NXFax itself that would prevent it from working with another "well behaved" communications product. To determine if NXFax is a factor in your problem, try using the other product with NXFax disabled. This has the same effect as removing NXFax from your system. To learn how to disable NXFax, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the topic Disabling NXFax. Also, look in the Data Communications section and read the topic "getty process" as this is a common source of problems. 3.5.2 Lock file problems ------------------------- NXFax works cooperatively with most communications programs. For this to be true, other programs must adhere to UNIX file locking conventions when using the serial port. NXFax creates a lock file whenever it is using one of the serial ports. As soon as NXFax is finished with the port, it removes the lock file so that other communications programs can use the port. To work cooperatively with NXFax, other communications programs must also create lock files whenever they are using one of the serial ports. Failure to properly create lock files may cause communication conflicts when more than one program attempts to use the serial ports. Lock file names consist of the prefix "LCK.." followed by the name of the locked device. Lock files are always created in the directory /usr/spool/uucp/LCK. To check for a valid lock file, first insure that the lock file directory exists and that it has appropriate permissions. To do this: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - type the following command and then press Enter. ls -lg /usr/spool/uucp You should get a response similar to the following: drwxrwxrwx 2 uucp daemon 1024 Mar 23 09:43 LCK/ If for some reason the LCK directory does not exist, log in as root and create a directory named /usr/spool/uucp/LCK. Next, use a communications program such as tip to connect to your modem. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". The program you use should create a valid UNIX lock file as soon as it opens the serial port. To verify that a lock file exists: - type the following command and then press Enter. ls -lg /usr/spool/uucp/LCK If you can't locate the lock file, file locking is not working properly for the communications program you are using. You should contact the program's vendor and discuss the problem with them. You can also determine which program created a particular lock file by dumping the file's contents. To dump the file: - type the following command and then press Enter. od -d /usr/spool/uucp/LCK/LCK..cufa If you are using a serial device other than port A, replace the 'a' in LCK..cufa with the letter which represents the device you are using. You should get a response similar to the following: 0000000 00000 01062 The number displayed in the lock file dump (in this example 1062) is the process id of the program that has exclusive access to the serial port. To display the name of process 1062 your would: - type the following command and then press Enter. ps 1062 You would get a response similar to the following: PID TT STAT TIME COMMAND 1062 p2 S 0:00 tip cufa9600 The response above shows that tip is the program associated with process 1062. If the second line of the response does not appear, the process id is invalid indicating that the process that created the lock terminated without removing it. This should not normally happen, but if it does, you can safely remove the lock file yourself so that other programs can use the serial port. To remove the lock file used in the example above: - type the following command and then press Enter. rm /usr/spool/uucp/LCK/LCK..cufa Note that you might need to log in as root to have sufficient permission to remove the file. The following may also be helpful: Section 3.5.6 - "Panic using Kermit and NXFax" Section 3.5.8 - "PPP reports "device locked" when NXFax installed" Section 3.5.11 - "System lockup using UUCP and NXFax" Section 3.1.21 - ""Stale lock file removed"" 3.5.3 NeXT PrintManager won't configure more than two devices -------------------------------------------------------------- Note that, at present, the NeXT PrintManager application does not support configuration of more than two fax devices per system. The NXFax Installer application will recognize and configure systems with more than two devices, but it's setting can be overwritten by the PrintManager if it is run after the installation has been completed. 3.5.4 NXFax failures with 3rd party communications products ------------------------------------------------------------ In most cases where NXFax and other third party products (UUCP, SLIP, etc) don't work well together, file locking is at fault. Lock files warn other programs that a given serial device is in use and prevent both programs from attempting to use the device at the same time. Different types of lock files are created by most third party packages for flow controlled and non-flow controlled devices. While NXFax will pay attention to both kinds of lock files, most third-party programs will not. As a result, if you set up your third party program to use a software flow controlled device, it may not be aware that NXFax is using a hardware flow controlled device on the same port. In cases like this, both programs may attempt to use the serial port resulting in interference which may cause a failed session, a locked serial port, or even a hung system. When specifying hardware flow controlled devices for use with 3rd party packages, you generally provide the name of the device in an initialization string or system file. Since the exact location where you specify the device name will change from vendor to vendor we suggest you consult the documentation provided with the package. In most cases, the required device name will be preceded by the identifier "cu" for software flow controlled devices and by "cuf" for hardware flow controlled devices. For example, to configure UUCP to dial out on a hardware flow controlled device on serial port A, you would add an entry similar to the following in the /etc/uucp/L.sys file: remote_host Any;5 DIR 38400 cufa \ ABORT BUSY \ ABORT NOCARRIER \ "" AT&F \ OK~3-AT-OK~3 ATE0M1&D3&H3 \ OK~3 ATDT9,555-1212 \ CONNECT~80 CR \ ogin:~5-CR-ogin:~5-CR-ogin:~5-CR-ogin:~5-CR-ogin:~5-CR-ogin:~5 \ ssword:~10 This entry tells UUCP to dial a remote host named "remote_host" on serial port A using a hardware flow controlled device. If you wanted to use serial port B instead, you would replace cufa with cufb. The balance of the script controls modem configuration and login to the remote host. These procedures are very specific and change from vendor to vendor, so you should refer to your 3rd party manual for more information on constructing scripts for connecting to a remote system. 3.5.5 NXFax file locking problems with "Cables" ------------------------------------------------ NXFax occasionally fails to recognize lock files when used with Yrrid Software's "Cables" product. The reason for this failure is unknown, since NXFax is constantly monitoring the serial driver for activity and works properly with virtually all other 3rd party communications software. 3.5.6 Panic using Kermit and NXFax ----------------------------------- Some versions of Kermit remove crucial lock files before Kermit has finished accessing the serial device. This can cause serious problems for Kermit, NXFax, and the serial driver, and may result in a system panic. This situation can be avoided by increasing the NXFax reset delay. NXFax monitors the serial device when it is in use by another program. When the serial device is released, NXFax re-initializes the modem to insure that it can receive incoming calls. During this initialization, the device is locked by NXFax for perhaps 10 to 20 seconds, after which it is unlocked and made available to any program that wants to use it. The time from when the serial device is released until NXFax locks the device to initialize the modem is the NXFax "reset delay". The default reset delay is two seconds, but you can change it by modifying the ResetDelay value in the defaults database. To set the reset delay: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite ResetDelay 5 /usr/lib/NextPrinter/exec_faxes The fastest reset occurs when ResetDelay is set to 0; however, some programs such as Kermit and Taylor UUCP may experience serious problems if NXFax attempts to access the serial port too soon after the program has released the port. Other programs such as PPP may wish to access the serial device again shortly after unlocking it and may not want NXFax take over and start initializing the modem so soon. If you are experiencing a problem with the default two second delay, experiment with increasing the delay starting with a value of 3 until the problem is eliminated. 3.5.7 Panic using Taylor UUCP and NXFax ---------------------------------------- Some customers have reported that they get a system panic when using NXFax on a Motorola NEXTSTEP 3.3 system that has Taylor UUCP installed on it. There are no indications that there is a problem with NXFax, but for some reason the panic is more likely to occur when NXFax is installed. An explanation of what the problem is and and how to work around it was posted on the internet to comp.sys.next.announce and also sent to the taylor-uucp mailing list. It is reprinted below. Date: Mon, 9 Jan 1995 01:36:32 -0500 From: Monty Solomon To: uunet!gnu.ai.mit.edu!taylor-uucp Subject: WARNING: Taylor UUCP 1.05 and NS 3.3 Cc: uunet!gnu.ai.mit.edu!taylor-uucp Reply-To: uunet!roscom.COM!monty FYI. From comp.sys.next.announce. Begin forwarded message: From: gerben@rna.nl (Gerben Wierda) Newsgroups: comp.sys.next.announce Subject: WARNING: Taylor UUCP 1.05 and NS 3.3 Date: 3 Jan 1995 00:53:44 -0500 Organization: Next Announcements Lines: 18 Sender: sanguish@digifix.com Message-ID: <3eaop8$eub@digifix.digifix.com> This announcement is partly because of the fact that 3.3 breaks the NeGeN/NiNe distribution of Taylor UUCP 1.05 for NEXTSTEP. It seems that Taylor UUCP can crash 3.3 thoroughly. Some sites report this, other's don't. When looking at the differences in policy.h it turned out that the crashing system used unblocked writes (Thanks to Tom Hageman tom@basil.icce.rug.nl and Art Isbell art@cubisol.com). So we do not know if this solves all problems but make sure you use a version of Taylor UUCP that does not use unblocked writes. Look for HAVE_UNBLOCKED_WRITES in policy.h and set it to 0. Related to this may be that sometimes when uucico finishes the kernel leaves DTR on. There is *no* process attached to that terminal at that time (no getty, no NXFax, nothing). Using something like kermit seems to reset the kernel error here. NOTE: The NeGeN/Nine (Dutch user group) distribution of Taylor UUCP 1.05 uses unblocked writes and should *not* be installed on NS 3.3 systems! [end of mail message] The following may also be helpful: Section 3.5.11 - "System lockup using UUCP and NXFax" 3.5.8 PPP reports "device locked" when NXFax installed ------------------------------------------------------- PPP will report a device-locked error if it tries to access and lock the serial device very shortly after just having unlocked it. The problem occurs because NXFax attempts to perform modem initialization two seconds after PPP releases the device. This situation is normal, but undesirable in cases where an immediate PPP reconnect is desired. The problem can be avoided by increasing NXFax's reset delay. NXFax monitors the serial device when it is in use by another program. When the serial device is released, NXFax re-initializes the modem to insure that it can receive incoming calls. During this initialization, the device is locked by NXFax for perhaps 10 to 20 seconds, after which it is unlocked and made available to any program that wants to use it. The time from when the serial device is released until NXFax locks the device to initialize the modem is the NXFax "reset delay". The default reset delay is two seconds, but you can change it by modifying the ResetDelay value in the defaults database. To set the reset delay: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite ResetDelay 5 /usr/lib/NextPrinter/exec_faxes The fastest reset occurs when ResetDelay is set to 0; however, some programs such as Kermit and Taylor UUCP may experience serious problems if NXFax attempts to access the serial port too soon after the program has released the port. Other programs such as PPP may wish to access the serial device again shortly after unlocking it and may not want NXFax take over and start initializing the modem so soon. If you are experiencing a problem with the default two second delay, experiment with increasing the delay starting with a value of 3 until the problem is eliminated. 3.5.9 Sending faxes with lpr ----------------------------- It generally isn't possible to use lpr to send faxes due to the fact that special postscript headers have to be included in the file before NeXT's print daemon will handle it properly. The next best thing is command line faxing. NEXTSTEP does not have real support for command-line faxing. There are, however, a number of public-domain solutions available. If you have ftp access to the internet you should be able to find a usable solution. 3.5.10 SoftPC communications programs don't work ------------------------------------------------- Communications programs run under SoftPC will not function correctly when NXFax is active. This is because SoftPC is not following the standards for sharing the serial ports with other programs. Insignia and NeXT are working on this problem. Instructions for disabling and enabling NXFax can be found in the NXFax Advanced Topics section of the NXFax on-line Help in the topic Disabling NXFax. An important thing to know about using SoftPC with NXFax is that you must specify the "cu" devices. If you simply try to configure SoftPC's com ports by using their menu selection of "Serial A" or "Serial B" it will try to use /dev/ttyfa or /dev/ttyfb. Instead you should manually enter /dev/cufa or /dev/cufb for port A or B. If you get another kind of error about not being able to open the device you may have to change the permissions on the device. To do this: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following command and then press Enter. chmod ugo+rw /dev/cu* 3.5.11 System lockup using UUCP and NXFax ------------------------------------------ If you are using UUCP and are having problems such as a system lockup when NXFax resets the modem, try increasing the NXFax reset delay. NXFax monitors the serial device when it is in use by another program. When the serial device is released, NXFax re-initializes the modem to insure that it can receive incoming calls. During this initialization, the device is locked by NXFax for perhaps 10 to 20 seconds, after which it is unlocked and made available to any program that wants to use it. The time from when the serial device is released until NXFax locks the device to initialize the modem is the NXFax "reset delay". The default reset delay is two seconds, but you can change it by modifying the ResetDelay value in the defaults database. To set the reset delay: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite ResetDelay 5 /usr/lib/NextPrinter/exec_faxes The fastest reset occurs when ResetDelay is set to 0; however, some programs such as Kermit and Taylor UUCP may experience serious problems if NXFax attempts to access the serial port too soon after the program has released the port. Other programs such as PPP may wish to access the serial device again shortly after unlocking it and may not want NXFax take over and start initializing the modem so soon. If you are experiencing a problem with the default two second delay, experiment with increasing the delay starting with a value of 3 until the problem is eliminated. 3.5.12 Tips for using MicroPhone Pro and NXFax ----------------------------------------------- When using MicroPhone with NXFax it is important to choose the Connection Port with Hardware Handshake. That is, if your are using Port A you should select "Port A Hardware Handshake" as your connection port. Your Connection Driver should be type standard.serial. We recommend you set your "baud rate" to 38,400. Be sure to save this configuration as your default. Once MicroPhone is configured correctly, you should see something similar to the following in your Workspace Console when you use MicroPhone: %> bandw_fax: activity on port Tue Jul 19 11:37:57 1994 %> bandw_fax: port in use Tue Jul 19 11:37:57 1994 %> bandw_fax: port freed Tue Jul 19 11:38:01 1994 The first two messages appear when you open a connection with MicroPhone, and the last one when you close the connection or quit MicroPhone. Be sure not to leave MicroPhone running with a connection to the modem open, or you will not be able to send or receive faxes. 3.6 Modem Problems by Model ============================ 3.6.1 AT&T DataPort ==================== 3.6.1.1 AT&T DataPort cannot receive at 14.4bps ------------------------------------------------ The AT&T DataPort modem will show up in the NXFax log file as an unknown modem and will not send or receive at 14,400 bps. Here is what you can do to enable 14,400 bps fax receiving: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite AuxATCommand at+fdcc=1,5,0,2,0,0,0,0 /usr/lib/NextPrinter/exec_faxes 3.6.2 Boca =========== 3.6.2.1 Busy detection faillures --------------------------------- Some Boca modems incorrectly respond to a busy signal by reporting a "hangup[11]: No answer (T.30 T1 timeout)". When this happens, a mail message to the sender reports "modem failed to identify itself correctly". 3.6.3 Intel ============ 3.6.3.1 Intel modem can send, but not receive faxes ---------------------------------------------------- If you are able to send faxes but not receive faxes with the Intel modem, it may be that you have one of the newer models. Intel has recently made a change to their modems which has caused compatibility problems with NXFax. If you install NXFax with the newer modem, NXFax will report "unknown modem" in the console. Because of the change in this modem we have had to drop it from our list of supported modems. To find out which version of the modem you have, you can send it the command: at+fmfr? The older style modems will respond with "EXAR". The newer modem will respond with either "INTEL" or "GVC". To learn about sending commands to a modem, see the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. You can use a communications program such as tip to issue modem commands. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". 3.6.4 Multi-tech ================= 3.6.4.1 Contacting Multi-Tech ------------------------------ To contact Multi-Tech: 800-972-2439 (Tech Support) 800-328-9717 (Sales) 612-785-9874 (fax) 612-785-9875 (BBS) 3.6.4.2 Multi-Tech Adaptive Answering does not work ---------------------------------------------------- There is a problem with NXFax 1.04 which prevents Multi-Tech modems from properly handling Data/Fax detection. The problem is fixed in NXFax 1.04.1. If you are using version 1.04, you can work around the problem by sending commands to the modem to modifying one of its settings. The commands you need to send to the Multi-Tech modem are: AT+FAA=1 AT&W After issuing these commands, adaptive answering should work. To learn about sending commands to a modem, see the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. You can use a communications program such as tip to issue modem commands. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". 3.6.4.3 Multi-Tech Hardware Reset ---------------------------------- To perform a hardware reset on a MultiTech modem: - Power off - Hold up front toggle - Power on - Count to three - Release toggle After that you should turn the modem off for a few seconds, turn it back on, and then restart NXFax. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. 3.6.5 Neuron ============= 3.6.5.1 Neuron must be upgraded to work with NXFax --------------------------------------------------- You must have your Neuron 1414 upgraded to a ZyXEL modem in order to use it with NXFax. Contact ZyXEL for the upgrade procedure and pricing. To contact ZyXEL: 714-693-0808 (voice) 714-693-0762 (BBS for Technical Support) 714-693-8811 (fax) tech@zyxel.com sales@zyxel.com 3.6.6 Practical Peripherals ============================ 3.6.6.1 FXMT2 needs to use 19200 DTE rate ------------------------------------------ The FXMT2 modem seems to have problems handling incoming calls at NXFax's default DTE rate of 38400. To use the FXMT2, we suggest that you set the rate to 19200. Note that this does not apply to the FXMT model. Problems caused by slow hardware devices or by the inability of the serial driver to operate at high speeds can often be eliminated by lowering the DTE rate that NXFax uses. The DTE rate is the communications speed in bits per second (bps) between the computer and the modem (as opposed to the speed between two modems across a phone line). You might try lowering this setting to 19200. The default DTE rate for NXFax is 38400, but you can change it by modifying the MaxDTERate value in the defaults database. To set the DTE rate: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite MaxDTERate 19200 /usr/lib/NextPrinter/exec_faxes IMPORTANT: If you change the DTE rate, you must also make a corresponding change at the end of your NXFax /etc/gettytab file to match the new speed. For information about the gettytab file see the Data Communications section of the NXFax on-line Help and read the topic /etc/gettytab file. 3.6.6.2 PM28800 is reported as Unknown modem --------------------------------------------- The Practical Peripherals PM28800 modem* doesn't identify itself as a Practical Peripherals modem when NXFax issues the AT+FMFR? command. This command is part of the Class 2 fax specification and is supposed to identify the modem's manufacturer. The fact that the PM28800 does not respond causes NXFax to identify the modem as "Unknown". Here's what happens with our PM14400FX when the +FMFR command is issued to a PM14400FX: AT+FMFR? (c) Practical Peripherals Inc., 1992, 1993. OK A future version of NXFax will incorporate a means by which you can force the fax driver to behave as though it is connected to a given brand of modem. In the meantime, you can send any initialization string you want to the modem using the AuxATCommand dwrite (look for AuxATCommand in the NXFax on-line help). You might try the following: AT&K3X4N1Q0W1&C1&Q5 *Note that this problem affects the Version 1.60 ROM and may be fixed in a future ROM version. 3.6.7 Supra Problems ===================== 3.6.7.1 Contacting Supra technical support ------------------------------------------- To contact Supra technical support: 503-967-2490 (voice) 503-967-2401 (fax) SupraTech@supra.com 3.6.7.2 Supra Adaptive Answering not working --------------------------------------------- A number of customers have reported difficulties receiving faxes with Supra modems, even after upgrading to version 1.8 of the ROMs. It appears that the Adaptive Answering feature of these ROMs is not working. When using NXFax with a modem that does not support Adaptive Answering, you must use the NXFax Monitor Preferences panel to turn off Data/Fax Detection. Doing so will turn off the Data button leaving only the Fax button checked. With only Fax checked, you will only be able to receive fax calls. If you need to receive a data call, you must turn off the Fax button and turn on the Data button. IMPORTANT: When Fax is the only button checked, some modems will treat an outgoing data call as a fax call. In this situation, your attempt to make an outgoing data connection will fail. You can avoid this problem by issuing an AT+FCLASS=0 command to the modem to put it into data mode before placing a data call. If you are using UUCP or SLIP you can put this command in your chat script. 3.6.7.3 Supra SilentAnswer feature ----------------------------------- SupraFAX modems offer a Silent Answer feature which attempts to determine whether an incoming call is intended for an answering machine. This feature is incompatible with the NXFax Data/Fax Detection feature. If you want to use Silent Answer, you should disable Data/Fax Detection on the NXFax Monitor Preferences panel. You also need to tell NXFax you want to use Silent Answer by modifying the NXFax defaults database. To do this: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite SilentAnswer YES /usr/lib/NextPrinter/exec_faxes For Silent Answer to work properly, you may also need to increase NXFax defaults database values for RingTimeout and WaitForConnect. 3.6.7.4 Supra Sonic 33.6 modem ------------------------------- We have not tested the Supra Sonic 33.6 V+ modem ourselves, but we have had some reports that it works with NXFax. The difficulty with that modem is that Supra Corporation was purchased by Diamond and thus they modified their firmware to return "Diamond" instead of "Supra". NXFax does not recognize "Diamond" and reports "Unknown modem". This in itself should present no problem as NXFax can continue, but since NXFax does not know it is a Supra modem you cannot take advantage of any specific features of this modem. In this case, you cannot use the SilentAnswerfeature. 3.6.7.5 Supra with 1.200 ROMs unable to receive faxes ------------------------------------------------------ If you are having problems receiving faxes with a Supra modem, check your modem's ROM version. It is displayed on the bottom line of the NXFaxMonitor Info panel. The earlier versions of the Supra modems were 1.200. They had a lot of problems receiving faxes, many of which were due to the implementation of Adaptive Answering (Data/Fax Detection). We recommend that if you have this version of the modem you contact Supra in order to get your modem upgraded to version 1.8. There was an intermediate release of the Supra ROMs with version 1.7x. Although Supra says that this should be the same as version 1.8, many of our customers found that they had problems with 1.7x which were fixed when they upgraded to 1.8. After the 1.8 Supras came a version 1.4 which was a modem with an entirely different chip set. The latest modems have yet another chip set supporting the new V.FC and V.34 protocols and they have a new numbering scheme. If you have questions about where your modem fits in this picture, you should contact Supra: 503-967-2490 (voice) 503-967-2401 (fax) SupraTech@supra.com A number of our customers have reported difficulties receiving faxes even after upgrading to version 1.8. If you use the NXFax Monitor's Preferences to turn off Data/Fax Detection, this seems to fix the problem. Unfortunately, this means you will not be able to receive data calls. You must choose between receiving fax or data calls with the other two buttons in the Preference panel above DataFax Detection. Important: When Fax is the only button checked in the Enable section of the NXFax Monitor Preferences, some modems will treat an outgoing data call as a fax call. In this situation, your attempt to make an outgoing data connection will fail. You can avoid this problem by issuing an AT+FCLASS=0 command to the modem to put it into data mode before placing a data call. Alternatively, you can include the command in a UUCP or SLIP style chat script. 3.6.7.6 Supra with 1.4 ROMs connecting at 9600 bps --------------------------------------------------- There is a bug in the Supra 1.4 ROMs that causes incoming data calls to connect at 9600 bps instead of at14,400. To work around the problem: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite AuxATCommand AT%G1 /usr/lib/NextPrinter/exec_faxes The cause of the problem is that the AT\N3 command used to select auto-reliable modem is turning off the V.32bis (14400) negotiation. 3.6.8 Telebit Problems ======================= 3.6.8.1 Telebit Hardware Reset ------------------------------- To perform a hardware reset on a Telebit modem: - Turn the modem off. - Hold in the T/D button. - Turn the modem on. - Wait for five LEDs in a row to blink on and off together. - Press the T/D button again. - Restart NXFax. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. 3.6.8.2 Telebit received faxes are elongated --------------------------------------------- There is a bug in the newer Telebit firmware (LA7.20) which causes faxes to appear double-sized vertically. To work around this problem: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite AuxATCommand at+fdcc=1,5,0,2,0,0,0,0 /usr/lib/NextPrinter/exec_faxes 3.6.8.3 WorldBlazer does not support Adapative Answering --------------------------------------------------------- Telebit WorldBlazers with firmware releases LA7.05C and earlier do not support Adaptive Answering (Data/Fax detection). This feature was added in LA7.20. When using NXFax with a modem that does not support Adaptive Answering, you must use the NXFax Monitor Preferences panel to turn off Data/Fax Detection. Doing so will turn off the Data button leaving only the Fax button checked. With only Fax checked, you will only be able to receive fax calls. If you need to receive a data call, you must turn off the Fax button and turn on the Data button. IMPORTANT: When Fax is the only button checked, some modems will treat an outgoing data call as a fax call. In this situation, your attempt to make an outgoing data connection will fail. You can avoid this problem by issuing an AT+FCLASS=0 command to the modem to put it into data mode before placing a data call. If you are using UUCP or SLIP you can put this command in your chat script. 3.6.8.4 WorldBlazer initialization fails ----------------------------------------- If you are getting an "initialization failed" message or some other indication that NXFax cannot communicate with your WorldBlazer, the following may help. The WorldBlazer is somewhat "fussier" about auto-bauding than other modems. To get it to work properly with NXFax, use tip or another communications program to connect to the modem at a speed of 38400 (information on how to do this follows). Then issue the following command to the modem: at&f&w NXFax should now be able to initialize your modem normally. If you continue to operate the modem at 38400. you should not see the problem again. If you use UUCP, change your L.sys entry to 38400 and be sure there is an appropriate entry in L-devices. Examples are included in the Data Communications section of the online Help under the topic "L.sys file". To learn about sending commands to a modem, see the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. You can use a communications program such as tip to issue modem commands. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". Some additional information about using tip with NXFax follows. In order to use tip or other serial communications programs on a modem/port controlled by NXFax you must use the "cu" device and not the "tty" device for outgoing calls. With tip you can use the built-in definition for port A: tip cua9600 to connect to your modem at 9600 bps. You would substitute "cub9600" for a modem on port B. See the man pages for further options and how to make your own /etc/remote entries. You can tell tip to connect at different speeds. You do this by appending a dash followed by the speed you prefer. For example: tip cua9600 -19200 (connects at 19,200 bps) tip cua9600 -38400 (connects at 38,400 bps) When you connect to the modem with tip and type an "AT" command you should see something similar to the following in your Workspace Console: %> bandw_fax: activity on port Mon Oct 24 12:12:57 1994 %> bandw_fax: port in use Mon Oct 24 12:12:57 1994 And when you finish with tip you will see something like: %> bandw_fax: port freed Mon Oct 24 12:13:10 1994 followed by the modem being reset. 3.6.9 U.S. Robotics Problems ============================= 3.6.9.1 U.S. Robotics cannot fax with ZyXELs --------------------------------------------- Some older U.S. Robotics modems cannot send faxes to ZyXEL modems due to a U.S. Robotics problem faxing at 14,400 bps. If the sender can force the speed down to 9600 bps, the problem usually goes away. Some newer U.S. Robotics V.FC and V.34 modems cannot complete handshaking with ZyXEL modems that have ROMs earlier than 6.13. ZyXEL recognizes the bug and will provides an upgrade if you contact them. 3.6.10 ZyXEL Problems ====================== 3.6.10.1 Contacting ZyXEL technical support -------------------------------------------- To contact ZyXEL: 714-693-0808 (voice) 714-693-0762 (BBS for Technical Support) 714-693-8811 (fax) tech@zyxel.com sales@zyxel.com 3.6.10.2 DRAM Faxing problem ----------------------------- There is a known problem with the standalone fax reception in the Elite 2864. The problem occurs in firmware version 1.12 (and most likely prior versions). Standalone fax reception to DRAM works properly so long as your modem is physically connected to your computer and that the computer is turned on. If you turn your computer off or you disconnect the cable from the modem, the modem will not answer and fax reception fails. The most likely explanation is that with the computer off or the cable disconnected there is no DTR signal from the computer thus disabling auto-answer. ZyXEL is aware of the problem and will fix it in the next release of the firmware. 3.6.10.3 Elite and Omni ROM version 1.14 won't answer ------------------------------------------------------ For Omni and Elite ROM version 1.14 and higher: If you have recently upgraded your Zyxel Elite 2864 or Omni 288S modems to ROM version 1.14 or higher, you will discover that incoming calls are no longer answered. It is not clear yet what changed between version 1.13 and 1.14, but you can resolve this problem by doing the following: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite AuxATCommand "ATS18=0" In order for the dwrite to take effect, you must restart the fax driver from a terminal window by issuing the following command: /usr/lib/NextPrinter/exec_faxes Note that with ROM version 1.14 or higher it does not matter whether you have set the S62 register or not so long as S18=0. 3.6.10.4 Fax calls not answered when rings set to >3 on Elite -------------------------------------------------------------- We have encountered a problem where the Elite 2864 does not generate proper ring signals when receiving a fax. We have seen this with version 1.09 of the ROM code. The symptoms vary, but if you have NXFax set to answer after 3 or sometimes 4 or more rings, when a fax call comes in the modem starts ringing but soon rings erratically. Sometimes the ring itself is distorted or more like a buzz and sometimes the ring is missed altogether. The modem does not report the rings properly to NXFax and thus NXFax usually gets a "Time out waiting for connect." and reinitializes. We have found that upgrading to version 1.12 (or later) of the ROM code solves this problem. 3.6.10.5 Unreadable fax pages ------------------------------ If you are using a ZyXEL modem and are receiving short fax pages that contain a collection of unreadable lines, you should check the ROM version in your modem. Some ZyXEL modem ROMs return invalid data when receiving faxes from some fax devices. This is particularly true of ZyXEL modems with ROMs in the early 6.xx series (prior to 6.13). You can determine the version of your ROMs by looking at the bottom line of the NXFaxMonitor Info panel. You can also issue the following ªrequest versionº command to your modem: at+frev? To learn about sending commands to a modem, see the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. You can use a communications program such as tip to issue modem commands. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". To contact ZyXEL: 714-693-0808 (voice) 714-693-0762 (BBS for Technical Support) 714-693-8811 (fax) tech@zyxel.com sales@zyxel.com 3.6.10.6 ZyXEL cannot fax with U.S. Robotics --------------------------------------------- Some older U.S. Robotics modems cannot send faxes to ZyXEL modems due to a U.S. Robotics problem faxing at 14,400 bps. If the sender can force the speed down to 9600 bps, the problem usually goes away. Some newer U.S. Robotics V.FC and V.34 modems cannot complete handshaking with ZyXEL modems that have ROMs earlier than 6.13. ZyXEL recognizes the bug and will provides an upgrade if you contact them. 3.6.10.7 ZyXEL Hardware Reset ------------------------------ To perform a hardware reset on a ZyXEL 1496e modem: - Turn the modem off. - While holding in the Data/Voice button, turn the power on, wait for about 3 seconds, and then let the Data/Voice button out. - The modem will make noises and the LEDs will blink. Wait about 10 seconds and then turn the modem off. - Turn the modem back on. - Restart NXFax. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. 3.6.10.8 ZyXEL not connecting to V.FC modems --------------------------------------------- If you are having problems connecting to V.FC modems with a ZyXEL modem it may be that you require a ROM upgrade. Brent Mosbrook, ZyXEL Product Development, wrote: "The solution is to get 6.13+ roms.. there _WERE_ V.FC connection problems, which were primarily caused by 6.12 roms being around before V.FC was released.. we fixed the compatibility issues, as well as turned OFF cellular negotiation by default. I would suggest getting the latest 6.14 roms, or at the very least, disabling cellular by setting s43=8." 3.6.10.9 ZyXEL with 5.00 - 5.02 ROMs won't fax with NXFax 1.04 --------------------------------------------------------------- ZyXEL modem users who have older ROMs may encounter problems sending or receiving faxes when using NXFax 1.04. Affected ROM versions are 5.00, 5.01, and 5.02. You can tell your ROM version by looking at the bottom line of the NXFaxMonitor's Info panel. The problem occurs because of changes in NXFax 1.04 that were made to accommodate newer ROMs. These changes were not backward compatible with the older ROMs; however you can correct the problem by performing the following steps which will allow NXFax to communicate properly with the older ROMs. - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite AuxATCommand ATS38=8 /usr/lib/NextPrinter/exec_faxes You should now see the message "user init ATS38=8" in your Workspace Console as NXFax resets the modem. To open the console: - Choose Tools from the Workspace menu. - Choose Console from the Tools menu. If there are no messages in the console, look in NXFax log file. This file is named /private/adm/nxfax/log. Note that you must be logged in as root to read this file. 3.6.10.10 ZyXEL with 6.00 ROMs sends poor quality faxes -------------------------------------------------------- If your ZyXEL modem has version 6.00 of the ROMs you should contact ZyXEL about an upgrade. There was a bug in this version which caused extremely poor quality in sending faxes due to the high speed (38,400 bps) at which NXFax normally communicates with the modem. 4 Frequently Asked Questions ============================= 4.1 Can I change the time between retries? ------------------------------------------- Unfortunately, there is no way to change the time between redialing when a fax call is busy. The setting is part of NEXTSTEP and NXFax has no way to control it, nor is there a preference setting in NEXTSTEP that will allow you to change it. The redial time is 5 minutes per queued fax. If the fax number dialed is busy, NEXTSTEP should wait 5 minutes before redialing that number again, but if there is another document in the queue, it will try that one right away. And, if it is to the same number it may get a busy signal as well. 4.2 Can I use the DRAM option with NXFax? ------------------------------------------ We have tested the DRAM option available with the ZyXEL Elite 2864 modem. It is possible to use this option with NXFax, but be aware that it is not automatic and requires configuration changes each time you want to set it up and retrieve faxes. With the DRAM option installed you can receive faxes off-line, that is, faxes are stored in the modem until you turn on your computer and/or restart NXFax. If a fax is received and stored in DRAM, NXFax will detect the fax and "receive" it as though it is just coming in. You can then read your faxes with the FaxReader in the normal fashion. This feature is useful if you need to turn off you computer for periods of time, but still need to receive faxes or if you need to disable NXFax for some reason. Prior to using this feature you must purchase and install DRAM chips. These are available from ZyXEL. Please read the documentation that comes with your modem for complete instructions on installing and using DRAM. The basic steps are summarized here. To utilize this feature you must set up your modem each time you wish to have it receive faxes in DRAM. To do this: 1) Make sure that NXFax is disabled. 2) Use a communications program like tip. Open a terminal window, type the following command and press Enter: tip cua9600 (if your modem is plugged into port B type cub9600) You should see a ªconnectedº message. Then type: AT and press Enter. If the modem responds with ªOKº you have a good connection and you can now type AT commands. Type the following command to set the modem to work in Class Z mode and press Enter: AT+FCLASS=Z Type the following command to set the modem to work with DRAM and press Enter: AT+FZF=n where n corresponds to 2-5 depending on what option you desire - see the ZyXEL modem documentation. (We tested with n=3). 3) When ready to view your faxes with NXFax, you must send the AT+FCLASS=2 command to the modem. To do this you must temporarily define an AuxATCommand for NXFax as follows: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite AuxATCommand "AT+FCLASS=2" In order for the dwrite to take effect, you must restart the fax driver from a terminal window by issuing the following command: /usr/lib/NextPrinter/exec_faxes CAUTION: The effect of setting the above dwrite is to turn off Data Detection for your modem. You will not be able to receive incoming data calls while this dwrite is in effect. If you wish to allow incoming data calls again you must remove the AuxATCommand as follows: dwrite AuxATCommand "" In order for the dwrite to take effect, you must restart the fax driver from a terminal window by issuing the following command: /usr/lib/NextPrinter/exec_faxes Note that we did not test the printing options with the DRAM. 4.3 Does NXFax work with US Robotics modems? --------------------------------------------- The USRobotics fax/modems are not on our list of supported modems. The USRobotics are Class 2.0 fax/modems; NXFax currently only supports Class 2 modems. 4.4 How To =========== 4.4.1 Create a fax address book -------------------------------- Fax address books and how to create them is not well documented. Some mention is made in the NeXT User's Guide in the chapter called Using On-Line References, in the section called Adding an On-Line Address. The guide is a printed manual which is not on-line. If you did not receive this book when you bought NEXTSTEP, you might contact NeXT to ask how to acquire it, but the following information should enable you to create your own fax address books. Note that fax address books are a feature of NEXTSTEP, not NXFax. We are providing the information below solely for your convenience. NOTE: the information that follows applies to NEXTSTEP versions 3.2 and older. The format for 3.3 has changed and is not covered here. You create a new address book by copying an existing one, removing all address entries from the copy, and then adding new entries. To do this: - First decide where you want to put the new address book. Address books go in /LocalLibrary/Addresses or in /Library/Addresses. - From the Workspace File Viewer select one of the existing address books (preferably the smallest one) and make a copy of it by choosing Duplicate from the File menu (or type command-d). - Rename the new address book to whatever you like, but be sure to preserve the .address suffix. - Select the new address book, and choose Open as Folder from the File menu (or type command-O). - You will now have a mini file viewer showing the address book. Select all the recipients and remove them all by choosing Destroy from the File menu.(or type command-r). You will now have an empty address book. - To add new addresses, choose New Address from the File menu (or type command-n). The new address is named "Smith, Joe" by default so you have to rename it to something else. Note that "New Address" only appears on the File menu when you have an address book open in its own viewer. - You can also add address to the new book from the Fax panel. Another way to create new address books is by using Edit or a filtering program of your own design. This method is very useful if you need to create address books from existing on-line information such as that in a database. The address information must be put into a file in address book format. The file must then be named and located according to the rules for address books. The process is as follows. - Create a new folder in your Addresses folder (either /LocalLibrary/Addresses or /Library/Addresses). Choose a name you like but do not include the .addresses suffix yet. - Using Edit or a filtering program, create an ASCII file named AddressBook.table in the new folder. - Add address information to the file using the format shown in the example below: Type = "Address Book"; Contents = "Doe, Jane" = FAX = 555-1234; "Full Name" = "Jane Ann Doe"; ; "Smith, John" = FAX = 802-555-5678; "Full Name" = ""; ; 4.4.2 Create cover sheets -------------------------- Instructions for creating a custom cover sheet are detailed in the NeXT User's Guide section "Custom Fax Cover Sheets". The guide is a printed manual which is not on-line. If you did not receive this book when you bought NEXTSTEP, you should contact NeXT to ask how to acquire it. Briefly, you create a customer cover sheet using the Draw application, which is stored in /NextDeveloper/Demos. You keep custom cover sheets in the /Library/Fax folder in your home folder. Note that custom cover sheets are a feature of NEXTSTEP, not NXFax. 4.4.3 Determine if a modem is Class 2 -------------------------------------- If you are unsure from your modem's documentation whether or not your modem supports Class 2 fax commands, you can connect to your modem and issue the command at+fclass=? Your modem should respond with something like: at+fclass=? 0,2 OK If it does not have 2, or has "2.0" instead, or responds with ERROR your modem does not support Class 2. To learn about sending commands to a modem, see the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. You can use a communications program such as tip to issue modem commands. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". 4.4.4 Determine if NXFax is running ------------------------------------ NXFax is a fax driver that works closely with a NeXT process called FaxDaemon. To determine if NXFax is running you need to see if the FaxDaemon is running. If it is not, NXFax is not either. To determine if FaxDaemon is running: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - type the following command and then press Enter. ps -ax | grep Fax You should see an entry containing the text below: /usr/lib/NextPrinter/FaxDaemon If you don't see such an entry, NXFax is not running and you should restart it. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. 4.4.5 Determine if the cable for a NeXT computer is a NeXT cable ----------------------------------------------------------------- You cannot tell by simply looking if a cable is wired properly for a NeXT computer. However, if the cable is black, it is more likely to be a NeXT cable. If white or gray, it probably is not. If you have a continuity meter, you can check the pin wiring against the Next documentation for NeXT-to-Modem Cable (MiniDIN-8 to DB-25). The information can be found in /NextLibrary/Documentation/NextAdmin/ApB_Cabling.rtfd. If you are installing NXFax on a NeXT computer (Motorola 68040 processor) and are able to connect to your modem with a communication program (such as tip or kermit) but find that NXFax hangs when starting or that the quality of received faxes is very poor, the problem could very well be the cable. You must use a NeXT '040 Hardware Handshake cable on Motorola 68040 systems. While other cables may work fine for some data applications, the correct cable is absolutely necessary for faxing. Another cable, such as a Macintosh cable, will not work, even if it is a "hardware handshaking" cable. The NeXT cable is unique. Note: Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". 4.4.6 Determine ROM version of a modem --------------------------------------- You can determine the version of your ROMs by looking at the bottom line of the NXFaxMonitor Info panel. You can also issue the following ªrequest versionº command to your modem: at+frev? To learn about sending commands to a modem, see the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. You can use a communications program such as tip to issue modem commands. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". 4.4.7 Dial on phones systems with no dial tone ----------------------------------------------- When using NXFax with a phone system that does not provide a dial tone, you must tell NXFax not to wait for a dial done when attempting to send a fax. If you don't do this, the modem will wait for a dial tone before attempting to dial. If it does not detect a dial tone it will assume the line is busy and not dial. As a result, no faxes will be sent. To tell NXFax not to wait for a dial tone: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite WaitForDialTone NO /usr/lib/NextPrinter/exec_faxes 4.4.8 Fax from the command line -------------------------------- NEXTSTEP does not have real support for command-line faxing. There are, however, a number of public-domain solutions available. If you have ftp access to the internet you should be able to find a usable solution. 4.4.9 Get NXFax Electronically ------------------------------- You can get NXFax 1.04 electronically if you have FTP access. * Via FTP NXFax (multi-architecture version only) can be obtained at ftp://ftp.next.peak.org/pub/next/demos/comm. The files are: NXFax1.04.tar NXFax1.04.README.txt NXFax1.04.HelpAddendum.txt (this file) 4.4.10 Get ROM upgrades ------------------------ ROM upgrades for the ZyXEL Omni and Elite modems are available via ftp. You can ftp the ROM code from ftp://ftp.zyxel.com/pub/other/zyxel. 4.4.11 Halt a fax call ----------------------- You can terminate an outgoing or incoming fax call at any time by pressing the Halt button on the NXFaxMonitor's main window. If you halt a call while a fax is being transmitted, you will receive a mail message indicating that the fax was delivered successfully. If you halt a call before the fax transmission actually begins (for example, during the handshaking phase) you will receive a mail message indicating that the number you tried to fax to didn't answer, or wasn't answered by a fax machine. You can halt an incoming fax call. As much of the fax as was received can be viewed normally with the FaxReader. 4.4.12 Install an internal modem on an Intel system ---------------------------------------------------- Installing an internal modem is a complicated procedure which is only recommended for those who are familiar with: installing hardware devices setting hardware jumpers selecting hardware interrupts (IRQ's) choosing port addresses configuring device drivers using NeXT's Configure application Before NXFax can be used with an internal modem, you must first install and configure the modem so that it can be accessed as a standard serial communications device. The following instructions are intended only as an overview of the steps which are frequently taken to install an internal modem. They are not comprehensive. Read any and all instructions provided by the modem manufacturer, the serial software provider, and NeXT Computer. Familiarize yourself with the on-line Help provided with NeXT's Configure application. It will be your guide should you encounter difficulties. - Follow the manufacturers instructions for setting the hardware interrupt(s) and port address(es) for the modem card you are installing. This generally involves changing (or at least verifying) the position of various hardware jumpers and/or using a hardware configuration program provided by the card vendor. When setting interrupts and port addresses, you must choose values which are not already in use by other devices on your system. - Install the modem card and run any system configuration utilities deemed necessary by the manufacturer to identify newly installed cards. - Launch NeXT's Configure application and select the "Other Devices" icon to display the list of previously installed devices. - Press the "Add" button to display the list of device drivers available for configuration. The NeXT serial driver is identified by the name "On-Board Serial Ports". Another commonly used serial driver is "Mux" which is identified by the name "Multi-Channel Serial Driver". - From the list, select the serial driver you want to control your internal card. Press the Add button again to add a new instance of the serial driver to the "Other Devices" list. - Select the newly added device name in the "Other Devices" list. If the default "Port Address" value does not match the port address of your internal modem card, reset it to the correct address. If the default "IRQ Level" does not match the interrupt number of your internal modem card, reset it to the interrupt level. - Press the Done button to complete the device configuration. - Reboot the system. - Before installing NXFax, make certain that you can send commands to the modem with a standard communications program such as tip or Kermit. If that program cannot communicate with your modem, NXFax will not be able to either. If you use tip to verify that your computer can communicate with your modem, be aware that contrary to what it says, the tip message "connected" does not necessarily mean a connection has been established. To verify a connection you must be able to type commands and get responses back from the modem. If characters that you type are not displayed, you do not have a connection. For more information, turn to the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. If after following the steps above you are having a problem, carefully review the steps you took to install and configure the modem card until you find and correct the problem. 4.4.13 Make Distinctive Ring work with a non-ZyXEL modem --------------------------------------------------------- At the time that the current version of NXFax was released, the only NXFax supported modem which offered distinctive ring was the ZyXEL. Owners of other modems that now support distinctive ring will find that the Distinctive Ring buttons on the NXFaxMonitor's Preferences panel are all disabled. To take advantage of your modem's Distinctive Ring feature, use a communications program to send the proper Distinctive Ring enabling commands to your modem (see your modem's Owner's Manual) and then save them in the modem's memory with the at&w command. To learn about sending commands to a modem, see the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. You can use a communications program such as tip to issue modem commands. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". 4.4.14 Open a console window ----------------------------- To open the console: - Choose Tools from the Workspace menu. - Choose Console from the Tools menu. If there are no messages in the console, look in NXFax log file. This file is named /private/adm/nxfax/log. Note that you must be logged in as root to read this file. 4.4.15 Prevent FaxReader from shrinking faxes. ----------------------------------------------- When you display a fax using FaxReader and re-fax it via the Print panel, the resulting fax shrinks slightly and there is some amount of image degradation. It is not clear to us why this occurs, but because FaxReader is a NEXTSTEP component, not part of NXFax, there is nothing we can do about this problem. 4.4.16 Prevent incoming data calls, but allow fax calls -------------------------------------------------------- It is possible to prevent incoming data calls to your NXFax modem setup by simply un-checking the "Data" box in the NXFax Monitor Preferences panel. The Data/Fax Detection box should remain checked. The data caller would then see, for example: CONNECT 14400/REL-LAPM-COMP [--- NXFax // bandw : data calls disabled ---] +++ NO CARRIER In the NXFax log file (/private/adm/nxfax/log) you would see something similar to the following: %> bandw_fax: activity on port Mon Feb 6 10:27:03 1995 %> bandw_fax: wait for connect %> bandw_fax: ring 1 %> bandw_fax: answer call %> bandw_fax: incoming data call %> bandw_fax: CONNECT 38400 ----------NXFax Driver Version 1.04.1---------- %> bandw_fax: Mon Feb 6 10:27:17 1995 %> bandw_fax: data call %> bandw_fax: Mon Feb 6 10:27:21 1995 %> bandw_fax: data calls disabled %> bandw_fax: hangup %> bandw_fax: call complete 4.4.17 Put a banner or header on fax pages ------------------------------------------- Mechanical fax machines usually print a banner or header with page numbering, date, or other identification on each fax page transmitted. Unfortunately, the current version of NXFax has no opportunity for adding this kind of information to faxes it sends. By the time NXFax is invoked by NEXTSTEP to transmit a fax, NEXTSTEP has already imaged the fax into a data format which is no longer suitable for further annotation by NXFax. 4.4.18 Save a cover sheet for a fax that might be resent --------------------------------------------------------- If you fill out a cover sheet and attempt to send a fax, but the send fails for some reason (e.g. the number you dialed did not answer), the contents of the cover sheet are blank when you try to send the fax again. Unfortunately, we do not know of a way to save them. The Fax panel and the workings of cover sheets are controlled by NEXTSTEP, not by NXFax. While this behavior can be annoying, it does prevent you from accidentally sending comments to the wrong person. For more information about cover sheets turn to the Sending Faxes section of the NXFax on-line Help and read the topic Include a Cover Sheet. 4.4.19 Send a group fax ------------------------ Faxing a single document to several phone numbers is called group faxing. Group faxing is supported by NEXTSTEP, but is not well documented. Some mention is made in the NeXT User's Guide in the chapter called Using On-Line References, in the section called Adding an On-Line Address. The guide is a printed manual which is not on-line. If you did not receive this book when you bought NEXTSTEP, you might contact NeXT to ask how to acquire it, but the following information should enable you to do group faxing. Note that group faxing is a feature of NEXTSTEP, not NXFax. We are providing the information below soley for your convenience. There are two ways to fax to a group. Both are done from the Fax panel. The first way is to: - Choose a fax address book from the left-hand column. - Select multiple recipients from the right-hand column. - Press the Fax Now button. The fax will be sent to each recipient selected. The second way is to: - Choose a fax address book that contains a fax group. - Select the group. - Press the Fax Now button. The fax will be sent to each recipient in the group. How to create a fax group will be explained shortly. Either way you do group faxing, NEXTSTEP places multiple copies of the the fax into the fax queue, one copy for each recipient. NXFax is notified to transmit each fax one at a time until none remain in the queue. You can pause the queue or remove faxes from it at any time. Creating a fax group is a little bit awkward, but an attempt to explain the process is provided here all the same. - First decide which address book you want to add the group to. Address books are found in /LocalLibrary/Addresses and in /Library/Addresses. - From the Workspace File Viewer, select the address book, and choose Open as Folder from the File menu (or type command-O). - You will now have a mini file viewer showing the address book. Select the address book from the mini viewer and choose New Group from the File menu (or type command-g). Note that "New Group" only appears on the File menu when you have an address book open in its own viewer. - The new group will be called "Group." Rename it to whatever you like. - Select the address book again from the mini viewer and select one or more recipients. - Drag the icon for the selection(s) up to the mini viewer shelf. - Select the new group from the mini viewer and drag the icon for the recipients from the shelf onto the group. The recipient names should appear in the group in italics. They should also still appear in the address book itself (items dragged to the group are not moved, but merely referenced). Repeat the last three steps above until the group is populated the way you want it and then close the mini viewer. The next time you bring up the Fax panel, the new group should appear in the address book you added it to. The following may also be helpful: Section 4.4.1 - "Create a fax address book" 4.4.20 Send commands to a modem -------------------------------- To learn about sending commands to a modem, see the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. You can use a communications program such as tip to issue modem commands. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". 4.4.21 Send multiple documents in a single fax ----------------------------------------------- NEXTSTEP does not provide a means of combining multiple documents for sending in one unit. There is a 3rd-party solution to this problem, called PageChain. A demo of PageChain is available by ftp from ftp.cs.orst.edu. We do not have current information on who is currently marketing this product, but the author can be contacted by sending email to Ralph_Zazula@next.com. 4.4.22 Upload ROM code to the Omni and Elite modems ---------------------------------------------------- We have not yet found an elegant solution for uploading new ROM code from NEXTSTEP machines. You need a communications program that supports the xmodem protocol. If you have TipTop or MicroPhone or access to PC programs you should be able to use those with no problem. In the meantime we have found one way (albeit funky) to do it with generally available software. This solution requires that you have Kermit and the sx program, which is part of the rz/sz package and can be ftp'd from ftp.orst.edu. The path is : ftp://ftp.next.peak.org/pub/next/binaries/comm/NeXT.rzsz0525.FAT_binaries The general idea is to start kermit and use it to get the modem ready to load the new code. Then use sx to upload the ROM code to the modem. Finally, use kermit to reset the modem and check that all went well. Be aware that when uploading the firmware with sx, the sx program may appear to hang. The upload takes between 5 and 10 minutes during which time you will see the RXD/TXD lights flashing. When the light is no longer flashing, you must assume the upload is done and CTL-C out of sx it if does not complete by itself. At this point you can run kermit again to issue the at&f command and check that the code is loaded properly. Following are the directions: Note: When running Kermit, you must be sure to set the following: set flow-control none set duplex full set modem-dialer hayes set parity none set file type binary set line /dev/cufa set speed 38400 These commands can be placed in a .kermrc file in your home directory or you can type them at the C-Kermit> prompt before entering the connect command. First open a terminal window. Lines with <--- are lines on which you type something. bandw>kermit <--- run kermit C-Kermit>connect <--- and connect to your modem Connecting to /dev/cufa, speed 38400. The escape character is CTRL-] (ASCII 29). Type the escape character followed by C to get back, or followed by ? to see other options. atupx <--- use atupx to tell the modem to upload You have chosen Xmodem (128 bytes data with checksum) protocol to update your modem. Data in Flash ROM will be erased !!! Are you sure (Y/N) ?Y <--- Wait ! Erasing flash rom now ........ Start programming, please upload... <--- at this point escape from kermit to local system with CTRL-] C (or whatever your escape sequence is) and quit. [Back at Local System] C-Kermit>quit <--- exit kermit for now. bandw>sx -v O288s.109 < /dev/cua > /dev/cua <--- run sx, CTRL-C when done ^Cbandw>kermit <--- run kermit again. You may need to set the following options manually if you do not have them set in your .kermrc file. kermit: Setting line to /dev/cufa kermit: Setting speed to 38400 kermit: Setting modem type to hayes kermit: Setting file type to binary kermit: Setting rec and send packet length to 1000 C-Kermit 5A(166) ALPHA, 8 Feb 91, NeXT Type ? or 'help' for help C-Kermit>connect <--- connect Connecting to /dev/cufa, speed 38400. The escape character is CTRL-] (ASCII 29). Type the escape character followed by C to get back, or followed by ? to see other options. at&F <--- reset modem to factory default OK ati1 <--- check the ROM version 35911 S288 V 1.09 OK [Back at Local System] C-Kermit>quit <--- exit from kermit bandw> 4.4.23 Use a fax-back service ------------------------------ You can receive faxes from a fax-back service using NXFax 1.04 and a ZyXEL or Telebit modem. Call the fax-back number using a telephone that is connected to the phone jack on your modem. When the fax-back service asks you to "press Start" on your fax machine simply press the Voice/Data button on a ZyXEL modem or the T/D button on a Telebit WorldBlazer modem. Before this will work as described above, you need to make one change to your configuration so that NXFax will wait long enough to detect that a fax is coming from the fax-back service. You do this by modifying the RingTimeout value in the defaults database. You need to change the timeout from the default of 10 seconds to 30 seconds. To set the ring timeout: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite RingTimeout 30 /usr/lib/NextPrinter/exec_faxes 4.4.24 Use Extended Distinctive Ring ------------------------------------- The ZyXEL Omni and Elite modems have a feature called Extended Distinctive Ring. This allows you to use a single phone line to receive fax or data calls without interfering with regular voice calls. When a call comes in you either pick up the handset or let an answering machine pick up the call. The modem (which is on the same line) will detect that the ring signal is gone and start to listen on the line for a CNG tone or DTMF tones. There will be a CNG tone on the line if the remote caller is an unattended fax machine or modem. There will be a DTMF tone on the line if the caller manually presses a START button to activate the fax. In either case, if you have configured your modem as described below, the modem will report ring signals to NXFax once it has determined that there is a fax call on the line. To enable Extended Distinctive Ring (EDR): Use tip to connect and send commands to your modem. To do this - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - type the following command and then press Enter. tip cua9600 (If your modem is plugged into port B type cub9600.) You should see a ªconnectedº message. Then type: at and press Enter. If the modem responds with ªOKº you have a good connection and you can now type AT commands. Type the following command to set the S51 register: ats51=86 [ This setting sets the modem to a) report RING for data CNG tone, b) report RING for fax CNG tone, c) report RING for a DTMF tone and d) report RING 4 times.] To save the changes type: at&w Exit tip by typing ~. (the tilde key followed by a period). If this has no effect, simply close the terminal window and click the Close Anyway button on the Close panel. Next, you need to configure NXFax to answer after 4 rings. This combination of settings worked for us when we tested with an answering machine connected to the line. Note that there are other possibilities for setting the S51 register (documented in the 2864 Series Modem User's Manual) and other possible settings for NXFax. You may need to experiment with combinations to see which works best for you. 4.4.25 Use one phone line for voice, fax, and data --------------------------------------------------- The most reliable way to use a single telephone line to receive voice calls and also fax and data calls is with Distinctive Ring. Distinctive ring is a service (sometimes referred to by other names such as "Ident-A-Ring", "Teen Service", or "Subscriber Identified Number Assignment") provided by many phone companies that allows you to have two or more incoming phone numbers on a single physical phone line. Each number has a different type of ring so you can tell which number a caller dialed. You can use one number for voice calls and another for both fax and data calls. If your modem has a distinctive ring detection feature (all ZyXEL modems have it), you can tell the modem which type of ring to answer and which type to ignore. This will ensure that your voice calls are directed to a handset or answering machine and that your fax and data calls are answered by your modem. You tell your modem which type of ring to answer by using the Distinctive Ring Selector on the NXFaxMonitor Preferences panel. Note that a number of manufacturers produce a "line manager" switch which attempts to distinguish incoming fax calls from voice calls. These devices will generally "work" with NXFax insofar as the device itself works. Unfortunately, the detection methods employed by these switches is not always reliable. One common problem occurs when the ring signal sent by the switch to the modem is not recognized because the signal differs from the one generated by the local telephone company. As a general rule, we do not recommend using these devices. 4.4.26 View dwrite values for NXFax ------------------------------------ NXFax and other NeXT applications record preference information in the defaults database for use the next time the application is launched. For information about the dwrites that NXFax and NXFaxMonitor use, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the topic Defaults Database You can see the values of your NXFax dwrites as follows: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dread -o To see the values of your NXFaxMonitor dwrites, issue the command: dread -o NXFaxMonitor 4.5 Are any BABT approved modems supported by NXFax? ----------------------------------------------------- NXFax supports the MultiTech MT1432BA modem, which is BABT approved. 4.6 Does NXFax have any data communications features? ------------------------------------------------------ NXFax is used strictly for sending and receiving faxes. It does not provide data communications features per se such as the ability to dial in to another computer or to transfer files. NXFax is compatible with most data communications programs in that it allows you to use both the data and fax capabilities of your modem at any time without your having to reconfigure NXFax or your communications software. 4.7 Does NXFax support parallel devices? ----------------------------------------- Parallel communications support is intended to increase the rate at which data can be transferred between the computer and modem. Serial ports cannot send data to the modem at speeds that will keep up with ISDN transfer rates. At present, NXFax only supports serial ports. While some NEXTSTEP systems include parallel ports, it isn't currently possible for NXFax to use them because NEXTSTEP's implementation of the parallel port driver doesn't support bidirectional data transfer. 4.8 How many people can use 1 copy of NXFax? --------------------------------------------- Your NXFax license allows you to use the software on a single computer. If that computer is connected to a network, other users on the network may access that computer remotely to use the software. To get a better understanding of how this works, turn to the Installing NXFax section of the NXFax on-line Help and read the topic Configuration Options. The applicable option is Access. When Access is set to Public, other users on the network can access and use NXFax remotely without violating the license agreement. Although the NXFax Monitor shows "Users: 1" and the NXFax Installer shows "Licensed Users 1," a single NXFax license is good for more than one person as explained above. If NXFax will be installed on more than one computer you must purchase additional NXFax licenses. 4.9 Is a 57,600 DTE rate supported by NXFax? --------------------------------------------- At the moment, NXFax doesn't handle 57,600 bps transfer rates. We have tested versions of the NXFax driver using a 57,600 DTE only to find that it was subject to serial driver overruns. Our understanding is that NeXT does not consider 57,600 to be reliable and we agree, particularly for non-error corrected data streams like those encountered during a fax transfer. 4.10 Is there a SPARC version of NXFax? ---------------------------------------- NXFax was not released for the SPARC architecture. There was a problem with the way either the tty or serial driver worked with NXFax on SPARC. 4.11 Is there an HP version of NXFax? -------------------------------------- NXFax was not released for the HP architecture. Initially there were hardware flow control problems related to the HP serial driver which prevented us from shipping an HP version. 4.12 What are the faxspool files in the tmp directory? ------------------------------------------------------- The faxspool files (faxspool1, faxspool2, etc.) in /tmp are temporary files. NXFax puts the original spooled files in /tmp and overwrites them on each incoming fax, one for each page. All files in /tmp are deleted whenever you reboot your system, but you can safely remove the faxspool files from /tmp any time if you wish. 4.13 What files does the NXFaxInstaller install? ------------------------------------------------- Unlike most apps which are installed as a single .app file or a collection of files in a folder, NXFax actually becomes part of the system software once it is installed by NXFaxInstaller.app. The only user accessible component of NXFax is NXFaxmonitor.app which is installed according to where you tell NXFaxInstaller to put it. Note that to preserve disk space, NXFaxInstaller does not install a copy of itself onto your system. The other components of NXFax are system files located in /usr/lib/NeXTPrinter and /usr/spool/NeXTFaxes. Additionally, entries are added to the NetInfo database as part of NXFax installation. You should never modify any of these files or NetInfo entries and never attempt to un-install NXFax by removing the files or entries. Doing so could leave your system in an inconsistent and inoperable state. To remove NXFax, use the Remove feature of the NXFaxInstaller. 4.14 What is Class 1 and Class 2? ---------------------------------- Class 1 and Class 2 define the commands that a communications program such as NXFax sends to a modem. The key difference between them is that Class 2 modems perform much of the processing that the computer normally has to do when using a Class 1 modem. Thus, Class 2 modems place fewer demands on the controlling system thereby reducing the amount of processing time devoted by the computer to send or receive faxes. 4.15 What is the format of a .fax file? ---------------------------------------- NeXT's .fax files are actually specially formatted TIFF (Class F) images which have multiple pages. You can change the file extension to .tiff in order to try viewing them with a TIFF reader app. Most TIFF readers can display one of these files, but very few properly image and print the fax as a single document. Some readers simply display the first page, others display all pages but in separate windows. 4.16 What PCMCIA modems work with NXFax? ----------------------------------------- We tested NXFax with three PCMCIA modems after installing the following newly released NeXT drivers on Intel hardware: ISASerialPort (v 3.3) PortServer (v 3.3) PCIC (Intel 82365 PCMCIA driver v 3.31) PCMCIA Bus (v 3.31) Out of the three, two of our tests were successful and the third failed (we believe) only because of a low-level conflict between one of the drivers and a SCSI device. In short, PCMCIA modems now appear to work on Intel hardware, but be forewarned. A significant effort was involved in order to install the PCMCIA drivers along with the on-board serial devices on our Intel Professional GX. This may have been due to the fact that we were using an add-on PCMCIA card drive, but it was no easy matter to properly configure both the card drive and the PCMCIA cards so that they would work properly. Our system often "froze" during configuration and this problem was only eliminated through a trial-and-error system which involved changing port addresses, interrupts, etc. Once we could boot the system and connect to the cards with tip, NXFax generally worked as expected with these cards. Our only recommendation is to follow the advice in the Help documents distributed along with the PCMCIA drivers. The three PCMCIA modems we tested were: * AT&T Keep-In-Touch 14.4 (Warning - this card comes in several flavors, some of which do not provide Class 2 fax support. Nothing on the box or in the documentation indicates which Classes are supported. We saw two nearly identical modems, apparently made by different manufacturers. One supported Class 2, the other did not. * Megahertz 14400 PCMCIA 2.0 - This card worked right out of the box. * Megahertz 28800 PCMCIA - This modem caused our Intel system to lock up every time we tried to reboot the system due to conflicts with the SCSI controller. We changed a number of parameters to no avail. While we have no proof, it seems likely that this is an isolated problem which is unlikely to affect many other systems. The following may also be helpful: Section 5.4 - "Installing PCMCIA modems" 4.17 Where are faxes stored? ----------------------------- Faxes are normally viewed using the FaxReader app. It should not normally be necessary to access fax files directly, but it is possible. Incoming faxes are stored in /usr/spool/NeXTFaxes//. For every fax received there will be two files. One ends in .fax and is the actual fax file. The other has a .ctl suffix and is a control file. There are also directories within this directory for each user who has been added to the configuration as well as directories for the archived faxes and faxes to be printed. 4.18 Where is the NXFax log file? ---------------------------------- If there are no messages in the console, look in NXFax log file. This file is named /private/adm/nxfax/log. Note that you must be logged in as root to read this file. 4.19 Why do half-tone images sometimes appear enlarged? -------------------------------------------------------- All of the magic in half-tone faxing occurs during imaging when a pre-determined dot-pattern is substituted for small segments of the original image resulting in the simulation of multiple shades of gray. Because the sender is totally responsible for generating the image, the image data is the same for all receivers. Even so, some receivers do a better job than others at imaging that data. The most frequent fax imaging problem is with on-screen display where the resolution of the display limits the ability to reproduce all of the original detail. In theory, this problem is eliminated by printing the image using a device (a 400 dpi printer for example) which is capable of displaying the image at or above it's original resolution. The NeXT FaxReader scales received faxes slightly before imaging them for printers and other high resolution devices. If you compare a fax imaged and printed by the FaxReader with one you receive on your fax machine, you will see that the FaxReader image is slightly larger than the original. Even though the data needed to produce an image that is as clear as the one you see on your fax machine is available, this scaling causes the dots in the image to "smear" slightly making them appear somewhat darker than in the original. There is no known work-around for this problem. 4.20 Will NXFax run under Openstep 4.1? ---------------------------------------- With the exception of the following, NXFax works well with Openstep 4.1. The NXFax Installer appears to have two problems under Openstep 4.1: (1) In the Permissions panel, any attempt to add a user to the right-hand panel, moves all users. Likewise, any attempt to change a user's permissions in the right-hand panel changes permissions for all. (2) When exporting a remote fax device to a domain with a password which differs from the root password on the domain server, the Netinfo entries can't be written. To get around these problems, press the cancel button on the NXFax Installer and configure NXFax using NeXT's PrintManager application. Once installed, NXFax appears to work properly under Openstep 4.1, although it is important that both the SerialPort and TTY PortServer packages be installed and configured properly beforehand. Without these, the serial ports don't work, so NXFax will also fail*. The correct packages to install are: (a) Serial Port (v4.00) (b) TTY Port Server (v4.00) * if these drivers are not installed, any attempt to tip the modem fails with a message: /dev/cufa: No such device link down 4.21 Will NXFax support more than two fax modems on a single system? --------------------------------------------------------------------- NXFax will support more than two serial devices on a system as long as the hardware can handle it. The two device limitation for NXFax is primarily for licensing purposes; in essence, it prevents someone from purchasing a single NXFax license to control a large number of fax devices. To date, the biggest stumbling block to a multi-port fax solution has been that the performance of the NeXT serial drivers has been poor when more than two serial devices are attached to a single machine. This situation is changing. With the advent of the new ISASerialPort and PortServer drivers from NeXT, it seems likely that in the near future the number of devices that can reasonably be controlled on a NEXTSTEP/Intel system will increase. It isn't clear how many devices you'll be able to support, but four or more should not be out of the question on a Pentium system with high speed serial devices. If you want to serve even more modems, a terminal server is probably the only answer. Because of the relatively low demand for this service, NXFax has never been modified to use this option and customization of the NXFax driver would be required. Unfortunately, even if one of the above solutions is in place, there is another area of concern. At present, NXFax relies on NEXTSTEP's FaxDaemon to queue documents. The FaxDaemon is "dumb" when it comes to evaluating modem usage. In other words, the sender is asked to select which machine/modem will be used to send the fax. It would be better to have a smart queuing agent which knows the size of each fax queue and directs the fax to whatever modem has the shortest wait, but I can assure you this is a big job since we would have to replace NeXT's entire queuing mechanism to implement it. 4.22 Will NXFax work with ZyXEL Elite and Omni modems? ------------------------------------------------------- NXFax has been tested with both the Omni 288S and the Elite 2864 modem. You must have ROM version 1.09 or later for NXFax to work with the Elite or the Omni. ZyXEL's DTE speed register settings for both the Omni 288S and Elite 2864 modems are currently different from the settings for the 1496 series. If you are having difficulty receiving faxes, it may be because one of the modem registers is not set properly. The solution depends on what ROM version you have. For Omni and Elite ROM version 1.14 and higher: If you have recently upgraded your Zyxel Elite 2864 or Omni 288S modems to ROM version 1.14 or higher, you will discover that incoming calls are no longer answered. It is not clear yet what changed between version 1.13 and 1.14, but you can resolve this problem by doing the following: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite AuxATCommand "ATS18=0" In order for the dwrite to take effect, you must restart the fax driver from a terminal window by issuing the following command: /usr/lib/NextPrinter/exec_faxes Note that with ROM version 1.14 or higher it does not matter whether you have set the S62 register or not so long as S18=0. For Omni and Elite ROM versions 1.09, 1.10, 1.11, 1.12 and 1.13: ZyXEL has added a setting that will ensure compatible speed settings. This setting is not a factory default setting so you may need to set the S62 register. Use tip to connect and send commands to your modem. To do this - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - type the following command and then press Enter. tip cua9600 (If your modem is plugged into port B type cub9600.) You should see a ªconnectedº message. Then type: at and press Enter. If the modem responds with ªOKº you have a good connection and you can now type AT commands. Type the following command to set the S62 register: ats62.0=1 To save the changes type: at&w Exit tip by typing ~. (the tilde key followed by a period). If this has no effect, simply close the terminal window and click the Close Anyway button on the Close panel. 5 Reference Information ======================== 5.1 Distinctive Ring service ----------------------------- The most reliable way to use a single telephone line to receive voice calls and also fax and data calls is with Distinctive Ring. Distinctive ring is a service (sometimes referred to by other names such as "Ident-A-Ring", "Teen Service", or "Subscriber Identified Number Assignment") provided by many phone companies that allows you to have two or more incoming phone numbers on a single physical phone line. Each number has a different type of ring so you can tell which number a caller dialed. You can use one number for voice calls and another for both fax and data calls. If your modem has a distinctive ring detection feature (all ZyXEL modems have it), you can tell the modem which type of ring to answer and which type to ignore. This will ensure that your voice calls are directed to a handset or answering machine and that your fax and data calls are answered by your modem. You tell your modem which type of ring to answer by using the Distinctive Ring Selector on the NXFaxMonitor Preferences panel. Note that a number of manufacturers produce a "line manager" switch which attempts to distinguish incoming fax calls from voice calls. These devices will generally "work" with NXFax insofar as the device itself works. Unfortunately, the detection methods employed by these switches is not always reliable. One common problem occurs when the ring signal sent by the switch to the modem is not recognized because the signal differs from the one generated by the local telephone company. As a general rule, we do not recommend using these devices. 5.2 getty process ------------------ It is very important that any getty processes currently using the same serial port as NXFax be turned off. They are off by default, but if you or someone else turned one on in the past, you may experience problems with incoming calls. NXFax knows how to differentiate between incoming fax and data calls automatically and can do so without the aid of an entry in ttys. If you previously relied on a ttys entry to handle incoming data calls, NXFax will now handle them instead. To find out if a getty process has been set to run, examine the file /etc/ttys. You should see a series of entries that look similar to: ttydfa "/usr/etc/getty D9600" unknown off If the final parameter is set to *on: instead of *off:, there is probably a getty running on the device listed in the first parameter. If you want NXFax to control a modem connected to that device, set the value to *off: and either restart your computer or issue the following command from a terminal window: kill -HUP 1 To determine if a getty is actually running (or to verify that one you just killed is really gone) issue the following command from a , terminal window: ps -aux | grep getty If this command prints out just one line ending in *grep getty: there is no getty running. If other lines are printed that end in something similar to *ttydfa (getty): a getty is running and you should follow the instructions above to disable it. 5.3 Improperly connected modem ------------------------------- An improperly connected modem can cause a variety of problems ranging from not being able to communicate with the modem at all to only being able to send or receive, but not both. - Make sure your modem is plugged into a power source and turned on. - Make sure that the phone line from the wall is plugged into the LINE jack on the back of the modem. The PHONE jack is reserved for a telephone. - If you are installing NXFax on a NeXT computer (Motorola 68040 processor) and are able to connect to your modem with a communication program (such as tip or kermit) but find that NXFax hangs when starting or that the quality of received faxes is very poor, the problem could very well be the cable. You must use a NeXT '040 Hardware Handshake cable on Motorola 68040 systems. While other cables may work fine for some data applications, the correct cable is absolutely necessary for faxing. Another cable, such as a Macintosh cable, will not work, even if it is a "hardware handshaking" cable. The NeXT cable is unique. Note: Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". 5.4 Installing PCMCIA modems ----------------------------- Thanks to a series of new NeXT drivers, NEXTSTEP support of PCMCIA modem cards is beginning to look promising. Because the drivers mentioned below are currently available only for Intel systems, this information applies only to Intel hardware. Note that the following summary briefly describes our experience with the installation of PCMCIA modem cards on a NEXTSTEP Intel system. For more information on installing and configuring PCMCIA modem cards, refer to the documentation provided with the NeXT drivers, or contact NeXT Computer directly. In our limited experience with the current generation of PCMCIA modem cards and NeXT drivers, installation of these cards is often time consuming and sometimes difficult. Installation and proper configuration require use of the NeXT Configure application. Addresses and interrupts must not conflict with those of existing devices. It is not always easy to tell what the correct settings for these cards should be and, in one case, we had to reset the interrupt and drive access order using a DOS based application before the card would work properly. The following drivers are necessary before PCMCIA modem cards can be configured properly: NeXT ISASerialPort driver (v 3.3 or higher) NeXT PortServer driver (v 3.3 or higher) NeXT PCMCIA bus driver (v 3.1 or higher) NeXT 82365 PCMCIA adapter (v 3.1 or higher) The latest versions of these drivers can be obtained at the NeXT ftp site (ftp.next.com). When installing and configuring these drivers, follow the instructions included with them. If you experience problems with the installation or configuration of PCMCIA modem cards, refer to the documentation provided with the drivers, or contact NeXT Computer directly. Once you have successfully installed a PCMCIA modem card, you should be able to communicate with the card via a standard communications program (ie. tip, Kermit, TipTop, etc). At this point, NXFax can be expected to work as long as it is set to use the correct device. If you cannot use a standard communications program to talk to your PCMCIA modem, chances are that it has not been installed properly; review the configuration steps and try again. Note that NeXT's PCMCIA drivers do not support "hot swaps" and, if our experience is any guide, you should be prepared to have your machine freeze if you remove a PCMCIA card at any time other than during a reboot. The good news is that, once you can connect to a PCMCIA modem card with a standard communications program (ie. tip, Kermit, TipTop, etc), NXFax can generally be expected to work as long as it is set to use the correct device. Caveats: Many PCMCIA modem cards support only Class 1 faxing. NXFax does not provide support for Class 1 fax. If your PCMCIA modem card works for outgoing faxes, but not for incoming, try setting the NXFax MaxDTERate to 19200 bits per seconds. See the NXFax on-line help for more information on the MaxDTERate. If your PCMCIA modem card is configured to use a device other than serial A or serial B, you must use the NXFaxInstaller to configure your fax modem since the NeXT PrintManager currently will not handle more than two devices. The following may also be helpful: Section 4.16 - "What PCMCIA modems work with NXFax?" 5.5 Multiple fax drivers defined for a single modem ---------------------------------------------------- It is very important that only one fax modem driver (e.g. NXFax) be defined for each physical modem. If you are having difficulty getting NXFax to work properly with your modem, check for extra definitions. This often happens when people try to install NXFax again to resolve a problem, but they use a different name for the modem when they install the second time. To check for multiple modem definitions: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Examine the list. There should be only one modem listed for each modem that is physically connected to your computer unless you are on a network and have set your modem Public. Public modems will have two entries, one local and one remote. If you see an extra entry, remove it. To learn how to do this, turn to the NXFax Advanced Topics section of the NXFax on-line Help and read the topic Removing NXFax. 5.6 NeXT ISASerialPort Driver ------------------------------ NeXT recently released three new Intel drivers (ISASerialPort (v3.33), PortServer (v3.33), and SerialPointingDevice - all available by ftp from ftp.next.com) which are expected to improve serial and tty performance as well as make it easier to install multiple instances of the serial driver. The new serial driver is more efficient than the one shipped with earlier versions of NEXTSTEP and the expectation is that it will place a lighter load on the system. Once you have installed these packages, explicit instructions for configuring the ISASerialPort, PortServer, and SerialPointingDevice drivers will appear in NeXT's Configure.app Help panel. Note that initial releases of these drivers did not work properly with NXFax 1.04.1. However, it appears that the existing conflicts have been resolved with version 3.33 of the PortServer and ISASerialPort drivers. It is not known whether NeXT plans to port these drivers to other architectures including HP and Sparc. It is hoped that this will help to resolve the poor performance of the serial drivers that were shipped with those platforms. 5.7 NXFax documentation ------------------------ All of the NXFax documentation is online. You can access it from either the NXFaxMonitor or the NXFax Installer apps. This on-line Help combined with your NeXT User's Guide should provide you with everything you need to send and receive faxes using NXFax under NEXTSTEP. 5.8 NXFax Release Notes ------------------------ NXFax 1.04 Release notes These releases notes describe some of the features, changes and bug fixes that are new to version 1.04 of NXFax. Minor items are not included in this list. New Features * NXFax now runs under NEXTSTEP for both Motorola and Intel computers. * NXFax now works with more brands of modems. * Support for Caller ID now works for certain modems. * You can now use NXFaxMonitor to monitor and set individual preferences for each modem when more than one modem is controlled by NXFax. NXFax messages are also logged separately for each modem. * A number of new dwrites have been added to help you fine tune NXFax to your needs by changing the defaults database. Changes * A new password scheme is being used. We regret that the new passwords are longer, but they contain useful information that will help us serve you better if you need technical support. * If you have been depending on dwrites to set NXFax preferences, you should remove the old ones that refer to *NXFax: and change them to use your modem's name instead. This change was made to allow you to specify defaults for more than one modem. * Older versions of NXFax logged information to the file /usr/adm/nxfax/nxfaxlog, but version 1.04 logs to the file /usr/adm/nxfax/modemlog where modem is the name of your fax modem. If you no longer need the information in nxfaxlog, you can remove this file. * NXFaxInstaller provides more information during installation and has been broken down into smaller windows which can be displayed in their entirety on laptops and low resolution displays. You can also use the installer to modify configuration options without reinstalling NXFax. * The Host search function of NXFaxMonitor has been improved. It is faster and SLIP connections will only be polled once after each launch unless a modem is being monitored across the connection. * The WaitForDialTone NO dwrite will now set the modem to X3 instead of X1 as in previous versions. This will insure that busy signals will still be detected even when dial tone detection is disabled. Bugs Fixed * Incoming calls should now be answered on the first ring when NXFax is configured to do so. Version 1.03 would frequently miss the first ring. * NXFaxInstaller allows you to select an exported printer for auto-printing. * NXFaxInstaller remembers paper size between launches. * You can now use the NXFaxInstaller to specify a hard-mounted file system for fax logging. Prior versions would always revert to the root file system no matter which file system was chosen. * Dialing out with a phone connected to a ZyXEL modem then using the data/voice switch to receive a fax should work with this version. * NXFax hangs up properly after an incoming SLIP connection. * Using NXFaxMonitor to disable both data and fax receive causes NXFax to stop monitoring action on the serial port. * NXFax now pays attention to the terminal type defined in /etc/ttys. * A problem reported where a panic would occur when using Kermit has been addressed. * Problems installing on a 3-tier or greater NetInfo domain have been resolved. Changes from NXFax 1.04 to 1.04.1: · Installer bug fixed which caused the Data and Fax buttons in the NXFax Preferences panel to be checked while Data/Fax Detection was not checked. ·€Added DTR drops when trying to reset the modem ·€Fixed bug with creating and checking lock files · Fixed timing problem with initializing Multi-Tech modems 5.9 NXFaxMonitor Call Enable Buttons Not Checked-off ----------------------------------------------------- If you have just installed NXFax and are having problems sending or receiving faxes, check that the call enabling buttons on the NXFaxMonitor's Preferences panel are set properly. There was a bug in the NXFaxInstaller which caused some installations to end up with the Fax and Data buttons checked, but not the Data/Fax Detection button. This is an "impossible" situation that can prevent NXFax from operating properly. To see if you have been affected by this problem, look at the Enable section of the panel to see if all three check-box buttons (Fax, Data, and Data/Fax Detection) are checked. If all three are not checked, set them all to checked and then do the following: -- Quit NXFax Monitor. -- Restart NXFax. To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. -- Launch NXFaxMonitor again and make sure the buttons are still checked. The following may also be helpful: Section 3.2.15 - "NXFaxMonitor Preferences panel buttons are disabled" 5.10 Opening the console ------------------------- To open the console: - Choose Tools from the Workspace menu. - Choose Console from the Tools menu. If there are no messages in the console, look in NXFax log file. This file is named /private/adm/nxfax/log. Note that you must be logged in as root to read this file. 5.11 Poor quality telephone lines ---------------------------------- If your received faxes frequently contain horizontal streaks or if you are having difficulty making or maintaining connections, there may be noise on your telephone line or, in some cases, other telephone equipment which interferes with the transmission. When testing for interference, isolate your fax modem from any other device that might generate line noise. Remove telephones, voice/fax switches, answering machines, and any other devices which share the line, then try receiving faxes again. If streaks continue to appear in your faxes, notify your telephone company that you are experiencing problems with fax transmissions and ask them to check the quality of the line. If the line is free from noise and you continue to have problems, you may be experiencing a hardware problem with the modem. 5.12 Resetting a modem's factory defaults ------------------------------------------ Some faxing and communications problems start occurring when a modem has gotten into an abnormal state. This can occur due to power fluctuations, or by improperly made changes to modem settings by a user or by an errant communications program. Listed below are some ways you might correct the situation. - Sometimes all that is needed to cure the problem is to turn the modem off and then on again. - A more certain method is to use a communications program to connect to your modem and then issue the modem command "at&f&w". This will reset the modem to its factory defaults and save those settings. To learn about sending commands to a modem, see the Modem Hardware section of the NXFax on-line Help and read the topic Issuing Commands to a Modem. You can use a communications program such as tip to issue modem commands. Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". - Check your modem's owner's guide for more information on how to reset the modem. The procedure for resetting ZyXEL and Telebit modems can be found in the Modem Hardware section of the NXFax on-line Help under the topic Hardware Reset. 5.13 Restarting NXFax ---------------------- To restart NXFax: - Launch the PrintManager app. It is located in the NextApps folder. - Choose Fax Modems from the menu. - Select the name of the fax modem you want to restart. - Click the Modify icon. - Click OK. - If running NXFaxMonitor, quit and re-launch it. You can also restart NXFax from a terminal window with the command /usr/lib/NextPrinter/exec_faxes. 5.14 Running faxcleanup manually --------------------------------- If faxcleanup should fail to execute for some reason, it will leave spoolfiles named in the following manner in /usr/lib/NeXTFaxes/: Jan_05_1995_12:59:32.001 Jan_05_1995_12:59:32.002 In this case you simply have to be sure that a matching .fax file exists. For this example, you can cd to the directory where the spoolfiles are located (you must have root permissions to do this) and issue the command: touch Jan_05_1995_12:59:32.fax where the file name you provide is the same as the spool file name minus the page extensions. Then you can give the command /usr/lib/NextPrinter/faxcleanup Jan_05_1995_12:59:32 where is the number of pages. This will decode the files and build the combined fax file, but will not remove the spool files. 5.15 Serial cable for Intel and HP computers --------------------------------------------- Intel and HP systems require a standard hardware-handshake modem cable like that used on IBM personal computers. 5.16 Serial cable for NeXT computers ------------------------------------- If you are installing NXFax on a NeXT computer (Motorola 68040 processor) and are able to connect to your modem with a communication program (such as tip or kermit) but find that NXFax hangs when starting or that the quality of received faxes is very poor, the problem could very well be the cable. You must use a NeXT '040 Hardware Handshake cable on Motorola 68040 systems. While other cables may work fine for some data applications, the correct cable is absolutely necessary for faxing. Another cable, such as a Macintosh cable, will not work, even if it is a "hardware handshaking" cable. The NeXT cable is unique. Note: Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". 5.17 Setting MaxDTERate ------------------------ Problems caused by slow hardware devices or by the inability of the serial driver to operate at high speeds can often be eliminated by lowering the DTE rate that NXFax uses. The DTE rate is the communications speed in bits per second (bps) between the computer and the modem (as opposed to the speed between two modems across a phone line). You might try lowering this setting to 19200. The default DTE rate for NXFax is 38400, but you can change it by modifying the MaxDTERate value in the defaults database. To set the DTE rate: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite MaxDTERate 19200 /usr/lib/NextPrinter/exec_faxes IMPORTANT: If you change the DTE rate, you must also make a corresponding change at the end of your NXFax /etc/gettytab file to match the new speed. For information about the gettytab file see the Data Communications section of the NXFax on-line Help and read the topic /etc/gettytab file. 5.18 Setting ResetDelay ------------------------ NXFax monitors the serial device when it is in use by another program. When the serial device is released, NXFax re-initializes the modem to insure that it can receive incoming calls. During this initialization, the device is locked by NXFax for perhaps 10 to 20 seconds, after which it is unlocked and made available to any program that wants to use it. The time from when the serial device is released until NXFax locks the device to initialize the modem is the NXFax "reset delay". The default reset delay is two seconds, but you can change it by modifying the ResetDelay value in the defaults database. To set the reset delay: - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - su to root (unless you are already logged in as root) - type the following commands, pressing Enter after each. Note: use the name of your modem for dwrite ResetDelay 5 /usr/lib/NextPrinter/exec_faxes The fastest reset occurs when ResetDelay is set to 0; however, some programs such as Kermit and Taylor UUCP may experience serious problems if NXFax attempts to access the serial port too soon after the program has released the port. Other programs such as PPP may wish to access the serial device again shortly after unlocking it and may not want NXFax take over and start initializing the modem so soon. If you are experiencing a problem with the default two second delay, experiment with increasing the delay starting with a value of 3 until the problem is eliminated. 5.19 Setting S62 register for ZyXEL Omni and Elite modems ---------------------------------------------------------- For Omni and Elite ROM versions 1.09, 1.10, 1.11, 1.12 and 1.13: ZyXEL has added a setting that will ensure compatible speed settings. This setting is not a factory default setting so you may need to set the S62 register. Use tip to connect and send commands to your modem. To do this - Launch the Terminal app. It is located in /NextApps. - Choose Shell from the Terminal menu. - Choose New from the Shell menu. - type the following command and then press Enter. tip cua9600 (If your modem is plugged into port B type cub9600.) You should see a ªconnectedº message. Then type: at and press Enter. If the modem responds with ªOKº you have a good connection and you can now type AT commands. Type the following command to set the S62 register: ats62.0=1 To save the changes type: at&w Exit tip by typing ~. (the tilde key followed by a period). If this has no effect, simply close the terminal window and click the Close Anyway button on the Close panel. 5.20 Using modems that do not support Adaptive Answering --------------------------------------------------------- When using NXFax with a modem that does not support Adaptive Answering, you must use the NXFax Monitor Preferences panel to turn off Data/Fax Detection. Doing so will turn off the Data button leaving only the Fax button checked. With only Fax checked, you will only be able to receive fax calls. If you need to receive a data call, you must turn off the Fax button and turn on the Data button. IMPORTANT: When Fax is the only button checked, some modems will treat an outgoing data call as a fax call. In this situation, your attempt to make an outgoing data connection will fail. You can avoid this problem by issuing an AT+FCLASS=0 command to the modem to put it into data mode before placing a data call. If you are using UUCP or SLIP you can put this command in your chat script. 5.21 Using tip with NXFax -------------------------- Tip is a simple communications program that is included with NEXTSTEP. Information on how to use tip can be found in the NXFax on-line Help. Turn to the Data Communications section and read the topic "tip". Some additional information about using tip with NXFax follows. In order to use tip or other serial communications programs on a modem/port controlled by NXFax you must use the "cu" device and not the "tty" device for outgoing calls. With tip you can use the built-in definition for port A: tip cua9600 to connect to your modem at 9600 bps. You would substitute "cub9600" for a modem on port B. See the man pages for further options and how to make your own /etc/remote entries. You can tell tip to connect at different speeds. You do this by appending a dash followed by the speed you prefer. For example: tip cua9600 -19200 (connects at 19,200 bps) tip cua9600 -38400 (connects at 38,400 bps) When you connect to the modem with tip and type an "AT" command you should see something similar to the following in your Workspace Console: %> bandw_fax: activity on port Mon Oct 24 12:12:57 1994 %> bandw_fax: port in use Mon Oct 24 12:12:57 1994 And when you finish with tip you will see something like: %> bandw_fax: port freed Mon Oct 24 12:13:10 1994 followed by the modem being reset. [End of document]