2.5.4 N1MM Rotator Control

XXX N1MM Rotor description and screen shots are from Classic - need to be updated for Plus XXX

Rotator control by N1MM Logger is supported using

  • External software
    • N1MM Rotor (comes with N1MM logger)
    • PSTRotatorAZ (15 Euros/US$22 by Codrut Buda - YO3DMU)
  • External hardware
    • ARSWIN by EA4TX
    • ERC and ERC-M by Rene Schmidt DF9GR - PSTRotatorAZ required for ERC-M to control two rotators

Rotators can be controlled in several different ways:

  • Entry window:
    • by entering a beam heading in the callsign field and press Alt+J. The rotor will turn to the entered beam heading
      • Example:234 Alt+J will turn the rotor to 234 degrees
      • The number must be numeric, >= 0 and <= 360
    • using the menu items in the Tools menu
      • Turn Rotor Alt+J - Turn rotor to bearing for the callsign in the Entry window
      • Stop Rotor Ctrl+Alt+J - Stop turning the rotor when turning and no bearing in callsign field in Entry window
    • using the short cut keys below:
      • Alt+J - Turn rotor to bearing for the callsign in the Entry window or to the callsign in the callframe (when callsign field is empty)
      • Alt+L - Turn rotor to long path bearing for the callsign in the Entry window
      • Ctrl+Alt+J - Stop turning the rotor when turning and no bearing in callsign field in Entry window
  • Bandmap window: by right clicking on a spot and select: 'Turn Rotor'
  • Available Mult's and Q's window: by right clicking on a spot and select: 'Turn Rotor'

  • N1MM Rotor stand-alone program

Some remarks

  • If there is a call of less than three characters in the callsign field in the Entry window nothing will happen.
  • The status bar will show the bearing it will turn to. Example: Turning Rotor to 123 degrees
  • Normally the rotor will turn to the country bearing after a callsign is entered. This info comes from the country file and mostly is the center of the country. In grid square contests however that is mostly not practical so when a grid is entered the rotor will turn to the calculated bearing between the own grid and entered grid square.

1. Rotator Control Basics

N1MM Rotor has the ability to control up to 16 rotors per station, and to control rotors connected to other computers on your LAN. Each rotator requires its own COM port, unless external interfacing software is used. N1MM Rotor leverages the Antenna tab to define what rotators are controlled when you are on a band. N1MM Rotor can even rotate a stack with one command. N1MM Rotor is an external program which can be used from within N1MM Logger or as a stand-alone program.

ClassicRotor MANUALch7

Supported Rotator Types
  • DCU1 - No Stop button supported.
  • M2 Orion - Speed shown to bottom right of status bar.
  • Prosistel
  • AlfaSpid
  • Yaesu
  • RC2800P-A
  • Rotor-EZ
  • AlfaSpid ROT2
  • Prosistel C
  • Green Heron RT-21 (use DCU-1 option or Rotor-EZ setting)

All rotators except the DCU1 support position reporting. It would be worth trying the Rotor-EZ setting with other rotators that use the DCU-1 protocol or a superset of it, because the antenna position may be reported in the Rotor window.

Upper pane: The upper pane shows the selected rotator (as entered in the Setup under Tools) and behind the @ the current rotator position.

Menu bar: Shows the File, Tools and Help menus.

The big digits indicate the current rotator position. When an antenna offset has been entered this will be shown in small digits to the right of the current rotator position.
More to the right a visual indication where the rotator is pointing. The line in the circle can be dragged to turn the rotator, for rotators that support position reporting.
The textbox is an entry field where you enter the bearing the rotator is to be turned to.
Clicking the Turn button will turn the rotator to that position, and the Stop button will stop turning the rotator at the current position.
A reverse offset will be shown as (R) .

Status bar: Shows the speed when reported by the rotator.

The program will be brought to top when turning (unless minimized)

1.1. File Menu Selections

  • File
    • Always on Top - Select to have the program always on top
    • Exit - Exit the program
  • Tools
    • Setup Rotors - a dialog named 'Rotor Setup' will be displayed as shown below

ClassicRotor Rotorsetup

    • Set Current Antenna Offset
      • The offset is entered on the antennas tab of the Configurer, or can be entered for the selected rotor. This offset is added to the rotor position to determine the antenna position, so it should be entered with a "-" sign when the offset antenna is rotated clockwise relative to the rotator direction. This is useful for antennas that are mounted at 90 degrees for pattern interference reasons, or for antennas that have simply turned some in the wind over the winter
    • Set Current Antenna Bidirectionality
      • Bidirectional is for dipoles, or SteppIr's where the user wants to reverse the antenna rather than turn it more than 180 degrees
    • Calibrate Rotor - Calbrate the rotator. Only when supported by the rotator like the M2 Orion. The ERC/ERC-M hardware does calibration in firmware.
    • Prosistel C Config
      • A dialog will open where you can set the rotator stop to North or South and the delay of the characters
    • Set rotation limits
      • This feature is for owners of rotators with brakes that jam. You may enter a number which will restrict how close the rotator will be turned to 0 or 360 degrees. If you enter 10, the limits will be 10 to 350 degrees. Note that this can only be set for all rotators handled by an instance of the program. It didn't seem worth adding it to the antenna tab
    • A new line will be shown for every rotator that has been set up
      • Each line represents a rotator as entered in the setup under Tools
  • Help
    • Help - Shows the help file for this window
    • About - Gives the version of the N1MM Rotor program

1.2. Button and Mouse Assignments

  • Manual entry field - Type a heading and press Enter or the Turn button to turn the rotator. The entered number is in degrees.
    • Maximum: 450 and minimum 0. An error message will appear when entered otherwise when pressing the Turn button.
  • Turn - Click to turn rotator to heading in textbox. Pressing Enter will also turn the rotator, if the entry focus is on N1MM Rotor.
  • Stop Alt+S - Press to stop rotator turning. Pressing Alt+S or Escape will also stop turning the rotator.
    • This button is only shown when the rotator supports this feature.
  • F1 - F10 - Pressing the F-keys mapped to the bearing buttons will turn the rotator to the position as shown on the button. Right click to set the heading value.

  • Bearing buttons (F1 - F10)
    • Left mouse button click
      • Pressing one of the bearing buttons will turn the rotator to the position as shown on the button.
      • The F-keys F1 through F10 are mapped to the 10 bearing buttons.
    • Right mouse button click
      • Set Button to Current Position
        • The heading as entered in the manual entry field will be used to set the position.
      • Set Button to a Specific Heading
        • A dialog will appear and a frequency can be entered which will used to set the position.

Only rotators that report position will be able to show the current position (also when rotating).

1.3. Sending Rotor Position Information to N1MM Logger

By default, N1MM Rotor sends position information only to the N1MM Logger main program that is running on the same computer as N1MM Rotor. If you are using only one computer, with both N1MM Rotor and N1MM Logger running on that computer, you can skip the rest of this section, but if N1MM Rotor is running on a different computer from N1MM Logger, you need to read on.

If you want to send position information to copies of N1MM Logger running on other computers, you must use a text editor to manually edit the N1MMRotor.ini file in order to tell N1MM Rotor which computers to send the information to. Look for the line "RotorReportingIP" in the [Rotors] section; if it doesn't exist, you will have to add it.

If all of the computers in the network are in the same subnet, i.e. they all have IP addresses that start with the same three numbers, such as 192.168.1.xxx, then you can send position information from N1MM Rotor to all of the computers in the network simply by setting RotorReportingIP to the broadcast IP address (last number = 255), as in:


If you only want to send position information to certain selected computers on the network, you can specify one or more individual IP addresses, separated by spaces. For example:


This will send rotor position information from N1MM Rotor to N1MM Logger running on three computers: the same computer that N1MM Rotor is running on, which is always denoted by regardless of which subnet it is in, and two additional computers whose IP addresses in this example are and Other computers in the network whose addresses are not specified in the N1MMRotor.ini file will not receive the rotor position information. The IP addresses do not all have to be in the same subnet, but of course they must all be reachable from the computer that N1MM Rotor is running in.

1.4. Using N1MM Rotor Stand-Alone

Go into the N1MM program directory with Windows Explorer and find 'N1MMRotor.exe'. This is the N1MM Rotor program. A shortcut on the desktop would be an easy way to start the program. All features mentioned above can be used.

1.5. Using N1MM Rotor with the Main N1MM Logger Program

Configure your rotors using the N1MM Rotor standalone program, as shown in the previous section. Verify that the rotors work correctly.

The N1MM Logger main program has the capability to turn rotors from the Entry Window, as described earlier. To configure this capability in the N1MM Logger main program:

  • Setup the antenna selections in the Configurer; Tab: Antennas

N1MM logger setup dialog in >Config >Configure Ports, Antennas tab

ClassicRotor Antennas

The alphanumeric name in entered in the Rotor Description in the Configurer Antennas tab, must be exactly the same alphanumeric name entered in the N1MM Rotor Setup form.

The N1MM Logger main program also has the capability to display the current direction of any rotor used by the controlling station, or any rotor in the network. To configure this capability, use the checkboxes "Display Rotors Used By This Station" and "Display Rotors Responding From Network" in the Configurer Antennas tab. A new display form will appear for each responding rotor:

ClassicRotor Rotorform

When "Display Rotors Used By This Station" is enabled, only the rotors used by the currently active bands in the Entry Window(s) will be displayed. When you change bands, the displayed rotors will be automatically updated.

When "Display Rotors Responding From Network" is enabled, all rotors that report their position to the computer, from any N1MM Rotor running on the network, will be displayed.

To start N1MM Rotor automatically from within the N1MM Logger main program, use the checkbox 'Start N1MM Rotor Program' in the Configurer Antennas tab.

1.6. One Rotator Per Radio - how to do it

Occasionally, we get questions about how to relate a rotator to a specific radio or VFO, in SO2R - so that when you enter a callsign in that radio's Entry Window, the rotator for that radio's antennas receives the command.

The answer is simple - On the Antennas tab of the Configurer, define the antennas for the second radio as if they were alternative antennas for a given band, and specify the desired rotator's COM port . Then, while the second radio's Entry Window is active, hit Alt+F9. You only need to do this once, each time you change bands on the second radio. See this page for more on configuring more than one antenna for a given band.

1.7. N1MM Rotor running on another computer

Let's assume that N1MM Rotor is on a separate computer which has IP address, and your computer, running N1MM logger, is

  • Make sure N1MM Rotor is running on the computer that has the rotor connected to it.
  • Network the computers together.
  • Put this in your N1MM Logger.ini file:
    • [ExternalBroadcast]
    • BroadcastRotorAddr=
  • ExternalBroadcast should already be there. If not, add it.
  • Enable "Display Rotors Responding From Network"
  • Put this in your N1MMRotor.ini file on the computer running N1MM Rotor:
    • [Rotors]
    • RotorReportingIP=
  • Control the rotator by menus in the Tools menu. You put the direction or a callsign in the call textbox and press Alt+J
  • The requesting station will see a Rotor Form window open, showing the current direction of the rotator. Note that some rotators cannot report progress.

1.8. Turning a Stack

In the example picture above at the right the stack is on Com3 and Com4 and are turned at the same time when turning antenna 4 (stack).
Enter 3,4 and the heading selected will be sent to the rotor program and it will tell the rotators (of whatever type) on COM3 and COM4 to turn to that azimuth. If you want to control a single antenna, you will have to switch to that single antenna using the antenna toggle (Alt+F9) in the main program, press ALT+J and then toggle to the set of antennas that you want.

1.9. Run time error: 126

Run time error 126 could be caused by a firewall that doesn't like a UDP message sent to to notify the rotor program of what window is active. If you want to use the rotor program without getting this error, you will need to figure out what program is causing this interference. First check your firewall. If that is not it, one user found that a program called "Port Explorer" was the cause. When "Port Explorer" was closed, the problem went away.

2. Rotator UDP Packet Information

Broadcasts to operate the separate Rotator Control program are sent automatically when the user selects >Tools >Turn Rotor (alt+J), and do not require configuration settings or modifications to the N1MM Logger.ini file. The broadcasts are always sent on port 12040. Developer Note: the rotator packet lacks XML header tags and is not XML compliant. We know that and will not fix it because we fear breaking third-party routines written years ago.

The Entry Window >Tools >Turn Rotor command produces the following UDP message on UDP port 12040:

     <rotor>rotor name</rotor>
     <freqband>14</freqband>   *

Note *:Examples of freqband encoding are 1.8, 3.5, 7, 14, 21, 28

The Entry Window >Tools >Stop Rotor (ctrl+alt+J) command produces the following UDP message on UDP port 12040:


Note: the rotor may be specified with the name shown in the Rotor program setup dialog, or the number of the com port to be controlled (e.g. "3")

Rotor status update messages sent from the separate N1MM Rotor program on UDP port 13010 are in this format:


3. Using external hardware and software

Rotator control is supported directly by software and/or hardware from:

  • ARS-USB by EA4TX
  • PSTRotatorAZ (15 Euros/US$22 from Codrut Buda, YO3DMU) See the links section for urls.

Start your ARS-USB or PSTRotatorAZ software before attempting to control rotators.

The ERC-M rotator controller by DF9GR offers control of an AZ-EL rotator system or two azimuth rotators using a single COM port. However, this mode of operation is not supported by N1MMRotor at this time. You will need to use two linked instances of PSTRotatorAz as intermediary between N1MM Logger+ and the ERC-M. Setup is a little tricky but is fully documented and works fine.

Last Modification: 16 May 2016 14:19:52 EDT by N1MM.