Digital - External TNC Support
The Digital Interface will not only work with MMTTY, MMVARI and external TNC"s like th ePK232, HAL
DXP38 but with ANY TNC.
This because the commands for the TNC are
not hard coded into the program.
This has to be done by the user of the program :-)
Information about the following external TNCs can be found
below but
as already stated ANY TNC can be used with N1MM logger which uses
serial communication.
The Digital Interface
The Digital Interface can be used with any external TNC.
Using a TNC will show an interface like the one above.
Setting up the TNC in the Configurer
- Start the N1MM Logger application.
- On
the Logger Main Window do a 'Config> Configure
Ports, Telnet Address, Other'
- In Digital Setup
- Choose Other for Interface
- Set
other parameters accordingly (Example settings:
Com 4 ,9600 ,8 ,N ,1, RST-Xon)
- Save the
configuration (OK)
- Load the Digital Interface from the Window menu.
- Create your Abort macro (This should be in the upper left
corner)
by right clicking on it. This will open up the RTTY setup area. Click
on the same macro and enter what ever key sequence you need to abort
transmission and save the macro.
Example PK-232: {CTRL-C}R{ENTER} and save the
macro. - You should be ready to copy RTTY make
sure your interface
is set
to copy 45 baud and 170 shift. You can configure a macro key to change
this or you can type the key sequence needed in the transmit window and
it will get sent to the TNC.
That should be it. You will need to add the CTRL
keys that
turn on and off the TNC
Example CQ macro for the PK-232: X{ENTER} CQ CQ CQ
TEST DE {MYCALL} {MYCALL} K {CTRL-D}
- Test stand-alone
- See the
separate sections for the PK-232, KAM, HAL etc. If
your
TNC is not mentioned please set it up like the other mentioned TNC's.
Make sure your radio and TNC work on your computers
serial
port by
testing them with an existing terminal program. Connect your TNC/Radio
into your computers serial port. The Hyperterm terminal program is
included with Windows and works well. Make sure you note all
COM
port parameters. You should be able to tune in a RTTY signal and print
it on the Hyperterm terminal program.
The interface has been tested with the three
mentioned TNC's
below
and work fine with them. Any other TNC should also work as long as you
place the right commands for that TNC in the macros.
Additional Macros
for he External TNC interface
The Digital Interface will accept all of the Macro keywords
that
can be
used in the Packet window and other places in the Logger and will also
accept the following:
|
{CTRLl-A} |
{CTRL-B} |
{CTRL-C} |
{CTRL-D} |
{CTRL-E} |
{CTRL-F} |
{CTRL-G} |
|
{CTRL-H} |
{CTRL-I} |
{CTRL-J} |
{CTRL-K} |
{CTRL-L} |
{CTRL-M} |
{CTRL-N} |
|
{CTRL-O} |
{CTRL-P} |
{CTRL-Q} |
{CTRL-R} |
{CTRL-S} |
{CTRL-T} |
{CTRL-U} |
|
{CTRL-V} |
{CTRL-W} |
{CTRL-X} |
{CTRL-Y} |
{CTRL-Z} |
{ESC} | {ENTER}
|
Macro keywords can be used in any of the macro
buttons or the
Logger function keys..
The TX window will accept all control key commands
except for
the Esc key, this must be sent as a Shift+Escape combination.
There is one special macro key on the TNC interface.
The
very first macro button must be setup to send the abort transmission
command.
As you see in the above picture I have this marked as Abort and have it
colored RED. If at any time you press the ESC key while transmitting it
will send this macro to the TNC to stop transmission immediately.
Remember that when to set up a macro key that is not
a TNC
command
you will need to include the sequence to key the TNC before it sends.
If you click on the macro without the TNC transmitting, your TNC will
think it is a command being sent to it and not know how to process it.
TNC users have to enter in what ever CTRL characters
are
needed to turn on and off your specific TNC....
To use the free form typing in the TX window you
need to
create a
macro that will key your TNC and another to Turn it off. Click the
macro that starts transmitting and then click in the TX window.
Whatever you type will be sent out… then click the macro to
turn
things off after you are done.
HAL
DXP38 - Setup
By Brian, K3KO
The following instructions will get the HAL DXP38 TNC up and
running
for FSK in N1MMLogger. I admit to not trying AFSK but it should work.
This implementation is not elegant but does work with some 'features'
of its own. There is a built-in tuning indicator accessible through
macro toggles. The implementation is very basic but is working, there
are other programs around if you want all the bells and whistles.
Thanks go to N2AMG for making the program changes necessary to
accommodate HAL commands.
Since there is essentially only one way communication between
N1MMlogger and the DXP38 in the command mode, don't expect error
checking or error detection. It is assumed that turning on the DXP38
properly loads the internal software. No capability exists here to do
such. No capability exists to update the internal programs. This must
be done with the HAL software. My unit uses the latest update .LOD and
.S28 files from the HAL website http://www.halcomm.com
.It is not clear that the updated files are needed here. However, the
reason given for the update was to fix a PTT error with another
program. So if you are having problems with PTT activation, these
updates may be appropriate. Unless you alter the attached
initialization macro, you must use LSB RTTY for FSK or LSB for AFSK..
There are three distinct phases - Hardware setup, Software
Setup,
and Use. The last section discusses two problems that have cropped up
and solutions found.
Hardware Set-up
It is recommended that one first get the DXP38 running with
WF1B,
HAL or a known 'tried and true' software package first. Doing so
eliminates the need to troubleshoot both hardware and software when
configuring N1MMLogger. Hardware setup:
- Connect the PTT and FSK lines to the rig
- Connect the COM port (1 for HAL software) to the TNC
- Connect audio input to the DXP-38
- Connecting
the power.
- Connecting AFSK output to the rig
(AFSK only)
- Consult the DXP-38 manuals for the
details. The rig must be
set FSK RTTY (LSB) or LSB for AFSK.
Software Setup in N1MM logger
There are three parts in setting up N1MM logger to work with
the HAL
DSP38. Make sure the version of N1MMLogger being used supports the
DXP38 hexadecimal commands.
Port configuration
- The DXP38 port should have checkmarks in digital
and set.
DTR/RTS should be set to always on.
Digital configuration
- On the digital configuration dialog
-
Choose a free port and configure it for 9600 baud,
N,8,1 and no handshaking.
- It works fine on the
first port but was not tried
yet on the second channel. Nor have I tried using two channels.
- I have been able to get the DXP38 to run on the
first port and MMTTY on the second port.
Macro Creation required to initialize and
control the
DXP38
- These macros are the 24 box macros
not
the function keys.
- Important. This process is
error prone. Go to the N1MM
logger directory and create a backup of the MDB file in use. If you
don't, the results of an error in the macros could be unpleasant. The
program may give one a 'type mismatch' error which may not be
correctable without either a whole new logging file or somehow editing
the .MDB file (using Access) to remove the error. If one does cause
this error to happen, just copy the backup file to the original file
name. It is a good idea to do the macro creation in steps with backups
along the way. N2AMG has some coding in place to help avoid the
unpleasantness.
-
Command structure
- The HAL DXP38 expects
commands in the form of two
hexadecimal bytes. The first byte is hexadecimal 80 and the second is
the hexadecimal command number. Some commands require a second set of
two bytes giving the value of a parameter being set. These commands
look like {H8084} on the macro page. The {} tell N1MM it is a function,
not text. The H triggers the routine which reads what follows as two
hexadecimal, one byte numbers and sends them to the DXP38. The first
number is always 80. Note: Only the numerals 0-9 and the letters A-F
can be used to define the hexadecimal number. Use of any other
characters within {} will produce a type mismatch and unpredictable
operation. Any text character not in {} is considered text to be sent
by the DXP38. As such, it will put the TNC into the transmit mode. The
TNC will not return to the receive mode at the end of the macro unless
a {RX} is present.
- Common errors: the use of (
>s instead of {, the
letter O for a zero, lower case L for a 1.
- Macro programming
- Right click on an
empty macro box on the RTTY TNC
screen.
This will open the macro editing screen which has to be edited. Make
sure the commands are of the form {H80xx}. Be very careful with the
syntax. There must be four digits and a leading H. Save the macro file
and save the configuration. The example uses the macro 'Other 1' and
saved the file under 'Other 1.mc' .
- The HAL
command set included in the DSP4100 TNC
technical documentation at the HAL website.
- The
printout of the macro file below shows an example.
-
The ESC macro under the TX, RX definition box and
(it is no longer the first macro box).
- The
INIZE macro is the initialization macro.
-
Although shown on two lines in most editors,
it is programmed as just a series of commands in N1MM.
- The
last command is a return to RX (in
hexadecimal). This initialization macro establishes the following TNC
characteristics: FSK, BAUDOT, 45 baud, normal FSK mark, normal tones,
USOS on, force to letters, TX/RX polarity the same, diddles on, squelch
level set to 15, PTT delay =200 ms for XMIT and 100 ms for RX, transmit
text echo and tuning indicator on.
- There are three levels of squelch control
provided.
The second word in the macro contains a 80nn. The nn is the squelch
level. Zero is the lowest and 99 is the highest. You may have to tailor
these to your particular radio. RXnorm and RXinv permit inversion of
received signals. Echo y (echo yes) and Echo n (echo no) permit echoing
of the transmitted characters as they are sent in the received screen
area.
- Fnar, Fmid, Fwide are the filter width
selection
macros (55Hz, 75Hz, 100Hz).
- B45 sets the baud
rate to 45 baud. If you want
another
rate change the 8000 command to 800x, where x =1, 2, 3, 4, 5 for 50,
57, 75, 100, 110 baud respectively.
- Tun on and
Tun off control the tuning indicator.
The
tuning indicator is a freq offset bar indicator with a center zero
position. Turn the radio knob towards the bar until it aligns with the
center mark. This indicator currently has one problem. It can't be used
with call capture. The frequency offset data being sent back confuses
the call capture logic.
- Turn On using {H805D}
- Turn Off using {H804D}

Example Macro file (other 1.mc). This macro is
available for download from the N1MM website (Other files)
*,-
INIZE,{H8084}{H8085}{H80D1}{H80C0}{H80DB}{H80D3}{H805B}{H8089}{H80E3}{H8002}{H80ED}{H8001}
{H80E8}{H8037}{H8000}{H805D}{H8059}{H800E}
*,-
RXinv,{H804C}
RXnorm,{H805C}
Echo y,{H8059}
*,-
*,-
SQlow,{H80E8}{H8015}
SQmid,{H80E8}{H8037}
SQhigh,{H80E8}{H8045}
B45,{H80E4}{H8000}{H800E}
*,-
Echo n,{H8049}
*,-
Tun Off,{H804D}
Fnar,{H80EB}{H8000}
Fmid,{H80EB}{H8001}
Fwide,{H80EB}{H8002}
*,-
*,-
*,-
*,-
Tun On,{H805D}
TX,{H800D}
RX,{H800E}
ESC,{H8006}
First time startup
- Start up N1MM logger first.
- After
the program loads, make sure focus is on the TNC
received text screen. Then turn on the DXP38. If the data link is OK ,
an @ will be printed on the screen. You will have to create the macros
the first time, save the configuration and save the macros to the file.
I saved them to the 'Other 1.mac'.
- Subsequent startups
- Turn on the
DXP38. Start N1MM logger. Click on the
INIZ
macro. One should see a text rendition of the initialization process on
the screen. See the picture above. If the function keys have not been
defined yet, do so. Almost without exception, end with an {RX}. The
call sign in the S&P mode might not have the {RX} command. Now
use
the program as one would a CW or SSB contest. Call capture as well as
the insert key work just like the CW mode. Note: The initialization
macro puts the TNC and rig in the transmit mode. No other macros do
unless one embeds text characters, spaces or a {TX} command.
Known problems
I have experienced some occasional problems on start-up and
shutdown.
Startup - Sometimes the DXP38 and N1MM
logger just don't want
to communicate. The TNC won't accept the initialization commands. The
cure is to shut off the TNC and wait about 45 seconds. Shutdown N1MM
logger. Start up the TNC and wait until it has finished its internal
initialization. (LED indicators have stopped flashing). Restart
N1MMLogger. This may be a problem I have with the COM3 port here and
you may never see it.
Shutdown - About half the time the DXP38
will go into the
transmit mode when N1MMLogger is shutdown. The cure is to turn off the
DXP38. Hopefully a more graceful shutdown can be developed.
HAL ST-8000 (not supported)
The HAL ST-8000 TNC is not supproted and will not work with
N1MM Logger as the baud rate used by the HAL is 45 baud andthe serial port control in N1MM
only will go as low as 110 baud...
KAM - Setup
- Launch Hyperterm and set its parameters to 9600
bps, 8
databits, no-parity, 1 stopbit and no flow control.
- Connect
the KAM to the port configured in Hyperterm.
- Turn
on the KAM.
- When you see the message 'Press (*)
to set Baud Rate, press
the "*" button'.
- Then set your callsign as
prompted.
- To place the unit into RTTY mode type
"RTTY".
- Also make sure the unit is set up for
software handshaking
XFLOW = ON.
- Once you are communicating with the
KAM and have it in the
RTTY
mode, you can also tune in a RTTY signal and it will decode and print
on the Hyperterm window.
- Now try to transmit by
typing a Ctrl+C and a "T" on the
keyboard
followed by several characters that you wish to transmit. To get back
to receive, type a Ctrl+C and a "R".
- If you
have problems, consult your KAM manual.
- Now
exit the Hyperterm program and start Logger.
Below some RTTY settings for the KAM TNC
| AUTOCR | 0 | AUTOLF | ON | AUTOSTRT | OFF |
| BKONDEL |
ON | CD | SOFTWARE | CRADD | OFF |
| DIDDLE |
ON | ECHO | ON | FILTER | OFF |
| FSKINV |
OFF |
INVERT |
OFF |
LFSUP | OFF |
| LOWTONES |
OFF |
MARK | 2125HZ | RBAUD | 45 |
| SHIFT |
170 |
SPACE | 2295HZ | USOS | ON |
| XFLOW |
ON | XMITECHO | ON | | |
There are three parts in setting up N1MM logger to work with
the KAM.
- Port configuration
- The KAM should have a checkmark in digital.
- Digital configuration
- On the digital configuration dialog
- Choose
a free port and configure it for 9600 baud,
N,8,1 and none
- Macro Creation required to control the KAM
- Set the TX macro to: {CTRL-C}T
- Set the RX macro to: {CTRL-C}E
- return to receive after the message is
completed.
-
Set the ESC macro to: {CTRL-C}R
- this will immediately return the system to
receive
before sending any text.
- Example:
- CQ macro: {TX} CQ CQ CQ DE W3PP W3PP W3PP KKK
{RX}
PK-232 -
Setup
- Make sure the PK-232 autobaud is set and the unit
is set to
RTTY mode.
- Launch Hyperterm and set its
parameters to 1200 baud,
8-data, no-parity, 2 stop bits, and no flow control.
- Connect
the PK-232 to the port configured in Hyperterm.
- Turn
on the PK-232.
- Type a few "*" characters so
your PK-232 will autobaud to
the 1200 baud rate.
- Now place the PK-232 in the
RTTY mode by typing the command
"BAUDOT". It should respond OPMODE now BAUDOT.
- Turn
the threshold pot full clockwise and make sure the LED
is on.
- Also make sure the unit is set up for
software handshaking
XFLOW = ON.
- Once you are communicating with the
PK-232 and have it in
the
BAUDOT mode, you can also tune in a RTTY signal and it will decode and
print on the Hyperterm window.
- Now try a
transmit by typing a "X" on the keyboard followed
by
several characters that you wish to transmit. To get back to receive,
type a Ctrl+C and a "R".
- If you have problems,
consult your PK-232 manual.
- Now exit the
Hyperterm program and start Logger.
Setting up the PK-232
By John VK4WPX / VK4CEJ
Setting up the PK-232 for RTTY is very simple and
straightforward.
- First, open the 'Configurer' (On the main logging
window
click Config, Configure Ports, Telnet addresses, Other)
- Click
the Hardware tab
- Click in the box adjacent to
the COM port that you have
your PK-232 connected to in the column labeled 'Digital'
- See
picture below, the example here shows the PK-232 on
COM-2.

- Next, click on the Digital Modes tab and set up
the Digital
Interface 1 parameters.
- The example in the
picture below shows that the PK-232
is set for 9600 baud, no parity and 8 data bits.

Setting up macros and the main logging
window "F" keys for the PK-232 is also really very simple.
- Modify any existing macros that came
pre-configured by
replacing every instance of ' {TX} ' with ' {CTRL-C}Xmit{ENTER} '
- I found that the command did not work every time unless
it was followed by the {ENTER}
- or, if the macro
does not have {TX} or {RX} in it and
you
want it to start transmitting or go to receive, add those commands and,
replace every instance of {RX} with {CTRL-D}
- Example: F1 "CQ" macro would therefore be "
{CTRL-C}Xmit{ENTER}CQ CQ CQ DE * * * K{CTRL-D} "
- Example:
F5 macro "Hiscall" would be " {CTRL-C}Xmit{ENTER}!
"
- Which would leave the rig in transmit mode so
that you
could type more info in the transmit window
- To
return to receive, press Ctrl+D (hold down the Ctrl
key and press D).
SCS PTC
- Take the PTC as you use it for other digimode
programs e.g.
ALPHA (by DH7RG), XPWIN (By KF7XP), LOGGER (by K4CY)
- Set
the PTC to SERBAUD 19200 (not AUTO
!) > switch the PTC OFF
- Start
N1MMLogger and go to 'Config | Configure Ports,
Telnet
Address, Other', Select the tab 'Digital Modes'. Set 'Digital Interface
1 TU Type ‘ to 'CW/Other',
set the used serial port to 19200 Baud, N-8-1-none.
Set the ‚Digital Interface 2 TU Type
‘None‘. Save with 'OK'
- Click on Windows
and select
Digital Interface.
- Be sure that the
PTC is connected to the right serial port
and switch it ON and the start info will appear in
the upper window finished by the prompt cmd: If you
can’t see anything check serial port and settings.
- Click
in the lower window, enter with the keyboard Escape+Shift
– bau 45 – ENTER the PTC will switch to
RTTY (look at the PTC mode display). Add 'Escape+Shift
– term 1 – ENTER'
to switch the PTC to echo the transmitted signs in the upper window.
Note : Escape without Shift will switch the cursor to the main window.
- In the open Digital Interface select 'File | Settings' and
select
Tab: 'Macro Setup'. Select behind 'Digital Macro Set' 'Other 1'. Now
three buttons appear with TX, RX and ESC on it. These buttons have to
filled with the sequence to put the PTC in TX and RX and to get a
correct function for canceling the AUTO-CQ function or make a break
with the ESC-key on the keyboard.
- Digital Macro
Set: Other 1
- TX button:
{CTRL-Y} NB. in
capital letters
- Now the macro {TX} can be used
to switch the TX ON
- RX
button: {CTRL-Y} NB. in
capital letters
- Now the macro {RX} can be used
to switch the TX OFF
- ESC
button: {ESC}CLR{ENTER}{CTRL-D}{ENTER}
- The macro
will reset the PTC-2 to PACTOR, clear the
TX buffer and switch the PTC-2 back to RTTY.
- There are a maximum of 24 extra
functionkeys. One of them
may be
configured to switch the PTC-2 from the default state PACTOR to RTTY.
- Name button: RTTY
- Contents button:
{ESC}clear{ENTER}{ESC}bau
45{ENTER}{ESC}term 1{ENTER}
- Every
time you start the PTC-2 you may click on this
key
to start the RTTY-mode. You need 'term 1' to get a delayed echo on the
RX-window when your text is transmitted.
- You may generate more macros with simple QSO
texts using
the installed N1MMLogger macros as !, *, DATE, TIME etc.
- Don't
forget to start a functionkey with {TX} and at the
end place {RX} to switch back to receive.
- See
for some macro examples at macros
page..