Create APRS maps on the fly online
You are here :
Home
> Projects > APRS maps
APRS is short for Automatic Position Reporting System, which was introduced
by Bob Bruninga, WB4APR, at the 1992 TAPR/ARRL Digital Communications
Conference. Fundamentally, APRS is a packet communications protocol
for disseminating live data to everyone on a network in real time.
Its most visual feature is the combination of packet radio with the
Global Positioning System (GPS) satellite network, enabling radio
amateurs to automatically display the positions of radio stations
and other objects on maps on a PC. Other features not directly related
to position reporting are supported, such as weather station reporting,
direction finding and messaging.
A great site to look at is
findU.com
where Steve Dimse K4HG has written several cgi scripts wich are usefull
for aprs. With these scripts, a station can be displayed on a map.
And for years the maps came from
www.
vicinity.com but in december 2002 the services of Vicinity Corp
were integrated into the Microsoft MapPoint Business Unit.
In 2004 a friend contacted me and informed me about this problem.
We went on searching to a service that could replace Vicinity.
Maybe we could use Microsofts Mappoint ?
The problem was to find a
server with this service. We stumbled on
Expedia.com
After close examening the site and codes used, we came up with a working version of
a map, customized to our needs. Bingo :-)
We now have to make a link between Expedia and findU. Therefore I've written a script in
PHP to make this possible.
I'll explain :
You already known the callsign of the station that you want to see
on a map, search the data of this station with a findU script, parse
this output to what you need and let Expedia create a map.
We use the output of the script posit.cgi with the callsign on0xyz:
http://www.findu.com/cgi-bin/posit.cgi?call=on0xyz&comma=1&time=1&start=240
This gives a lot of html code back (removed some lines) :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3.org/TR/REC-html40/loose.dtd"><HTML>
<HEAD>
<meta http-equiv="expires" content="-1">
<meta http-equiv="pragma" content="no-cache">
<TITLE>ON0XYZ Positions</TITLE>
</HEAD>
<BODY alink="#008000" bgcolor="#F5F5DC" link="#0000FF"
vlink="#000080">
20041124151701,51.20617,4.43000,0.0,0.0, <br>
20041124154652,51.24050,4.47817,81.0,27.0, <br>
20041124164636,51.25233,4.51167,278.0,0.0, <br>
</BODY>
</HTML>
This entire html code is put in a large array, we count the lines
because we need the line just before the body close tag.
We now have in this order yyyymmddhhmmss, latitude, longitude, course,
speed and altitude.
In this example :
2004-11-24, 16:46:36, 51.23233, 4.51167, 278.0, 0.0,
Now put this data in a url to create the map :
http://www.expedia.com/pub/agent.dll?qscr=mrdt&ID=3XNsF.&
CenP=51.25233,4.51167&Lang=EUR0809&Alti=10&Size=800,600&
Offs=0,0&MapS=0&Pins=|51.25233,4.51167|13|ON0XYZ|L1|
73's Joost
This article is written just for fun and for educational purposes
only.
If you plan to use Expedia.com, contact them to make sure you have
the permission to use them in your application.
All other names and trademarks are registered trademarks by their
respective owners.