[comp.sys.ibm.pc] Answering modems should need no commands! // 2400 answer is fragile

gnu@hoptoad.uucp (John Gilmore) (05/15/87)

In article <703@unccvax.UUCP>, cbenda@unccvax.UUCP (carl m benda) writes:
> a Hayes modem to be dialed from a remote pc.  The problem was that after
> connection had been established, kermit (on the server side) neglected to
> send the modem (on the server side) the proper connection established ack- 
> nowledgement signal, and so the modem (on the server side) dropped the call.
> 
> What you should do is try and figure out what your Hayes 2400 wants to receive
> from YOUR machine, after it answers the phone.

If a modem needs to receive something from the host to answer a call, it
is broken.  Modems have been used to simply receive calls since they have
existed.  The earliest modems would pulse Ring Indicate on the RS232 and
would expect you to come back with DTR if you wanted the call answered.
Nowadays they just answer when it rings, if DTR is on (maybe they did back
then too).  But the whole idea of sending commands down the serial line
is a very new one -- in fact, Bizcomp and Hayes and USR are fighting over
whether it is patentable or not.  My 4 USR 2400's answer the phone just fine
without my having to send 'em any commands.

Personally I've had a lot of trouble getting 2400 baud dialins to work
with my Sun Unix 3.3 machine.  My system defaults to assuming that you
have called in at 1200 baud, so if you call in at 2400 you have to send
a BREAK.  (I've heard that there is a getty at Berkeley, or in 4.3,
that listens to the Hayes/USR response code which is sent before they
raise carrier detect, that says "CONNECT 1200" or "CONNECT 2400" or the
numeric equivalent, and sets the baud rate appropriately.  I sure wish
I could get a copy of that!)  My problems are that after the BREAK, if
you are lucky you get a "hoptoad login: " prompt, but then if you just
hit return, it switches baud rates (to 300, then 1200, then 2400
again).  On the other hand, if you type alphabetics (e.g. "foo"), it
sticks at 2400 baud and prompts you for a password.  I have no idea why
hitting return doesn't work, but Sun was uninterested in (or unable to)
find out why, and I don't have sources.  I don't think it's a
Sun-specific problem, since when gatech switched to 2400 baud modems I
had the same trouble with them (on a Vax).  Maybe the modems are
particularly sensitive to the CR and don't send it out with proper
framing if it's the first thing after a BREAK.  (Unix detects that
BREAK was hit by assuming that any framing error is a BREAK -- this
should also be fixed, on machines with SCC's which know a break from a
framing error.)  I don't know, but it's spooky and if somebody from
Netland can explain I'll be grateful.
-- 
Copyright 1987 John Gilmore; you may redistribute only if your recipients may.
(This is an effort to bend Stargate to work with Usenet, not against it.)
{sun,ptsfa,lll-crg,ihnp4,ucbvax}!hoptoad!gnu	       gnu@ingres.berkeley.edu