Order Tray | Contact Us | Home | SIG Lists

[aprssig] Guve XASTIR a RADAR style display

Jason Winningham jdw at eng.uah.edu
Fri Feb 3 21:30:30 UTC 2006


On Feb 3, 2006, at 2:25 PM, Curt, WE7U wrote:

> How about a real sweep:  Use some Perl to inject a DF object

see below.  It talks to a server port, so it isn't xastir-specific.

If one had a DF unit that speaks Algero (sp?) protocol, it would be a  
pretty short step from this code to something that would update DF  
objects based on a doppler DF unit reading, and even tx them to other  
stations.

>  that's at the center of your screen.

OK, it doesn't do that.  you have to choose some coordinates.

> Might look more like a clock
> though 'cuz it wouldn't be a totally smooth sweep:  It'd be
> "ticking" one degree at a time.  If it was fast enough people might
> not notice the discrete steps though.

looks kind of rough.  the xastir update rate limits you to about a once  
every 20 seconds rate, unless you want to twiddle some of xastir's  
code.

-Jason
kg4wsv


#!/usr/bin/perl

use IO::Socket::INET;

$socket = IO::Socket::INET->new("localhost:2023")
     or die "could not connect to server!";


$mycall="KG4WSV-14";
$dest="APRS";
$object_name="df-test5";
$create_del = "*";

print STDOUT "user $mycall pass 12345 vers fubar 0.0.0a\n";
print $socket "user $mycall pass 12345 vers fubar 0.0.0a\n";

for ($i=0; $i<=360; $i += 15)
{
     $t = time();
     $s = $t % 60;
     $t /= 60;
     $m = $t % 60;
     $t /= 60;
     $h = $t % 24;
#    printf "%02.2d%02.2d%02.2dz\n", $h, $m, $s;

     $format =  
"%s>%s:;%-9.9s%1.1s%02.2d%02.2d%02.2dz3435.00N/08711.00W\\000/000/%03d/ 
969 \n";

     printf STDOUT $format, $mycall, $dest, $object_name, $create_del,  
$h, $m, $s, $i;
     printf $socket $format, $mycall, $dest, $object_name, $create_del,  
$h, $m, $s, $i;
     sleep 10;
}

sleep 20;

$create_del = "_";

printf STDOUT $format, $mycall, $dest, $object_name, $create_del, $h,  
$m, $s, $i;
printf $socket $format, $mycall, $dest, $object_name, $create_del, $h,  
$m, $s, $i;

close($socket);





More information about the aprssig mailing list