WACARS Version 0.5
WACARS V0.5 Instruction and Installation Manual
Description
WACARS Version 0.5 is the latest release of the popular ACARS decoder for windows. This software will allow you to decode the ACARS signals received by your airband receiver using the soundcard which is installed in you PC.
New features in this version
Longer Database Entries,
Aircraft Position and Course Plotting,
Routes and Ground Station Databases,
Other features
Automatic Log of all messages received,
Automatic sorted lists of all aircraft and flight numbers
Company name determined from flight number
Built in signal strength and CPU load meter.
Unlimited aircraft database,
Programmable message and IATA and ICAO airport designator decoding.
System Requirements
PC using Windows 3.1 or later.
Minimum CPU, about a 486DX2-66 but unknown. The load on the CPU is shown on screen as a bar graph. If the bar graph shows 100% load the CPU is not processing the data fast enough and chunks of data are being missed.
Memory, about a megabyte of free memory. I've used the program on 8MB machine and it seemed OK.
Soundcard. A Windows compatible soundcard capable of recording at 19200 samples per second. This is a non-standard sample rate, but the software will tell you if the operating system reports that the sample rate is not available.
An airband receiver capable of receiving ACARS signals.
An audio cable to connect from the receiver to the soundcard.
License
WACARS v0.4 is FREEWARE. This software may be freely copied and distributed providing that the program and accompanying files are not modified in any way without prior written permission of the author. Any charges made for distributing this software may not exceed that of the cost of the distribution media. You are granted a license to use this software providing you accept the disclaimer below. Although there is no charge for this software, if you do use it and like it, a quick e-mail to tell me, will make me more likely to continue with development.
Disclaimer
Although this product has been tested by the author, he accepts no responsibility for any damages caused by the use or misuse of this software. This software is distributed 'as is' with no warranty expressed or implied. The author will not be responsible for any losses incurred, either directly or indirectly, by the use of this software. Use this software entirely at your own risk. If you do not agree to these terms then you must not use this software.
Installation
Software
Download WACARS05.ZIP from the WACARS web page, http://www.mike.mcmail.com/acars.html
WACARS05.ZIP will contain,
WACARS.EXE. the actual program file.
AIRPORTS.WDF, database of IATA and ICAO airport designators,
AIRCRAFT.WDF, database of aircraft registrations and aircraft types,
MODES.WDF, database of ACARS modes,
MESSAGE.WDF, database for message decoding,
GROUND.WDF, database of ground station names,
ROUTES.WDF, database of flight routes,
MAP.BMP, a sample map,
BWCC.DLL, application extensions,
README.HTM, This file, instructions, license, trouble shooting.
All of the files can stay in the same directory. Previous versions of WACARS files to be manually copied to other directories, but this is no longer required.
Create a program icon in the usual way.
At this point you might also like to associate .LOG and .WDF files with your favorite text editor, e.g. Notepad. This is entirely your choice, I just find it helps me.
Software installation is now complete.
Hardware
Connect the audio output from your airband receiver to the input of your soundcard using a suitable audio cable. I used the LINE IN/AUX input on my soundcard. LINE level signals are 100 mV rms which is much larger that MIC signals, so the is much less chance of overload.
Next tune your airband receiver to the appropriate ACARS frequency for your area, see below, and turn the squelch fully off. If possible locate the receiver as far away for the computer as possible. This will minimize electromagnetic pick-up and interference from the computer and monitor. Ideally you should not be able to hear and interference at all.
The hardware installation is now complete.
Operation
The first time you use WACARS you will need to find the best audio levels for the computer and receiver. Using the mixer control for your soundcard adjust the appropriate input gain and the master gain to about 1/2. Next adjust the volume of the receiver such that when a strong ACARS signal is present the SIG meter moves to the middle of the green section. With no ACARS signal present the SIG meter should show no signal.
This is a good starting point, but by adjusting the different volumes you may get slightly better reception.
The WACARS screen consists of five different windows.
The SIG and CPU meters have already been described.
The Raw Data Log shows any data detected from a received ACARS signal.
If the received data forms a correctly formed ACARS packet it is then decoded and displayed in the ????MESS.LOG window. Data in this windows is also automatically saved to disk in a file ABDCMESS.LOG, where AB is the date of the month and DC is the month.
The registration of the aircraft is extracted from the ACARS packet and stored in the sorted list of aircraft detected, the Aircraft Contacted window. The flight number of the aircraft is also extracted from the ACARS packet and stored in the sorted list of flights detected, the Flights Contacted window.
NEW
Maps and Position Plotting
This is the latest and most unique feature of WACARS. This feature means that you can see on a map exactly where the aircraft you are receiving actually are. The system works by scanning the free text field of every received message and looking for longitude and latitude information, for example
#DFBUP6572#DFB*POS02022116N5308W00222202324048721M2901110
has the position reference North 5308 West 0022 embedded in the beginning of it. WACARS detects this as a position reference and plots the position of the aircraft on the map.
To take advantage of this new feature you need to setup WACARS for where you live. Firstly you need a map. This is just a standard Windows .bmp bitmap. You can draw it by hand, scan it, beg for it of borrow it. A size of around 600 pixels wide by 400 high in 16 or 256 colours if fine. The bigger the map and more colours you use the more memory it takes, it's up to you. Ideally your map should be a Mercator projection (I think). This means all the longitude lines are parallel with the top edge of the map and all the latitude lines are parallel with the sides. Now you need to use the Map Options menu option to tell WACARS about your map. Use the Map File text box to enter the name of your map file. Then fill in the longitude and latitudes of the edges of your map in the North, East, West and South text boxes. Use simple decimal notation, i.e. 55 deg 30 mins North is represented by 55.500. Latitudes north of the equator are represented by positive numbers and south of the equator by negative, i.e. N51 = 51.00, S51 = -51.000. West of Greenwich is represented by negative longitude and east by positive, i.e. W123 = -123.00, E123 = 123.00. You can't go across the International Date line, sorry, your western edge must be represented by a lower number than your east. When you're happy click on OK and sit back.
If WACARS detects more than one position fix from the same aircraft it will use the previous fixes to establish the course of the aircraft and position the aircraft on the map appropriately. If it is the first contact the map aircraft will point North.
Menus Options
File Menu
Close
Closes the log of messages for a specific aircraft.
New Aircraft Log
Allows the user to specify the registration of a specific aircraft, whose messages will be sorted into a single separate log. Specific aircraft can only be 32KBytes long, a 'feature' of Windows.
Save
Allows the user to save a log at any time.
Save As
Allows the user to save a specific aircraft log but using a new file name.
Exit
Obvious.
Edit Menu
Copy
Copies a section of a specific aircraft log to the clipboard.
Delete
Deletes an entries from the sorted list of flights and aircraft detected.
Search Menu
Find
Search for text in a specific aircraft log.
Next
Search for the next occurrence of text in a specific aircraft log.
Options Menu
Expand Aircraft Types
Causes the system to search the aircraft types database for aircraft type each time an ACARS packet is received. If the aircraft type is known it is displayed along with the aircraft registration in the message log.
e.g. G-BNWE could become G-BNWE BOEING 767-336ER.
See below for information on entering or removing entries from the database.
Expand Messages
Causes the system to search the message text of a received ACARS packet and attempt to decode airport names and key words using information stored in the airports database and messages database.
e.g.
MET01EGLL
could become
WEATHER REQUEST FOR LONDON HEATHROW.
See below for information on entering or removing entries from the database.
Expand Mode Labels
Causes the system to search the modes database for message type each time an ACARS packet is received. If the message type is known it is displayed along with message designator in the message log. e.g. Message Type _* could become Message Type _* NO INFORMATION TO TRANSMIT. See below for information on entering or removing entries from the database.
Expand Flights
Causes the system to search the airlines database for airline name each time an ACARS packet is received. If the airline type is known it is displayed along with the aircraft registration in the message log. e.g. OS0459 could become AUSTRIAN AIRLINES OS0459. See below for information on entering or removing entries from the database.
Expand Flight Route
Causes the system to search the routes database for the flight routing each time an ACARS packet is received. If the routing is known it is displayed along with the flight number in the message log. e.g. QF0009 could become QF0009 Singapore to Heathrow. See below for information on entering or removing entries from the database.
Expand Ground Stations
Causes the system to search the Ground Stations database for the name of the ground station in use each time an ACARS packet is received. If the station known it is displayed along with the station number in the message log. e.g. Using Ground Station C could become Using Ground Station C East Midlands. See below for information on entering or removing entries from the database. This database is provided with all my entries commented out as it's contents will need to reflect where you live.
Airmaster Mode
Causes the system to store message data in the format used by the Lowe Airmaster.
Log Message Data
Enables message data recording.
Log Raw Data
Enables raw data recording.
Log Position Data
Enables the position mapping of aircraft which transmit position data.
Database Files
Allow the files used for the various databases to be specified. See below.
Map Options
Used to set the name of the map file and it's coordinates.
Error Checking
Used to decide whether an ACARS packet has been received without critical errors.
No Error Checking
The parity of the received data is not checked. The packet must start with a valid sync sequence, , and end with an end of text marker, or .
Only Header
The packet must start with a valid sync sequence and end with an end of text marker. The header of the packet must be free from parity errors.
Full Checking
The packet must start with a valid sync sequence and end with an end of text marker. All data in the packet must be free from parity errors.
Window Menu
Cascade
This command stacks all open edit windows and overlaps them so that each is the same size as all others and only part of each underlying window is visible.
Tile
This command arranges your open windows from top to bottom so that they cover the entire width of the desktop without overlapping one another.
Arrange Icons
This command rearranges any icons on the desktop. The rearranged icons are evenly spaced, beginning at the lower left corner of the desktop.
This command is useful when you resize your desktop that has minimized windows. It is unavailable when no windows are minimized.
View Raw Data
This command brings the windows which shows the raw data log to the front.
View List of Aircraft
This command brings the windows which shows the list of aircraft contacted to the front.
View Messages
This command brings the windows which shows the message log to the front.
View List of Flights
This command brings the windows which shows the list of flights to the front.
Help Menu
About
Tell you very little about WACARS.
Database Files
There are six default database files, their uses are shown below,
AIRPORTS.WDF, database of IATA and ICAO airport designators,
AIRCRAFT.WDF, database of aircraft registrations and aircraft types,
MODES.WDF, database of ACARS modes,
MESSAGE.WDF, database for message decoding,
GROUND.WDF, database of ground station names,
ROUTES.WDF, database of flight routes,
All the files are of the same general format,
Key=Expansion
Key item which the system will search for and Expansion is the text that will be used in its place.
Comment lines can be added. These must start with a '!' character.
The Airport Database File
This file contains the IATA and the ICAO designators of airports. If any of these are found in the message text they can be expanded to show the actual airport name.
e.g., Using the entry,
EGLL=LONDON HEATHROW
The message
MET01EGLL
will become
MET01 LONDON HEATHROW
The Aircraft Database File
This file contains a database of aircraft registrations and types. If the aircraft registration is found in the file the aircraft type can be displayed along with the registration
e.g., Using the entry,
D-ABXE=BOEING 737-330
The message
D-ABXE
will become
D-ABXE BOEING 737-330
The ACARS Mode Database File
This file contains a database of ACARS mode descriptions. If mode designator is contained in the file then the type of message can be displayed as it is received
e.g., Using the entry,
H1=GENERAL MESSAGED
The message
Message Type H1,
will become
Message Type H1, GENERAL MESSAGE
The ACARS Message Database File
This file contains the information used to decode message text. I'll use the following message to show how to use this file.
Raw Message
N188DN BOEING 767-332ER
DELTA AIRLINES DL0107
/POS CPT /ETA 1051
/ALT 350/FOB 0901/SAT 58
/WND 240017/MCH 81/TRB SMOOTH /SKY UNDERCAST/ICE NONE
This is a message sent by a Delta Airlines 767. There are several deferent message styles and formats used by different airlines. To allow for this the message text is linked to the airline designator before it is decoded. In this case all messages text is prefixed with DL before decoding.
/POS tells us where the aircraft is now, so this could be replaced by "Current Position". To do this add the line
DL/POS=CURRENT POSITION
To the message database file. From now on /POS in a Delta Airlines message will expand to "Current Position". The rest of the entries are shown,
DL/ALT=ALTITUDE
DL/ETA=ESTIMANTED AT
DL/FOB=FUEL ON BOARD
DL/ICE=ICEING
DL/MCH=SPEED MACH
DL/SAT=OUTSIDE AIR TEMPERATURE
DL/SKY=CLOUD
DL/TRB=TURBULANCE
DL/WND=WIND
The message would then decode as
N188DN BOEING 767-332ER
DELTA AIRLINES DL0107,
CURRENT POSITION CPT ESTIMANTED AT 1051
ALTITUDE 350FUEL ON BOARD 0901OUTSIDE AIR TEMPERATURE 58
WIND 240017SPEED MACH 81TURBULANCE SMOOTH
CLOUD UNDERCAST ICING NONE
The default file contains many examples to help understand the system.
Limits
The key which the computer searches for can be 7,6,or 5 characters long, so
DL12345=TEXT
DL1234=TEXT
DL123=TEXT
are OK but,
DL12345678=TEXT
DL12=TEXT
Are not.
Also the text must be less that 80 characters long.
DL1234=01234567890123456789012345678901234567890123456789012345678901234567890123456789
is the maximum length message.
Problems
The system deals badly with free text. For example consider the following message,
/SKY CLEAR
You might expect this to decode to
CLOUD CLEAR
and would be suprised when
CLOUD CLEVELAND AR
appeared. This is because the system has also found CLE=CLEVELAND in the airports database. There are two ways to get round this. The simplest is to delete CLE=CLEVELAND from the airport database, but this isn't ideal. An other way is to add an entry CLEAR=CLEAR in the message database file. The system searches from the longest key to the smallest key, so CLEAR will be found before CLE. If you look in the default message database you will find the two lines
DLCLEAR=CLEAR
FXCLEAR=CLEAR
to stop exactly this problem for Delta and Fed. Ex. flights.