Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Import source code from Debian package
Flyby is to be based on predict-g1yyh, a fork of predict that comes with Debian's predict packages. This is an import of the complete source code after applying Debian's patches. It also includes som extra manual pages and README/copyright information that is included in the Debian package. This provides a known starting point for further development. No names have been changed in this patch. The code builds as predict, not flyby.
- Loading branch information
Showing
228 changed files
with
62,268 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
************* | ||
* Credits * | ||
************* | ||
|
||
SGP4/SDP4 models and sun/moon position algorithms used in this | ||
version of PREDICT were derived from "satcom-08", written by | ||
Neoklis Kyriazis, 5B4AZ, and released in 2002 under the GNU | ||
General Public License. Parts of "satcom-08" were derived | ||
through a translation into 'C' of SGP4 and SDP4 code written | ||
originally in FORTRAN and Pascal by Dr. T.S. Kelso. Dr. Kelso's | ||
code is available on his web site at http://www.celestrak.com/. | ||
|
||
Socket-based server code and the "map" client application were | ||
contributed by Ivan Galysh, KD4HBO on 10-Jan-2000. | ||
|
||
PIC/TRACK antenna rotator control code was contributed by | ||
Vittorio Benvenuti, I3VFJ on 13-Jul-2000. | ||
|
||
The "gsat" client was contributed by Xavier Crehueras, EB3CZS. | ||
|
||
The Perl client demonstration program was contributed by Rich | ||
Parry, W9IF. | ||
|
||
The WinPredictClient was contributed by Steve Fraser, VK5ASF. | ||
|
||
The concept of using "xearth" as a graphical display for PREDICT | ||
was originally conceived by Wade Hampton (that later developed | ||
into "earthtrack"). | ||
|
||
Many others have contributed code to the project, including | ||
Bent Bagger OZ6BL, Tom Busch WB8WOR, Steve Fraser VK5ASF, | ||
Xavier Crehueras, EB3CZS, Takeshi-Okazaki (Satellite Engineer | ||
for MTSAT-1R (HIMAWARI 6)), and others. | ||
|
||
Calculations for squint angle were adopted from trk-0.4.1 by Lapo | ||
Pieri, IK5NAX. | ||
|
||
PREDICT is also the product of many others who have contributed | ||
bug reports, bug fixes, helpful suggestions, and positive support. | ||
|
||
|
||
-- | ||
John A. Magliacane, KD2BD | ||
Lead Developer | ||
kd2bd@amsat.org | ||
November 2005 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
====================== | ||
The History of PREDICT | ||
====================== | ||
|
||
Work on PREDICT started on May 26, 1991 with the purpose of creating a | ||
replacement for QUIKTRAK software that ran on the Commodore 64 home | ||
computer. PREDICT was originally written in C and compiled using a | ||
"Super C" compiler. After the program was completed and found to be | ||
useful, PREDICT was then ported to several Unix machines and then to | ||
DOS using a Borland Turbo C++ compiler. The DOS version was completed | ||
in May 1994 and was the first version of PREDICT released to the public. | ||
PREDICT was later ported to the Linux operating system in 1995 and | ||
released as freeware as a pre-compiled a.out dynamically linked | ||
binary in 1996. | ||
|
||
Through years of daily use, PREDICT was found to be reliable and accurate, | ||
and only minor changes were made to the program until 1999 when major | ||
portions were re-written from scratch and many new features were added. | ||
|
||
The release of PREDICT version 2.0.0 in December 1999 represents the | ||
second major release of the program. | ||
|
||
Further details regarding the history of PREDICT are available in the | ||
July 2000 (Science and Engineering) issue of "Linux Journal" magazine. | ||
|
||
The release of PREDICT version 2.2.0 in October 2002 represents the | ||
third major release of the program. | ||
|
||
This version of PREDICT was written under Slackware Linux on a 100 MHz | ||
Pentium-based PC with 16 megabytes of RAM using the "vi" editor. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,144 @@ | ||
PREDICT 2.2.0 Release | ||
===================== | ||
The major revisions in PREDICT 2.2.0 include the use of | ||
SGP4/SDP4 orbital models for improved tracking accuracy, | ||
as well as a re-written Single Satellite Tracking Mode | ||
to provide more useful real-time satellite communications | ||
data. | ||
|
||
|
||
New Orbital Models | ||
================== | ||
The simplified orbital model used in previous versions | ||
of PREDICT provided very accurate and dependable results | ||
for the majority of users, but was not quite good enough | ||
for more demanding applications at NASA. | ||
|
||
In July 2002, a test was performed on the accuracy of the | ||
orbital model used in PREDICT. The test was performed by | ||
a software engineer working at Edwards Airforce Base in | ||
California, and involved comparing data provided by PREDICT's | ||
Calc() and PreCalc() functions to that of a radar system | ||
used to track the International Space Station. Ranging | ||
data from the radar was taken every 50 milliseconds for | ||
the duration of the pass. | ||
|
||
The error in azimuth was found to be almost zero at AOS, and | ||
increased to 0.3 degrees over the duration of the pass. The | ||
elevation was about 0.2 degrees lower than that measured by | ||
radar for the entire pass. The calculated range was approximately | ||
7000 meters low at AOS, and approximately 7000 meters high at | ||
LOS with a crossover at TCA. | ||
|
||
|
||
New Single Satellite Tracking Mode | ||
================================== | ||
The Single Satellite Tracking Mode has been completely revised | ||
in PREDICT version 2.2.0. PREDICT now supports a database of | ||
satellite transponder data so that the program can provide | ||
path loss and Doppler-corrected uplink and downlink frequency | ||
information in real-time. For satellites containing linear | ||
transponders, uplink and downlink frequencies may be adjusted | ||
by pressing the '<' and '>' keys to tune down across the | ||
transponder in 1 kHz steps, or the ',' and '.' keys (unshifted | ||
'<' and '>') to tune in 100 Hz steps. Switching between | ||
transponders may be accomplished by pressing the SPACE bar. | ||
|
||
Eclipse depth, an angle representing how deep a satellite is | ||
in solar eclipse, is also provided. Eclipse depth is positive | ||
when the spacecraft is in eclipse, and negative when it is in | ||
sunlight. Spacecraft antenna squint angle is provided if | ||
ALAT/ALON (spacecraft attitude coordinates) parameters are | ||
included in the transponder database file. | ||
|
||
|
||
Transponder Database | ||
==================== | ||
When PREDICT version 2.2.0 is initially run, a default transponder | ||
database file (predict.db) is copied into the user's $HOME/.predict | ||
directory. At present, the database provides for many new features, | ||
som of which have not been completely implemented by PREDICT in | ||
this early release of the 2.2.x run. The most glaring omission | ||
is lack of a facility to edit or modify the database file. For | ||
the time being, it may be edited by hand if care is excercised. | ||
|
||
The format for the database file is as follows. Using NOAA-17 | ||
as an example: | ||
|
||
NOAA-17 Name of satellite | ||
27453 Object number (must match predict.tle) | ||
No alat/alon ALAT/ALON spacecraft attitude information | ||
APT Downlink Description of transmitter/transponder | ||
0.0, 0.0 Uplink passband limits in MHz (0.0 = no uplink) | ||
137.620, 137.620 Corresponding downlink passband limits (single downlink) | ||
No weekly schedule Days of the week this transponder is active | ||
No orbital schedule Orbital phase when this transponder is active | ||
HRPT Downlink Description of second transmitter/transponder | ||
0.0, 0.0 Uplink passband limits (low end limit, high end) | ||
1707.0, 1707.0 Corresponding downlink passband limits (single downlink) | ||
No weekly schedule Days of the week this transponder is active | ||
No orbital schedule Orbital phase when this transponder is active | ||
end End of data for this satellite | ||
|
||
OSCAR-29 contains linear (inverting) as well as digital (Pacsat) | ||
transponders: | ||
|
||
OSCAR-29 | ||
24278 | ||
No alat/alon | ||
Mode JA Transponder | ||
145.900, 146.000 | ||
435.900, 435.800 | ||
No weekly schedule | ||
No orbital schedule | ||
Mode JD Channel A | ||
145.850, 145.850 | ||
435.910, 435.910 | ||
No weekly schedule | ||
No orbital schedule | ||
Mode JD Channel B | ||
145.870, 145.870 | ||
435.910, 435.910 | ||
No weekly schedule | ||
No orbital schedule | ||
Mode JD Channel C | ||
145.910, 145.910 | ||
435.910, 435.910 | ||
No weekly schedule | ||
No orbital schedule | ||
end | ||
|
||
Weekly and orbital schedules have not yet been implemented in | ||
PREDICT 2.2.0, so for the time being, entries for these parameters | ||
should begin with the word "No". ALAT/ALON should be entered as | ||
30.0, 0.0 for alat=30.0 and alon=0.0. See $HOME/.predict/predict.db | ||
for further examples. | ||
|
||
Entries in predict.db need not be in the same order as they appear | ||
in predict.tle. Satellite names need not match either, but the | ||
object numbers in predict.db must be correct. predict.db may contain | ||
more satellite entries than those appearing in predict.tle (normally 24). | ||
PREDICT reads the entire database file, and reads only the information | ||
that applies to the satellites in the predict.tle file in use at the | ||
time. If no transponder data is available, or if a satellite contains | ||
no communication transponders, the Single Satellite tracking mode | ||
screen is modified accordingly. | ||
|
||
Future revisions of PREDICT will likely include a database editor | ||
as well as possible modifications to the format of the database. | ||
|
||
|
||
Other changes | ||
============= | ||
PREDICT now installs into a directory whose name includes the revision | ||
number (ie: predict-2.2.0). | ||
|
||
Despite the major revisions to the tracking code, all other program | ||
functions, with the exception of the Single Satellite Tracking Mode, | ||
should act as they did in earlier versions. | ||
|
||
|
||
-- | ||
John, KD2BD | ||
October 12, 2002 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,88 @@ | ||
========================= | ||
PREDICT QUICK START GUIDE | ||
========================= | ||
|
||
SYSTEM REQUIREMENTS | ||
=================== | ||
This program requires ncurses version 4.2 or higher. Earlier versions have | ||
been known to cause segmentation faults and/or odd display colors with this | ||
program. ncurses may be obtained via anonymous FTP at: | ||
|
||
prep.ai.mit.edu | ||
|
||
in the pub/gnu/ncurses subdirectory | ||
|
||
or: | ||
http://www.gnu.org/software/ncurses/ncurses.html | ||
|
||
|
||
The Linux pthreads library is also required. Both of these libraries are | ||
usually available in modern Linux distributions. | ||
|
||
|
||
UNPACKING | ||
========= | ||
The PREDICT archive can be unpacked in any directory for which read access | ||
is provided for all system users (such as /usr/src or /usr/local/src for | ||
Slackware Linux). As root, move the tar file to such a directory and | ||
issue the command: | ||
|
||
tar xvfz predict-2.2.3.tar.gz | ||
|
||
to unpack the file. | ||
|
||
|
||
COMPILATION | ||
=========== | ||
PREDICT's compilation and installation procedure differs slightly from | ||
that of most software, but should easy enough to understand and follow. | ||
First, move (cd) into the predict directory and execute the included | ||
"configure" script by typing: | ||
|
||
./configure | ||
|
||
as root at your command prompt. This script compiles and runs the install | ||
program that configures the source code for PREDICT. It then compiles and | ||
installs PREDICT by creating symbolic links between the executables created | ||
in the installation directory and /usr/local/bin. If a destination directory | ||
other than /usr/local/bin is desired, invoke configure with the desired | ||
directory as an argument on the command line: | ||
|
||
./configure /usr/bin | ||
|
||
NOTE: "configure" may stall if the system soundcard is in use. Some | ||
window managers (sometimes KDE) take control of the soundcard, and prevent | ||
the configure script from opening /dev/dsp and checking its existence. | ||
|
||
|
||
FIRST TIME USE | ||
============== | ||
First time users will be asked to enter their groundstation latitude and | ||
longitude in decimal degrees or in degree, minute, second (DMS) format. | ||
Normally, PREDICT handles longitudes in decimal degrees WEST (0-360 | ||
degrees), and latitudes in decimal degrees NORTH. This behavior can be | ||
modified by passing the -east or -south command line switches to PREDICT | ||
when it is invoked. Your station's altitude in meters above mean sea | ||
level, a recent set of Keplerian orbital data for the satellites of | ||
interest, and an accurately set system clock are also required if | ||
successful real-time satellite tracking is also desired. Sources | ||
for such data include http://www.celestrak.com/, | ||
http://www.space-track.org, and http://www.amsat.org/. | ||
|
||
|
||
FOR FURTHER INFORMATION | ||
======================= | ||
Please consult the files under the "docs" subdirectory for more | ||
directions on the use and capabilities of PREDICT. | ||
|
||
The latest news and information regarding PREDICT software is | ||
available at: http://www.qsl.net/kd2bd/predict.html. | ||
|
||
|
||
Happy Tracking! | ||
|
||
-- | ||
John, KD2BD | ||
kd2bd@amsat.org | ||
May 2006 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
* The predict_2.2.3.orig.tar.gz differs from the upstream | ||
predict-2.2.3.tar.gz in that the possibly non-DFSG compliant | ||
.wav files from AT&T have been replaced with a set of | ||
files generated using festival text to speech tools. Also | ||
removed some clients/gsat-1.1.0/config.[log,cache,status] | ||
files. | ||
|
||
* Included Ralf Baechle, DO1GRB, gsat-1.1.0 plugin support for the | ||
Yaesu FT-847 transceiver. | ||
ftp://ftp.linux-mips.net/pub/ham/predict-2.2.2/ | ||
|
||
* Added a new UDP socket command (GET_SAT_AT) to return PREDICT's | ||
calculation for a satellite at a given time to networked clients. | ||
This allows for applications to do non-real-time planning, or | ||
generate responses for web queries for example. (predictat patch). | ||
|
||
* The predict-g1yyh is predict-2.2.1jh4.c plus the predictat patch. | ||
(John Heaton, G1YYH, has added 2.2.3 fixes) | ||
|
||
* This earthtrack application only uses xplanet, and includes a -o | ||
switch to send the output to a file like G1YYH's filetrack and a | ||
-p switch to set the projection (default ortho). | ||
|
||
-- A. Maitland Bottoms <bottoms@debian.org>, Sat, 5 Aug 2006 20:44:50 -0400 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
#!/bin/sh | ||
# Script to manually compile PREDICT | ||
# | ||
if [ -a predict.h ]; then | ||
echo -n "Building PREDICT version `cat .version`... " | ||
cc -Wall -O3 -s -fomit-frame-pointer predict.c -lm -lncurses -pthread -o predict | ||
echo "Done!" | ||
else | ||
./configure | ||
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
#!/bin/bash | ||
# Script to prepare for a clean distribution. | ||
# | ||
rm -f predict predict.h | ||
rm -f vocalizer/vocalizer.h vocalizer/vocalizer | ||
rm -f clients/samples/demo | ||
rm -f utils/moontracker/moontracker | ||
rm -f utils/geosat/geosat | ||
cd clients | ||
rm -f map/map | ||
cd gsat-1.1.0 | ||
make clean | ||
cd .. | ||
rm -f earthtrack/earthtrack | ||
rm -f kep_reload/kep_reload | ||
cd .. | ||
cp -p $HOME/.predict/predict.tle default/predict.tle | ||
cp -p $HOME/.predict/predict.db default/predict.db | ||
echo "Done!" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
This demo client is for a Windows client communicating with a Linux | ||
server running Predict. You need the VB development environment. (Note: | ||
this was developed under VB6, but other versions may handle it OK) | ||
|
||
Open a new project, and add frmWinPredictClient to it, and also set this | ||
as the Projects Startup object. You'll also need the Microsoft Winsock | ||
Control selected in Project/Components. Then click Run (or Compile if | ||
you wish). | ||
|
||
Note: the command line may be set to contain the name of the Predict host, | ||
in which case the program will not prompt for that name, but immediately | ||
try to get the satellite list. | ||
|
||
This was developed by Steve Fraser, vk5asf (sfraser AT sierra.apana.org.au) | ||
|
Oops, something went wrong.