Slowfeld - An Experimental Slow Speed Hellschreiber Program by G3PPT -------------------------------------------------------------------- General ------- In the process of trying to push propagation to the very limit, especially on the new LF bands, many amateurs are sending very slow morse which is then received on an audio decoding program which displays the results of successive Fast Fourier Transforms (FFT's), the "Waterfall Display". The CW characters may be seen as bars in the respective "bin" that the received audio frequency decodes to. As the signal disappears into the noise, it becomes increasingly difficult to decide whether there is a dit, dah or neither. The Hellschreiber method is a form of facsimile (FAX) whereby alphanumeric characters are scanned in vertical stripes and transmitted as CW with "ON" for black and "OFF" for white. The clever part is that on reception the signal is scanned at the same speed used for transmission but plotted twice one above the other. This gets over synchronisation problems in that as the output scrolls off of the top half of the display it scrolls on to the bottom half. Further, even with fairly large speed discrepancies between send and receive, the display can still be read albeit with text sloping up or down depending on the direction of the speed error. One enormous advantage of the Hellschreiber principle is that as the signal goes down into the noise, the eye can still interpolate characters with parts missing through QSB or obscured with QRM. A good starting point for info is the Web Site at http://www.qsl.net/zl1bpu/ This experimental Windows program uses a soundcard to send/receive alphanumeric text in the classic Hellschreiber font at 3 very slow speeds of 2, 1 and .5 chars/minute. For reception, a 2048 sample FFT is used at a sampling frequency of 5512.5Hz which is half the standard soundcard sampling frequency of 11025Hz. The problem of tuning into and holding a channel 2.6Hz wide is overcome by using ten adjacent FFT bins at 1000Hz and plotting each of them as individual Hellschreiber entities. Thus, so long as you can tune in to within 26 Hz or so, the decoded Hellschreiber will appear somewhere, and some drift can be tolerated. The three speeds are realised by sending each vertical column of a given character once, twice or four times respect- -ively. This means that the decoded output just spreads out for the slower modes and conveniently avoids the complications of altering the receive FFT sampling regime. There you have it. A program that is tolerant of frequency stability, has absloutely no synchronisation and can follow signals down into the noise, Dr Rudolf Hell's invention has a lot going for it! Physical Connections -------------------- Connect up the audio output from the radio receiver to one or both line inputs of the soundcard. Connect up on of the audio outputs of the soundcard to a suitable transmitter audio input. Check that the input level to the card is such that audio may be recorded without distortion using a Windows recording program. The transmitter PTT may be operated from the RTS line and transmitter keying may be derived from the DTR line of a spare COM port which is enabled from the SetUp menu. The Program ----------- The program is written in C++ Builder and the author uses a 133MHz Pentium with Windows95. The program has been compiled for speed which means that Pentium pipeline instructions are called. Run the program, and run Set-up from the menu bar which allows you to enter your callsign, (this being needed for several functions), and also to choose a COM port for TX keying if required, or none if you are feeding audio into an SSB TX. On receive, you will notice the main FFT waterfall display on the right of the screen, this being narrow but adequate for tuning in purposes. 256 out of a possible 1024 bins are displayed and have been chosen such that the frequency range 659 to 1348 is catered for, bracketing the working frequency of 1000Hz. The active band is bracketed between two red bars and the received signal must be tuned in between these, tuning being very "tight". The green "I/P Level" square is simply an overload indicator and will flash to red if input overload to the sound card occurs. The sensitivity slide bar alters the multiplication factor applied to the FFT results and should be set for the display contrast required. Note that the input level to the soundcard must first be set for optimum as outlined above. The threshold slide bar allows for the subtraction of a background component in conjunction with the sensitivity control. Careful with this, it is very easy to subtract wanted signal. It is probably best to use this only with the play recording facility, (see later). Text for later transmission may be typed in ahead and goes into an edit window. Following the comments above re setting up the input level to the soundcard, note the green square which will flash red if input overload occurs. On transmit, a number of buttons become enabled. The "Tune up on" generates a tone for setting up the audio level fed to the transmitter which may be adjusted after opening the Windows soundcard setting window. It is VITAL that you do not overload the transmitter so keep a very wary eye on the output level and also monitor ALC. The tone times out after about 20 seconds. Keying a straight CW rig rather than feeding audio to an SSB rig may be achieved by using the DTR line of a spare COM port. There is a simple unit described in the April 1999 issue of RadCom allowing audio to key a transistor that then operates a relay which could be used if a COM port is not available. Use of the File Menu command "Send File" command reads a text file from disk and places this in the TX buffer. The CQ button puts a brief CQ message into the transmit type ahead buffer which is sent once the program goes to transmit. The Clear Tx Buf clears all characters from the type ahead buffer other than any actually being processed. With an experimental mode such as this the CW ident is vital and will operate once the station callsign has been entered in the Set-up procedure. Once the TX button has been pressed, any characters already in the type-ahead buffer are transmitted and characters typed in from the keyboard join the queue. Since, at these slow speeds there are periods where nothing much seems to be happening, a "Send Buffer Index" monitor is provided that shows progress through the current character transmission as a pointer counts down to zero. The font used is a copy of the classic Hellschreiber and lower case letters are not catered for, any lower case characters fed to the TX buffer are converted before transmission Recording and Beaconing Facility -------------------------------- There is a facility available in the row of buttons for "recording" a period of reception corresponding to one screenful of slowfeld data which takes about 45 minutes to receive. In fact it is the FFT data for the 256 bins of data corresponding to the frequency range 659 to 1348 Hz which is actually saved and this gives enormous flexibility in frequency selection and stability. The recording may be manually started from the "Record" button and stopped using the "Close Record" button, if left alone, the program will close the recording down when a screenful has been saved, corresponding to a file size of around 7.5 MByte. At present only one file is allowed and this is named "STORE.DAT". To set up a timed recording, invoke the recording menu from the top of the screen and then the "Set up record start time" filling in the various edit windows of the sub screen, navigating between them with the mouse. Note that all four digits of the year must be given, and with luck we shall be year 2000 compliant! Some checking is done on the data entered but it is very difficult to make it foolproof, please enter sensible data and check it on the display that comes up. Similarly a record stop time may be set up although this is not vital as the recording will close down when a screenfull has been stored. To inspect a recording, invoke the "Recording/Play recording" option. To start things off, click on the "Waterfall" button and in due course you will see the FFT data displayed as a waterfall, with the bin groups interleaved with green lines and the main group at 1000Hz as received in the live mode bounded in red. Adjust the sensitivity and threshold controls and press waterfall again repeating until the display is optimum. If you see evidence of Slowfeld activity in a given channel number then select that number using the trackbar and click the Slowfeld button. Results should now be apparent and the sensitivity and threshold trackbars adjusted in conjunction with replotting for optimum readability. In order to get the waterfall data on to one screen, the data is averaged. This can have the effect of making weak signals difficult to spot. There is no real substitute for calling up the slowfeld screen in such circumstances. The beaconing facility may be set up in a similar manner to recording. Invoke the Beaconing/Set Up Beacon Start Time from the top menu and fill in the various edit windows. After the OK button is pressed, you will be prompted for the actual text to be beaconed. There is a maximum of 80 characters allowed but bear in mind what can be received in a 45 minute storage period at the chosen transmission speed, and choose accordingly. A Beacon Stop Time can be selected in a similar manner, if one is entered the beaconing will stop, a cw ident will be sent, and the program will go back to receive when the stop time is reached. Otherwise, this will occur when all the text has been sent. Version ------- 1.1 December 1999 Corrected slight error in the way FFT data is displayed. Final Note ---------- This is a highly experimental development program. If it shows promise there are a number of improvements that can be made. I cannot guarantee that it will work with all soundcards. I would be very pleased to hear of any results using this program. Email me on: lionel@lsear.freeserve.co.uk