for the


By Murray Greenman ZL1BPU

This is a controller for any appropriate FEI Rubidium Signal Generator, such as the FE-5650A or FE-5680A, based on a ~50.255MHz Rubidium locked source using binary Direct Digital Synthesis. The program takes decimal or hexadecimal commands, calculates the required binary command, and adds a calibration offset, then sends the frequency command to the unit.


This information relates to:

RUBY4.EXE 28/09/09 Copyright (C) 2005-2009 Murray Greenman ZL1BPU

This application is used to set the operating frequency for the Frequency Electronics Inc FE-5650A or FE-5680A Rubidium DDS Synthesizer, which uses a simple half-duplex serial communications protocol at 9600bps. The software will operate from zero to 20.999MHz, although the generator may not have useful output over this range (depends on modifications made).

For this application to operate correctly, you need to have made the serial communications (and preferably additional) modifications to the synthesizer, as suggested by Don Latham et al. For more information, see:

There is also an equivalent program (RUBYP2) which allows the FE-5650A/FE-5680A to be used as an LF/MF/HF exciter for Amateur Radio use. It includes script capability so it can transmit a pattern of ASK, FSK or MFSK tones in any predetermined pattern, allowing multi-mode transmission of OOK/FSK Morse, DFSK, CASTLE and even Sequential MT-Hell. The script can be any length, and can handle up to 16 equally spaced frequencies. The frequency spacing and transmission rate are script programmable and can be changed on the fly.

RUBYP2 will operate on any predetermined frequency within the generator's range, and will also act as frequency controller in the same way as RUBY4. See the third reference (above) for more information and a screen-shot example. This program is highly suited to QRSS low-powered operation. See the author for software - ask for 'RUBYP2'.

Setup Information

Connect the serial cable to COM1 or COM2 on your PC. The program will work with USB serial adaptors, but you must reassign the adaptor to COM1 or COM2.

Install the program (this program) in a folder of your choice, placing the setup file RUBY.SET in the same location.

Use a text editor to alter the RUBY.SET file as follows:

First line:     1 or 2     (number of COM Port to use)
Second line:    8388608.0  (default frequency of YOUR FEI Standard in Hz)
Third line:     2ABB4D86   (YOUR 'F' value for the default frequency)
To find the 'F' value, first use a terminal program and the 'S' command to determine the value. The unit will respond something like this:
     R=50255057.204640Hz F=2ABB4D8600000000
It is the first eight characters after 'F=' that are of interest (the characters that are highlighted in RED). YOUR actual characters may be different.

If your default frequency is not 8388608Hz, both 2nd and 3rd line numbers (in the .SET file) will be different. Just use the values you have. You should specify frequency in Hz to two decimal places at least, and use full 8 character hex resolution!

Save the file and then run RUBY4.EXE. You can make a shortcut to it if you wish. The program will operate in a DOS box from most operating systems, and will also operate on an HP200LX Palmtop.

The Program

The program will run in a DOS box. See the screenshot on the right (click on the image for a full-size view). If when you run the program you see it full-screen, press <ALT> + <ENTER> to change to a DOS box.

The information at the top right of the screen shows the setup information. In the middle at the bottom are three boxes. In the left box, you enter the frequency you want; in the second the frequency sent to the generator is confirmed, and in the final box the HEX command sent is shown. If you enter a wrong value, the second and third boxes remain empty.

You simply type in the carrier frequency you want in Hz, with no commas. You can enter up to two decimal places, which will be recognised correctly, since the generator has a resolution of about 0.01Hz. You can enter a direct DDS synthesizer command in hex by adding '#' before 8 hex characters.

The operating range of these units (correctly modified) is about 1kHz to 15MHz, but the nominal +9dBm output level drops off at both ends of the frequency range. The software allows operation from zero to 20.999MHz.

You can quit the program by simply pressing 'ESC'. To access help information, press 'F1'. There is no synthesizer start or stop command, but since there is no lower frequency limit, so you can effectively stop the generator by entering a frequency of zero (0).

If your unit is in need of calibration, this program will still operate accurately, provided you enter the MEASURED frequency instead of '8388608' in the RUBY.SET setup file.

73 de Murray ZL1BPU