nslinktool − X11 GUI for DeviceMaster administration
nslinktool
nslinktool is an X11 based GUI front end that allows the user to perform common administrative tasks related to the DeviceMaster. nslinktool is written in Python using the Tkinter package and both must be installed to run nslinktool.
nslinktool performs three major functions:
1. |
Start/stop/restart the NS-Link device driver and its associated daemon. It also allows the user to control whether the driver will be started automatically at system boot. | ||
2. |
Edit the configuration file /etc/nslink.conf. | ||
3. |
Examine and configure the IP addressing information in DeviceMasters. |
The initial window that is seen when nslinktool is started is the driver administration window. It contains four lines of status information and seven buttons:
Status Lines
The three status
lines below are updated every time nslinktool makes a change
to system configuration and are also updated once every
second while nslinktool is idle.
Init system:
Shows which init system has been detected on the host where nslinktoo is running. If this value is incorrect, some of the other operations involving start/stoping or enabling/disabling the driver may not work correctly.
Kernel module:
Shows whether the nslink kernel module is currently running in the kernel. This is based on the information available in /proc/modules.
Daemon:
Shows whether the daemon nslinkd is currently running. This is based on the file /var/run/nslinkd.pid and the existence of a matching PID in /proc.
Driver startup:
Shows whether the driver and daemon are configured to be loaded/run at system boot. This is determined by querying the init system in use.
Command
Buttons
Hub IP Admin
Opens the IP administration window which allows the examination and configuration of static IP addressing information contained in a DeviceMaster’s non-volatile memory.
Config Driver
Opens the driver configuration editor window which allows the user to edit the contents of the nslink.conf(8) file.
Start Driver
Loads the driver kernel module and starts the daemon using the command appropriate for the detected init system.
Stop Driver
Stops the daemon and unloads the driver kernel module using the command appropriate for the detected init system.
Restart Driver
Restarts the driver/daemon using the command appropriate for the detected init system. The driver must be restarted in order for changes to the nslink.conf file to take effect.
Enable Driver
Configures the system so that the driver is started when the system enters the normal run state. This is done using command appropriate for the detected init system.
Disable Driver
Configures the system so that the driver is not started automatically. This is done using the command appropriate for the detected init system.
Driver Status
Open a window to monitor the device driver status present in /proc/driver/nslink/status. This window does the equivalent of the shell command:
while sleep 1; do cat /proc/driver/nslink/status; date; done
Port Status
Open a window to monitor the port status present in /proc/driver/nslink/ports. This window does the equivalent of the shell command:
while sleep 1; do cat /proc/driver/nslink/ports; date; done
Help |
Displays this man page in a pop-up window. |
This window allows the user to examine and configure the static IP addressing information in the DeviceMaster’s non-volatile memory. It is a front end for the nslinkadmin(8) command line utility.
The four main
panels in the editor are the main list window, the IP Config
panel, the Ethernet panel, and the DeviceMaster panel.
Ethernet
The drop-down list controls the Ethernet device used. The Scan button queries the Ethernet network to construct a list of the DeviceMasters present on the network. This list is then displayed in the main list window.
Main List Window
This window displays a list of DeviceMasters found on the network and allows the user to select which one is to be accessed.
Hub |
This window contains buttons to perform general functions |
Reset
Sends a reset request to the DeviceMaster. This causes it to return to the idle state. A DeviceMaster must be reset before any IP configuration changes will take effect. | |||
Quit |
Closes the IP administration window. |
IP Config
This window contains the controls used to examine and change the IP addressing information in the DeviceMaster.
Get |
Reads the IP configuration from the selected DeviceMaster. This is the static IP configuration information in non-volatile memory. Blank values indicate that the DeviceMaster will attempt to use DHCP to obtain an IP address, netmask, and gateway address. The information obtained by the DeviceMaster using DHCP is not shown. | ||
Set |
Writes the currently shown IP configuration to non-volatile memory in the selected DeviceMaster. You will be warned if the gateway is not on the network calculated based on the address and netmask values. | ||
Erase |
Erase the IP configuration in the selected DeviceMaster. This results in the DeviceMaster attempting to use DHCP to obtain an IP address the next time it is reset. |
IP Address, Net Mask, Gateway
Entry fields containing the configuration data read from or to be written to the selected DeviceMaster. These values should be entered in decimal, dotted-quad notation (e.g. 192.168.1.15 or 255.255.255.0).
This is an editor for the information in the nslink.conf(5) file. The main list window shows a one-line summary of each of the DeviceMasters configurations found. The buttons along the bottom of the window are:
Edit |
Opens a hub-editor window that allows the user to change the configuration of the DeviceMaster selected in the main list window. | ||
Settings that affect the DeviceMaster unit as a whole include the following: |
ReTransmit Timer
Controls how long the MAC-mode protocol will wait for a packet to be acknowledged before it is re-transmitted.
Link timeout
Controls how long a network connection to a DeviceMaster can be down before the NS-Link driver returns error status to application read/write calls (defaults to 120s).
Scan period
Controls how often data is transferred between driver and DeviceMaster (default is 10ms).
Settings for individual ports include the following: |
Type
The electrical interface mode for the port (e.g. RS232, RS422, RS485). Not all models of DeviceMaster support selectable interface modes. |
Timeout
Enables an inter-character timeout (in ms) that will cause the receive buffer to be transferred to the application.
LL |
Enables low-latency mode that will reduce buffering of receive data in order to minimize latency (increases CPU usage by the driver). | ||
FD |
Disables the rx FIFO (only supported by some 1-port models). | ||
TTR |
Enables terminating resistor on RS485/RS422 transmit pair (not supported on all models). | ||
RTR |
Enables terminating resistor on RS485/RS422 receive pair (not supported on all models). | ||
New |
Creates a new DeviceMaster configuration and opens a hub-editor window.
Delete |
Deletes the selected DeviceMaster. |
|||
Save |
Saves the current configuration to the nslink.conf(5) file. |
|||
Quit |
Closes the driver configuration window. |
You are not warned if you quit with unsaved changes. You are not asked for confirmation when you delete something. Closing the initial driver administration window (the one with the logo at the top) will close all of the other windows also.
This program has been tested on a RedHat 6.2 and 7.2 systems with Python 1.52, 2.1, 2.2. It should work with the /etc/rc.d structure used by Debian systems.
nslinktool does not use any environment variables other than those used by the Python and Tkinter packages.
/etc/nslink.conf
Configuration file which is edited by the Driver Config function of nslinktool.
/sbin/nslinkadmin
Executable utility used by nslinktool to interface with DeviceMasters when administering IP addressing information.
/proc/modules
Used to determine if the nslink module is loaded.
/var/run/nslinkd.pid and /proc/<pid>
Used to determine if the NS-Link daemon is running.
/etc/rc.d/nslink or /etc/rc.d/init.d/nslink
Shell script used to start/stop the driver and daemon.
/etc/rc.d/rc[2-5].d/[sS]83nslink or
/etc/rc[2-5].d/[sS]83nslink" Symbolic links to the shell-script mentioned above that determine if the driver is started when the system boots.
nslinkd(8), nslink(8), nslinkadmin(8), nslinkrelease(8), nslink.conf(5)
Check the release notes file for an up-to-date list.
ftp://ftp.comtrol.com/