Testing Open Socket Communications Using PuTTY
October 19, 2017
Many instruments include the ability to be controlled via a remote connection to a computer using an Ethernet connection. In many cases, these instruments require a special software library that can help establish and maintain the communications link between the instrument and controlling computer. This can be annoying for a few reasons… the software library is likely to occupy a large amount of space on the controlling computer and is also required on any computer that is being used to control the instrument. In a remote networking application where multiple user’s may want access to a test instrument, this can cause support and installation headaches.
Luckily, there are a few solutions that can help. In this application note, we are going to discuss using open socket communication techniques using an open source communication tool called PuTTY with a SIGLENT SSA3032X Spectrum Analyzer.
What are open sockets and why use them?
Within the context of Ethernet/LAN connections, sockets are like mailboxes. If you want to deliver information to a specific place, you need to be sure that your information is delivered to the correct address.
In the context of test instrumentation, an open socket is a fixed address (or port number) on the Ethernet/LAN bus that is dedicated to process remote commands.
Open sockets allow remote computers to simply use existing raw Ethernet connections for communications without having to add additional libraries (VISA or similar) that require additional storage space and processing overhead.
Programs that utilize sockets for LAN communication tend to take up less memory and operate more quickly.
PuTTY
PuTTY is an open source software tool that provides a number of simple communication links (RAW, Telnet, SSSH, Serial, and others). It is available for free and there are a number of versions available for popular operating systems.
You can download as well as learn more here: http://www.putty.org/
In this example, we are using PuTTY to verify the raw LAN connection is working properly. It is quite a simple program that does not allow for very complex operation (sequences, converting data sets/strings, etc..). If you require more complex functionality, software platforms like Python, .NET, C#, LabVIEW, etc.. can be used to control the instrument using a similar open socket connection.
Configuration
In this test, we are using the most current revision of the SIGLENT SSA3032X Spectrum Analyzer firmware (Revision 01.02.08.02) which enables open socket communication.
This example also uses PuTTY version 0.67:
Steps
1. Install PuTTY for the OS you intend to use
2. Make sure your instrument and firmware revision can use open sockets
The SSA3032X revision 01.02.08.02 enables open socket communication.
To find the revision, press the System button > Sys Info.
Figure 1 below shows a sample system information screen from a SIGLENT SSA3000X analyzer:
Check the product page and firmware release notes for more information.
3. Connect the instrument to the local area using an Ethernet cable
4. Find the IP address for the instrument. This is typically located in the System Information menu. On the SIGLENT SSA3032X, press the System button on the front panel > Interface > LAN.
Figure 2 below shows a sample LAN setup page from a SIGLENT SSA3000X:
5. Open PuTTY
6. Select Raw as connection type
7. Enter the IP address in the Host Name field
8. Enter the port number. This should be provided in the users or programming guide for the instrument.
The SIGLENT SSA3000X Spectrum Analyzer uses port 5025.
Figure 3 below shows the PuTTY configuration for this example:
9. Press Open. This will open a terminal window as shown in below:
10. Using the computer keypad, enter *IDN? and press the Enter key on the keyboard to send the command.
This is the standard command string that is used to request the identification string from the instrument. As shown below, the instrument responds with the manufacture, product ID, Serial Number, and firmware revision.
Conclusion
PuTTY is an easy way to verify an operational LAN connection to instrumentation that can use open sockets.