Interface Information


What is 2 and 4 level FSK?

When I say "2 level FSK" or "4 level FSK" I am referring to the carrier frequency of the transmitter. When your scanner's FM discriminator processes such a transmission, the output (ideally) will be a waveform jumping back between two discrete voltage levels (2 level FSK) or four discrete voltage levels (4 level FSK). The 2 level FSK interface simply detects the zero crossings that occur as you are switching from a '1' state to a '0' state or vice versa.

The 4 level FSK waveform carries two bits of information at the same time; your scanner for example may produce an -3,-1,+1, or +3 volt output to indicate a '11','01','00',or '10' respectively. You may well wonder how a 2 level FSK interface can work on a 4 level FSK FLEX transmission. The reason is that the two bits represent completely independent data streams. In the above example, a two level interface will produce a '1','1','0', or '0' in response to the 4 different possible voltage levels. You can see that one data stream can be properly received, the other data stream is completely lost, so you will end up missing perhaps half the paging messages.


TWO LEVEL INTERFACE

I believe I found this interface schematic at That site is well worth checking out since you can see all sorts of things this kind of interface can be used for.

This interface is very simple and takes its power from the computer's serial port. This particular version does not have a Schmitt trigger input and therefore is more suited to working with your discriminator output.


4 Level FSK interface

(Cheesiest is easiest)

Here's the 4 level FSK interface. Basically, it can be looked at as some sort of horribly mutated 2 bit flash A/D convertor. Its purpose is to signal to the computer which of four possible voltage ranges the incoming signal is in at a given instant. As an example, let's say your scanner's discriminator output produces voltage levels of -3,-1,+1, and +3 volts when receiving a four level FSK signal. The peak detectors quickly charge up to +3 and -3 volts; the resistive voltage divider network derives three comparision voltages; and the comparator outputs will then show 0, 1, 2 or 3 lines high in response to the four different possible transmitted symbols. The program reads in received symbols simply by counting the number of modem status lines that are set.

This interface automatically adjusts to different carrier frequency offsets and frequency deviations affecting the DC offset and amplitude of your discriminator output (the resistive divider network bleeds off the voltage storage capacitors with a relatively long time constant).

I really prefer direct coupling between between the interface and the scanner's discriminator output. When doing this one must ensure that the positive peak detector sees voltage peaks above ground, and the negative peak detector sees voltage peaks below ground. This may require a level shifting circuit if your discriminator output has a voltage bias on it. On the other hand - AC coupling is a little simpler to get up and running; if it works well then you might want to stick with it.

You may also want to add some sort of low pass filtering after the buffer amp, especially if the program's hang up counter increments at too high a rate. While you probably won't ever build a filter perfectly matched to the transmission characteristics, even a simple RC filter can help reduce the error rate.

It's probably a good idea to use an external +/-12V supply to power the interface instead of trying to suck the power out of the serial port status lines.


Miscellaneous Tips / Interface Information

Your will need to tap the discriminator output of your scanner; you cannot use the filtered audio output of your scanner. If you need more information be sure to find the scanner discriminator tap point list that Bill Cheek periodically posts to rec.radio.scanner, you can probably also find it somewhere on along with a lot of other scanner goodies - go and check it out).

Your scanner is obviously not designed for data reception. FLEX/ReFLEX 25 modes are designed to fit into 25KHz channel slots, so your scanner's IF filtering should also be close to that width. Examining the discriminator output with an oscilloscope will quickly let you gauge how badly your scanner distorts incoming signals. You could also find that your IF section isn't exactly on center, so try tuning around a few kilohertz plus or minus the indicated frequency and see if you start getting fewer errors (example: I've seen one web page where someone found that his ICOM R7100 works best when tuned 2.5KHz high).

I would strongly suggest you start with the 2 level FSK interface first. See how well your particular scanner and computer works for this task. If the 2 level interface doesn't give you satisfactory performance then you probably shouldn't bother attempting the 4 level interface. As far as the 4 level interface goes - it's a little more complicated and you probably need to experiment around a little to get working with your scanner.

As far as RF signal levels go: the stronger the better. At low signal levels you may find this program's output running off into the weeds every now and then.

What other uses does this 4 level interface have? The possibility exists that it could be used to collect data from certain high speed data tranmission networks (up to 19200 baud) and also to collect and decode Motorola's digitized voice transmissions (12000 baud). The higher baud rates will most likely require adding a dedicated microcontroller to the interface in order to offload the bit banging from the computer.

These interfaces are built with common garden variety parts that should be quite easy for you to round up. Even Radio Shack should carry the necessary parts (or their equivalents) needed to build either of these interfaces.