Adventures with my Apache Labs ANAN SDR - W1AEX

  0  1  2 

(Software the ANAN can run shown above from left-to-right:  Zeus Radio Hermes,  OpenHPSDR mRX PS, CuSDR, SDR-Radio 3.0)

I purchased my ANAN-100 direct from India back in April of 2014 and used it almost daily after installing it. Eventually, I became very interested in the diversity capabilities that a second ADC provides so I sold the single ADC equipped ANAN-100 and bought a lightly-used and very clean Rev 24 ANAN-200D in May of 2017. I found both rigs to be amazingly capable transceivers when teamed up with the OpenHPSDR mRX PS software. The "Hermes" receiver architecture that is present in all the Apache Labs models provides jaw-dropping performance and with the implementation of adaptive pre-distortion linearization (Pure Signal) the transmitter is ultra-clean and always garners unsolicited comments from stations I work regarding the fidelity and the razor-sharp characteristics of its transmitted bandwidth. The ANAN rigs just flat-out work great and my current 200D amuses and amazes me daily. With that being said, someone who decides to travel down this particular path into the SDR world may find themselves a bit overwhelmed as they ponder interfacing the ANAN hardware to their station, configuring and updating the software, updating the firmware, and successfully getting the ethernet connection up and running. Hopefully, there might be something in the Index of Topics below that will help you resolve an issue that you run into. If not, browse down to the bottom of this page to find a list of links that lead to other resources that have helped numerous people to get their ANAN running smoothly.

Things I learned while setting up my ANAN. Hopefully, something here will save you time and make things easier!

Index of Topics

Setup Guide for the OpenHPSDR mRX PS (v.3.4.1 and later) CFC Audio Tools

Transmit Audio Gain Setup in OpenHPSDR mRX PS (for versions without CFC)

Making the Network Connection to Your ANAN

Fixing the Windows automatic metric issue

Recovering Your ANAN If It Gets Lost On Your LAN

Running Multiple Versions of OpenHPSDR

Manually Editing Your OpenHPSDR Database

Two Approaches to Connecting an External Audio Chain to the ANAN

External Relay Approach to Bypass the HPF Board for Pure Signal

Setting up Pure Signal with a current production REV 24 ANAN

What Effect Does the Leveler Have On TX Audio?

Designing and Installing Custom Skins for OpenHPSDR

Restoring a Missing CPU Utilization Display in OpenHPSDR

The ANAN Ethernet Connection: DHCP or Direct Connection with Static IP?

Since this is the way your computer communicates with your ANAN it makes sense to do this right! The truth is that the Windows operating system, OpenHPSDR mRX PS, and the ANAN can sometimes find a way to connect with each other even if you have things all messed up. But it might not be a reliable connection and you might not be able to connect to your ANAN with CuSDR or the HPSDR Programmer. If your ANAN is exhibiting an IP address that starts with the "self-configuration" designation then something is not configured correctly and you should resolve whatever issues are present to assure reliable connectivity. The ANAN user guide at the Apache Labs web page is a vital document to study before connecting your ANAN and powering it up. Just to be clear, if you run into trouble with your ANAN installation you should contact the folks at Apache Labs for assistance. Also, just to be clear, I am not inclined to troubleshoot your network if you get in over your head!

A FEW THOUGHTS ABOUT FIREWALLS:  Keep in mind that the Windows software firewall can cause connection difficulties with whatever software you are using with your ANAN. It should never be necessary to completely disable your firewall to allow a program to function. Windows will usually prompt you when a program attempts to make an outside connection and it will ask you if you want to give it permission. Just say "yes" and that should take care of it. If it does not prompt you, simply go into your firewall configuration and give the program permission to pass through. Most routers don't seem to care about your LAN traffic but if you still have difficulty connecting across your LAN through your router it would be wise to check the router settings to see if something there is the culprit.

  If your router is configured to provide DHCP to its clients (most do this by default) this is really simple. Buy a CAT-6 cable that will reach from your router to your ANAN. Plug one end into the ANAN and the other into one of your router's LAN ports. When you power up your ANAN, by default it will automatically request an IP from your router, which will then assign it an IP address within the subnet used by your LAN. By default, OpenHPSDR is set to find your ANAN via "full network discovery" and it will reliably do this almost instantly when you click on the OpenHPSDR "Power" button in the GUI. Seriously, the guys who write the OpenHPSDR mRX PS software have made this pretty much bulletproof and as long as your home network is functioning the DHCP protocol will connect fine for you.

DIRECT CONNECTION TO A SECOND ETHERNET PORT ON YOUR PC: This only takes a few minutes to do and it simply requires that you assign a static IP address to the second ethernet port on your PC and also to your ANAN. The IP addresses you assign must be on a subnet that is separate from the LAN that is controlled by your router. I used the following steps shown below when I moved my ANAN from my router controlled DHCP LAN to the second port on my PC:

1. Assign a static IP address to the second ethernet port on your PC. To do this, go to the Windows "Control Panel" and select the "Network and Sharing Center". The second ethernet port will probably be identified as an unidentified network with no internet access and might be designated as "Local Area Connection 2". Click on the blue link that is associated with your second ethernet port and it will lead you to the network configuration windows shown below. Click the Properties button in the Status box shown on the left. Next, click on the Internet Protocol Version 4 (TCP/IPv4) category as shown in the middle box and then click on the Properties button. This will bring up the third box shown on the right. Select "Use the following IP address" and this will allow you to manually enter the IP address assignment for the second ethernet port. Note that the primary LAN in my home for my router's network uses the subnet. My ANAN network is going to reside in the subnet where no DHCP hardware exists and every device is assigned a static IP address. To keep things simple I designated the ethernet port as as it's the first device on that subnet. Use a Subnet mask of and then click on the "OK" button. Within a few seconds Windows will configure the port with the IP you have assigned to it.


2. With your ANAN connected to your router, power up it up and start HPSDR Programmer V.2.0 Nopcap. Select the subnet your ANAN is currently on (which at this time should be the LAN controlled by your router) in the drop down menu labeled "Computer Interface". Press the "Discover" button and allow the HPSDR Programmer to find your ANAN. In the picture below you can see that my computer has an IP address of and that my ANAN was assigned an IP address of by my router. Note that the "third level subnet" assignment is the "1" in the third number grouping that follows the 192.168. network and host designations. So, at this time, my ANAN is residing in the subnet designated as "1".


3. After the HPSDR Programmer has located your ANAN, press the IP button in the menu at the top. This will bring up an Address Dialog screen as shown below that will let you assign a static IP address in the same subnet as your computer's second ethernet port. Note that since I assigned my second ethernet port an address in the subnet that my ANAN also needs to be in that "5" subnet. So I am assigning my ANAN a static IP address of to put them in the same subnet. After entering the desired IP address go ahead and press the "Write IP" button in the Address Dialog box. When this is done, press "Close" and then close down the HPSDR Programmer utility and power down your ANAN.


4. Configure the physical connection between your PC and the ANAN by plugging one end of your CAT 6 ethernet cable into the ANAN's ethernet port and the other end into your PC's second ethernet port. When this is done, power up your ANAN and load the HPSDR Programmer utility again. Make sure you select the correct Computer Interface (most likely Local Area Connection 2) in the dropdown box. When this is done, press the "Discover" button and allow the HPSDR Programmer to find your ANAN. If all is well, you will see your ANAN's information in the Device field as shown in the picture below.


5. To be honest, if your ANAN is discovered successfully at this step I would be surprised. With almost everyone I have spoken with the HPSDR Programmer sometimes finds it and then other times it doesn't. This can be a little disconcerting because you really need this utility to be able to connect every single time to assure that you can do firmware upgrades or reset the IP to other values. As it turns out, the mystery behind the "random ability to connect annoyance" resides in the way Windows prioritizes your networks. Even though you have selected "Local Area Connection 2" in the Computer Interface field of the HPSDR Programmer the Windows operating system will insist on giving "Local Area Connection 1" a higher priority and it will stubbornly route the HPSDR Programmer and other software through that LAN. OpenHPSDR and CuSDR will also probably have some issues connecting for the same reason. If you experience this annoying problem follow the steps below to assure reliable connectivity.

6. Go to the "Windows Control Panel" and select the "Network and Sharing Center". Click on the blue link for your ANAN's local area connection and then follow the path from left to right as shown in the image below. When you get to the third window below that is labeled "General" click on the "Advanced" button. When you get to the Advanced TCP/IP box shown all the way to the right, uncheck the box next to "Automatic metric" and give the Interface metric field a value of "1". Click OK and work your way back out to the Network and Sharing Center.


7. In the "Network and Sharing Center" click the link for your router's local area connection (probably labeled Local Area Connection 1) and then follow the path from left to right as shown in the image below. Note that your third window (General) will probably look different from mine because I use static IP addresses on my home LAN rather than the "Obtain an IP address automatically" option. When you get to the Advanced TCP/IP Settings dialog as pictured below all the way to the right, uncheck the box next to Automatic metric and in the Interface metric field enter a number that is greater than "1". To make it clear for Windows I chose to go with "100" but any number greater than "1" should work fine. When this is done, click "OK" and back your way out.


8. When the Automatic metric settings have been changed to the re-prioritized manual settings all of your software should be able to connect with your ANAN instantly. Check this with the HPSDR Programmer first, then move on to OpenHPSDR. I would suggest that you leave OpenHPSDR configured to locate your ANAN using the "Full Network Discovery" method for its initial startup. With the "Full Network Discovery" method, OpenHPSDR should locate your ANAN on your new subnet almost instantly. If you want to set OpenHPSDR to go with a static assignment then stop OpenHPSDR and configure it as shown below in the picture. After you manually enter the address, click on the button to the right and press the "Select IP" and the OK button at the bottom of the form. Then restart OpenHPSDR. If all is well, it will connect instantly.


That should do it and if you have configured your ANAN subnet correctly, OpenHPSDR, HPSDR Programmer V2.0 nopcap, and CuSDR should connect instantly to your ANAN hardware. The picture below is a map of my final configuration with the IP assignments for the Home LAN and the ANAN LAN using two separate subnets. My ANAN has run smoothly on its exclusive and private little subnet and it's completely ready for the transition to gigabit bandwidth when that upgrade becomes available.


Return to the top of the page

Recovering Your ANAN If It Becomes Lost On Your Network

If you assign your ANAN a static IP to a different subnet and then find that you can no longer connect to it there is no need to panic! When this happens it's usually an indication that there is a setting somewhere in your network or operating system that is causing confusion with how to direct the search queries being sent by HPSDRProgrammer or OpenHPSDR mRX PS in their attempts to locate the ANAN on the network. To regain access to your rig follow the steps below:

1. If you are using HPSDRProgrammer version uninstall it and download version The version has a much shorter timeout period than which may be problematic if a network problem is slowing the search.

2. With HPSDRProgrammer version running try repeated "Discover" attempts. A dozen attempts is not an unreasonable number to try. If you succeed, select "IP" from the top menu and when the "Address Dialog" box pops up fill in the fields with an address of to clear out the static IP then press "Write IP". This will revert your ANAN back to DHCP and when it is reconnected to your router controlled LAN it will request and receive an IP in your LAN's subnet.

3. If you are unsuccessful with step 2 then go back into your "Windows Network and Sharing Center" and disable your second ethernet port. When this is done, with your ANAN powered down, disconnect it from your computer's second ethernet port and reconnect it to your router. Power up your ANAN and with HPSDRProgrammer version check to make sure that your router's LAN is displayed in the "Computer Interface" field (it should be since the other port is now disabled) and then press "Discover". HPSDRProgrammer is very robust in its ability to find the ANAN even if it is assigned a static IP in a separate subnet so it may locate it on the first try. If not, be persistent and run the Discover routine repeatedly.

4. If you have not done so already, download and install HPSDRBootloader and the WinPcap library which is required for the HPSDRBootloader utility to work. After the installation, move the Bootloader switch (or the board jumper) to the "Boot" position, then power up your ANAN and run the HPSDRBootloader. Normally, the HPSDRBootloader utility will locate the MAC address of your ANAN almost instantly when you press the "Test for Bootloader" button. When your ANAN is located, press the "IP" button that is found along the top menu bar and enter an address of to clear out the static IP then press "Write IP". This will revert your ANAN back to DHCP and when it is reconnected to your router it will request and receive an IP in your LAN's subnet. Power down your ANAN and move the Bootloader switch (or board jumper) back to the "Run" position. Connect your ANAN to your router and power it up. If you have followed the steps correctly your ANAN will receive a new IP address in the LAN that your router is managing and you should be able to connect to the ANAN through OpenHPSDR mRX PS.

5. If you still are unable to restore your ANAN to DHCP then try re-seating your ethernet cable at both ends and if possible, try a different ethernet cable.

6. In the unlikely event that you are still unsuccessful after following the steps above, post to the Network Connection Section of the Official Apache Labs Forum and ask for help. There are lots of people there who have been through this who can check what you have done so far and also walk you through further steps that can be taken with the HPSDRBootloader utility. 

Return to the top of the page

Running Multiple Versions of OpenHPSDR mRX PS

I often hear people pondering whether or not they should move to a new version of OpenHPSDR when it's released. Did you know that you can keep your old version and all its settings when you install the new version? Did you know that you can have as many versions as you like on your computer and that it only takes a few seconds to switch between versions? It only involves renaming a few folders to accomplish this and the convenience this simple trick offers makes it worth the effort to learn how to do it. If you are interested, keep reading.

When you install any version of OpenHPSDR mRX PS it places its files in two different folders in two different locations on your hard drive. The two pictures below show the path statements for both of the file locations. Note that your User name in the second folder path will obviously be different than mine:



Whenever you start up OpenHPSDR mRX PS it looks for the program files that are stored in the "PowerSDR mRX PS" folder that is in the main "Program Files (x86)"  hierarchy of folders. It also looks for your active database and a few other files in the "PowerSDR mRX PS" folder that resides in the "Users" hierarchy of folders. Those are the only two folders on your computer that the program is interested in, so all the other folders containing other versions are ignored!

My current version of program files for OpenHPSDR residing in the active PowerSDR mRX PS folder.

My current version of user files for OpenHPSDR residing in the active PowerSDR mRX PS folder

With that understood, the two pictures above illustrate what I have done to allow multiple versions to exist with their own databases intact. You can see the seventeen inactive versions tagged with their version numbers (v3.2.10 through v3.3.14) at both folder locations, and the active version of OpenHPSDR mRX PS that resides in the pair of PowerSDR mRX PS folders. When I want to install a new release of OpenHPSDR mRX PS I simply add the version number of my current software to the end of the PowerSDR mRX PS folder name at both folder locations. This effectively disables those folders from active use and makes them into archive folders that the OpenHPSDR installer will ignore. Once that is done, you can install the new release and it will create a new PowerSDR mRX PS folder at both locations where it will unpack all the new program files, a fresh database, and the FFT calculation routine will generate a new wisdom file. Note that if you want to speed up the installation of your new version, manually create a new PowerSDR mRX PS folder in the users path then copy and paste a copy of the wdspWisdom00 file from your last version into the folder. The install program will see the wdspWisdom00 file and won't bother running all the FFT calculations again.

To make sure that I never mix up the versions I use Notepad to create an empty text file with the name of the version as its file name and save it in the each of the appropriate folders at both locations. In the picture above you can see that my active version is v3.3.15 from the text file that is present in the user files PowerSDR mRX PS folder.

To change to any other version that is present, shut down OpenHPSDR mRX PS and then add the version number of the currently active software to the name of the active PowerSDR mRX PS folder and remove the version number from the folder name of the version you wish to use. You must do this at both "program file" and "user" locations to complete the switch. When you start up OpenHPSDR mRX PS the version you have selected will come right up with all of your settings for that version intact. This will all work flawlessly unless you get careless and you end up with two active folders that have a mismatch of program files and database files. OpenHPSDR mRX PS is very smart and will warn you while it is loading that the database does not match the program version. If you get this warning, close OpenHPSDR and check your folders to see where you messed up! This has not happened to me since I placed the little Notepad text files in the folders to help me keep my versions straight.

That's all there is to it. As always, when you write out these kinds of instructions it looks much more complicated than it really is. All you are doing is renaming some folders!

Return to the top of the page

Manually Editing Your OpenHPSDR Database

One of the nicest things about OpenHPSDR mRX PS is that we all benefit from the creativity, skills, and hard work of the developers who voluntarily collaborate to implement new features into every new release. The pace of development has been astonishing and it seems that just when you have all your TX profile settings perfect and it's all working beautifully, a new version is announced with something new that is so intriguing that you just know you have to have it. Then, as you read the release notes you see the dreaded instructions that before you install the new version "You MUST remove the old database file". This is usually because the new version has additional parameters that are kept in the database that would be lost or corrupted if you simply imported your current database through the OpenHPSDR setup form. Wouldn't it be nice if you could just lift out all your TX profiles and drop them into the new version? If you can use the Windows "Notepad" program you can safely and easily do this in just a few minutes. I first used this update trick back in 2010 when I became a Flex user and it worked flawlessly. Of course Ray K9DUR came up with his very slick transfer utility that made this trick obsolete but I went back to using it when I moved to the OpenHPSDR platform and it has worked perfectly with every version. If you are interested in giving this a try, read on.

The steps involved are simple:

1. Export a copy of the database from your current version to your desktop. When you save this database, add the version number to the front of the file name.
2. After installing the new version of OpenHPSDR, export a copy of the database to your desktop. When you save this database, add the version number to the front of the file name.

The picture below shows my database from version 3.2.17 and 3.2.20 sitting side-by-side on my desktop.


3. Verify that there have been no changes to the TX profiles in the new version by doing a line-by-line comparison of the Default TX profiles of both versions. This is done by opening each of the exported profiles in a separate instance of Notepad as shown in the picture below. If XML files are not associated with Notepad on your computer simply set Notepad to open "All Files" as seen in the lower right corner of the picture below and it will open it up fine.


4. When both database versions are opened up in Notepad go to "Edit" and select "Find" then do a search for Default in each instance of Notepad. When this is done, place both copies of Notepad side-by-side as shown in the picture below. Take a moment to look at the first category entry in both copies of the the Default TX profile <FilterLow>. Don't be concerned if the numerical value assigned is different, we are only concerned with having exactly the same categories present. Check line-by-line all the way down to the last category shown, which in this case is <VAC2_Stereo_On> and verify that there are no changes in the category names in the new version that is shown on the right.


When you are satisfied that the categories are identical, scroll down so that the last entry <VAC2_Stereo_On> is at the top of the list and continue the line-by-line inspection down to the last entry for the Default TX profile as shown in the next picture below.


5. When you have confirmed that the categories inside the Default TX profiles are identical between both versions, then it is safe to copy and paste all your profiles into the new database. Note that each of your TX profiles starts with the category entry <TXProfile> with the next category line being your profile's name. It then lists all its categories and settings and then it ends with </TXProfile>. You don't need to copy and paste one profile at a time, highlight them all, right click and select copy, and then paste all of your profiles at once into the new version. Just observe the rule that the first line of your "copy" should be <TXProfile> and the last line should be </TXProfile> when you paste it into the new profile. I always paste my profiles in below the new version's "Default DX" profile and insert a blank line into the new version so I can easily see where to paste. The picture below shows the inserted space where I will paste in all my profiles. Note that the category below my pasting point is the beginning of the pre-defined profiles designated as <TXProfileDef> that are stored inside OpenHPSDR as profile examples for new users.


6. When you have completed pasting in all your profiles, save the file in notepad and close it. Then start up the new version of OpenHPSDR and import the edited database. If you have followed directions exactly, all your TX profiles should be present and they should all work fine. If you have made a mistake somewhere and have corrupted the database (OpenHPSDR fails to start or crashes) then press the "Reset Database" button and call it a day. Or... give it another shot and see if you can figure out where things went wrong! Good luck!

7. One additional note. Jim - WN1X suggested using a free utility called Notepad ++ for the task of comparing the two databases. It can natively read XML files and lots of other very helpful stuff. Once you install it, go to the "Plugins" menu up at the top and open up the Plugin Manager. It will show you a long list of available free plugins that you can install. Scroll down and find the "Compare" plugin and let Notepad++ install it. Then open up the two database files you want to compare and click on the "Compare" plugin. Next, select the "Synchronize Vertical Scrolling" button at the top and start scrolling. As you scroll, every line that is different will be highlighted as in the picture below where you can see that I had changed the TX DSP Buffer size to 8192 in my 3220 version but not in my 3222 version where the default 2048 value is still present. You will also immediately find large blocks of data that are present in one version but not the other, particularly areas of the database that control the "state" of your particular radio.

At any rate, the Notepad++ utility makes it extremely quick and easy to compare the two default transmit profiles and to copy and paste all your TX profiles into the new version. Thanks for suggesting it Jim!


Two Approaches to Connecting an External Balanced Audio Chain to the ANAN

1. DIRECT CONNECTION OF THE AUDIO CHAIN TO THE DB25 PORT:  Connecting to the unbalanced DB-25 line level input on the back panel is relatively simple but there are some caveats. Two big ones were discovered by Chuck - K1KW and documented by Barry N1EU on the ANAN Wiki site. The DB25 connector shield is not well grounded to the back panel of the ANAN. In fact, you may find that there is no connection at all and that the connector's shield does not penetrate the thick paint anywhere. This means that any RF that follows your audio cable will track right back to the ANAN mainboard (Hermes, Angelia, or Orion) and cause RF ingress problems. The other issue is that the DB25 connector was not designed to be placed through a surface that is as thick as the rear panel of the ANAN rigs. This means that the pins of your DB-25 connector may not reach deeply enough to make reliable contact with the ANAN's DB25 connector.  I ended up removing the ANAN's rear panel and cleaning off the paint around all the connectors on the back panel. My station's hardware audio chain consists of the following components: 

Marshall MXL-770 Studio Condenser Mic > DBX-286S Voice Processor > DBX-166A Compressor/Limiter > Edcor 1:1 600 ohm transformer > ANAN DB25 pins 12 and 21 unbalanced line input.

To simplify the connection to the DB25 connector I used a Winrad BRKSD25M-C (with captive screws) as recommended by Bill - KC9XG in his ANAN interfacing document that is available in the files section of his Yahoo user group. I use high quality Dayton balanced and braided shield audio cable from Parts Express to connect everything together.

Connecting my external balanced audio chain to the ANAN's unbalanced line input at the DB25 connector was fairly straight-forward but I did find that it was susceptible to RF feedback unless I took a few precautions. The biggest precaution was to make sure the ANAN and the hardware components in the audio chain were bonded to the single point station ground. Another necessity was to use a 1:1 600 ohm transformer (Edcor Electronics Corporation) between the hardware audio balanced output and the ANAN DB25 connector's unbalanced line input. The last step, which was found through trial and error, was to ground the shield of the balanced audio cable to the external chassis ground of the ANAN. The importance of that ground lead between the shield and the ANAN's chassis/enclosure makes more sense to me after Chuck - K1KW shared that he discovered that the ground pins of the ANAN's DB25 do not go to the back panel chassis/enclosure ground but instead go directly through the internal ribbon cable to the Hermes/Angelia/Orion exciter boards. This means that any station RF that gets onto the shield of your audio cable will be carried inside the rig and allowed to cause all kinds of mischief. This almost certainly explains why many users encounter RF in their audio when they run their audio into the ANAN DB25 connector.

Those three steps have allowed me to operate without any trace of RF feedback from 160 - 10 meters at full legal limit. On 6 meters I only operate at up to 100 watts but have not experienced any issues on that band either. The diagram below shows what worked for me. No doubt every station presents its own challenges so all I can say is that this arrangement has not failed me yet.


2. CONNECTION OF THE EXTERNAL AUDIO CHAIN THROUGH A DIGITAL INTERFACE:  I became very interested in this approach after reading the DAW ASIO Setup Tutorial written by Scott - WU2O and seeing how simple and clean it can be. Scott has worked very hard to eliminate the latency that many have complained about when using this method and after following his suggestions I have to say that I can't detect any latency at all when I monitor my own TX audio in OpenHPSDR. The clincher for me was when I saw the price drop from $149 to $99 (with free shipping) on the UMC202HD interface at Sweetwater. When my interface arrived three days after placing my order it took less than 10 minutes to install the USB driver, run the USB cable from the interface to the computer, and patch the external audio chain into one of the front panel XLR balanced line inputs of the UMC202HD. The audio component chain now looks like this:

Marshall MXL-770 Studio Condenser Mic > DBX-286S Voice Processor > DBX-166A Compressor/Limiter >UMC202HD
>Station Computer USB Port

I'm not going to get into fine tuning the settings that affect latency because they are covered thoroughly in Scott's tutorial and if you follow his suggestions you will find latency to be a complete non-issue. I found the conservative values used in my screenshots below to be a good starting point but you will want to experiment with reducing the buffer size until you find the threshold point where audio dropouts begin to occur. From there move back to a more conservative setting that is 100% reliable on your system. The sampling rate (48k is recommended) and Asio buffer size you select for your digital interface should be matched in your VAC setup screen inside OpenHPSDR. Note that the VAC "buffer Latency" setting can almost certainly be reduced from my 60 ms setting shown below.


The big plus with this approach is that there is no physical connection between your audio chain and the ANAN which pretty much guarantees no issues with RF ingress. It also opens up the capability to utilize DAW software and a flood of free voice processing VST plug-ins if you wish to give that a try. I can't think of a single negative thing to say about using the digital interface approach with the ANAN and OpenHPSDR. Incidentally, you will find that this connection method makes running the Zeus Radio software with your ANAN as simple as making one mouse-click.

External Relay Approach for Bypassing the HPF Board With Pure Signal

(IMPORTANT NOTE: This article pertains only to early production Apache Labs ANAN 100/100D/200D rigs. The ANAN 100 watt rigs manufactured after February 15, 2015 that are equipped with the REV24 PA board utilize an internal relay and do not require the user to build an external relay box to eliminate internal crosstalk and wrap Pure Signal around an external amplifier.)

I use my ANAN 100 to drive either an ALS-600 or an AL-82 amplifier so I was very interested in using an external coupler behind the amplifiers to take advantage of Pure Signal's ability to provide correction to the entire transmitter chain. I purchased a beautiful RF coupler from AC2IQ which can easily handle full-legal limit power levels and has two -43 dB ports that allow me to provide a sample for my scope and also for Pure Signal.


With the simplest approach to this project you can run the Port A output from the RF coupler through a -20dB attenuator pad to one of the EXT ports and attempt to swamp out the internal crosstalk that is present in the ANAN 100, 100D, and 200D rigs that preceded the new PA board (Rev24) that began to appear in February of 2015. I found that this simple approach worked fine on 160 and 75 meters with ALEX disabled, "bypass on TX" checked, and "HPF Bypass on TX" checked. On 40 meters it seemed to work but with some power levels it appeared that the internal crosstalk was competing with the external RF coupler which caused the Pure Signal green light correction to flicker on and off. On higher bands the internal crosstalk seemed to swamp the external coupler and correction of the amplifier was seriously in doubt.

These results led me to follow the instructions in a document written by Bill Diaz - KC9XG that recommends re-routing several connections in the ANAN to bring J5 (RX1 input) and J13 (HPF output) out to the two SMA connectors on the back panel. By doing this and then using an external relay to switch the J5 connection between the J13 HPF connection on receive and the RF sample from your external coupler on transmit the internal crosstalk inside the rig is completely bypassed and Pure Signal can acquire a clean sample from the external coupler that will allow accurate correction of the entire transmit chain. Note that the "no holes drilled option" that I chose re-purposes the 10 MHz and transverter SMA ports. If you plan to use those features then you should choose the option to drill two holes in the back panel to bring J5 and J13 out to the back panel. The no-holes-drilled modification takes about 5 minutes to accomplish after you remove the front and rear panels from the radio and it is completely reversible if you wish to go back to the stock configuration. The details for performing this modification are found in Bill's document named "PureSignalRFModification1.2.pdf" located in the files section of the KC9XG Yahoo user group.

After studying the details for the no-holes-drilled modification I raided my junkbox and found a DPDT 12v relay, a 1N4007 diode, three BNC chassis connectors, an RCA jack, and a DC jack and plug. With those parts in hand I bought an aluminum Bud box, a 20 dB attenuator pad, 2 SMA male to BNC female adapters, and an SMA female to SMA female splice that is required to do the cable re-routing. When everything arrived, I quickly built the relay box and made the connecting cables necessary to get the job done. The inside of the simple relay box is shown on the left below and an external view is shown on the right. It's not pretty but it works beautifully.

1      2

With the box completed I connected it up to my station PTT system which is a very simple scheme where my T/R switch simply closes the ground path to a number of relays that are used to key my amplifiers, my rigs, and a few other tasks that now include switching the relay in the box to direct the ANAN's RX-1 port from the HPF on receive to the RF coupler's sample on TX. The block diagram below shows how simple this system is.

After checking that the relay box functions properly, make sure that Auto-Attenuate is selected (the default setting) in the Pure Signal 2.0 Advanced menu. Then, after loading up the amplifier to around 500 watts, enable Pure Signal by pressing the PS-A button that is located right under the ALEX button in the GUI. With just a few spoken syllables you should observe that OpenHPSDR mRX PS sets the S-ATT level to an optimal level so that the Feedback and Correction indicators are green. Pure Signal is fully implemented in OpenHPSDR mRX PS as adaptive pre-distortion which is supported by the ANAN's software controlled 31dB step attenuator that automatically adjusts the return RF sample in 1 dB increments to always maintain an optimum feedback level. This means that when you change your power level the RF sample is automatically adjusted to an optimal level on-the-fly. If you increase power, you are likely to see the Feedback indicator momentarily flash blue (RF sample too strong) and then back to green as the auto-attenuator sets the ANAN's internal attenuator appropriately. If you reduce your power level, you will see the Feedback indicator momentarily flash red (RF sample too weak) and then back to green as the S-ATT level is re-calibrated. The combination of hardware and software swiftly and safely makes these adjustments for you without any user intervention. One operational caveat to note is that it's unwise to adjust the Drive slider while you are talking if Pure Signal is enabled. Nothing horrible will happen, but Pure Signal will almost certainly unlock and then re-calibrate, which can make your signal pretty ugly for a few seconds for any stations adjacent to you. Adjust the Drive level while the other guy is talking, and then when you begin your next transmission, Pure Signal will quickly and smoothly re-calibrate.


With my ANAN-100 the results across all the bands from 160 - 6 meters have been spectacular leaving no doubt that Pure Signal is now correcting the entire amplifier chain to IM3 approaching or exceeding -50 dB. With no competition from the internal cross-talk Pure Signal works smoothly and glitch-free on all bands. The directions in Bill's modification document are very detailed and precise with page 12 giving a very concise summary of exactly what is involved for re-routing the cables inside the ANAN 100. I would definitely recommend this project for anyone who is serious about wrapping adaptive pre-distortion around their entire transmitter chain. The two screenshots below show a typical amateur transceiver operating on the left and a splatter-free ANAN transceiver with Pure Signal operating on the right. Which one of these stations would you rather have chatting on a frequency adjacent to you?

8    9

Setting up Pure Signal with a REV 24 ANAN

In February of 2015 Apache Labs began installing a new 100 watt power amplifier board identified as a REV 24 board in the ANAN 100/100D/200D. The major differences between these new boards and the older REV15/16 boards is the inclusion of an internal RF coupler and the re-purposing of several internal relays for Pure Signal. The image below shows the simple hardware connections when using an external coupler such as the Xtronic XDC-1 with an ANAN that is equipped with a REV 24 power amplifier board. Since the new REV 24 PA board handles the relay switching internally there is no need to re-route internal cables and utilize an external relay as you do with the older REV15 and REV16 boards. Note that the REFLECTED port of the XDC-1 should be terminated with a 50 ohm load in this application.

1. In OpenHPSDR go to Setup>General>Ant/Filters and in the Antenna form select “Bypass on TX” as shown in the image below.


2. In OpenHPSDR mRX PS go to the Linearity menu located along the top of the GUI and in the PureSignal 2.0 form make sure that “Auto-Attenuate” is enabled (the default setting) as shown in the image below.

3. To test your setup, with your ANAN and amplifier connected to a suitable dummy load, set your Drive level to a value that will produce around 500 watts from your amplifier and click the “Two-Tone" button in the PureSignal 2.0 form. The Correcting Light in the bar below the Panadapter display should turn green and the Feedback Level should begin flashing green within a second or two as the Pure Signal algorithm sets the Feedback Level optimally with the ANAN’s internal step attenuator. When both conditions are observed, click the Two-tone Gen button again to return to RX. Note that during normal operation with Pure Signal enabled the Correcting light will display a steady green indication and the Feedback Level will flash green regularly as your signal is continuously re-sampled.

4. Increase the Drive level to produce around 1000 watts from your amplifier and click the “Two-tone Gen” button in the PureSignal form. Observe that the Correcting Light turns green and the Feedback Level begins to flash green regularly after Auto-Attenuate adjusts the Feedback Level.

5. Repeat step 4 again with a Drive level set to produce 1500 watts from your amplifier and click the “Two-tone Gen” button in the PureSignal form. Observe that the Correcting Light turns green and the Feedback Level begins to flash green regularly after Auto-Attenuate adjusts the Feedback Level.

Note that during normal operation, it's not necessary to use the two-tone test to run Pure Signal. With just a few spoken syllables you should observe that OpenHPSDR mRX PS automatically sets the S-ATT level to an optimal level so that the Feedback and Correction indicators are green. Pure Signal is fully implemented in OpenHPSDR mRX PS as adaptive pre-distortion which is supported by the ANAN's software controlled 31dB step attenuator that automatically adjusts the return RF sample in 1 dB increments to always maintain an optimum feedback level. This means that when you change your power level the RF sample is automatically adjusted to an optimal level on-the-fly. If you increase power, you are likely to see the Feedback indicator momentarily flash blue (RF sample too strong) and then back to green as the auto-attenuator sets the ANAN's internal attenuator appropriately. If you reduce your power level, you will see the Feedback indicator momentarily flash red (RF sample too weak) and then back to green as the S-ATT level is re-calibrated. The combination of hardware and software swiftly and safely makes these adjustments for you without any user intervention. One operational caveat to note is that it's unwise to adjust the Drive slider while you are talking if Pure Signal is enabled. Nothing horrible will happen, but Pure Signal will almost certainly unlock and then re-calibrate, which can make your signal pretty ugly for a few seconds for any stations adjacent to you. Adjust the Drive level while the other guy is talking, and then when you begin your next transmission, Pure Signal will quickly and smoothly re-calibrate.

6. Note that in all the steps above the auto-attenuation test can be accomplished just as well by transmitting your voice with the ANAN. While you are operating, if you do not observe the Feedback Level indicator flashing on a regular basis as you are speaking, it is likely that your audio chain is not forcing the ALC to reach 0 dB on peaks. You can easily correct this by using the Leveler in OpenHPSDR to raise your TX audio gain in increments until the ALC level is reaching 0 dB on a regular basis. Note that the TX audio chain of OpenHPSDR is completely different from the old Flex version of PowerSDR and in fact it needs to be driven hard for optimal voice operation. Look-ahead algorithms in the code of OpenHPSDR prevent the user from over-driving the transmit audio on peaks. When transmitting with your ANAN it can be useful to monitor "ALC Comp" with the TX Meter to assure that you have at least several dB of ALC compression as shown in the screenshot below.


What Effect Does the Leveler Have On TX Audio?

While playing around with different Leveler settings I was having difficulty deciding what the optimal value should be with my ANAN-100. Instead of flying blind with audio settings I find it helps to make an I/Q recording with my Fichten Field Day SDR that is run on a separate computer at the other operating bench across the room. Although the FiFi SDR is not exactly pristine in the receive audio department and it has its share of little spurs that show up on the pandadapter it's good enough to make it pretty clear when things sound clean and when you reach the point where the audio is degraded. The video below was made with my ANAN-100 driving my amplifier to just under 1500 watts while running into a dummy load. The Fichten Field Day SDR was coupled to the second -43 dB port of my AC2IQ sampler with additional attenuation adequate to prevent overloading or damage to the FiFi SDR.

The short story is that with my ANAN using Pure Signal set to its auto-calibrate mode while driving my amplifier close to legal limit the Pure Signal feedback indicator stopped flashing at 1 second intervals when I dropped the Leveler to "0". It began updating again at 1 second intervals as soon as I moved to a Leveler setting of "1". It would seem that with the way my audio levels are set I need the Leveler active and set to at least "1" if I plan to use PS with auto-calibration enabled.

I suppose that how high the Leveler should be set falls into the subjective zone as the only effect I could detect was a very compressed sound at Leveler settings above "10".  In the video capture below I started with the Leveler disabled and then stepped through the following settings: 0, 3, 5, 10, 15, and 20. Keep in mind that unlike the Leveler in the Flex version of PowerSDR the Leveler in OpenHPSDR acts as a true compressor/limiter. It increases your average audio density and limits the maximum amplitude. You can see this clearly with the waveform view of the audio track that I ripped from the YouTube video embedded below. Look closely and you can see that the maximum audio peaks are held to approximately -3 dB but the average audio density increases dramatically. The look-ahead algorithms used to accomplish this handle the task beautifully and allow you to bring your average audio up without introducing distortion. It's the same effect that you might have noticed when television stations or broadcast radio stations run commercials that sound much louder than the regular program content. You'll hear the difference in the video near the end when the leveler is stepped down from the maximum setting of 20 to 0 and then disabled completely. It's a subjective decision how much compression and limiting you want to use but you might find some stations won't like you "yelling at them" with higher settings!

High settings of the Leveler will not cause splatter since the look-ahead algorithms in OpenHPSDR absolutely prevent the ANAN from any ALC excursions beyond 0 dB. Additionally, no matter what the Leveler is set to with Pure Signal active your signal will maintain an impressively clean look when viewed by other stations, assuming they have a panadapter. Adjust the leveler to what sounds good to the stations on the other end and if you plan on using Pure Signal I would suggest keeping the leveler engaged with values that reliably trigger regular feedback level updates for auto-calibrate correction. Keep in mind that the Leveler setting is stored in each of your TX profiles so you need to save it to each profile. I ended up moving my Leveler setting from "3" to "5" in all my TX profiles and no one has complained that I'm yelling at them yet.

I/Q recording of the ANAN with Leveler settings from "0" to "20" for comparison purposes.

Waveform amplitude of Leveler settings from "0" on the left side to "20" on the right side.

Restoring A Missing CPU Utilization Display in the OpenHPSDR GUI

THE USUAL FIX:  When the "counters" settings in the Windows registry becomes corrupt the option to display information about various system parameters may become unavailable. To restore this capability Windows can restore the list of available counters by running a command line routine. Follow the steps below to restore the functionality of all the available counters in Windows:

Note: Membership in the local Administrators group is required to complete this procedure.

To rebuild the list of counters in the registry:

    Click Start, expand All Programs, and expand Accessories.
    Right-click Command Prompt, and then click Run as administrator.
    At the command prompt, type lodctr /R and then press ENTER.

If all is well, when you start up OpenHPSDR your CPU Utilization display should appear in the lower left corner of the GUI.


THE DEEPER DARKER FIX:  In my case, the usual fix did not work. When I did my google research I found an obscure Microsoft article related to Windows Server 2008 that explained how a single registry key could cause the CPU performance counter to still not work even after doing "the usual fix". Apparently, some misbehaving software can simply toggle off one or more of the Windows performance counters and inadvertently end up disabling your CPU Utilization readout in OpenHPSDR. This turned out to be the problem with my system.

I would suggest that you create a restore point before proceeding. Once that is done, open up the Registry Editor, and as a second precaution, export a copy of your current registry to your desktop or to a safe folder. When that is done, Follow the steps below:

1. Browse to this location:   HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\PerfOS\Performance

2. Check to see if an entry named Disable Performance Counters is present as shown in the screenshot below. Note that a Data value of 0 enables the counters and a value of 1 disables them.

3. If that entry is present, and it has a value of (1) as shown below in the screenshot, right click on the Disable Performance Counters category name and then left click on Modify

4. In the Value data field, change the value from 1 to 0 to turn the counters on.

5. Close the Registry Editor and you are done. When you start up OpenHPSDR mRX PS your CPU Utilization counter in the GUI should run fine.

A List of Helpful Links for Apache Labs ANAN Users

Thanks to the efforts of a lot of dedicated people there's plenty of documentation you can refer to that will make your life easier. The links below will take you to places where most of the questions you probably have pondered have been answered and a simple search of the messages and documents may give you the information you need:    The official Apache Labs user guides for each hardware platform.    The official Apache labs Forum with the most up-to-date information about all the ANAN hardware, firmware, utilities, and software. Lots of help is here for anyone with questions.    The direct download site with the latest releases of firmware and software for all ANAN hardware. There is also a repository for all past versions of firmware for your ANAN.      Bill Diaz - KC9XG has authored much of the ANAN documentation archived here. Ken - N9VV is another prolific contributor to the documentation.       Barry - N1EU has created a Wiki that centralizes information about all aspects of the ANAN transceivers. There are quick tips and much more at this repository.     The OpenHPSDR page has links for downloading utility software (HPSDR Programmer and HPSDR Bootloader) that is used for updating the ANAN firmware and for setting a static IP address if that is desired.     This blog by Chris - W2PA gives quite a bit of insight into the kind of detail developers are working with as they are coding. I don't know how Chris and the other developers can keep all those lines of code straight!     As the new owner of a 200D I really enjoyed reading about the experience that John - W1JA had as he set up his 200D. It's loaded with solutions to the problems many of us have faced.    The latest release of SDR-Console (Version 3) for the ANAN transceivers. (Note: This software requires Protocol 2 firmware for your ANAN and does not yet support all models.)     The latest release of the beautiful CuSDR software created by Herman - DL3HVH. (Note: This software currently supports RX only but it's definitely a keeper.)    Zeus Radio software that is capable of TX and RX with your ANAN.  (Note: This is a trial version of the software that will run for a limited time.)     Nigel - G7CNF has some very informational videos about the ANAN rigs that can help you with setting things up. The Pure Signal Tutorial is especially well done.     Information from Apache Labs, software and firmware developers, and users. (Note: This group is being replaced by the Official Apache Labs Forum.)   A quick setup guide for optimizing your TX audio levels at 4 points in the audio chain.   
A quick setup guide for optimizing your TX audio levels when utilizing the CFC Audio Tools.

Return to the top of the page

Return to the W1AEX index page