wx/net logo
Graphical User Interface Client Instruction Manual

version 1.3         March 4, 2001

Synopsis

This document contains information on the configuration and operation of the wx/net GUI client component.


Table of Contents


System Files and Directories

The wx/net GUI client uses a directory in the account of the user running it for storing a default configuration file and dynamic data it needs to reference at runtime.  The directory created and used is $HOME/.wxnet/.  This is the same directory name used by the wx/net server, so if both client and server are run from the same account, they will share this same application directory (there will be no file conflicts between the two within the directory).  A list of the items stored here by the client is listed below.

default.wxcfg

This is a default configuration file that gets read in initially every time the wx/net client is started up.  If present, it is read and all configurable items in the client are set accordingly.  If absent, the client uses its internal defaults instead.  For more information on configuration files, see the section on Configuration Files.

broadcast_cache/

This directory is used by the Broadcast function to store text and image data retrieved from the server.  It contains two subdirectories: text/ and image/, which hold the two different product types accordingly.  The items in these directories can be referenced often by the client, and updated periodically with new queries to the server.

histgraph_cache/

The histgraph_cache/ directory is used for storing historical data R/T graph information requested from the server.  In addition to being plotted on screen, it is stored in a file in this directory.  This prevents memory from being unnecessarily occupied by the data while the graph is on-screen.  The reason for caching the data is that if a units or range change is effected on a measurement whose graph is being displayed, the source data can be re-plotted easily.  Storing it on disk instead of holding it in memory helps to reduce the memory footprint of the client, which would become quite big if a lot of data was requested and cached in memory.


The GUI Display

The following diagram shows the basic components of the GUI display as it appears when connected to a server and receiving data.  A simple description of each component follows the diagram.
Client GUI image

Pull-Down Menu Bar

Along the top of the GUI display is the pull-down menu bar, separated into different categories.  Many of the functions available to the client are accessed by pulling down one of these menus and then clicking on a choice presented.

Connection Indicator

Located in the upper-right-hand corner, the connection indicator animates whenever a connection to a server is established.  The image is static when no connection is active.

Event Window

The event window in the lower-right-hand corner updates with short text strings to notify you of any particular events taking place at the moment.  The window will briefly flash when the text updated, and plays a brief sound if sounds are enabled.

Server Information

Located just below the menu bar in the upper-left-hand corner, the server information panel shows you (when connected) the weather station name and geographic coordinates of the current server.

Time/Date Status Panel

To the right of the server information, the time/date status panel shows information about both the local (client) time and remote (server/wx station) time.  indicated here is the mode of time (12h/24h), AM or PM, whether DST is in effect or not, and if the display is showing  Greenwich Mean Time (UT).

Readouts

Digital Readouts

All measurements displayed on the client's main GUI screen have a digital readout, featuring large "7 segment LED" type digits.  These readouts show the precise value of a particular measurement.

Analog Readouts

Seven of wx/net's displayable measurements feature an analog representation in addition to the digital.  These can be in the form of a "speedometer" or "thermometer" type indicator.  The analog readouts give  more approximate values of measurements, but are useful for seeing a current value's relative place within the total range, and have a traditional, aesthetically pleasing look to them.

Analog Min/Max/Avg Indicators

The analog readouts have an added bonus of sporting min/max/avg indicators.  Unlike the digital readout which must be switched into the proper mode to see what the minimum, maximum, or average of a reading is, the analog min/max/avg indicators can provide an approximation of these values all the time.  For more information, see Extremes (Min/Max) and Averages.

Wind Direction Rose

The wind direction rose is a special readout that provides both a compass type visual representation of the wind direction but also prints it in digital form according to the units specified.  The current wind direction is indicated by a little red "LED" that illuminates on the portion of the rose corresponding to the compass heading of the wind.

Range Select

Range select buttons can be found associated with measurements for which there exists more than one display range.  They appear on the GUI as small black rectangular buttons with the text R<n> within them, where <n> signifies which range is currently in use.  Clicking on the button will advance to the next display range, eventually cycling back to the beginning.  Changing ranges has no effect on digital readouts, but each new range is reflected in an analog readout (if one is present for the selected measurement) and also in the real-time and historical graphs for that measurement.

Mode Select

Measurements represented on the client GUI have four possible modes: "Curr", "Max", "Min", and "Avg".  Some measurements may not use all of them (wind chill does not track maximums, for example), but you can select which mode you wish to display by clicking on the mode select button.  The mode select button is a small blue button associated with the measurement it controls, containing the name of the current mode.

Min/Max/Avg Reset (Clr)

To reset the value of any mode (except "Curr") for a measurement, click on the min/max/avg reset button.  This is a small red button with the text "Clr", and resides in close proximity to the measurement whose mode values it will reset.  When using the "Clr" button, the proper mode must first be selected on the GUI.  This means that to reset the wind speed maximum value, you must first select mode "Max" using the mode select button for wind speed, and then click on the "Clr" button.  "Clr" will have no effect in the "Curr" mode.

Rain Indicator

The rain indicator is a small icon in the upper-left-hand corner of the "Rain #1" measurement GUI element.  Its only function is that it will animate depicting a rain storm whenever active rainfall is detected (rainfall rate > 0).  When no rain is detected, the icon ceases to animate and instead shows a static picture of a sunny day.

Rainfall Rate / Rain #3

The Rainfall Rate and Rain #3 readouts share the same "slot" on the client's GUI display, in the lower-right-hand corner.  You may select which one is displayed at any given time via two radiobuttons under the Options pull-down menu: Show Rain #3 Counter and Show Rainfall Rate.  All associated widgets (range, mode, "Clr" buttons etc.) will always correspond to the measurement being shown at the time, and Rain #3 and Rainfall Rate are completely independent of one another in every sense except their physical screen location.

Function "Hot Keys"

There are three large buttons located in the lower half of the GUI display on the right-hand side.  They depict, from left to right, the Sun and Moon, a graph snippet, and a hurricane satellite image.  Respectively, these buttons control access to the Almanac window, the Real-Time Graph window, and the Product Catalog window.  They can be used as shortcuts to those particular items, although they are all able to be invoked via pull-down menus as well.

Enabling Balloon Help

If enabled, pop-up descriptive balloons will appear when the mouse is positioned over certain widgets for a second or more.  To turn on this functionality, select Enable Pop-up Balloon Help from under the Display/Sound pull-down menu.  It should be noted that when this option is enabled, real-time GUI performance slows down dramatically, especially when the mouse pointer is in motion.  It is recommended that this option be deselected once you are familiar with the GUI display components.

Configuring Sounds

Sound capability may be configured through a group of items under the Display/Sound pull-down menu.  The wx/net application does not directly play sounds itself but can be set up to invoke an external player to provide various event sounds.  All sounds are in .wav format, so an external player must be chosen that can support this format.  The external sound player must be callable with the syntax: "<player> <sound file 1> <sound file 2> <sound file 3> ... <sound file n>" so that multiple sequential sounds can be passed to a single instance of the player.  A free player called wavplay meets these requirements perfectly and is available with some Linux distributions.

To select an external sound player for use with wx/net, select Set sound player... from the Display/Sound pull-down menu.  A file selector will be displayed which you may use to type in the path to a valid player, or else browse for one.  Type in or navigate to your selection and click the "Accept" button.

Once the player has been selected, you may enable sounds in the system by highlighting  the Enable sounds item under the Display/Sound menu.  To see if everything has been configured properly, click the Test sound item.  You should hear two bells, an error tone, and a chord played in order if everything is configured right.  Make sure that sound hardware is properly configured on your system, and that the account which you run the wx/net client from has write access to /dev/dsp or whatever your system's sound device is.

Choosing the Clock Chime Style

One of the sound events which wx/net provides is a chime for the Local Time clock.  There are three possibilities for configuring this chime: no chime, traditional hour count, or naval/ship's bell.  If no chime is selected, then there are no clock-related sound events played, even if system sounds are enabled.  If the traditional chime is selected, a clock chime will count out the number of hours on the top of each hour.  The chimes counts only go from 1 to 12, even if 24 hour time is in effect for the Local Time clock.  Times past 12pm will be chimed as if in 12 hour format.  Finally, the naval style chime will cause a ship's bell sequence to be run every half hour.  This is an 8 bell, 4 hour cycle.  One bell sounds at 00:30, two at 01:00, and so forth up to 8 bells at 04:00.  The cycle starts over with one bell at 04:30 and so on every four hours.

To select the type of clock chime functionality you want, use the Clock Chime Style... item under the Display/Sound pull-down menu.


Operation

Starting Up the Client

There is only one way to start the wx/net GUI client.  The client executable is stored in the bin/ directory of the wxnet/ file hierarchy, the location of which is specified on your system at installation time.  To start the client, run wxnet out of the bin/ directory, either by explicit path name or by placing it in your default search path.

Shutting Down the Client

To exit the client application, simply select Exit from the File pull-down menu on the GUI interface.

Selecting a Server

In order for the client to be of any use, it must first be pointed to a running wx/net server, which actually collects weather data from an offboard device and then sends it via TCP/IP messaging to the GUI client.  This server's IP address and port must be known prior to any attempt to connect to it.

To set the server to which you want to connect, select the Configure... option from the Connection pull-down menu.  You will be prompted for an IP address and port.  Insert the address and port of your desired server.  Both numerical and name-based IP addresses are valid, assuming you have access to a Domain Name Server.  In addition, "localhost" can usually be used to indicate the machine that the client itself is running on, even if the IP address is unknown.  Use "localhost" if the client and server are running on the same machine.

Establishing/Breaking Contact with the Server

Connecting

Once the server has been selected, you can establish contact with it by clicking on the Connect option under the Connection pull-down menu.  Upon successful connection, you should hear three quick beeps.  If the server requires a login/password to gain access, you will be prompted for it at this time.  You must know your userid (login) and password before connecting to a server which is employing password protection.  If no userid/password is entered, the login attempt will timeout, and you will have to re-connect to the server to try again.  If password protection is not enabled, you will have immediate access to the server after connecting.

Disconnecting

To disconnect from the server, select the Disconnect option from the Connection pull-down menu.

Changing the Network Connection Animated Icon

When connected to the server, the little icon in the upper right-hand corner of the window will begin to animate.  This lets you know that you have an active connection.  It does not, however, imply that you are receiving any data or exchanging any sort of messaging.  There are two icons available for this purpose: an anemometer, and a wind distributor (vane).  To choose which one you would like to use, select Connected Icon... from the Display/Sound pull-down menu.  Select one of the two choices presented and it will become the active icon.  When not connected, the icon will remain a static image.

Changing Your Server Password

If the server to which you are connected is password protected, you will need to supply a userid/password combo in order to gain access to services on the server.  You may choose at some point to change this password, and you are free to do so at will.  Select the Change Password... option from the Connection pull-down menu.  You will need to supply a new password, the new password again for verification (in case of typos), and then your old password as an additional measure of security.  After sending off the password change request, the server will respond indicating if the change was successful or, if not, what was wrong with the request.

Receiving and Processing Weather Data

Specifying the Frequency of Real-Time Data

While not receiving real-time data, you may specify the frequency with which you would like to receive new R/T updates when activated.  Select the Data Interval... option from the Options drop-down menu.  Specify there, in integer seconds, how often you would like to receive new real-time data messages from the server.  When R/T data is started, the server will send that data at the frequency specified.

Starting and Stopping Real-Time Data

Once a connection has been established with the server, the flow of real-time data can be started and stopped at will.  This is controlled by two options under the Function pull-down menu: Start R/T Data and Stop R/T Data.

Selecting Units for Displaying Data

All units are controlled via the Units pull-down menu on the GUI menu bar.  For each measurement that wx/net has multiple units, an entry will appear in the drop-down menu.  By selecting the desired measurement, a cascade menu will be displayed showing the available units for that measurement, including the currently active unit.  Click on the unit that you want and all instances of that measurement on the client display will be shown in terms of the new unit.  The real-time graphs will update automatically, redrawing using the new selection.  Any historical graphs that were on-screen will be redrawn if the option to automatically redraw them is selected from the Graph Configuration window.

Selecting a Date Format

In many places, wx/net uses an all-numerical representation of date values.  There are two possible representations: North American format (mm/dd/yyyy) and European format (dd/mm/yyyy).  Depending on where you live, you may prefer one format over the other.  To specify which format should be used, pull down the Options menu from the menu bar and select the appropriate choice from the section entitled Date Format.  When the date format is changed, all R/T graphs will update, and historical data graphs will update if configured to do so.

Selecting a Range for Displaying Data

There are 7 analog+digital displays on the wx/net GUI console, with an additional 7 digital-only displays.  All digital portions of a readout will always show the proper current reading for a given measurement.  However, for those measurements with an "analog" display, the current value may be out of the display range of the analog representation.  In this case, you will want to select an alternate range for the analog portion of the readout.

Those measurements that feature more than one available display range will have a little black button labeled "R<n>" where <n> is the number representing the current range of the readout.  By clicking on this button, you can advance to the next range.  The GUI display will immediately update to reflect the new range selected.

You may notice that the digital-only readouts also have range selector buttons on them.  This is because the current range is reflected not only in an analog display, but also in the R/T and historical graphs of a given measurement.  As such, changing the range for any measurement will not only affect its analog representation if it has one, but will affect any graphs of the measurement as well.  Because of this dual purpose, you may also change the range of any measurement from the Graph Configuration screen, accessible via Options -> Configure Graphs... from the menu bar.  Changing a measurement's range in this manner is identical to changing it from the "R<n>" button on the main GUI display.

Graphing Functions

A relatively straight-forward set of graphing options is available for viewing weather data collected by the wx/net server.  Both current and archived (historical) real-time data may be plotted by the GUI client.

Real-Time Data Graphs

wx/net plots real-time data graphs for 11 different measurements: Wind Speed, Barometer, Outside/Inside Temp, Outside/Inside Humidity, Dew Point, Rainfall Rate, Heat Index, Wind Chill, and Lightning Activity.  There are two real-time graph windows that can be viewed: one for Lightning Activity, and another which aggregates 9 of the remaining 10 graphs.  Heat Index and Wind Chill are considered mutually exclusive, and so they share a "slot" on the graph display window.  They can be toggled between automatically or manually, and more information is provided below under Configuring Graphs.

To view the R/T aggregate graph window, you may either click on the middle "Hot Key" in the lower right hand corner of the GUI console (with the graph icon), or else you can choose Function -> View R/T Graph from the pull-down menu bar.

Historical Data Graphs

You may also plot a graph from archived real-time data stored at the wx/net server.  By selecting the R/T Graph option from the Historical Data query window, the data requested will be plotted in graph form according to the units, range, and graphing options selected for that particular measurement.  For more details on how to generate a historical query, see the section on Historical Data.

Historical data graphs, unlike R/T graphs, will expand to accommodate data for the time span specified, up to a certain point.  The data, once plotted, can be viewed in full by sliding a scroll bar back and forth across the bottom of the graph window.

Configuring Graphs

You may control many aspects about how graphs are generated by wx/net, for both real-time and historical data.  To configure your graphing options, select Configure Graphs... from under the Options pull-down menu.  You will be presented with a screen containing individual measurements on the left, options specific to that measurement in the middle, and general graphing options on the right.

Measurement-Specific Parameters

To set an option for a particular measurement, highlight the desired field in the left-most window of the configuration screen.  The center of the window should update to reflect the current settings for that measurement.
Minimum/Maximum Labeling
This option applies to both R/T and historical data graphs.  You may choose whether you want local minimums and maximums labeled on your graph of a particular measurement.  The labeling of minimums and maximums can be controlled independently.  For a measurement such as Wind Speed or Heat Index, you would likely only want maximums labeled, whereas for Wind Chill only minimums and for Outside Temperature you would want both.  However, you are free to set these whichever way you desire.

You can also control how "sensitive" this min/max detection algorithm is.  A scale is presented from 0 to 20, and a slider is set to the value of the current "threshold".  This value is multiplied by some base increment of units for the given measurement (say 1 MPH for Wind Speed, or 0.01 in. Hg. for Barometer).  When the threshold scale setting is multiplied by the base increment, the actual trigger delta is obtained.  If the measurement is Wind Speed and the base increment is 1 MPH, then a threshold setting of 5 would trigger a min/max label upon detecting a variance of +/- 5 MPH.  Another example would be Inside Temp with a base increment of 0.5 deg. C. and a threshold of 7.  This setting would trigger a min/max label every change of +/- 3.5 deg. C.

Graph Sampling Rate
This option only applies to R/T graphs.  The R/T graphs are all of a fixed width with a finite number of points that can be plotted horizontally in each.  To control how much of a time window each graph represents, you can set a sampling rate for each measurement.  By specifying in seconds how often you would like the graph of a given measurement to "sample", you can control how quickly or slowly that graph advances.  Quick update times like 1 second or 5 seconds are good for rapidly changing measurements like Wind Speed, whereas slow measurements like 300 seconds or even 900 seconds might be more appropriate for slower changing observations such as Outside Temperature or Humidity.  This sampling rate is independent of the interval with which data is received, and also of whether any connection is even established.  Whatever data is present (if any) at the time of sample is used.
Timestamping
A graph isn't worth much without some sort of time indicator showing you when the data being plotted actually occurred.  Nevertheless, you may choose whether you want your data timestamped or not with the Enable Timestamping checkbox.
Switching Ranges
As discussed earlier, each measurement in wx/net may contain more than one "range" of possible values.  These ranges are used for analog representations of the measurements on the R/T GUI display, and also for the R/T and historical data graphs.  You may change the range of any available measurement with the Switch Range (<n>) button.  The number <n> in parentheses indicates the currently selected range for that measurement.  For more details, see Selecting a Range for Displaying Data.

General Parameters

In addition to all the configurable parameters for individual measurements, there are also some general parameters which don't apply to just one particular item.  These can be found in the right-most column of the Graph Configuration screen.
Multiplexing Heat Index and Wind Chill R/T Graphs
This option applies to the R/T aggregate graph window only.  You can choose how you want to display Wind Chill and Heat Index graph measurements via the Graph Configuration screen.  Under General Options you will see some choices for Heat Index / Wind Chill. Select the appropriate choice to either always show heat index, always show wind chill, or toggle between them automatically.  The dividing line for the automatic switch between heat index and wind chill is 18 degrees celsius (64.4 degrees Fahrenheit).
Handling Graph Window Closures
This option applies to the R/T graph window only.  When a graph window is closed, it can either be unmapped (removed from the screen but still kept "open" in memory) or destroyed.  If you elect to unmap the graph window, then any subsequent requests to view the graph window will be instantaneous as the graphs merely need to be remapped to the screen.  The tradeoff is that even while not on the screen, the graphs are occupying memory and eroding real-time performance because they are being updated just as if they were visible.

You can elect instead to destroy the graph window when not viewing it.  In this case, the window is totally destroyed and on subsequent viewings must be recreated.  The recreation process is much slower than a simple remapping.  However, if you don't want to erode any performance when not viewing the graph screen, you may elect to choose this option.

Historical Graph Auto-Redraws
This option only applies to historical data graphs (acquired via a historical query to the server).  When the units (or range) of a given measurement or its timestamps change, regular R/T graphs are automatically redrawn to reflect this change.  This is because the R/T graphs are relatively small and they are "cheap" to redraw.  Archived data graphs on the other hand may be quite large, and you may not wish for them to be replotted every time the date format or display units are changed.

If this is the case, then uncheck the Redraw on units/range change checkbox and these changes will not cause any plotted historical data to redraw.  Note that if no historical data is plotted (or was plotted and then closed) there is no danger of anything redrawing. This only applies to historical data graphs open at the time of the units/range change.

Restoring All Defaults
To reset all values in the graph configuration screen to their internal defaults, including measurement-specific parameters, click the Restore All Defaults button at the bottom of the General Parameters column.  This will affect all measurements, not just the ones showing in the window at the time.

Alarms

The wx/net client allows for the setting of alarms on varius measurement with trigger criteria.  When a given data field meets the trigger conditions for an alarm that has been set, the wx/net client will log (in memory) the alarm condition and optionally sound a warning tone, pop up an alert box, or both if desired.  Once an alarm is triggered, it must be manually reset before it may be triggered again.  The internal alarm log displays the actively "watched" alarm conditions along with the last time each was triggered.  This data may be reset manually when desired.

To see the internal alarm log for all measurements, select Alarm Data from under the Function pull-down menu.  All of the measurements will be listed along with their alarm activation status, alarm trigger count, and last trigger time.  The row of checkbuttons along the left side of the Alarm Data window is an aggregation across all data fields of the alarm reset buttons described under Alarm Enable/Reset.  Each button shows the triggered/untriggered status of a single alarm, and clicking a triggered indicator will cause it to be reset.

Configuring Alarms

To configure your alarm options, select Configure Alarms... from under the Options pull-down menu.  You will be presented with a screen containing individual measurements on the left, options specific to that measurement in the middle, and general alarm options on the right.

Measurement-Specific Parameters

To set an option for a particular measurement, highlight the desired field in the left-most window of the configuration screen.  The center of the window should update to reflect the current settings for that measurement.
Trigger Criteria
The trigger setup area is where the conditions for triggering a given alarm are set up.  The optionmenu on the left allows for the choice of a number of mathematical relationships (e.g. equal to, less than, greater than or equal to, etc.)  Select the appropriate relationship for the value that will be entered in the center entry box.  The center entry box is the numerical value which incoming observations are compared against (using the specified comparison operator) to determine if the alarm is to be triggered.  The right-most optionmenu is used to select the units which the center box is specifying.  You can set up an alarm to trigger when the wind speed is greater than 30 knots.  It does not matter whan units are being used for display on the R/T screen, the wx/net client performs the appropriate conversions for alarm triggering separately.
Alarm Enable/Reset
Once the trigger critera are set up, the alarm for a particular measurement must be enabled.  This is done with the "Enable <field> alarm" checkbutton.  This button toggles alarm watching for that field between on and off.

When an alarm is triggered for a given measurement field, it must be manually reset before it can trigger again.  The "Alarm Triggered" checkbutton appears selected when the alarm has been triggered.  Click the checkbutton to reset the alarm.  Note that on this particular indicator, the checkbutton merely serves as a status light for whether the alarm has been triggered or not.  Clicking the button will turn the status light off, but clicking an inactive status light will not turn it back on.

Alarm Data
A single button is provided to allow for the reset of the internal alarm log data.  Clicking the "Reset Alarm Time/Count" button for a particular measurement will reset to 0 the count of how many times the alarm has been triggered, and erase the "last triggered" timestamp.

General Parameters

In addition to all the configurable parameters for individual measurements, there are also some general parameters which don't apply to just one particular item.  These can be found in the right-most column of the Alarm Configuration screen.
Global Alarm Enable
This single checkbutton allows the entire alarm system to be enabled or disabled.  By using the alarm system "master switch," individual alarm setup can be left unmodified when it is desirable for alarms to be disabled.
Indicator Options
There are two possible indicators that can be activated when an alarm is triggered: an audible warning tone and a pop-up alert box.  These indicators are both optional and independent of one another.  When the audible warning tone option is selected, any alarm condition will cause the sounding of a warning tone (note: sounds must be properly configured and enabled for this to work).  When the pop-up alert box option is activated, and alarm condition will result in an alert box being displayed on the screen.  The alert box will display data indicating the particulars of the alarm condition.

Trends, Averages, and Extremes

The wx/net client provides mechanisms for locally tracking the trends, averages, and extremes of real-time data coming from the server.  These values are computed solely by the client based upon whatever data comes from the server.  All three of these functions can be custom configured by the user.  Further descriptions of these functions follow.
 

Trends

There are three measurements for which trends are computed at the client: Wind Speed, Outside Temperature, and Barometric Pressure.  For the latter two, the trend is calculated by sampling the individual measurement at a fixed interval and comparing it to a preset threshold.  Wind Speed, however, works based upon an average.  Since Wind Speed is such a sporadic measurement, the trend indicates a rise or fall in the average wind speed over a given interval, rather than the instantaneous wind speed at sample time.  The average used to calculate the Wind Speed trend is the running average that all measurements have.  Therefore, configuration of the auto-reset time for the Wind Speed average will have an effect on how the trend for wind speed is calculated as well.

The trends are indicated for the measurements that support them via a small window on the analog display.  The window will either contain an upward-pointing arrow, a downward-pointing arrow, or a flat line with arrow heads above and below it.  The up and down arrows indicate a rising or falling trend respectively, and the flat line indicates a steady trend.  A trend is considered steady if the delta of the measurement over the interval specified does not exceed the threshold specified.  These parameters can be configured via the Trend Configuration window.

Averages

All measurements on the wx/net client keep track of their averages.  To access the current average for a given measurement, click on the mode button on that measurement's GUI display.  When the button reads "Avg", the current average for that measurement will be displayed.  To instantaneously reset this average, click on the "Clr" button within the GUI display for that measurement.  Averages can also be reset automatically at particular intervals via the Average Configuration window.

In addition to the average mode that a given display can be put into, the measurements with analog representations also feature average markers so that you can see the approximate average values all the time, even when not in the appropriate mode.  For round dials, they appear as little pink arrows (narrower and longer than those for min/max) around the perimeter of the dial.  For the thermometer type readouts, they are purple bands across the column of the "thermometer".  These are merely analog representations of the digital average values.

If you wish to see the time of last reset for a given measurement's average, select Min/Max/Avg Data from under the Function pull-down menu.  All of the measurements' averages will be listed along with the times of last reset.  Any extremes for the measurements and the times they were recorded will be displayed here as well.

Extremes (Min/Max)

wx/net GUI client measurements all support extreme calculations, in the form of a minimum reading, maximum reading, or both.  Just like viewing an average, click the mode button on the measurements GUI display to cycle around to "Min" or "Max".  The minimum/maximum reading for that measurement will be displayed.  To reset the given extreme, click the "Clr" button on the measurement's GUI display while in the mode for the extreme you wish to reset.  Extremes can also be automatically reset at particular intervals via the Extreme Configuration window.

In addition to the min/max mode that a given display can be put into, the measurements with analog representations also feature min/max markers so that you can see the approximate extreme values all the time, even when not in the appropriate mode.  For round dials, they appear as little orange and blue arrows (for high and low respectively; these are shorter and wider than the average arrow indicators) around the perimeter of the dial.  For the thermometer type readouts, they are dark red and dark blue bands across the column of the "thermometer".  These are merely analog representations of the digital extreme values.

Both methods of reading extremes listed above will tell you the value of an extreme but not the time at which it occurred.  To see the extremes for each measurement along with the times associated with them, select Min/Max/Avg Data from under the Function pull-down menu.  All of the minimums and maximums will be listed with they times they were recorded, as well as all averages and the time of last reset.

Configuring Trends, Averages, and Extremes

There are many parameters which you may set to your liking for dealing with trends, averages, and extremes.  To access these, select Configure Trends / Avgs / Min-Max... from under the Options pull-down menu.  You should be presented with a screen very similar to the Graph Configuration screen.  Individual measurements are selectable on the left, the parameters settable on a per-measurement basis are in the center, and general configuration options are on the right.

Measurement-Specific Parameters

To set an option for a particular measurement, highlight the desired field in the left-most window of the configuration screen.  The center of the window should update to reflect the current settings for that measurement.  For each measurement, the center screen will show configuration options for both averages and extremes.  For those measurements which support trends (Wind Speed, Barometer, Outside Temp) a trend configuration item will also be shown.
Trend Sample Rates and Thresholds
For each measurement supporting a trend you may specify how often the trend should be calculated and what threshold the delta over that interval must exceed in order for the trend to be considered rising or falling.  A scale is presented with 20 increments and a slider widget indicating the current setting.  A base interval is also given for the measurement being configured (say 1 MPH for Wind Speed).  By setting the base threshold value with the slider, you indicate what the actual threshold for the trend calculation is.  This is arrived at by multiplying the threshold on the slider by the base interval (threshold of 5 with a 1 MPH base increment equals 5 MPH trigger threshold).  When a measurement is sampled, if it has changed by at least this threshold amount in either direction, the trend will indicate it to be rising or falling as appropriate.  If it falls within the threshold boundaries, it is considered to be steady.  This is a "sensitivity" type of setting.

You can also deem how often the trend gets computed.  Just below the threshold setting scale is a numerical entry box where you specify, in seconds, how often the trend is to be updated.  When this update occurs, the delta in the measurement is compared against the threshold set above to determine the actual trend.
 

Average Auto-Reset Parameters
You may choose to have the running average for a particular measurement be automatically reset at a particular interval. wx/net allows you to do this in the average area of the configuration screen.  You can choose to have the averages not reset at all (except manually via the GUI), reset at the top of every hour, reset at midnight of every day, or reset at a variable interval.  For the former three choices, simply click on the radiobutton corresponding to that choice.  To specify a variable interval, select the radiobutton for that choice and then specify, in seconds, how often the reset is to take place in the entry box provided.  The average will then be reset according to that interval.
Min/Max Auto-Reset Parameters
Just as with averages, you may choose to have the extreme measurements for a particular measurement be automatically reset at a particular interval.  wx/net allows you to do this in the min/max area of the configuration screen.  You can choose to have the extremes not reset at all (except manually via the GUI), reset at the top of every hour, reset at midnight of every day, or reset at a variable interval.  For the former three choices, simply click on the radiobutton corresponding to that choice.  To specify a variable interval, select the radiobutton for that choice and then specify, in seconds, how often the reset is to take place in the entry box provided.  The minimum and maximum readings for that measurement will then be reset according to that interval.

When using auto resets with extremes, you cannot control minimums and maximums independently.  They will both be reset at the same time.

General Parameters

In addition to all the configurable parameters for individual measurements, there are also some general parameters which don't apply to just one particular item.  These can be found in the right-most column of the Trend/Average/Extreme Configuration screen.
Disabling Auto-Resets
You may choose to disable auto-resets for averages, extremes, or both by clicking in the appropriate checkbox in the rightmost column.  If this override is engaged, it applies to all measurements and any individual parameters are ignored.  This option is provided so that auto-resets can be quickly disabled without having to modify individual settings for each measurement.
Restoring All Defaults
To reset all values in the trend/average/extreme configuration screen to their internal defaults, including measurement-specific parameters, click the Restore All Defaults button at the bottom of the General Parameters column.  This will affect all measurements, not just the ones showing in the window at the time.

Sun/Moon Data with the Almanac Function

In addition to its weather-related functions, wx/net also supports the calculation of certain astronomical data.  When the Almanac Window is opened, either by clicking on the left-most function "hot key" or by selecting Sun/Moon Data from under the Function pull-down menu, the supported astronomical data at that instant is calculated and displayed.

wx/net supports the following astronomical phenomena calculations:

Descriptions of Supported Astronomical Calculations

The following describes the various phenomena for which calculations are supported.  Within the definitions, "horizon" indicates a theoretical horizon, viewed from sea level, that would exist in the absence of any surface obstructions or variations, such as you would have across open water.  All phenomena are based upon the apparent position of a celestial body.  That is, where it appears to be due to atmospheric refraction, rather than where it actually is (observable only in a vacuum environment, such as the surface of the Moon).   The effect of refraction on Earth is generally considered to be a mean value of 0 degrees 34 minutes, discounting other environmental factors such as temperature, pressure, elevation, etc.

Twilight

Twilight is a Sun-related phenomenon, and there are three different levels of twilight: astronomical, nautical, and civil.

Astronomical twilight is the time during which the center of the Sun is between 18 and 12 degrees below the horizon.  The 18 degree delimiter marks the point at which diffuse light from the Sun is no longer detectable at the Earth's surface.  For all intents and purposes, astronomical twilight would be considered by most to be "night".

Nautical twilight occurs when the center of the Sun is between 12 and 6 degrees below the horizon.  During this time, there is enough light to make objects on the ground visible, but it is dark enough to see stars for navigational purposes.

Civil twilight is the period where the center of the Sun is at or above 6 degrees below the horizon, but the upper limb of the sun is still below the horizon (0 degrees).  Although the Sun has not yet risen/already set, there is still considered to be enough daylight for normal outdoor activities.  The "Hours of Daylight" calculation is based upon this value, with "Daylight" interpreted as ample, usable outdoor light from the Sun.

Rise, Transit, and Set

Rises, transits, and sets are phenomena common to both the Sun and Moon, as well as planets and all other celestial bodies.  The almanac function supports these calculations for the Sun and Moon only, however.

A celestial body rises when its upper limb crosses from below the horizon to above the horizon.

A celestial body sets when its upper limb crosses from above the horizon to below the horizon.

A celestial body transits when it crosses the local meridian at upper culmination (reaches the highest point of its traversal across the sky).  For the Sun, transit is theoretically supposed to occur at noon.  However, the existence of time zones and daylight savings time cause the actual time of transit to vary greatly throughout the year, as well as natural variation in the phenomenon itself.

Moon Phase and Disk Illumination

There a four principal Moon phases: New, First Quarter, Full, and Last Quarter.  These occur when the apparent longitudes of the Moon and Sun form 0, 90, 180, and 270 degree angles, respectively.  There are also four intermediate phases which occur between the principal ones: Waxing Crescent, Waxing Gibbous, Waning Gibbous, Waning Crescent.

wx/net first calculates the times and dates of the four principal phases.  Then, via interpolation of the dates therein derived, the four intermediate phases are calculated.  The intent is to divide the entirety of the phase cycle into eight equal portions, with the precise occurrence of the phase centered within its cycle slice.  Therefore, wx/net considers a "Full Moon" to be the period when the Sun's and Moon's longitudes form an angle approximately between 157.5 and 202.5 degrees, centered on 180.  Waning Gibbous would then be approximately 202.5 to 247.5 degrees, centered on 225, and so on.

The illumination of the Moon's disk is a percentage which indicates what portion of the Moon's disk (as it appears from Earth) is reflecting light from the Sun.  100% roughly coincides with a Full Moon, whereas 50% roughly coincides with First/Last Quarter and 0% with New.  This calculation is independent of phase, although there is a strong correlation.

Solstices and Equinoxes

A solstice or equinox occurs when the apparent geocentric longitude of the Sun is equal to a multiple of 90 degrees (that is, 0, 90, 180, 270 degrees).  On Earth, this corresponds with the Sun's crossing above or below the equator (equinox) or reaching the apex of its travel at the Tropic of Cancer/Capricorn (solstice).  Equinoxes signify the beginning of spring and autumn, and solstices mark the beginning of summer and winter.

These events always occur in March, June, September, and December.  However, the seasons they usher in will be different in the northern and southern hemispheres.  These differences are reflected in the Almanac window depending on the latitude being used to calculate the events.  The solstices and equinoxes shown always correspond to the current year, even if the order presented from left to right makes it seem as if a year boundary is being crossed.  This ambiguity will happen only with southern hemisphere latitudes.

The calculation used to derive this measurement is valid from 1000 A.D. through about 3000 A.D., and for several centuries afterward.  At the risk of introducing a "Y3K" bug, the formulae should be valid for a long time to come!

Latitude and Longitude Options

The astronomical calculations that the client performs need to have as inputs (among other things) the latitude and longitude for which the results will be applicable.  There are two choices available: you can use the latitude and longitude provided by the server to which you are connected (which could be anywhere in the world, theoretically), or you can specify local coordinates to use within the client itself.

To choose which set of geographical coordinates to use, click on the appropriate radiobutton within the For Sun/Moon Data: section of the Options pull-down menu.  The choices are: Use Local Lat / Lon coords, and Use Wx Stn. Lat / Lon coords.  These tell the client to use locally inputted coordinates or those provided by the current server, respectively.

Setting Local Coordinates

To specify local coordinates for use with the almanac calculations, click on Select Local Lat / Lon... under the Options pull-down menu.  You will be presented with an entry dialog box in which you can enter the degrees, minutes, and direction of your local latitude and longitude.  When Use Local Lat / Lon coords is selected, these local coordinates will then be used to calculate the astronomical phenomena.  The coordinates entered do not have to correspond to your local coordinates... you may enter values for any point on the globe to see what the astronomical data is at that location.

Historical Data

wx/net clients have the ability to request, process, and display archived data that is available through the currently connected server.  To access this historical data, select the Historical Data... option from under the Function pull-down menu.  You will be presented with a new window with a number of checkboxes and input areas.

Along the top are four checkboxes where you can select what type of operation you would like to do with the historical data you request.  Immediately below this you will find two entry boxes where you may specify the starting and stopping date of your data request.  The requests can be granular down to one day intervals.  To the right is a listbox which is used to select the measurements for which you would like to see historical data.  Below all of these is a large text area which displays the status and results of any queries that are launched.

To launch a request, simply specify the start and stop dates in the entry boxes provided.  The format in which these should be entered will be shown next to the entry boxes.  Once the dates are input, select the fields which you would like to see data for in the list box at the right.  You may select any number of the items presented there at once.  Finally, select the type of processing you would like to perform on the data via the checkboxes along the top.  A description of the four available operations follows below.  Once all of these options are set, click Send Query to launch the request.  Status updates will appear in the text box.
 

R/T Graph

The R/T graph operation will cause the data requested to be plotted in graphical form once received.  One graph will be plotted for each measurement requested.  Just like the "live" R/T graphs, all attributes are governed by the range selected for that measurement, and the setting in the Graph Configuration window.

R/T Dump

This option will cause all of the real-time values received to be displayed in textual form in the output window.  The timestamp of the measurement is given, along with the values (units converted to the client's settings) of the measurements requested.'

Daily Min/Max Dump

The Daily Min/Max Dump can be used to query the daily extremes (and averages, in the case of wind speed) for each day during the date range specified.  For each measurement requested, the relevant extreme/average data will be shown for each date lying within the window.

Min/Max Query

The Min/Max Query is similar to the Daily Min/Max Dump except it performs a comparison function on the data received and then presents the extremes (and average extremes) for the date span specified as a whole, rather than on a day-by-day basis.  Meaning that if a query is launched for the span of a month for, say, Outdoor Temperature, the result will be the highest and lowest outdoor temperatures for that whole span, along with the dates on which they were recorded.  Individual values are not shown, only the highest of the high and lowest of the low.  In this way you can find out the highest wind gust, barometer reading, or rainfall rate in an entire month, or even year.  For averages, it calculates the highest and lowest average and displays those just like the high and low raw measurements.
Historical data queries are a privileged function, meaning that if security is enabled at the server, you must have the proper Class of Service (COS) to request historical data.

The Product Catalog

wx/net possesses the ability to transmit text and images from the server to clients the request them.  The intent behind this feature is that a server may aggregate important data, such as forecasts or radar images, and provide them to requesting clients as a service.  To access the "catalog" of text and image items the server has available, bring up the Product Catalog window by selecting View Text/Image Catalog from under the Function pull-down menu, or else by clicking on the rightmost function "hot key" with the hurricane icon.

The Product Catalog window will show you all available text and image items at the server.  This list is a "snapshot" taken when the window is opened.  If you wish to refresh this list, click the "Refresh" button on the right.  You may select any one of the available catalog items at a time.  To view the item, click on the "View" button at the right.  The requested item will be displayed once it is received from the server.

You can view these items on demand, as outlined above, or they can be incorporated into dynamic slide shows using the Broadcast Function, described later in this document.

The Broadcast Function

A unique aspect of the wx/net client is the Broadcast function.  This refers to a mode of operation where a slide show of data collected at the client can be presented on the screen in a 640 x 480 window.  With the use of a scan converter, RF modulator, or other video broadcasting equipment, the information presented via the broadcast can be displayed on one or more televisions throughout a household.

Broadcasts are comprised mostly of material garnered from the Product Catalog on the server.  However, some real-time data can be incorporated by the client as well.  As of this release the following non-catalog data can be inserted into a broadcast schedule:

In future revisions, other dynamically generated data will be included, such as extremes and almanac data.

To use the broadcast functionality, you must first design a broadcast schedule in the "Design Studio".  One the broadcast is designed, to begin it you merely click on Start Broadcast under the Broadcast pull-down menu.  To stop a broadcast, click within the broadcast display window with the mouse.

Designing a Broadcast

Before a broadcast may be shown, it must first be designed.  To do this, click on Design Broadcast... under the Broadcast pull-down menu.  A screen will be presented to you with which you can customize your broadcast.  An illustration of this screen is presented below, with the key components labeled.
Broadcast design studio

Available Text and Image Items

On the left of the design screen toward the top are two windows showing the available text and image items that can be incorporated into a broadcast.  If you are familiar with the Product Catalog, you will realize that all items available there are represented here as well.  Some internally generated items such as CURRENT_CONDITIONS may be present as well.  The Available Item List may be refreshed by clicking the Refresh button at the top center of the screen.  Items may be "transferred" from the Available Items Lists to the Master Broadcast Schedule by first selecting a single item in one of the two windows (text or image) and then clicking on the arrow button that appears to the immediate right of the selection boxes.

Additional Text and Image Items

Below the Available items lists are two entry boxes where you can specify additional text and image items to be incorporated into the broadcast schedule.  The reason for this is that the Available Items windows function as a "snapshot" just like the Product Catalog, meaning that they only present what is available at the moment they are queried.  You may know, however, that at particular times there are other items available on the server even if they are not there when designing the broadcast.  You can specify these in the additional items entry boxes.  A good example of this is a warning (thunderstorm, tornado, etc.) that may appear at the server periodically.  To work this item into the schedule, add it via the additional items entry boxes.  You will of course need to know the name of the item beforehand, since the server doesn't have it currently available.

In addition to non-current server items, you can also incorporate local items into the broadcast as well.  These are text or image items that can be found locally in the account from which you run the client.  The way to point to a local item is easy, merely specify a full pathname to the item.  That's all that is necessary, as the client will see the "/" as the first character and know to look locally for the file.

Once an item is entered into either the text or image additional item entry box, it may be transferred to the Master Broadcast Schedule by clicking on the arrow button to the immediate right of the entry boxes.

Master Broadcast Schedule

The Master Broadcast Schedule is where the actual planning and composing of the broadcast is done.  Once items are transferred to the Master Schedule from the Available Items Lists, they can be arranged and length-specified by using the schedule manipulators.  These are a collection of buttons and entry box that are immediately below the Master Schedule.  By highlighting an item in the schedule, you can control its position therein by clicking the "Mv Up" or "Mv Dn" buttons.  The "Remove" button will take an item off the schedule and discard it.  If you wish for a particular item to be duplicated, select it and click the "Copy" button.  A new copy of the item is added to the list which may then be shuffled around like all others.  The copy function is a convenience when entering items in manually that need to appear several times in a schedule.

For each item in the schedule, you may specify a duration in seconds.  This duration is, for images, the amount of time it remains on screen until the next item is shown or, for text, the amount of time it will take to scroll one full page of text by.  Note that for text, a given duration is really more of a rate than an absolute duration as it depends on the length of the text item.  If the text item is less than one page long, the duration then becomes an absolute time as with an image.

Finally, one text item is allowed to be specified as a "ticker" item.  The ticker item will be scrolled across the bottom of the broadcast window as all the other "full screen" items are run through above it.  The ticker stays on all the time, looping continuously, and is not a part of the rest of the schedule.  To set a text item as the ticker item, select it in the broadcast schedule and click the "ticker" button.  It will be moved to the top of the schedule and an asterisk (*) will appear next to it indicating that it's a ticker item.  A good use of tickers is to have the CURRENT_CONDITIONS constantly scrolling on the bottom of the screen while radars and forecasts are shown above it.  For ticker items, the duration specified controls the number of seconds it takes to scroll the width of the ticker (horizontal versus vertical).

Per-Item Configuration

Each unique item in the Master Schedule has certain attributes which may be controlled via the Per-Item Configuration Area.  Things such as text color, background color, audible warnings, refresh rate, and font size are all configurable for these items.  These attributes will then apply to each instance of a particular item in the schedule.  If, for instance, you had three instances of "RDU_Radar.gif" in the schedule, the attributes would be the same for all three.  They would be separate, however, from those of "CURRENT_CONDITIONS" or any other different item type.

Select the item which you would like to set attributes for in the Master Schedule window by clicking on it.  The current set of attributes will appear in the configuration area.

The refresh rate is how often a new version of this item will be fetched from the server (or locally if a local item).  In between refreshes, the items are read out of broadcast_cache/ in the main .wxnet/ directory.  You can enable or disable auto-refreshing for any item by selecting or deselecting the "Enable Auto-Refreshing" box.

For image and text items, you can specify a background color to be shown with that item on the broadcast screen.  These are scrolled through by clicking the "Background Color" button to the left of the screen.  Additionally, for text items only, you can specify a font style, size, weight, and color that the text is to appear in.  You may decide to make regular forecasts royal blue with white lettering, but make storm warnings red with bright green lettering.  Note that even for image items you can specify a font size and color, however they will be meaningless in the image item context.

Audible Warning Indicator
The audible warning button should be engaged if you want an alert tone to be played when an instance of this item type is being displayed during a broadcast.  Typically this would be used for special messages that may not always be present, such as severe weather alert statements.  Sounds must be properly configured and turned on for the audible warning feature to work.

Vertical Text Overscan

For all text items in a broadcast, you can specify a number of blank lines (linefeeds) for precede and follow each instance of a text item.  This allows you to compensate for TVs that cut off the top and bottom of the picture.  Simply go to the Broadcast pull-down menu, and under the Vert. Text Overscan submenu you will find the available options.  Click on the one desired.

Starting/Stopping a Broadcast

Once a broadcast has been configured the way you want it, it is started by simply clicking on Start Broadcast under the Broadcast pull-down menu.  Once started, the 640 x 480 broadcast window will appear in the upper-left hand corner of the display.  The client will begin fetching the items it needs from the server, and there may be a slight delay of several seconds as the information comes down before the broadcast goes into full swing.  Once it begins running, however, there should be no delay between items.

To stop the broadcast, left click with the mouse within the broadcast window area.

While a broadcast is running, you may not perform any further broadcast configuration actions.  You can, however, still adjust the vertical text overscan attribute.

Using Config Files

Config files allow you to save your settings for certain parameters in the wx/net client program and load them back in during another session.  You can store information such as where your client should point to for a server, what kind of broadcast you have set up, what units all of your readouts are in, and more.  Config files are layered, meaning that when you load one it only sets the parameters which is was asked to store and leaves the rest alone.  It can be a snapshot of everything in the system or it can just control one aspect, such as units for display.  By loading in multiple "partial" config files, you can achieve a desired net result.

Config files can be saved wherever you want them, and always end in .wxcfg.  To create a config file, simply set things as you want them in the client, and then use Save Configuration File... under the File pull-down menu.  When selected, you will be presented with a file selector box which is used to name the config file.  Once that is done, you will be presented with a series of checkboxes corresponding to which attributes you would like to save in this congfig file.  Select all that apply, and only those will be saved and subsequently loaded from the config file.  After selecting the attributes to save, the new config file will be written out.

To load a config file, use Load Configuration File... from the File pull-down menu.  Select the file you want with the selector box and it will be loaded and applied to the current client session.  There is a default configuration file named default.wxcfg in the .wxnet/ directory.  If this is present at startup, it is automatically loaded in and parsed.  If it is absent, then the hardcoded internal defaults are used.  To save a default configuration file is simple: perform the same steps as if saving a regular config file, but select Save Default Config File... from the File pull-down menu.  This ensures that the file gets named default.wxcfg and bypasses the file name selection screen.


The Debug Facility

A modest debug facility is built into the client the same way it is built into the server.  Procedures, events, and data can be shown depending on how the debug parameters are configured and what level is selected.  This feature is useful if you think wx/net is exhibiting error behavior and you wish to collect some data with which to debug on your own or to forward to the author.

All debugging functions on the client are contained under the Debug pull-down menu.  You will see several choices for procedure call display and the debug data level.  Set these as you wish for a debugging session.  You will typically want to see only MAJOR procedure calls (most of them are major, and the minor ones are of little consequence and/or executed with annoying frequency so as to clutter things up).  As for debug level, the rule is: the higher the number, the more detailed the output.  The levels are arbitrary though, with the only real guideline being that major errors are always shown at level 0.  As with the server, you can opt for the debug level setting to be inclusive or exclusive.  The difference being that inclusive will show all events with debug levels up to the one specified, whereas exclusive will only show events with exactly the debug level specified (and level 0 too, which is always shown).

You may opt to have the debug information dumped to a file for you as well as displayed on the screen.  To do this, select the Log to file option.  The debug output will be sent to .wxnet/client.debuglog as well as appearing on the screen.

To start the actual debugging process, select Activate.  This will open up the debug window and begin the logging process.  The settings for debugging can be changed on the fly as debug information is coming out.  Beware though that the debug output operation is a time intensive one and a real-time performance hit will be seen at the client.  To stop debugging, you may close the debug window itself with the close button.  Alternately, if you wish to examine the output data a bit, select Deactivate under the Debug pull-down menu.  This will stop debugging without closing the output screen so you can look through its contents.



back to wx/net program suite page