I have been looking at antenna switches for using two radios with a number of antennas. The common switches I have found are referred to as “Six packs” or 2X6 antenna switches, which establish connections for 2 radios to any of 6 antennas. N1MM+ provides antenna selection information in a serial data stream via the OTRSP protocol. This can be decoded and used for immediate switching of selected antennas between the two radios when using SO2R Mode. I have been unable to find a detailed description of the software interface in N1MM+ documentation and am starting with the assumption that it adheres to the OTRSP protocol.
OTRSP documents claim that a common usage for antenna switching is to use two “AUX” ports – AUX1 for Radio1 and AUX2 for Radio2. So anytime there is a Band change in either of the two radios, the OTRSP serial data stream will provide the necessary information for changing the selected antenna as needed. Initial testing with N1MM+ confirmed this. There are AUX1 and AUX2 packets sent when antennas are changed.
My plan is to use an Arduino to capture the Antenna Switching information and decode the data for use by a 2X6 relay box. The Arduino will convert the antenna data from the OTRSP AUX ports into a set of digital I/O lines to drive the relays. An interface box similar to the DXDUSB will be used to convert the data. The outputs could emulate Band Data outputs from some Rig (such as a K3), or could just drive the relay lines directly for each of the two Radios.
Sept 2020 Update
This a very old post, but I wanted to provide an update for anyone that is reading it in 2020. I am now moving from decoding OTRSP data, to using the Ethernet Broadcast Data for interfacing with N1MM+. The Broadcast data stream offers a very rich set of data, in an XML format. This makes parsing easy, and there are many software libraries available that are useful for extracting Control information from the Broadcast data stream. If you are just starting to design an interface that needs data from N1MM+, I would highly recommend using the Broadcast Data Stream.