|
|
1.1 root 1:
2:
3: modem Technical Information modem
4:
5:
6:
7:
8: The word _m_o_d_e_m is an abbreviation for ``modulation/demodulation
9: device''. With the COHERENT system, you can attach a modem to
10: your computer either to dial out for remote communication, to let
11: others dial into your COHERENT system, or both. With your modem,
12: too, you can use COHERENT's UUCP commands to exchange mail and
13: files with remote sites automatically, and to download news and
14: files from the USENET.
15:
16: This article gives a summary of how to connect your modem to your
17: computer and describe it to the COHERENT system. It also
18: discusses some problems that may crop up when you attempt to use
19: your modem.
20:
21: ***** Internal vs. External Modems *****
22:
23: You can use internal and external modems with COHERENT. An
24: internal modem is, however, more difficult to diagnose problems
25: because there are typically no status lights to indicate
26: operation.
27:
28: ***** Hooking up a Modem *****
29:
30: A modem must be hooked up to a serial port on your computer. To
31: plug your modem into the computer, simply take a normal serial-
32: port cable, one with an RS-232 plug of the appropriate gender at
33: each end, plug one end into your modem and the other into the
34: serial port you wish to use. The Lexicon article RRSS-223322
35: describes the wiring of the RS-232 plug in detail; but if you are
36: not skilled with a soldering iron, you are well advised simply to
37: purchase a cable from your local electronics store and be done
38: with it.
39:
40: ***** Serial Ports *****
41:
42: The COHERENT system supports up to four serial ports; the devices
43: for these are named /ddeevv/ccoomm11rr through /ddeevv/ccoomm44rr. If you are not
44: sure which port you have plugged your modem into, perform the
45: following test: First, turn on the modem. Then, type the
46: following command:
47:
48:
49: echo FOO >/dev/com1l
50:
51:
52: If the ``TX'' light on the modem blinks, then you know the modem
53: is plugged into CCOOMM11. If it does not, try the command again for
54: /ddeevv/ccoomm22ll, and so on through ccoomm44ll until you find the
55: appropriate port. If no command works, check the wiring on your
56: cable and make sure that the plugs are securely inserted.
57:
58: Once you have established which port your modem is plugged into,
59: links the device /ddeevv/mmooddeemm to it, using the following command:
60:
61:
62:
63:
64: COHERENT Lexicon Page 1
65:
66:
67:
68:
69: modem Technical Information modem
70:
71:
72:
73:
74: ln -f /dev/com?l /dev/modem
75:
76:
77: where ? gives the number of the port, 1 through 4.
78:
79: ***** Edit /etc/ttys *****
80:
81: The next step is to edit the file /eettcc/ttttyyss to tell COHERENT how
82: you want the port handled. You must know (1) whether you want
83: the port enabled or disabled; (2) the baud rate of the port (as
84: set by your modem); and (3) the name of the port (which you just
85: determined).
86:
87: If a port is enabled, remote users can log into the system,
88: either via a terminal directly plugged into the port or via a
89: modem. COHERENT sends a login prompt to every enabled port. The
90: COHERENT system also restricts permissions on all enabled serial
91: ports, so that only the superuser rroooott can read and write to the
92: port. This prevents other users who may be using the system from
93: accessing the serial port. If a port is disabled, you can dial
94: out or use a direct-connect UUCP connection via that disabled
95: port.
96:
97: To dial out on an enabled port, you must first use the command
98: ddiissaabbllee to disable the port. When you have finished dialing out,
99: run the command eennaabbllee to re-enable the port. Before you can use
100: these commands with a port, the port must first be described in
101: the file /eettcc/ttttyyss.
102:
103: See the Lexicon article on ttttyyss for details on how to edit this
104: file. Note that a modem is a remote device, and must be so
105: described in /eettcc/ttttyyss, or it will not work correctly.
106:
107: After you have made your changes, type the command
108:
109:
110: kill quit 1
111:
112:
113: to make COHERENT re-read /eettcc/ttttyyss and implement your changes.
114:
115: ***** Remote-Access Password *****
116:
117: If you intend to let people dial into your computer, you are well
118: advised to set the remote-access password. This will require
119: that people who dial in know a special password in addition to
120: whatever password their personal account may have. To set this
121: password, log in as the superuser rroooott; then enter the command
122:
123:
124:
125:
126:
127:
128:
129:
130: COHERENT Lexicon Page 2
131:
132:
133:
134:
135: modem Technical Information modem
136:
137:
138:
139: passwd remacc
140:
141:
142: This will walk you through setting a password for user rreemmaacccc,
143: which is the remote-access account.
144:
145: ***** Edit /etc/modemcap *****
146:
147: Next, you must check the file /eettcc/mmooddeemmccaapp and see if that file
148: holds a description that matches your modem. mmooddeemmccaapp is used by
149: a number of programs to control access to modems, and this file
150: comes with descriptions for many commonly used modems. You find,
151: however, that you must edit an existing entry to match your
152: modem's features exactly; for example, the existing entry may
153: assume that you have a Touch-Tone telephone whereas you actually
154: have a pulse telephone. The Lexicon entry on mmooddeemmccaapp will walk
155: you through this process. When you have completed editing this
156: entry, note it down, for you will need to insert it elsewhere.
157:
158: ***** Edit /usr/bin/modeminit *****
159:
160: Next, check the file /uussrr/bbiinn/mmooddeemmiinniitt. This program is read by
161: programs that manipulate the modem, to re-initialize it after
162: use. You must decide how you want the modem to be re-
163: initialized. Basically, if you wish to have people dial into
164: your system, you turn on the modem's auto-answer feature; and you
165: must turn off echoing and the printing of result codes. The
166: commands to use will vary from modem to modem; see the
167: documentation that comes with your modem for details. See below
168: for details on modifying this script.
169:
170: ***** Edit L-devices *****
171:
172: If you intend to use your modem with UUCP, you must insert an
173: entry for it into your the file /uussrr/lliibb/uuuuccpp/LL-ddeevviicceess. See the
174: Lexicon entry LL-ddeevviicceess for details.
175:
176: ***** Modem Maladies *****
177:
178: The rest of this article discusses problems that have arisen with
179: remote login via modem, as diagnosed by the technical support
180: staff of Mark Williams Company.
181:
182: Difficulty in logging in from a remote site via modem can be the
183: result of problems in one or more of the following: cabling;
184: enabling/disabling the port; flaws in the contents of file
185: /eettcc/ttttyyss; incorrect configuration of the modem; and setting the
186: port to an incorrect state. See Lexicon articles tteerrmmiinnaall and
187: UUUUCCPP for additional information. The following paragraphs
188: discuss the above-named items in detail.
189:
190: ***** RS-232 Cabling *****
191:
192: When attaching an external modem to your computer, it is
193: important to use a modem cable that supports ``full modem
194:
195:
196: COHERENT Lexicon Page 3
197:
198:
199:
200:
201: modem Technical Information modem
202:
203:
204:
205: control''. COHERENT relies on modem-control signals when
206: operating a modem for remote access purposes. When attaching a
207: terminal directly to a serial port, a ``null modem'' cable must
208: be used. When attaching a modem, a ``straight through'' cable
209: must be used. See Lexicon articles RRSS-223322 and tteerrmmiinnaall for
210: further details on cabling.
211:
212: ***** Enabled vs. Disabled Ports *****
213:
214: A serial port can be either enabled or disabled for remote
215: access. Enabling a port allows a user on a remote terminal or
216: modem to log into your COHERENT system. Disabling a port permits
217: a user to dial out or use a direct connect UUCP connection via
218: that disabled port.
219:
220: If a port is enabled for remote logins and you will use it to
221: call out, you must use the command ddiissaabbllee to disable the port
222: before you access the port. The commands uuuuccpp and mmaaiill
223: automatically disable and re-enable a port.
224:
225: The port name supplied to an eennaabbllee or ddiissaabbllee command must
226: _e_x_a_c_t_l_y match the last part of a line in the /eettcc/ttttyyss file (see
227: below). For example, for the command eennaabbllee ccoomm22pprr to work,
228: there must be an entry in the file /eettcc/ttttyyss which ends with
229: ccoomm22pprr.
230:
231: When a port is enabled, (1) the first character for the port in
232: file /eettcc/ttttyyss is set to a `1' (one), (2) the permissions for the
233: port are changed so that only the superuser rroooott can read and
234: write to the port, preventing other users on the system from
235: accessing the port while a remote session is in progress, and (c)
236: a login prompt is sent to the port.
237:
238: ***** /etc/ttys *****
239:
240: This file should have permissions of 644 (-rw-r--r--) and belong
241: to owner and group rroooott. Review the Lexicon entry for ttttyyss to
242: ensure that the format of your version of /eettcc/ttttyyss is correct.
243:
244: Leaving blanks at the end of a line in /eettcc/ttttyyss usually results
245: in error messages stating that a device could not be found.
246:
247: You do not need to edit the initial `0' or `1' in entries in
248: /eettcc/ttttyyss; this digit is updated by the commands eennaabbllee and
249: ddiissaabbllee. See the Lexicon entries for eennaabbllee and ddiissaabbllee for more
250: information.
251:
252: Another problem can arise when using a variable-speed modem and
253: specifying the baud rate as `3' in file /eettcc/ttttyyss. The `3'
254: setting represents a 2400-1200-300 baud variable-speed port. The
255: problem appears to be that while a modem defaults to 2400 baud,
256: COHERENT may actually be set at one of the other speeds. The
257: answer to this probem is to run the command mmooddeemmiinniitt.
258:
259:
260:
261:
262: COHERENT Lexicon Page 4
263:
264:
265:
266:
267: modem Technical Information modem
268:
269:
270:
271: ***** Constant Flickering *****
272:
273: Another problem is a constant flickering of send/receive LEDs and
274: an unexplained continual access of the hard drive. This occurs
275: when the port is enabled and the modem is set in echo mode:
276: COHERENT sends the login prompt to the modem, the modem echoes it
277: back to COHERENT, COHERENT then thinks the modem is trying to
278: talk to it and sends the password prompt, and so on _a_d _i_n_f_i_n_i_t_u_m.
279: To fix this problem, place the modem into no-echo mode, and turn
280: off the display of result codes. The following section discusses
281: this in more detail.
282:
283: ***** Modem Configuration *****
284:
285: A modem that fails to answer an incoming call, hangs up before
286: locking onto the remote carrier, becomes stuck in a loop echoing
287: characters sent to it from the computer, or fails to operate at
288: the expected baud rate probably is configured improperly. To
289: remedy this situation, send the appropriate control string to the
290: modem.
291:
292: We offer some guidelines here for modem settings. Be warned,
293: however, that modems from different manufacturers usually behave
294: differently, regardless of claims of Hayes compatibility, and
295: that you will need to check the manual for your particular modem.
296:
297: -> Echo should be OFF (usually by setting ``E0'').
298:
299: -> Result codes should be OFF (usually by setting ``Q1'').
300:
301: -> Modem status ``DCD'' should follow true carrier detect status,
302: rather than being always on (usually by setting ``&C1'').
303:
304: -> Auto answer should be ON (usually obtained by setting register
305: S0 to a nonzero value equal to the number of rings before
306: answer).
307:
308: -> The delay value for ``Wait for Carrier/Dial Tone'' (usually
309: register S7) should not be too short.
310:
311: The scripts below show typical initialization for ``Hayes-
312: compatible'' and Trailblazer modems. They are only examples;
313: your modem may need something different. Please note that the
314: commands sslleeeepp and ssttttyy are necessary in the first example so
315: that the command string will be sent to the modem at 2400 baud;
316: otherwise, the string is sent at the default port speed, which is
317: 9600 baud.
318:
319:
320: # initialize 2400-baud Hayes-compatible modem
321: disable com3r
322: sleep 3 > /dev/com3l &
323: stty 2400 > /dev/com3l
324: echo 'AT E0 Q1 V0 S0=1 &C1 M3' > /dev/com3l
325: sleep 3
326:
327:
328: COHERENT Lexicon Page 5
329:
330:
331:
332:
333: modem Technical Information modem
334:
335:
336:
337: enable com3r
338:
339:
340:
341: # initialize 9600 baud internal Trailblazer on com2
342: /etc/disable com2r
343: cat > /dev/com2l << EOF
344: at
345: at e0 t v0 x3 h0
346: at s0=1 s7=60 s48=1 s51=252 s52=0 s54=3 s58=2
347: at
348: EOF
349: /etc/enable com2r
350:
351:
352: You can edit the file /uussrr/bbiinn/mmooddeemmiinniitt to suit your modem. To
353: ensure that your modem is initialized every time you start
354: COHERENT, you should add a line saying
355:
356:
357: /usr/bin/modeminit
358:
359:
360: to your copy of the file /eettcc/rrcc.
361:
362: ***** See Also *****
363:
364: mmooddeemmccaapp, RRSS-223322, tteecchhnniiccaall iinnffoorrmmaattiioonn, tteerrmmiinnaall
365:
366: ***** Notes *****
367:
368: One final bit of hard-won wisdom: once you have something
369: working, write down what you did, and store it in a place where
370: you won't lose it. It makes life easier just knowing that you're
371: looking for a female-to-female cable instead of male-to-female or
372: male-to-male.
373:
374:
375:
376:
377:
378:
379:
380:
381:
382:
383:
384:
385:
386:
387:
388:
389:
390:
391:
392:
393:
394: COHERENT Lexicon Page 6
395:
396:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.