![]() |
Greetings: This is a suggested update to Mr. Bailey's config file as posted to this list September 26, 1999. The suggested change is to comment in these 2 lines: ModemHardFlowCmd AT&K3 ModemSoftFlowCmd AT&K4 Now for the story as to how I arrived at this suggestion ... I have been working with Multitech MT5600ZDX modems, and initially used the config file posted to this list by Mark J. Bailey on Sept. 26 with the exception that the following 3 lines were not included: IXOMaxUnknown: 10 IXOIDProbe: 6 IXOLoginTimeout 30 It is unclear how these lines came to be missing. I guess I edited a file instead of starting with Mr. Bailey's file. I have now commented in the 2 flow command lines as above. It appears that there was no flow control implemented using Mr. Bailey's suggested file. I noticed during a test yesterday that a large file (51 pages) was failing to complete. I further noticed in the communications log file that there was always a bunch of ^Q^S characters returned from the modem after the "SEND end page" entries. A typical excerpt follows: Oct 27 10:24:24.38: [26145]: SEND end page Oct 27 10:24:38.44: [26145]: --> [676:^Q^S^Q^S^Q^S^Q^S^Q^S .... and so on for 676 characters in total] Oct 27 10:24:38.44: [26145]: --> [2:OK] Knowing that these "^Q^S" characters looked suspiciously like XON/XOFF characters, and knowing that my intention was to use hardware flow control, I reviewed the config file and noticed that these flow command lines were commented out in the config file. I then consulted the config man page to see what the default values were and found them to be NULL strings. This is very bad, no flow control! So the lines were commented in. After getting some flow control, the document sent fine and the ^Q^S character strings are no longer present: Oct 27 14:02:06.96: [31230]: SEND end page Oct 27 14:02:21.36: [31230]: --> [2:OK] Any comments or suggestions most welcome. Regards, Jonathan Mau Complete config file follows: # $Id: class2,v 1.23 1996/06/24 02:58:32 sam Rel $ # # HylaFAX Facsimile Software # # Copyright (c) 1990-1996 Sam Leffler # Copyright (c) 1991-1996 Silicon Graphics, Inc. # HylaFAX is a trademark of Silicon Graphics, Inc. # # Permission to use, copy, modify, distribute, and sell this software and # its documentation for any purpose is hereby granted without fee, provided # that (i) the above copyright notices and this permission notice appear in # all copies of the software and related documentation, and (ii) the names of # Sam Leffler and Silicon Graphics may not be used in any advertising or # publicity relating to the software without the specific, prior written # permission of Sam Leffler and Silicon Graphics. # # THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, # EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY # WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. # # IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR # ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, # OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, # WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF # LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE # OF THIS SOFTWARE. # # # Generic Class 2 modem configuration. # # EDIT THIS CONFIGURATION TO REFLECT YOUR SETUP # CountryCode: 1 AreaCode: 613 FAXNumber: +1.613.555.5555 LongDistancePrefix: 1 InternationalPrefix: 011 DialStringRules: etc/dialrules ServerTracing: 1 SessionTracing: 11 RecvFileMode: 0600 LogFileMode: 0600 DeviceMode: 0600 RingsBeforeAnswer: 0 SpeakerVolume: high GettyArgs: "-h %l %s" LocalIdentifier: "(613) 555-5555" LogFacility: local0 TagLineFont: etc/lutRS18.pcf TagLineFormat: "From %%l|%c|Page %%p of %%t" MaxRecvPages: 25 # # # Modem-related stuff: should reflect modem command interface # and hardware connection/cabling (e.g. flow control). # ModemType: Class2 # use this to supply a hint #ModemRate: 19200 # max rate for DCE-DTE communication ModemRate: 38400 # max rate for DCE-DTE communication #ModemFlowControl: xonxoff # XON/XOFF flow control assumed ModemFlowControl: rtscts # XON/XOFF flow control assumed #ModemSetupDTRCmd: AT&D2 # setup so DTR drop resets modem #ModemSetupDCDCmd: AT&C1 # setup so DCD reflects carrier (or not) # # We normally append the "@" symbol to the dial string so that # the modem will wait 5 seconds before attempting to connect # and return result codes that distinguish between no carrier # and no answer. This makes it possible to avoid problems with # repeatedly dialing a number that doesn't have a fax machine # (kudos to Stuart Lynne for this trick.) # # NB: If you need to prefix phone numbers to get through a PBX, # put it in the ModemDialCmd; e.g. "DT9%s@". # #ModemDialCmd: ATDT%s@ # T for tone dialing, @ for silence ModemDialCmd: ATDT%s # T for tone dialing, @ for silence # # Other possible configuration stuff. The default strings are # shown below. Only those that are different from the defaults # need to be included in the configuration file. # #ModemResetCmds: "" # stuff to do when modem is reset #ModemAnswerCmd: ATA # use this to answer phone #ModemNoFlowCmd: AT&K # disable flow control cmd ModemHardFlowCmd: AT&K3 # hardware flow control cmd ModemSoftFlowCmd: AT&K4 # software flow control cmd #ModemNoAutoAnswerCmd: ATS0=0 # disable auto-answer # # Set modem speaker volume commands: OFF QUIET LOW MEDIUM HIGH. # Note that we both turn the speaker on/off and set volume. # #ModemSetVolumeCmd: "ATM0 ATL0M1 ATL1M1 ATL2M1 ATL3M1" #ModemEchoOffCmd: ATE0 # disable command echo #ModemVerboseResultsCmd: ATV1 # enable verbose command results #ModemResultCodesCmd: ATQ0 # enable result codes #ModemOnHookCmd: ATH0 # place phone on hook (hangup) #ModemSoftResetCmd: ATZ # do soft reset of modem #ModemWaitTimeCmd: ATS7=60 # wait 60 seconds for carrier #ModemCommaPauseTimeCmd: ATS8=2 # comma pause time is 2 seconds #ModemRecvFillOrder: LSB2MSB # bit order of received facsimile ModemRecvFillOrder: MSB2LSB # bit order of received facsimile #ModemSendFillOrder: LSB2MSB # bit order modem expects for transmit ModemSendFillOrder: LSB2MSB # bit order modem expects for transmit # ModemSetupAACmd: AT+FAA=1+FCLASS=0 # CLocalAsRoot: yes # ModemWaitForconnect: yes # # Configuration parameters for Class 2 modems. # Class2Cmd: AT+FCLASS=2 # command to enter class 2 Class2BORCmd: AT+FBOR=0 # bit order for phase B/C/D (direct) Class2RELCmd: AT+FREL=1 # byte-align EOL codes on recv Class2CQCmd: "" # commands to enable copy quality proc. Class2AbortCmd: AT+FK # abort session command Class2CQQueryCmd: AT+FCQ=? # query for copy quality capabilities Class2DCCQueryCmd: AT+FDCC=? # query for modem capabilities Class2TBCCmd: AT+FTBC=0 # setup stream mode Class2CRCmd: AT+FCR=1 # enable capability to receive Class2PHCTOCmd: AT+FPHCTO=30 # set phase C timeout parameter Class2BUGCmd: AT+FBUG=1 # enable HDLC frame tracing Class2LIDCmd: AT+FLID # set local identifier command Class2DCCCmd: AT+FDCC # set modem capabilities command Class2DISCmd: AT+FDIS # set session parameters command Class2DDISCmd: "" # disable pre-dial DIS command hack Class2CIGCmd: AT+FCIG # set polling identifier command Class2PTSCmd: AT+FPTS # set post-page status command Class2SPLCmd: AT+FSPL # set polling indicator command # # If Class2RecvDataTrigger is not set, then it is set to DC1 # #Class2RecvDataTrigger: "" # character sent to modem to start recv Class2RecvDataTrigger: "\022" # character sent to modem to start recv Class2XmitWaitForXON: yes # if true, wait for XON before send