LXI Connexions Magazine Article
Anyone who has learned to drive a car, knows how to step into an unfamiliar vehicle and within a few moments can make the vehicle move. It does not matter that the particular vehicle they learnt to drive in was from a different manufacturer. The principles required to operate a car remain the same. The steering wheel is in front of the driver, the pedals at your feet. The door handles are on the door and you look out the front to see where you are going. Once you have learnt the concept of 'driving', adapting to a new car is a simple process.
Compare this scenario with that which is found when a user needs to set up a DSL or cable modem. You open the box and are presented with a device that can be configured in a number of ways. And if you have to set up a modem from a different manufacturer to which you are used to, the installation process will almost certainly be different. Each and every device can be different. They just don't "drive" the same!
Not so with LXI. Many different manufacturers are producing LXI enabled equipment, performing a whole range of different test and measurement functions. Some are simple devices, whilst others are much more complex containing dense functionality or even the functionality of several instruments under one interface. And to unify the configuration method for all these different types of equipment meant putting all of the basic controls in the same place. Such a plan called for the development of a common user interface as part of the specification.
What is the user interface? The user interface is the way in which a user communicates with an LXI device for configuration purposes. The LXI specification is however, not a set of strict guidelines designed to limit the way in which a manufacturer implements the user interface. There is considerable scope for them to implement it in a way, for example, that fits with their current corporate design or colour scheme. The specification also does not deal with specific instances of control that a manufacturer may want to place on their web pages. For instance, some devices, such as a LXI enabled switch, would not require the same levels of control as an LXI enabled spectrum analyser. So the actual number of web pages present in the former instrument is likely to be much less than that of the latter.
The specification is designed to provide a common interface to configuring an LXI device for network connectivity. The functionality the device provides may well be controlled via the web pages, but it does not necessarily need to be so. Indeed a complex instrument may not have any other configuration options other than networking available on the device. Such is the flexibility of the specification.
So what does this mean for the end user?
Only a short time ago, when a new test system was constructed, the options for connecting stand-alone test equipment together were limited. GPIB and RS-232 were the only realistic options for many users, but configuring it was in reality fairly simple. You set some switches or jumpers on the back of the device and plugged your cables into it. It was a physical means of setting a device's identity which could be easily checked by simply eyeballing the devices configuration switches. As time moved on, manufacturers moved away from this simple approach to different methods of setting GPIB addresses. Some used a front panel control to set the GPIB address, others used RS232 leads or proprietary connectors to set the device up via terminal software, and pretty soon every manufacturer was doing their own thing with no common way of assigning addresses. If a test system needed to be reconfigured or a new piece of equipment installed, you would need manuals or cables for each piece of equipment or someone experienced with every piece of the equipment and its configuration nuances.
The problem could become worse with older equipment that may not have been used in some time. How do you reset the device back to its default configuration? The employees who integrated the system have either left the company or retired, the original manufacturer may no longer be in business, or the manuals may be unavailable or lost.
The use of laptop computers when configuring equipment is also important for the field engineer and adds a different problem. These machines are less likely to include such ports as RS-232 connectors or have the capability to control GPIB equipment without the necessity of having to carry around adapters or converters.
LXI does away with all of this. The ease in which a user can reconfigure their equipment in a standard way is obvious. If you can set up one LXI device, you can set up any LXI device. The advantages for integrators are great. With minimal training, a user can quickly connect equipment together in ways not previously possible with any test architecture before. If a piece of equipment is configured incorrectly, a user can reset the device back to a default state that is the same for all instruments so long as he or she has physical access to it. Special cables or hardware are not required, it's the same stuff - routers and CAT 5 cables - you use for connecting your computers up with in the first place. You are not limited to the same short cable runs as with GPIB, or the complexity of Null modem cables with RS-232. Any of the networking equipment you can pick up at a local computer store can get you up and running quickly and with the minimum of fuss.
How does this work in reality?
LXI was designed so that a user configuring an LXI device will find everything they require set out in a logical manner. There are no cryptic menu items to decipher, and once you are familiar with the basic configuration of one LXI device, configuring those from other manufacturers becomes an almost trivial exercise. You already know how to configure one device, and thus others are no more or less difficult to configure.
When a user first configures their LXI device, there are a number of ways in which they can communicate with it. As a minimum, they will require a computer with a web browser. The internet is ubiquitous now, and even if a computer does not have a direct internet connection, it is likely to have some sort of web browser installed by default. The specification asks that all web pages are provided in a standards compliant way, so it does not even matter what type of web browser you use, the pages will display in a logical way. And if a user knows how to browse the Internet, they are going to know how to navigate the LXI configuration screens. By using established concepts and embracing existing standards, LXI allows a user to bring that experience to bear in configuring their LXI device.
(figure 1 - A typical LXI Devices home page)
So you have a web browser and your LXI device is connected to your network, how do you know what address to use? If you have a server issuing addresses automatically (via DHCP), you can check its log, compare the MAC address printed on your LXI device to that in your servers DHCP log, and discover the address in this way. This MAC address is unique to every single piece of network enabled equipment in the world, and serves as a unique identifier. Examine any network card or enabled device and you will find this hexadecimal number clearly printed. The LXI specification mandates that this MAC address is clearly visible on all devices to aid users in troubleshooting and configuration.
Alternatively you can use the VXI-11 discovery protocol, which is part of the LXI specification. This is the real world equivalent to searching a darkened room with a flashlight. However, as VXI-11 is part of the LXI standard, all devices will support it. You can use some of the many available software tools that utilise this protocol to list all LXI devices found on a network. VXI-11 however has its problems. It is not able to discover multiple devices behind a single IP address as would be the case with hybrid LXI devices. VXI-11 does not work through firewalls or across subnets easily, and requires the use of large software libraries which do not lend themselves to embedded controllers often found inside LXI devices particularly well.
The LXI consortium is working to address these issues in version 2.0 of the specification and additional discovery protocols will be based around industry standards already deployed and in use within the greater computer industry. These are protocols such as Universal Plug & Play, Web Services or the ZeroConf family of which perhaps Apple's Bonjour is the most well known.
Additional work is also being completed on a schema that can be downloaded from an LXI device. This will give much more detailed configuration information about instruments capabilities than the VXI-11 protocol or additional discovery methods alone can provide today, and will embrace the new requirements of hybrid and adapter based LXI devices which may contain much more advanced functionality than a single instrument did in the past.
Now that you have discovered your LXI devices address, you simply type it in to your web browsers address bar. The first page the user will see is the device's home page. This describes all the pertinent information that a user will need to communicate with the device. It lists the IP addresses the device is using, its LXI class, description, serial number, manufacturer's web site, and VXI-11 resource string. Manufacturers can also place additional information specific to their device here as well, but the user always knows that this page will display the same basic information regardless of manufacturer. This page, being standards compliant, will display on any web browser. As it is platform agnostic, the browser could be on a Microsoft Windows, Apple Mac or a Linux based computer. It does not matter as the page will display, providing a level of freedom for the user in environments where more than one operating system may be in use that was simply not available before. Note that some browser platforms such as cell phones or hand held devices may also work, just so long as they are standards compliant!
The use of standards here is of vital importance for the future. By using the HTTP standard HTML code, you are not restricting an instruments configuration to one particular brand of web browser. Secondly, the use of web standards means that web browsers on different platforms will display the page correctly. Many years ago, the differences between the two major web browsers of the time, Netscape Navigator and Internet Explorer meant that web designers had to employ browser detection routines to send the correct HTML for the page to render correctly. This became even more complex when these browsers were ported to different operating systems where the problem became much more pronounced. The use of web standards makes this difficult and tedious process much less likely. Even today, however, differences occur that means web designers must still test their pages to ensure compliance and operation on a number of different platforms. Tools exist for this very purpose and are freely available from organisations such as the "world wide web consortium" or www.w3.org
The process of building web pages is also made much easier for a manufacturer by being standards based. When a manufacturer designs the pages, they can use standard HTML editing tools, or a web design package such as Dreamweaver or Homesite. These types of packages have a number of options that can be adjusted to tailor the output generated to ensure that it is standards compliant.
(figure 2 - Using web standard tools to generate web pages)
The use of web pages for configuration is also a logical choice. Many people are used to configuring network devices by using web pages. It gives the manufacturer a way of presenting configuration options in a graphical manner that is clear and concise. A web page is inherently simpler to understand than a command prompt for instance. A manufacturer can restrict the options, for instance, on a pull down menu depending on a user's previous configuration setting. Guiding the user through a sane configuration without the need to present what can be cryptic error messages through a command line interface. Graphical cues can also be used to make the available options clearer which can be useful for those whose primary spoken language may not be that of the devices manufacturer.
(figure 3 - Graphical control of an LXI device)
The use of standard form elements such as those found on any website, also gives the user a familiar way to interact with the device. Most users will have seen or used these elements on web sites when they fill out a questionnaire or submit their details for example to register with a mail list or online auction service. A user will know that underlined text means a hyperlink, a button marked 'submit' will activate their changes or progress to another screen and so on. The use of familiar user interface controls and methods makes it a much shallower learning curve for LXI than would be the case with a command line configuration method.
An example of this scheme is the way a user is able to adjust the way in which the LXI device obtains its TCP/IP address. These links are mandated by the specification and again follow a common format and layout. When a user follows these links, the information required to change whether the device uses DHCP, Dynamic/Auto IP or a static address is displayed in a format the user can easily identify and change.
An advanced address configuration link also allows a user to control aspects of the devices networking if they are supported. The use of 'radio' buttons and pull down menus means that there is no uncertainty in a user's selection, and the web pages can be constructed in such a way as make it almost impossible for a user to inadvertently select the wrong option or an invalid configuration.
(figure 4 - Network Configuration screen)
If the device's LXI class supports synchronisation, a link is also provided to a page that allows the user to configure this in a uniform way. Once again this minimises the user having to learn a new way of doing things for each manufacturer's product. This speeds systems integration and makes support and maintenance simpler.
LXI makes things simple and predictable for users. By keeping all of the controls in the same place, the web based management and its ease of use prevents many of the problems, which have plagued earlier methods of instrument configuration. LXI allows users to configure equipment in a way, which is comfortable and familiar to them from previous exposure to the internet, and is common with many other areas of the computer industry. Additionally the use of industry standards reduces the need for specialist, unusual or proprietary configuration equipment, and a system can be configured quickly and easily using off the shelf components available from any computer store.
"Drivers", start your instruments!
About the Author
Simon Appleby is the embedded systems manager at Pickering Interfaces. He started his career at GEC-Marconi, before moving into consulting and management positions within the electronics and computer industry.
He has worked at Pickering Interfaces for six years and is a member of the LAN & Web working group working towards development of the LXI specification.