mgetty and Usr modems

Devin Redlich (devin@pctc.com)
Mon, 8 Jun 1998 17:40:42 +0200


At 12:40 PM 6/6/98 +0200, you wrote:
>USR Couriers are pretty good modems (if yours doesn't see the RING,
>it's probably defective, but one would need to see a log file at -x6
>to be sure).
>
>Avoid USR Sportsters.

My Courier has been working like a champ for faxing for the last few
months, so I can vouch for the above.  However, if you're only doing data
(no faxing), and you're on a tight budget, the Sportsters work fine, too.
I've had 5 Sportsters in moderately heavy use on my mini-isp for over a
year now with no problems to speak of.  (They have been used both with
mgetty and portslave for data only).  Note that they are a little snarky
about cooling, so you can't just stack them in a big heap with no cooling
mechanism.

Now that I've said the Courier works great for faxing, here's my one beef
about it.  I just noticed last week that if a user tries to send a fax to a
phone number that doesn't exist, it doesn't behave as expected.  If I dial
a non-existant phone number (with a regular phone), I'll get a recorded
message from the phone company telling me the number I've dialed doesn't
exist.  However, if I try to fax to that non-existant number, for some
reason the modem reports the number is busy.

Below is the log file from such a session.

--
06/05 15:49:33  sendfax: experimental test release 1.1.12-Jan27
06/05 15:49:33   sendfax.c compiled at Mar 25 1998, 14:33:29
06/05 15:49:33  sending fax to 6818144
06/05 15:49:33  checking f1.g3
06/05 15:49:33   makelock(ttyS1) called
06/05 15:49:33   do_makelock: lock='/var/lock/LCK..ttyS1'
06/05 15:49:33   lock made
06/05 15:49:33   tss: set speed to 38400 (017)
06/05 15:49:33   tio_set_flow_control( HARD )
06/05 15:49:33 yS1   fax_open_device succeeded, ttyS1 -> 4
06/05 15:49:33 yS1   reading specific data for port 'ttyS1'
06/05 15:49:33 yS1   reading /usr/local/etc/mgetty+sendfax/sendfax.config...
06/05 15:49:33 yS1   conf lib: read: 'verbose y'
06/05 15:49:33 yS1   conf lib: read: 'debug 9'
06/05 15:49:33 yS1   conf lib: read: 'fax-devices ttyS1'
06/05 15:49:33 yS1   conf lib: read: 'fax-id 6046898144'
06/05 15:49:33 yS1   conf lib: read: 'dial-prefix ATDT'
06/05 15:49:33 yS1   conf lib: read: 'max-tries 3'
06/05 15:49:33 yS1   conf lib: read: 'max-tries-continue y'
06/05 15:49:33 yS1   conf lib: read: 'ignore-carrier true'
06/05 15:49:33 yS1   conf lib: read: 'port ttyS1'
06/05 15:49:33 yS1   section: port ttyS1, **found**
06/05 15:49:33 yS1   conf lib: read: 'modem-type c2.0'
06/05 15:49:33 yS1   conf lib: read: 'modem-init AT&F1H0S0=0'
06/05 15:49:33 yS1   key: 'fax-devices', type=1, flags=4, data=(ignored)
06/05 15:49:33 yS1   key: 'modem-init', type=1, flags=3, data=AT&F1H0S0=0
06/05 15:49:33 yS1   key: 'modem-handshake', type=1, flags=0, data=(empty)
06/05 15:49:33 yS1   key: 'modem-type', type=1, flags=3, data=c2.0
06/05 15:49:33 yS1   key: 'modem-quirks', type=0, flags=0, data=(empty)
06/05 15:49:33 yS1   key: 'max-tries', type=0, flags=3, data=3
06/05 15:49:33 yS1   key: 'max-tries-continue', type=3, flags=3, data=TRUE
06/05 15:49:33 yS1   key: 'speed', type=0, flags=1, data=38400
06/05 15:49:33 yS1   key: 'switchbd', type=0, flags=1, data=0
06/05 15:49:33 yS1   key: 'open-delay', type=0, flags=0, data=(empty)
06/05 15:49:33 yS1   key: 'ignore-carrier', type=3, flags=3, data=TRUE
06/05 15:49:33 yS1   key: 'dial-prefix', type=1, flags=3, data=ATDT
06/05 15:49:33 yS1   key: 'fax-id', type=1, flags=3, data=6046898144
06/05 15:49:33 yS1   key: 'poll-dir', type=1, flags=1, data=.
06/05 15:49:33 yS1   key: 'normal-res', type=3, flags=1, data=FALSE
06/05 15:49:33 yS1   key: 'debug', type=0, flags=3, data=9
06/05 15:49:33 yS1   key: 'verbose', type=3, flags=2, data=TRUE
06/05 15:49:33 yS1   key: '', type=3, flags=1, data=FALSE
06/05 15:49:33 yS1   key: 'page-header', type=1, flags=0, data=(empty)
06/05 15:49:33 yS1   key: '', type=3, flags=1, data=FALSE
06/05 15:49:33 yS1   key: '', type=3, flags=1, data=FALSE
06/05 15:49:33 yS1   key: '', type=1, flags=1, data=
06/05 15:49:33 yS1   tss: set speed to 38400 (017)
06/05 15:49:33 yS1  mdm_send: 'ATV1Q0'
06/05 15:49:33 yS1    got:ATV1Q0[0d]
06/05 15:49:33 yS1   mdm_command: string 'ATV1Q0'
06/05 15:49:33 yS1    got:[0d][0a]OK[0d]
06/05 15:49:33 yS1   mdm_command: string 'OK' -> OK
06/05 15:49:33 yS1  fax_send: 'AT&F1H0S0=0'
06/05 15:49:33 yS1  fax_wait_for(OK)
06/05 15:49:33 yS1    got:[0a]AT&F1H0S0=0[0d]
06/05 15:49:33 yS1   fax_wait_for: string 'AT&F1H0S0=0'
06/05 15:49:33 yS1    got:[0d][0a]OK[0d]
06/05 15:49:34 yS1   fax_wait_for: string 'OK'** found **
06/05 15:49:34 yS1  mdm_send: 'AT+FCLASS=2.0'
06/05 15:49:34 yS1    got:[0a]AT+FCLASS=2.0[0d]
06/05 15:49:34 yS1   mdm_command: string 'AT+FCLASS=2.0'
06/05 15:49:34 yS1    got:[0d][0a]OK[0d]
06/05 15:49:34 yS1   mdm_command: string 'OK' -> OK
06/05 15:49:34 yS1  mdm_send: 'AT+FLI="6046898144"'
06/05 15:49:34 yS1    got:[0a]AT+FLI="6046898144"[0d]
06/05 15:49:34 yS1   mdm_command: string 'AT+FLI="6046898144"'
06/05 15:49:34 yS1    got:[0d][0a]OK[0d]
06/05 15:49:34 yS1   mdm_command: string 'OK' -> OK
06/05 15:49:34 yS1  mdm_send: 'AT+FCC=1'
06/05 15:49:34 yS1    got:[0a]AT+FCC=1[0d]
06/05 15:49:34 yS1   mdm_command: string 'AT+FCC=1'
06/05 15:49:34 yS1    got:[0d][0a]OK[0d]
06/05 15:49:34 yS1   mdm_command: string 'OK' -> OK
06/05 15:49:34 yS1  mdm_send: 'AT+FBO=0'
06/05 15:49:34 yS1    got:[0a]AT+FBO=0[0d]
06/05 15:49:34 yS1   mdm_command: string 'AT+FBO=0'
06/05 15:49:34 yS1    got:[0d][0a]OK[0d]
06/05 15:49:34 yS1   mdm_command: string 'OK' -> OK
06/05 15:49:34 yS1  mdm_send: 'AT+FNR=1,1,1,0'
06/05 15:49:34 yS1    got:[0a]AT+FNR=1,1,1,0[0d]
06/05 15:49:34 yS1   mdm_command: string 'AT+FNR=1,1,1,0'
06/05 15:49:34 yS1    got:[0d][0a]OK[0d]
06/05 15:49:34 yS1   mdm_command: string 'OK' -> OK
06/05 15:49:34 yS1  mdm_send: 'AT+FLO=2'
06/05 15:49:34 yS1    got:[0a]AT+FLO=2[0d]
06/05 15:49:34 yS1   mdm_command: string 'AT+FLO=2'
06/05 15:49:34 yS1    got:[0d][0a]OK[0d]
06/05 15:49:34 yS1   mdm_command: string 'OK' -> OK
06/05 15:49:34 yS1  fax_send: 'ATDT6818144'
06/05 15:49:34 yS1  fax_wait_for(OK)
06/05 15:49:34 yS1    got:[0a]ATDT6818144[0d]
06/05 15:49:34 yS1   fax_wait_for: string 'ATDT6818144'
06/05 15:49:34 yS1    got:[0d][0a]RINGING[0d]
06/05 15:49:43 yS1   fax_wait_for: string 'RINGING'
06/05 15:49:43 yS1    got:[0a][0d][0a]BUSY[0d]
06/05 15:50:01 yS1   fax_wait_for: string 'BUSY'
06/05 15:50:01 yS1  ABORTING: line='BUSY'
06/05 15:50:01 ##### failed dialing, phone="6818144", +FHS:-2, dev=ttyS1,
time=27s, acct=""

06/05 15:50:02 yS1  fax_send: 'AT+FCLASS=0'
06/05 15:50:02 yS1   removing lock file




__
Devin Redlich
devin@pctc.com