Scripts to mine information from the Yaesu Wires-X software and do useful things with it. These are scripts written in Perl. The scripts have been tested on Windows 7 (32bit) using the Strawberry Perl. To be precise, at the time of writing the installed version of Strawberry Perl was 18.104.22.168 32bit.
You will need the have a node running Yaesu Wires-X software up and running. You will also need to have login information for the APRS-IS to run the
wires2aprs.pl script and a FTP account somewhere to use the
Open a Command Prompt (Start Menu -> Search Box -> type 'cmd' folled by the enter key) and enter the following commands. Wait for each to complete before proceeding with the next command.
cpanm install HTTP::Tiny cpanm install Config::Tiny cpanm install IO::Socket::Timeout
The Wires-X web server is needed for
wires2html.pl to be able to access information about the node status. To enable and run the web server follow these steps:
Tool(T) > Plugin set AddModule WiresWeb.dll Tool(T) > WIRES WebServer Access password : jones Port No. : 46190 Remote Control : check
Clone or download the current version of these scripts and place in a convenient location. I like to put them into the
Documents folder. This should be right alongside (not inside) the Wires-X created
In order to run the scripts some configuration files are needed. The scripts, when executed with the
-s command line option will dump an example configuration to the screen. Best is to capture this output to a file and edit each appropriately. To do this, open a command prompt again, or reuse the command prompt from the earlier Strawberry Perl installation step.
To get the example configurations for
cd %HOMEPATH%\Documents\wires-scripts wires2aprs.pl > wires2aprs.cfg
To get the example configurations for
cd %HOMEPATH%\Documents\wires-scripts wires2html.pl > wires2html.cfg
Now edit these files to your liking. Having a FTP account somewhere can be tremendously helpful to make good use of
wires2html.pl. Having an amateur radio callsign and the appropriate APRS-IS password will make
wires2aprs.pl potentially useful.
Running the scripts
wires-scripts folder in Windows Explorer and double-click either
wires2html.pl. Each script will run and execute in a continuous loop. The default settings for timing seem to be reasonable to me. But the timing can be adjusted by specifying command line options or specifying options in the configuration file. The example configurations created will have all available options contained within.
To have these scripts run when the system starts, add them to the
Hopefully the configuration files are self-explanitory.
# # The sample configuration file for wires2aprs.pl # # # The following path substutions are supported: # # %HOMEPATH% current users home directory # # Wires webserver access [wiresx] accesslog = %HOMEPATH%/Documents/WIRESXA/AccHistory/WiresAccess.log # APRS-IS login [aprsis] server = noam.aprs2.net port = 14580 callsign = N0CALL-YS password = 12345 comment = via Wires-X # Script paramters, command line takes precedence # # expire - how old is too old for wires log entries in seconds # beacon - minimum delay between repeated beacons in seconds # interval - interval to read the log file in seconds [script] expire = 180 beacon = 120 interval = 60 # Call signs that we filter # # See symbol table # http://wa8lmf.net/miscinfo/APRSsymbolcodes.txt # http://wa8lmf.net/aprs/APRS_symbols.htm # # overlay = which overlay of symbols to use, should be either / or # symbol = symbol to use from symbol table # # Coordinates can be entered. This is useful for stations that do not # transmit coordinates, such as the FTM-3200, and are fixed stations. # [N0CALL-0] iscall = yes overlay = / symbol = - latitude = 43.806111 longitude = -81.273889 [N0CALL-7] iscall = yes overlay = / symbol = [ [N0CALL-9] iscall = yes overlay = / symbol = > [N0CALL-14] iscall = yes overlay = / symbol = k
- Perl - The Perl 5 programming language
- Strawberry Perl - Perl for Windows
- HTTP::Tiny - HTTP::Tiny - A small, simple, correct HTTP/1.1 client
- Config::Tiny - Config::Tiny - Read/Write .ini style files with as little code as possible
- IO::Socket::Timeout - IO::Socket::Timeout - IO::Socket with read/write timeout
Any suggestions, comments, improvements are welcome.
- Adi Linden - Initial work - github/adilinden
This project is licensed under the GPLv3 License - see the GNU General Public License for details