The linear-up, FM-down PSK31Transponder
By Peter Martinez G3PLX peter.martinez@btinternet.com

Background
Some years ago, on the PSK31 reflector, someone asked if anyone had ever worked PSK31 through a satellite. The discussion that followed concluded that it would be very difficult to handle the Doppler shift with a mode like PSK31 which is only 30Hz wide. That seemed to be the end of the topic, but I had other ideas.

I began to reflect on an idea originally proposed in the 1970’s by Paul Dent G3VEL. This was for a satellite with a 40kHz-wide linear uplink, for example in the 2m band, with the signals down-converted to the audio range and modulated onto a UHF downlink using wideband FM. There were interesting advantages to this idea, which I shall describe in this article. This project never happened, but I realised more recently that it could be adapted for narrow-band operation

In 2001, Bob, WB4APR, at the U.S. Naval Academy was discussing on the email reflectors some ways to easily add some “wideband or multiuser” capability to his next PCSAT2 design that would require minimum additions to his existing FM uplinks and downlinks.   I suggested the linear-up-FM-down idea using a 3kHz-wide audio band.  The uplink receiver would then be conventional SSB and the downlink transmitter would be conventional NBFM, but the transponder would be shared by a large number of narrowband modes rather than used by single voice signals. Bob picked up the idea and asked for a volunteer to build the 10m linear receiver and began to incorporate  the design into PCSAT2.  Mirek Kasal, OK2AQK, at the Brno University volunteered to build the receiver.   The spacecraft was complete in 2003 but shuttle delays slipped the launch until July 2005 and now PCSAT2 is flying with this transponder. It’s time to document this technique, set out the design requirements, and start to learn how this technique could be refined.

The basic idea
The essence of the idea is to notice that if we placed a UHF FM transmitter into a low earth orbit and modulated it with an audio tone, then although we would experience Doppler shift of the carrier, we would not see any Doppler shift on the audio tone itself. If we modulated the tone with narrow band data such as PSK31, we could demodulate it on the ground with exactly the same methods that we use to receive PSK31 on the HF bands. We could modulate the FM carrier with a dozen PSK signals on different audio frequencies and copy them all separately and independently, just as a 20m PSK31 operator does when setting an SSB receiver on 14070kHz and ‘tuning’ the PSK31 software over the audio range.

The trick then, is to put an SSB receiver up in orbit too. Of course, we do experience Doppler shift on the uplink, but if we choose a low frequency for the uplink and a high frequency for the downlink, we are only left with the smaller of the two shifts and not both, since there is no contribution from the higher frequency downlink. PCSAT2 uses a 29MHz uplink and a 435MHz downlink for this very reason.

But that’s only a part of the beauty of this technique. Since each station  listening to his own uplink signal on the downlink hears only  the Doppler shift due to his uplink, if he were to correct his transmitter frequency so that there was no drift in the downlink, then everyone else listening to him on the downlink will also hear his signal with no drift. This is almost impossible to do on a linear-up/linear-down transponder because cancelling the total Doppler shift on your own signal doesn’t cancel the total Doppler shift for stations located in different directions from the satellite.

It could be argued that it would be easier to leave the transmitter fixed and follow the drifting received signals. This is valid if we are only considering one transmitter,  but if there are several uplink transmitters in different directions from the moving satellite, the Doppler drifts are different and we would have to be very careful with the frequency separation if we wish to avoid them drifting into each other. If we do this, it represents an extremely inefficient use of the transponder bandwidth. If we adopt uplink Doppler correction on a linear-up/ FM-down transponder, this problem vanishes and we can stack uplink signals as close together as we like.

The AFC problem and it’s solution
To be able to compensate for drift, whether by making the receiver follow the signal or by controlling the uplink transmitter frequency, we need some kind of Automatic Frequency Correction system. Some kinds of signal could never be controlled by AFC.  CW and SSB are no good because we lose the AFC during the gaps. FSK is not so good either because we can’t completely separate frequency-shift data from frequency drift error without careful coding. Ideally we would like a signal which has a continuous and steady ‘feature’ from which we can extract the tuning offset, preferably independently of the information content. BPSK, as used by PACSAT at 1200 baud and by PSK31 at 31.25 baud, is ideal because there is always a signal there and the demodulator is able to extract both the data and the tuning offset independently of each other. BPSK is the only common digital modulation mode that has this property.

Fig 1 shows the Doppler shift experienced on the 29.4MHz uplink of the PCSAT2 transponder for an overhead pass. Can we correct this with an AFC system?

The traditional form of AFC takes the tuning offset value from the demodulator and applies a small fraction of this as a change to the local oscillator frequency. We don’t remove the offset completely in case it was due to transient noise or loss of signal. The result is an AFC system which will remove any initial tuning error completely, given time to settle down. For example, a BPSK demodulator, designed to give stream of binary data at the rate of 31.25 bits/sec, can also give, as a byproduct, a stream of analogue ’tuning offset’ values in the range +/-7.8125Hz, at the same rate. If we subtract, for example, 1/100th of the tuning offset from the receiver frequency each time we demodulate a symbol, the tuning error will eventually be reduced to zero in an exponential decay, and the time-constant of this decay is approximately 100/31.25 seconds. This gives the AFC loop in this example a 3.2 second time-constant, a good compromise between the need to follow a drifting signal and staying locked through a short disturbance. So long as we force the receiver in-tune initially, this kind of AFC system will alwaysstay on tune, regardless of how far the signal drifts.

However, this simple AFC loop has a major drawback if we want to handle a signal that is drifting at a high rate. Consider what would happen if the signal was drifting at 1.25 Hz/sec. To be able to follow this drift, the receiver frequency needs to change by 1.25/31.25 Hz, or 0.04Hz at each received symbol. Since this change is derived from 1/100th of the tuning offset for each symbol, it means that this offset must have to be 100*0.04 = 4 Hz. Turning this around, it means that a 1.25Hz/sec drift rate can only be handled if there is a residual tuning offset of 4Hz. Considering that the PSK31 system can only handle +/-7.8Hz without error, this means that 1.25Hz/sec is probably about as fast a drift as we could tolerate. This is nowhere near enough to handle, for example, the maximum Doppler rate experienced on PCSAT2 on 29 MHz (14Hz/sec for an overhead pass). Fig 2 shows the Doppler rate calculated for an overhead pass of the PCSAT2 uplink. If we try to increase the amount of feedback, we run into problems of the AFC throwing the receiver off on bursts of noise or periods of fading.  We need something a lot better than this.

The solution I have used successfully on PCSAT2 is what I call a second-order AFC system. This idea comes straight from control system theory, so it’s not new. Instead of using the tuning offset to adjust the receiver frequency, it adjusts the receiver frequency sweep rate. The greater the tuning offset, the faster the receiver sweeps up the band to reduce the error. In the case of the above example of a drift rate of 1.25Hz/sec., this system, when it settles down, will end up with the correcting sweep rate exactly equal to the signal drift rate, and with zero residual tuning offset.

There are, however, two snags. The first one sounds at first like a fatal flaw. I said above ’when it settles down’, but if you build such an AFC system or simulate it on a computer, it never settles down but continuously oscillates around the centre. Again, control system theory comes to the rescue. We introduce a ’damping factor’ into the system, analogous to the shock absorbers on a suspension system. In the case of the AFC process, the damping is achieved with an extra component to the feedback, adding a change to the frequency proportional to the tuning offset. In other words having both the second order correction and the original conventional AFC feedback applied at the same time. In this case we choose the amount of ’first order’ feedback to give the whole AFC loop the required level of damping. It will always overshoot, but by adjusting the amount of damping, we can set this to minimise the period of oscillation while still being immune to noise. Exactly like a suspension system in fact.

The other snag is equivalent to the residual tuning offset we experienced with the first order system when subject to a constant drift rate, but in this case we get a residual tuning offset when the system is subject to a constant rate of change of drift rate. Fig 3 shows the rate of change of Doppler drift rate on the overhead PCSAT2 pass, and shows that the worst-case values are +/- 0.24 Hz/sec/sec and occur at two points in the pass, about 25 seconds before and after the point of nearest approach. If we want to make sure that the maximum residual tuning offset is, for example, 4Hz at these two critical points in the overhead pass, then we need to set the amount of second-order correction so that a 4Hz tuning offset gives a rate-of change of 0.24Hz/sec/sec, then adjust the damping factor to give an acceptable dynamic response. 

The subject of damping second-order control systems is beyond the scope of this article, but in practical terms, it works out that if we start from a first-order system and add the second-order term that would be required to handle the expected Doppler shifts, the damping comes out about right, and there‘s plenty of scope for handling other orbit characteristics.

To illustrate graphically the end result of applying this kind of AFC to the uplink transmitter, Fig 4 shows a waterfall display of a 1600Hz segment of the downlink band of PCSAT2 centred on 1000Hz, as received at DK3WN during the first tests with the transponder. It shows G3PLX with uplink Doppler correction locked to 1000Hz, and DK3WN transmitting with no Doppler correction (but some manual adjustment!). This is for a pass with a maximum elevation of 45 degrees. At the bottom of the downlink band is an unknown station evidently using a Doppler prediction system to correct his uplink frequency in steps, but the step-size is too large and this results in a sawtooth frequency error pattern. The two constant horizontal lines at 380 and 560Hz are probably birdies in the satellite receiver.  At the start of this trace G3PLX is not receiving the downlink and doesn’t achieve lock until just before ‘G3PLX’ is shown in red, but you can see that successive adjustment steps reduce the sweep rate error until lock is achieved.

There are two more things to note before leaving the topic of second-order AFC. The first is the process of locking to the signal in the first place. Fig 1 and 2 show that when the satellite first appears over the horizon, the Doppler rate is zero, so if we tune to the signal at that time, the loop will surely lock and accurately track the signal for the rest of the pass. But if we don’t hear the signal immediately and the Doppler rate is significant, we may not be able to lock because the AFC has not followed the increasing sweep rate. We need some way to manually set the sweep rate close enough to the actual Doppler rate if we wish to lock to a signal which is already sweeping rapidly down the band. There are several ways to solve this. For the 29MHz PCSAT2 situation, where the task is to find a chosen signal (mine) from those displayed in a spectrum, my solution has been to make the arrow-keys that I normally used to position a cursor over the signal I want, so that they not only make small steps in the frequency but also make small steps in the sweep rate. The more I step the frequency towards the correct tuning point, the more I am also stepping towards the correct Doppler rate. When I eventually catch the signal, there will be a small overshoot, but the end result is to get the signal on-tune at the correct rate. It’s more like the process of ‘steering towards’ the correct spot than ‘positioning on’ it, but it’s quite instinctive and certainly easier than trying to position the signal with one control and simultaneously adjust the sweep rate with another.

The second point to note is that we are limiting ourselves to the use of SSB transmitters for the uplink, and correcting the uplink Doppler shift by sliding the frequency of a narrowband emission such as PSK31 up the audio band using a software process. We will therefore be limited to satellite links for which the peak-to-peak Doppler shift is less than the bandwidth of the SSB transmitter. We are probably therefore restricted to an upper limit of 30MHz for the uplink of low earth orbit satellites.

Uplink power control
Another interesting feature of an FM downlink is that the received audio level is completely independent of downlink signal level, unlike the linear/linear transponder where both uplink and downlink fading effects are present in the received downlink. This reduction in fading is particularly relevant to narrow-band working. The FM technique means that we can use UHF or even microwave frequencies for downlinking signals as narrow as PSK31. This would not be possible with a linear UHF downlink, even with Doppler correction.

The constant audio level of an FM downlink also gives another interesting technique to explore. If we have a fixed gain in the satellite uplink receiver, and each uplink station monitors the level of his own signal returned in the downlink audio band, it will be possible for him to adjust his uplink power level to keep the downlink audio level constant. This could form the basis of a very effective way to ensure that all uplink signals share the transponder equally. Like the uplink Doppler correction process, this is another feature of the linear-up/FM-down transponder which is almost impossible to achieve on a linear/linear transponder. The 29MHz uplink receiver in PCSAT2 is fixed gain (although an AGC line is present to prevent over deviation of the downlink), and I have implemented such a control system in soundcard-based software to work through PCSAT2. The amplitude of my own received downlink signal is compared with a target value, and the difference drives the amplitude of the transmit signal up or down at a proportional rate. I chose the rate constant to give the overall loop a time constant of a few seconds, to ensure that the control process does not interfere with the modulation. The control loop works extremely well, typically turning the power down from 50 watts to 2-3 watts during a near-overhead pass. Note that the ‘target value’ mentioned above is a downlink deviation figure. When implementing such a system, it will be necessary to calibrate the FM downlink receiver and soundcard so that the software adjusts to the required deviation. 

However, I foresee problems with widespread use of this technique. Imagine a transponder designed to fully modulate the downlink with, say, 10 uplink stations operating, and imagine a small disturbance which just causes the transponder to overload slightly and protect itself by reducing it’s receiver gain. Each uplink station sees a drop in his own downlink signal and compensates by increasing power. This makes the overload rapidly worse and ends up with all uplink stations at maximum power and the transponder well into AGC. The only way to recover from this ’lock-up’ state is to get all uplink stations to switch off and bring their power levels up again, very carefully.

This arrangement would be quite unworkable in the amateur radio environment. We clearly have no way to prevent an 11th uplink station from trying to work through a fully-loaded transponder designed for 10 signals. The transponder must overload gracefully or we must devise a power-control process that doesn‘t lock up.

An uplink power control scheme based on downlink level cannot do this. There are other reasons why it’s not a good idea. The more signals we allow, the higher needs to be the downlink CNR needed to copy any of them, even if, at any given time, there are a smaller number of stations working through. It would make better sense to share the full downlink deviation between however-many stations were working through the transponder at the time, rather than allocating a fixed level to each station based on the design equations. This way, we could either transmit a small number of signals to a number of low-spec. downlink receivers (.e.g. broadcasting), or use higher performance downlink antennas when we want to fully load the transponder. There’s another problem with the fixed-gain, fixed-level scheme, if we suppose we might want to use different types of signal through the transponder at different times. This arises because we need to set the receiver gain to match the bandwidth of the signal and the SNR we need to receive it. For example, if we set the receiver gain too high, we may not be able to get enough uplink SNR to support a wider bandwidth mode, and if we set it too low, we would need to transmit more power with narrower bandwidth modes in order to fully modulate the downlink. It would be much better if we didn’t have to make the gain choice before we launched the satellite and be tied to that value. 

All these problems mean that, although the FM downlink does make a simple end-to-end level-control system possible, it really isn‘t a good idea. We have to do it in a different way. We can make the transponder handle a small or large number of signals, of a wide range of bandwidths and SNR levels, simply by giving it enough gain that it always runs into AGC. This means that even the uplink receiver noise will fully-modulate the downlink. There is no reason to keep this noise ‘in the background‘ as we would for a linear downlink or a receiver in the shack. Running the satellite receiver fully AGC-controlled also makes it much easier to design, when we consider things like temperature variations.

Having thrown away the downlink level variation, how do we now control the uplink power?  Imagine there is no-one transmitting through such a transponder and station A wants to work through. The downlink is 100% noise. He simply increases power until his downlink signal comes out of the noise and gets to the SNR he needs to copy himself.  Station B appears and adjusts his uplink until it’s the same level as that of station A. If A and B both have good downlink CNR so that the uplink noise dominates in their received downlink audio, they will both experience the same SNR and will copy themselves and each other. Note that A didn’t need to touch his uplink power when B started transmitting, even though the transponder gain dropped, because the noise level dropped too. Things only go wrong when there are so many stations sharing that some of them can’t copy because all signals get lost in their downlink noise.

I have described this process as if it was done by the operators watching the downlink signals and adjusting their transmitter powers, and indeed it’s simple and intuitive enough to be done that way. The two rules are (1) don’t make your own signal stronger than it needs to be and (2) don’t make your signal stronger than anyone else.  Of course, if one station does transmit too much power, everyone else will increase power to compensate and the lowest power stations still lose out, just as they would with any linear uplink, but since everyone can hear everyone else in the 3kHz downlink audio, there are none of the problems that can plague a wider bandwidth linear uplink because the power-hog cannot hear what effect his signal has on everyone else up the band. All stations can see the whole picture and can learn to share the facility. If we also emphasise the self-evident rule that you don’t transmit if you cannot copy downlink signals, then there is an inherently stable mechanism for limiting the total transponder load, because it will get progressively more difficult to copy signals as their number increases.

It’s clear that we have all the information we need in the downlink audio to automate the uplink power-sharing process if we choose to go that route. Losing the level feedback by having AGC in the transponder does not lose us the ability to control the uplink population. The software (on the ground) needs only to measure the relative levels of the various signals and the noise. Any PC with a soundcard can do it. There will be no need to calibrate receiver levels against downlink deviation. There is no nasty lock-up effect.

To summarise the power control topic, although a simple level-based control loop is very easy with a linear/FM transponder, it’s much better to run the transponder ‘flat-out with AGC’ and solve the sharing problem with a level-comparison method driven by the user or by a process running in his computer.

Transponder carrier control
With a single-user ‘repeater’ transponder, the downlink transmitter is always switched off when not being used, to save valuable solar energy. With a linear/linear transponder, the downlink transmitter is on all the time, but at least it only takes a small amount of idle power if it’s not being used, and the energy consumed only rises when someone is working through it. With a linear/FM transponder, unless we do something about it, the carrier will be running at full power all the time and this could be undesirable. On PCSAT2, the linear/FM transponder is turned on by command from the ground when needed. This is fine for an experimental set-up but is too costly in manpower to be an operational solution. It really would be nice to have a way for the transponder to sense when it is needed entirely from it’s own uplink signal. For the specific case of a linear/FM transponder intended for PSK31 use, I propose a method which uses a particular characteristic of a PSK signal which is ideal for the purpose.

If we listen on an AM receiver to a section of a band in which PSK31 activity is taking place, and looked at the spectrum of the demodulated audio, we will find that there is always a 31.25Hz component present. This amplitude modulation is a byproduct of the process of switching from one phase to another, and is present with all types of PSK, and always gives a pure tone at the baud rate. This feature is used in the PSK31 receiver to synchronise the decoder.  If we installed an AM detector in the satellite receiver, followed by a 31.25Hz tone detector, very like the continuous sub-audible tone detectors used on FM systems, we will have a reliable way to detect the presence of one or more PSK31 signals anywhere in the pass band. The absence of such a tone can be used to signal the control system to shut down the transmitter. From the theoretical standpoint, a square-law detector would be the best for this job, although it‘s not critical and an approximation to square-law would be sufficient. This same characteristic is exactly what is needed for the AGC detector, so the same bit of hardware would do both jobs. With the receiver AGC-limited all the time, the AM signal to the tone detector would be constant level, making the detection mechanism inherently immune to variations in gain and noise levels. It would also be immune to false-triggering by most other types of signal.

The pre-emphasise puzzle. 
It’s traditional with FM voice transmitters to pre-emphasise the transmit audio. That is, to boost the higher frequencies at a rate of 6dB/octave over the entire 300-3000Hz range. A complementary de-emphasis is used in the traditional FM receiver. This is done because of a well-understood effect in noisy FM radio links where the background noise in the demodulated audio rises in level at the higher frequencies. The pre-emphasis/de-emphasis technique counteracts this, reducing the high-frequency noise in the speaker and resulting in the SNR being constant over the audio spectrum. Boosting the HF frequencies doesn’t cause over modulation (or require us to back off the drive to prevent it), because the human voice has very little high frequency energy.

It’s useful to consider whether pre-emphasis is appropriate for the FM downlink of a linear/FM transponder intended for multiple narrow-band signals. Without it, if the downlink is noisy, those signals at the top end of the audio band will suffer more noise that those lower down. De-emphasis in the receiver would flatten out the background noise spectrum, but pre-emphasis at the transmitter would risk over modulation by signals at the top end of the audio band - a 3kHz band full of PSK31 signals is not predominantly low-pitched like a voice. There’s a difficult decision to make here: would it be best to share the transmitter modulation equally between signals in all parts of the transmitted audio band, or should we share the SNR equally between signals in all parts of the receiver band? We can’t do both in an FM system.

The downlink FM audio on PCSAT2 was designed before the pre-emphasis question was considered, and is not pre-emphasised. Therefore I have used, for my tests with the PCSAT2 transponder, a receiver with a flat response (no de-emphasis) and have watched the downlink noise spectrum carefully. I have not seen any sign of an upward tilt in the background noise. The reason for this is not fully understood. One possibility considered was that the uplink receiver noise always dominates. It was possible to check this by muting the PCSAT2 uplink receiver output briefly, under control from the ground, using a fortunate side-effect of switching the command link to a back-up configuration. The received downlink noise level did not drop when this was done, so it does seem that the downlink audio noise spectrum really is flat and there is no SNR penalty at the HF end. This is contrary to theory, and needs to be more closely studied. It may be that the ‘tilted noise spectrum’ theory does not hold at the low carrier SNR levels seen on the PCSAT2 down link in the tests so far. That is, it may be that the spectrum of the ‘rough’ noise that is present on a weak FM signal is flat, and only the ‘smooth‘ noise of a stronger FM signal is tilted. I have seen, on tests with PSK31 modulating terrestrial FM links that it is possible to copy such signals at much lower signal levels than it would be possible to copy voice, so it may be that the PCSAT2 downlink signals seen so far have never been strong enough to be in the ‘smooth noise’ region.  If this can be satisfactorily explained, then we can forget about pre-emphasis in the downlink transmitter.

However, if we do choose not to pre-emphasise the FM downlink, we still need to remember that most FM receivers have de-emphasis as standard. Some FM radios do have a  ’flat response’ audio output (often provided for 9600 baud packet use), and this would be the best way to pick off the signal to go to the soundcard and the software, but if no such auxiliary output is available, steps should be taken to remove the effects of the de-emphasis which is built into the receiver. This is particularly important when considering the requirements for uplink power-sharing.

Conclusions
I have shown that the linear/FM satellite transponder concept not only eliminates downlink Doppler drift, but can be used to eliminate Doppler drift completely, to the extend that even the narrowest bandwidth modulation methods can now be considered viable for low-earth orbit satellite working on UHF or SHF downlinks. When used with PSK31 on uplinks below 30MHz, Doppler and power control processes can be implemented entirely with soundcard-based PC software on the ground, in conjunction with standard HF SSB transmitters and UHF FM receivers. I have described an extension to the traditional AFC mechanism which can handle the Doppler shifts and Doppler rates on low earth orbits for uplinks below 30MHz. I have highlighted an overload problem with simple uplink power control schemes and suggested a way forward for future linear/FM transponder designs which eliminates this and other drawbacks of the simple level-control scheme. I have suggested a novel CTCSS-like method for downlink power economy. I have further discussed the implications of the use of pre-emphasis on transponders of this type. I conclude that future transponders of this type should have full AGC action to give constant downlink modulation level, that no pre-emphasis should be applied to the downlink transmitter, and that detection of the 31.25Hz modulation of uplink PSK31 signals may be a useful way to ‘squelch’ such a transponder.

I should like to thank Bob Bruninga WB4APR and Miroslav Kasal OK2AQK for their help in the preparation of this paper, and  Mike Rupprecht DK3WN for Fig 4.