ARGO a QRSS Viewer by I2PHD & IK2CZL Beta 1, build 128 Apr. 9th, 2001 Change History at the end. Legal disclaimers at the bottom, after the Change History, where they belong. Argo is program for viewing QRSS signals, i.e. very slow CW, or DFCW signals, i.e. slow CW where dots and dashes are of the same length, but offset in frequency by a few Hertz, or even a fraction of an Hertz. The name Argo is taken from that mythical ship which, with the Argonauts on board, headed to Colchis, in the quest for the Golden Fleece, much like the LF Hams are in search of that fraction of dB of S/N which will allow them to make that elusive QSO. INSTALLATION ------------ If you are reading this, probably you have already expanded the archive. If not, just execute it, it is a self expanding file. Give the target directory name when asked. That's all, no files are copied to the Windows directory, in blatant disrespect for the rules set forth by some Bill. At this point execute ARGO.EXE in the target directory. From the main menu choose Setup | Select Input The Windows mixer panel should now open. Depending on your sound card it will open directly at the Recording Control subpanel, or at the Playback subpanel (which may be labelled differently). In this second case, choose Options | Properties then Recording. In the recording panel choose which input you want to use, and the relative level. That's all. If you have other soundcard programs that work with your current configuration, probably you don't have to modify anything. RUNNING IT ---------- The usage should be quite intuitive. The Start button starts the spectrogram. The Mode menu choice allows to set the viewing mode to 3, 10, 20, 30, 60, 90 and 120 sec/dot, to select or deselect the full band viewing, the length of the time ticks (short or full stroke), and to choose which spectral estimator to use for the color mapping in the spectrogram. A few words on this. The default is 'Magnitude', i.e. the so-called 'Voltage Spectrum'. You can also choose 'Magnitude Squared', the so-called 'Power Spectrum'. Which one to choose is up to you. The magnitude gives a less marked contrast, and maybe is more useful when searching for a signal all over the band. When you have found one, try to select magnitude squared, and perhaps to readjust the two sliders marked Sensitivity and Contrast, to make the wanted signal to better stand out from the noise. The Speed menu choice allows to set the spectrogram refresh speed to Slow, Normal or Fast If you click on the spectrogram, the behaviour depends on the mode you are in. If in Full Band View, the display will change from vertical to horizontal, centered at the chosen frequency, keeping the last resolution used. If you are already in the horizontal display mode, the chosen frequency will be simply brought at the center of the range. If you do a right-click, the mode toggles between full band view and the currently selected dot mode, without changing the center frequency. When you just hover the mouse on the spectrogram, the frequency corresponding to the mouse position will be indicated, together with its relative signal strength. The 0 dB reference level can be selected between the magnitude of a monochromatic signal that would just saturate the ADC of the sound card, or the magnitude of a signal arbitrarily selected with the mouse. The relative magnitude displayed near the peak frequency is however always referred to the ADC full scale. When in full band view, the frequency spans from 0 to 2756 HZ, thus covering all of the 136 kHz band. Just click the left mouse button when on the upper frequency scale and, keeping the mouse button down, drag left or right the scale to see the desired portion. When exiting from the program the current settings will be saved in the Registry, and restored at next start. Additionally, you can save the current settings under a given name, and reload them in a subsequent session. Thus you can have multiple settings, for each favourite listening mode. A small square just on top of the level bar indicates with its color (green or red) whether the CPU is overloaded. No harm is caused by overloading, just the screen refresh speed becomes slower. The Visual Gain panel has three choices, AGC, Low and High. They refer to the type of processing done when mapping between signal magnitude and saturation of the spectrogram. The spectrogram works in the HSV color space, where H has been chosen arbitrarily by me as a pleasant (!) blue, V and S are the output of the non-linear mapping algorithm. The AGC choice does not refer to the AGC function that some sound cards have. Instead it makes the mapping above mentioned between the spectrum values and the color saturation on the waterfall, such that it depends only on the ratio between the instantaneous value and the low quartile boundary increased by 3 dB, which is a good representation of the current noise level (thanks to Andrew Talbot, G4JNT, for this idea). With AGC off, the absolute value of the current spectrum sample is used instead, with a fixed gain selected between Low and High. The net effect of having AGC on is to make the waterfall largely independent of the input audio level (of course within limits...). Try for yourself. CAPTURE ------- The program has a builtin facility for capturing its window to a disk file, at timed intervals. To activate it, choose Capture | Setup from the main menu, to specify the radix of the capture files. The program will use this radix, adding a 5-digit progressive suffix. Then you will be asked for the number of seconds of interval between each capture. With a very fast PC you can even say 1 second, but better not... There is no maximum value. Then choose the format, JPEG or BMP. A BMP image will take slightly more than 1 MByte, while a JPEG image usually is in the order of 100 kByte, so use JPEG unless you know in advance that you will not be able to process this format. A note here : when capturing in JPEG format, if your PC is set for 256 colors only, some artifacts may be seen in the captured image. For optimal results, with JPEG set your Windows for more than 256 colors. The Start and Stop choices in the Capture menu speak for themselves. The Start choice is enabled only after having specified the capture parameters. The Capture Now choice take a snapshot of the screen when pressed. The screen capture, starting from build 123, works also if the Argo window is covered by anoher window, or if a screen saver is active. What happens is that Argo will pop out for a fraction of second, the capture is done, then the previos window, or the screen saver, is given back the focus. LOGGING ------- Starting from build 127, Argo has a couple of logging features : - Serial Log : The frequencies of the ten strongest frequency components are output to COM1 or COM2 (selectable), sorted in decreasing magnitude order. This can be used for FDK experiments, or for DFCW outboard decoding. The serial speed is fixed at 9600 bit/sec, no parity, 1 stop bit. The format is the following : the string 'FDKDATA ' (8 bytes) time stamp, HH:MM:SS (with or without the AM/PM indicator, depending on your locale settings) ten binary words, 4 bytes each, with the frequencies in Hz of the ten strongest peaks, sorted in decreasing magnitude order. - File Log : the magnitudes of all the bins displayed in the current running mode are logged to a file, with a comma-delimited format, useful to be imported in, let's say, Excel or Access. The file name and the logging interval are selectable, and each snapshot is time-stamped. The format is the following : time stamp, of the form "DD/MM/YY HH:MM:SS" (again the exact format depends on the locale settings) starting frequency (ASCII float format) frequency increment between consecutive values (ASCII float format) number of values (ASCII integer format) N values, where N is given by the field before (ASCII float format) All the fields are separated by a comma. As an example, here following is the beginning of an actually logged row : "08/04/01 11:32:53",18.842,2.691650,560, 524.19,1113.27,1382.22,......etc. etc. ----------------------------------------------------------------- Don't know what else to say, the program is so simple to use that no other explanations should be needed. In case you have doubts, questions, requests for enhancements, etc. send me an email at : dibene@usa.net or i2phd@qsl.net Alberto di Bene, I2PHD ----------------------------------------------------------------- Change History Beta 1, build 110 (Dec. 27th 2000) - First release Beta 1, build 113 (Jan. 6th 2001) - Full band view expanded to 2756 Hz, and made scrollable. - Display of the mouse frequency. - Added 'Magnitude Squared' as spectral estimator. - Modified the AGC algorithm. - Minor esthetical changes (changed also the program icon, to not clash with SpecLab, sorry Wolf...) - A few bug fixing. Beta 1, build 117 (Jan. 21st 2001) - Added the choice between Slow, Normal and Fast Speed - Added 3 new QRSS modes, 60s 90s and 120s dots - Minor adjustments in the code Beta 1, build 119 (Feb. 3rd 2001) - 90s dot mode now enabled - Automatic save and restore of the settings - Improved panel to specify capture parameters - Facility for frequency calibration, both additive and multiplicative - Buffer allocation streamlined, saving more than 10 MB - More exact timing for capturing (now independent from the vagaries of Windows) - The ticks spacing has been doubled in each mode, to avoid excessive crowding - A couple of bugs, that caused random hangs, now exterminated Beta 1, build 120 (Feb. 11th, 2001) - More ticks on the frequency scale (ticks each 0.1 Hz at maximum resolution) - Named saving/loading of the settings - CPU overload indicator - Minor adjustments in the code Beta 1, build 123 (Feb. 21st 2001) - Screen capture now works even if the Argo window is covered by other windows. - When reloading saved settings, you don't have to type their name, but just make a choice in a list box. - CPU overload indicator now works ok, as the MasterTimer and the DoProcess routines are placed in different threads. This has also some more beneficial effects. - Frequency scale ticks algorithm slightly revised and amended. - Some code adjustment and error correction. Beta 1, build 127 (Apr. 8th 2001) - Added the 20s dot mode, upon request. - Right-clicking with the mouse on the spectrogram toggles between full band view and the current dot mode, without changing the center frequency. - The Visual Gain can now be set to : AGC, Low, High - The length of the ticks is selectable between short (as before) and long (full stroke across the spectrogram). - The peak frequency is now computed with a quadratic interpolation between three consecutive bins. - An indicator of the relative signal magnitude has been added, both near the field showing the mouse cursor frequency, and as a floating text that follows the cursor. The 0 dB reference level can be selected between the magnitude of a monochromatic signal that would just saturate the ADC of the sound card, or the magnitude of a signal arbitrarily selected with the mouse. The relative magnitude displayed near the peak frequency is however always referred to the ADC full scale. The dB display has a lower limit of -120 dB (computers still have to learn the concept of negative infinity...) - A couple of logging features have been added : - Serial Log : The frequencies of the ten strongest frequency components are output to COM1 or COM2 (selectable), sorted in decreasing magnitude order. This can be used for FDK experiments, or for DFCW outboard decoding. - File Log : the magnitudes of all the bins displayed in the current running mode are logged to a file, with a comma-delimited format, useful to be imported in, let's say, Excel or Access. The file name and the logging interval are selectable, and each snapshot is time-stamped. For both forms of logging, see the Readme for the exact format. - Some code adjustment, tuning (should require less memory) and error correction. Beta 1, build 128 (Apr. 9th 2001) - Stupid bug fix : I had used 10*log10( instead of 20*log10( .... ------------------------------------------------------------------------------- Oh, I was forgotting the disclaimers. Here they are. DISCLAIMERS ----------- The authors will not be liable for any direct, indirect, consequential or incidental damages to other pieces of software, equipment, goods, or persons, arising from the use of this software. The authors are not liable for any possible illegal use of this software, and for any other act arising from the results obtained from the software. Although the use of the software ARGO is free for the purposes described in the present document, it is *not* a public domain software. The authors retain the full copyright on the software binaries, the source code, and the user interface. ARGO is a Copyrighted property of: Alberto di Bene, I2PHD dibene@usa.net via Albignano 28 I-24040 Casirate d'Adda (BG) Italy Vittorio De Tomasi, IK2CZL ik2czl@amsat.org Via Melzi d'Eril 10 I-20154 Milano Italy (c) 2000, 2001 The use of this software is free for hobby and research purposes. If used for commercial or industrial purposes, you must obtain a licence agreement from the authors. The program can be freely distributed, provided that you don't charge money for this, except for the cost of the transfer media, and that this text document is distributed as well. The commercial distribution of the software without the permission of the authors is strictly forbidden. ---------------------------------