2.7.2 Digital Overview and Features

The digital part of the N1MM logger program is designed, coded and maintained by Rick Ellison, N2AMG.

After the first overview part, which should be of interest to anyone getting started using digital modes with the Logger, the remainder of this section of the manual is a potpourri of miscellaneous ideas and suggestions on how to use the Logger in digital modes. If your main interest is in getting N1MM Logger+ up and running in digital modes, after checking out the overview you might prefer to proceed directly to the Digital Setup section.

1. Digital Overview

N1MM Logger+ supports a variety of methods to decode and transmit digital modes, including an external TNC/TU; the MMTTY engine for RTTY (sound card on receive, either sound card AFSK or FSK keying on transmit); G3YYD's 2Tone drop-in replacement for MMTTY, for AFSK RTTY; the MMVARI engine for RTTY (AFSK or FSK), PSK31, PSK63, PSK125 (both BPSK and QPSK), and MFSK16; or the Fldigi engine for a broad range of sound-card digital modes including AFSK RTTY, PSK and many more. Regardless of which of these engines is used, the digital data streams pass to and from the engine via the Digital Interface (DI) window. At least one DI window must be open to operate the Logger in digital modes. Depending on your hardware configuration and operating mode, you may have either one (SO1V, SO2V) or two (SO2V, SO2R) DI windows open. Both DI windows have full receive and transmit capabilities. It is also possible to supplement the two DI windows with up to four additional receive-only windows each. The user can interact with the DI windows using either the keyboard or the mouse as the primary control interface. There is a wide variety of options available to customize the operation of the digital interface.

For RTTY, the most popular interface engine is MMTTY. MMTTY performs very well, supports both FSK and AFSK, and has a wide variety of options and parameters that can be adjusted to tweak its performance. Many new users of N1MM Logger+ will already be familiar with MMTTY, either from using it stand-alone as an RTTY program, or from using it from within another contesting or general logging program. MMTTY does not come pre-installed with N1MM Logger+; it must be downloaded and installed separately, and then the Logger can be configured to use it.

An alternative to MMTTY, using different decoding and encoding algorithms that perform better than MMTTY under some (but not all) conditions, is 2Tone. 2Tone was written by G3YYD to be a replacement for MMTTY without requiring any changes to the interface programming. That is, anywhere the MMTTY program is called up in N1MM Logger+, 2Tone can be used instead simply by changing the path to the program in the configuration. Probably the most common use for 2Tone is in parallel with MMTTY. One of the programs is used in the main Digital Interface window, and the other one is used in an additional RX-Only window. You may choose to use MMTTY in the main window and 2Tone in the additional window (this arrangement is popular with people using FSK), or vice versa.

MMTTY and 2Tone do not support other sound card digital modes, of which the best-known is probably PSK31. Users of those other digital modes can choose either MMVARI or Fldigi as the digital engine for those modes. MMVARI comes pre-loaded with N1MM Logger+, whereas Fldigi has to be downloaded and installed separately. Fldigi supports a wider variety of modes, although most of those modes are not used for contesting. For most users, it is probably the user interface that determines which of these two engines they prefer. Users who are accustomed to operating digital modes using one of these engines may be more comfortable using the same engine for RTTY as well, instead of switching to MMTTY.

While MMTTY typically performs as well as or better than most of the hardware interfaces that were formerly common for RTTY (e.g. multi-mode TNCs), there are some terminal units that can rival or exceed it in performance under some conditions. Users who already have one of these devices may wish to consider using it with N1MM Logger+, either on its own or in parallel with MMTTY. For most such terminal units, the user will have to program the software commands needed to control the unit into the digital interface. An exception is the HAL DXP-38, which is supported directly without requiring user programming.

The remainder of this section describes the operation of the DI windows, including basic operation as well as advanced features that can help make operation easier and more efficient. A separate section describes how to set up N1MM Logger and the DI Window for digital modes regardless of which type of digital engine is used. Engine-specific details are described in separate sections for each of the supported engines (MMTTY, MMVARI, Fldigi and external TNCs; 2Tone is included under MMTTY).


Check out the Digital Modes part of the Frequently Asked Questions (FAQ) of this Wiki.

2. Making QSOs

This section explains:

  • How to make a Digital mode transmission
  • Keyboard, Insert key and Mouse Assignments
  • Function keys
  • Macros

2.1. Make a Digital Mode Transmission

  • Select 'Window | Digital Interface' and the Digital Interface will open. The Digital Interface window can be positioned and resized on your monitor as desired
  • In the Entry window's call sign box, type "RTTY" (without the quotation marks) if you want to use RTTY, or "PSK" (without the quotation marks) if you want to use PSK or another sound-card digital mode
  • If an external TNC is used only the Digital Interface window is opened. When one of the sound card interfaces is chosen an extra window will appear: MMTTY (or 2Tone), MMVARI or FLDIGI depending on which interface is selected in the DI window's Interface menu
  • Left clicking on a call will grab the callsign. Right clicking on the RX and TX windows will show a menu (this can be changed via a menu setting)
  • Pressing Insert will Grab the highlighted call and sends Hiscall followed by the Exchange button
  • Double clicking on a call sign in the call sign box from the Digital Interface sends that call to the Entry window
  • A call sign is automatically highlighted if recognized by the program. Call signs are always recognized when they are both preceded and followed by a space. There is also an option to recognize call signs buried in garbage (without a leading or trailing space), provided that call sign is in the master.scp file

2.2. Digital Need to Know

  • If the call sign in the call sign field in the Entry window is equal to the call sign in the received text, the call in the Entry window does not get placed into the Grab list.

 Staying Focus'ed

Focus is automatically returned back to the Entry window when clicking a call sign in the Receive window
  • Pressing Ctrl while single clicking on a call will force the call into the Entry window
  • Click in the Entry window input field you want data to go to and then hold down the Ctrl key while clicking on the corresponding data in the RX window. It will paste to the field you clicked into
  • "-" separators between exchange elements are removed automatically
  • CQ Repeat time starts
    • when using a sound card engine, from when the sending stops
    • when using an external TNC, from when the message begins, as there is no way to tell when the TNC finishes sending
  • During transmit, call signs are not grabbed from the receive window
  • Linefeed characters (LF) in incoming text are replaced with Carriage Return (CR) characters

 Auto-CQ with a TNC

To get auto-CQ to work correctly with a TNC set your repeat time to at least 9 or 10 seconds. It may need to be longer if you have a longer CQ macro. This will stop the TNC buffer from receiving the next string before it finishes sending the last one.

 Clear the TNC Transmit Buffer

It is best to add the command that your TNC uses to clear the transmit buffer to the end of your Abort Macro. If not, the transmit buffer still holds the remaining characters that were left in the sent string and will get sent the next time the TNC sends.

 Stop Sending CQ

When using a TNC turn off Config >Function Keys >Stop Sending CQ when Callsign changed. If not every time you stop an auto-CQ and you type a callsign in the box it will send the abort string to the TNC.

3. Tips for Making QSOs

Callsigns and exchanges are displayed in the Digital Interface (DI) window. This information can be transferred to the Entry window's Callsign field and exchange fields with the mouse, or it can be typed in manually the same as you would do in CW and SSB. Call signs recognized in the input stream are also placed in the Grab window, and can be transferred from there to the Entry window using the Grab button, the {GRAB} macro or Alt+G on the keyboard.

3.1. Using Hover Mode

  • Hover Mode places the callsign in the callsign field in the Entry Window when you hold the mouse over a valid callsign. If you use this in combination with the 'Right click = Return NOT menu' option, you hover over the call then right click to plant the call and send your call; when the station comes back to you you click on the exchange to place it in the Entry Window. Right clicking again sends TU and logs the Q. Right click, left click,right click and you're done...
    • Note: Your own call is excluded from being picked up.
    • Hover mode is used in conjunction with the menu selection 'Rt Click = Return NOT menu' which will will send a Return when right clicking in the DI RX window instead of displaying a pop up menu

3.2. The Rate Improver - Right Click = Return NOT Menu

Select from the settings menu in the Digital window "Right Click = Return NOT menu". This setting could improve your rate greatly as your hand never leaves the mouse except for the occasional difficult exchange. Making a qso:

  • While in Run mode with ESM on
    • Right click in the DI's RX window to send CQ
    • When a station replies left click on the call
    • Right click sends your exchange
    • As he sends his exchange, left click on it
    • Right click again to send TU and log the QSO
    • Right click again sends CQ (and you're back at the first bullet)
  • In S&P it does the same thing as hitting Enter to advance thru the ESM mode

Right click takes the place of hitting Enter for ESM. Most of the time while in the contest I have one hand on the mouse and the other hand I have one finger resting on the space between the Esc and F1 keys. With that finger I can hit Esc if I have started a CQ and someone has started coming back to me. 73 Rick N2AMG

4. Do You Have... (what to check when it does not work)

Below are the most common mistakes made setting up or using N1MM logger in RTTY mode.

  • Forgetting to add {TX} and {RX} to each of the F Keys
  • Setting up Mode Control in the Configurer incorrectly
  • Incorrect settings in the Configurer under the Digital Modes tab
  • Forgetting to set up the Dig Wnd Nr in the Configurer under Hardware for ports that have the Digital check box checked

4.1. Insert Key Assignments

Mode Enter Sends Message (ESM mode) Ins key or ; does the following:
RUN and S&P OFF 1. Grab Callsign from call list if callsign field empty otherwise use call in callsign field
2. Prefills Exchange Boxes
3. NO DUPE: Sends F5 (Hiscall) + F2 (Exchange) or DUPE: Sends Nothing
4. Places cursor in next exchange field (Example: Sect)
RUN ON 1. Grab Callsign from call list if callsign field empty otherwise use call in callsign field
2. Prefills Exchange Boxes
3. NO DUPE: Sends F5 (Hiscall) + F2 (Exchange) or
— WorkDupes checked: Sends F5 (Hiscall) + F2 (Exchange)
— WorkDupes not checked:Sends F6(Dupe)
4. Places cursor in next exchange field (Example: Sect)
5. Highlights F8 button
S&P ON 1. Grab Callsign from call list if callsign field empty otherwise use call in callsign field.
2. Prefills Exchange Boxes
3. NO DUPE: Sends F4 (Mycall) or
— WorkDupes checked: Sends F5 (Hiscall) + F2 (Exchange)
— WorkDupes not checked:Sends F6(Dupe)
4. Once exchange entered INSERT sends F5-F2
** Pressing INSERT again will continue to send F5-F2
5. Places cursor in next exchange field (Example: Sect)

4.2. Configuring the Entry Window Function Keys

  • There are separate Entry window function keys for 'Running' mode and 'Search & Pounce' mode
  • The function keys use the same macros for both PSK and RTTY
  • The function keys can be changed using the Config | Change CW/SSB/Digital Function Key Definitions | Change Digital Function Key Definitions menu item, or more simply by right-clicking on one of the buttons
  • The function key editor is the same as for CW and SSB message buttons

Some tips for function key and button messages:

  • Text to be transmitted in digital modes must be preceded and followed by {TX} and {RX} macros
  • Always begin and end the actual text of your messages with a space character to separate the content of your message from garbage characters generated by noise. If your call sign is the last thing in a message and there is no following space, the person at the other end will not be able to tell where your call sign ends and the garbage begins
  • With the sole exception of consecutive all-numeric elements, where a hyphen ("-") can optionally be used instead of a space, always separate call signs and exchange elements from each other with single spaces
  • To set your messages off from previous text, you can start with a single {ENTER} instead of a space. Do not waste time by sending more than one {ENTER}. Never end a message with {ENTER}; that causes your information to scroll upwards on the received screen just as the other operator is trying to click on it
  • Don't put in long sequences of spaces, periods or other punctuation; that just wastes time without making it any easier to copy
  • Do not place any kind of punctuation immediately before or after a call sign; always set call signs apart from the rest of the text with single spaces
  • Ending messages with K, KN or BK is unnecessary in RTTY; the receiving station knows that you are finished when your carrier drops
  • In contests where the US state is part of the exchange, do not use DE before your call sign; that can be confused with the exchange for Delaware. Also, do not use IN as a preposition to indicate that what follows is your QTH; that may be interpreted as Indiana
  • Do not repeat unnecessarily. If signals are strong, you only need to send your exchange once; if conditions are poor, sending your exchange twice or even three times can pay off by reducing the number of requests for repeats, but when conditions are very good, this is unnecessary. Adjust your exchanges to suit conditions (the extra buttons in the DI window are useful for this)
  • If a signal report is part of the required contest exchange, send it once and once only. Everyone knows what it is going to be, so there is no need to repeat it. Always send the report as 599 (all-numeric), never 5NN (5NN takes more time in RTTY than 599; 5NN is for CW only)
  • If you are CQing and more than one station is responding to you, it may help to put the other station's call sign at the end of the exchange as well as at the beginning, to take care of situations where other stations who are still calling cover up the call sign at the beginning
  • In general, though, don't send the other station's call sign more often than is necessary to ensure he knows you are talking to him and he has copied the call sign correctly
  • Don't send your own call sign more often than necessary to ensure that the other station knows your call sign. There is no need to send both call signs in every message; once the call signs have been exchanged correctly, subsequent repeats don't add anything
  • Don't send the other station's exchange back to him. If you are not sure you got it right the first time, ask for a repeat, but once you feel you have copied it correctly, move on. Sending his exchange back puts doubt in the other station's mind unnecessarily, and in poor conditions he can confuse it with your own sent exchange
  • When responding to a CQ call, never send your exchange until after the CQing station has sent you his exchange and you have copied it correctly. Do not include any part of your exchange in your F4 message

4.3. Message Buttons

  • There are 0, 8, 16 or 24 extra message buttons possible on the digital interface (DI window)
  • A right click on one of the message buttons brings up the Digital Setup dialog where the messages can be configured
  • These extra message buttons support regular macros but don't support 'Running' mode and 'Search & Pounce' mode
  • If using a TNC, include in your messages the control commands needed to turn on the TNC and switch to RX
  • Macro key substitution is supported by the buttons in the RTTY window as well as the function keys on the Entry window

The macros which can be used and some examples can be found in the macros reference section

There are several additional buttons for an External TNC. Please check the Digital - External TNC support chapter. Also please check the rules for messages and macros when using MMTTY and MMVARI.

5. Name Lookup

The program has the possibility to lookup the name from a station entered in the Callsign field. For this to happen the following has to be done.

  • Import a callsign versus name text file
    • The famous 'Friend.ini' file used in the WF1B program can be directly imported
    • Also a text file using the format for Call History import can be used
      • Callsign <comma> Name. For example: N1MM,Tom
  • Select >Config >Call History Lookup
  • Use the {NAME} macro to have the name sent
    • Note: The name is looked up in the Call History table with the cursor in the callsign field and pressing the Spacebar!

Example how to import the Friend.ini file from the WF1B program.

  • Select >File >Import >Import Call History
  • Select your 'Friend.ini' file by changing 'Files of type:' to 'All Files (*.*)'. Otherwise only text files will be shown!
  • Select the 'Open' button. The callsigns with names from the text file will be imported
  • NB. Importing info in this table will delete all previous content. There is no merge option! So if there is information in it and you only want to add info, first export this info (Select >File > Export >Export Call History) and merge the data outside the program with a Text editor like Notepad. After this import the new merged file 'Friend.ini' file
  • The program will show in the bottom pane of the Entry Window status information during importing and afterwards the number of imported callsigns

6. Output RX Data to a Text File

Sending your RX data to a text file can be done in N1MM Logger+ or in MMTTY. These files are a safety feature, as you can go back through them for any info you missed or lost during a crash.

  • N1MM Logger+: Right click in the RX window and select >Output to Text File (this choice is not available if you have selected the 'Right Click = Return NOT menu' option; to turn the RX text file option on or off, you will have to temporarily disable the Right Click = Return option)
  • MMTTY: Doing this in MMTTY is a bit tricky. Go to the directory where the copy of MMTTY that you use with the Logger has been installed and run that copy of MMTTY in stand-alone mode. Click on File/Log RX and close the program. From now on every time you start that copy of MMTTY either via the Logger or in stand-alone mode an output text file will be created and all your info will be stored in this text file. In the directory where MMTTY is located files will be created that have names like 131127.txt (yymmdd.txt). MMTTY creates a new file for each day. This MMTTY file also contains lines indicating the times when MMTTY started and stopped, and the times when transmissions from MMTTY started and stopped, which can be quite helpful

7. Single Operator 2 Radios (SO2R)

N1MM Logger+ also supports SO2R for RTTY. You can use any combination of either 2 MMTTY windows, 2 TNC windows or a combination of MMTTY and a TNC for SO2R operation. Info about MMTTY soundcard setup and SO2R can be found in the N1MM Logger+ Help file in the SO2R chapter.

8. Additional Receive-Only Windows for RTTY

N1MM Logger+ supports up to four additional RTTY receive-only windows for each DI window. The purpose of these windows is to allow simultaneous use of more than one decoding algorithm on the same audio input. While it is possible, by using wide bandwidth filters, to use the additional windows to decode different signals from the one in the main DI windows, the normal use of the additional windows is to decode the same signal as the one in the main window, using a different decoding method to improve the overall ability to decode signals in difficult situations.

These receive-only windows may use additional copies of MMTTY or 2Tone, configured with different "profiles" (e.g. multipath, fluttered, different detection algorithms), or they can be used with additional TNCs or TUs. You can use any of the possible digital interface engines in the main DI window (MMTTY, 2Tone, MMVARI, Fldigi or a TNC/TU), but regardless of which engine is used in the main window, the additional receive-only windows can only use MMTTY, 2Tone or a hardware decoder (MMVARI and Fldigi are not supported in these additional windows).

There are setup instructions for the additional receive-only windows on the Digital Setup page.

Last Modification: 23 August 2015 12:27:51 EDT by VE3KI.