Kermit FAQ - Why Doesn't the HANGUP Command Work for Me?

(Home) (Prev) (Next)

13 Why Doesn't the HANGUP Command Work for Me?

On network connections, Kermit's HANGUP command executes the appropriate network protocol for closing the connection, and this should always work.

On serial connections, the HANGUP commands turns off the computer's DTR (Data Terminal Ready) signal for a period of time. According to the standard that governs modem signals, this action is supposed to make a modem hang up the phone call. If it doesn't:

  1. Your modem has been configured to "Ignore DTR". This setting is available on most Hayes-compatible modems, either on a physical switch (such as Configuration Switch 1 on the Hayes 1200) or as a command (&Dx on Hayes 2400 and later, and compatibles). In many cases, "Ignore DTR" is the factory setting. If you want your modem to obey the DTR signal, then you should set the switch appropriately, or give the command AT&D2. The actual syntax of the command might vary among different brands and models of modems, so consult your modem manual for details.
  2. Your cable or connector has DTR "hotwired high", meaning that the DTR wire is jumpered to some other signal that is always high (on). If this is not what you desire, you should replace your cable with a standard modem cable.
  3. You are using a Macintosh with a "hardware handshaking cable". This is actually the same situation as (2), except there is no way to "fix" the cable - please read the ckmker.bwr file for an explanation.

To work around these problems in Kermit, without actually fixing the underlying cause, you can use a macro that escapes back to the modem's command processor and gives it the command to hang up. Such a macro is predefined for you in the MS-DOS Kermit 3.14 initialization file, MSKERMIT.INI:

  ; ATHANGUP macro.  Use this if regular HANGUP command doesn't do the trick.
  def ATHANGUP sleep 1,out +++,sleep 1,out ath0\13
(Note: C-Kermit uses this technique anyway.)

In MS-DOS Kermit, you can assign execution of this macro to the "hot key" of your choice, for example:

  set key \315 {\Kathangup}  ; Assign ATHANGUP macro to the F1 key
In Mac Kermit, you can just go to the terminal screen and do it by hand:

The modem should hang up and say NO CARRIER.

Kermit FAQ / Columbia University /