[Date Prev][Date Next][Thread Prev][Thread Next] - [Date Index][Thread Index][Author Index]

Doppler programming question

Hello All,

I don't want to bore the group with a lot of programming code however it is a 
satellite related question and perhaps someone will be able to point me in 
the right direction.

I'm trying to implement "the one true Doppler tracking rule". Downlink 
tracking works perfectly (except for minor rounding errors), it's the uplink 
tracking that is giving me trouble.

Briefly, this is the logic behind my code:

1. get the satellite's downlink frequency (this is my rx freq)

	read the receiver's vfo
	subtract the Doppler shift for that freq from the receiver's frequency
	save the result as baseRxFreq

	This is the actual transmission frequency of the satellite.

2. get the satellite's uplink frequency  (this is my tx freq)

	baseTxFreq = freqConstant - baseRxFreq;  // constant is 581800000 for FO-29

	This is the actual reception frequency of the satellite (no problem here).

3. every 3 seconds do the following

	get the Doppler shift for the baseRxFreq 	
	rxFreq = baseRxFreq + Doppler;
	setFreq(satRxVfo, (int)rxFreq); // set the receiver's vfo

	Downlink tracking works perfectly.

	get the Doppler shift for the baseTxFreq
	txFreq = baseTxFreq - Doppler;
	setFreq(satTxVfo, (int)txFreq); // set the transmitter's vfo

	Uplink tracking doesn't work, it's the wrong tx frequency.

My uplink frequency logic seems to be wrong and with only two FO-29 passes 
each day it's a little tedious to use the trial and error method to find the 
fault. So, I hope another set of eyes, or brain, will see the error in my 


Sent via amsat-bb@amsat.org. Opinions expressed are those of the author.
Not an AMSAT member? Join now to support the amateur satellite program!
To unsubscribe, send "unsubscribe amsat-bb" to Majordomo@amsat.org