Revolutionizing Instrument Control: VXI-11 RPC on iOS for Maximum Efficiency

Sridhar Rajendran
Oct 30, 2023
5
mins read

In distributed networking, when a program on one machine (client) executes a program on another machine (server) over a network, it is referred to as a remote procedure call (RPC). RPC is a communication technique that enables synchronous operation in a client-server environment. This means that when a remote procedure call is made, the calling environment (client) is temporarily suspended, and the procedure parameters are transferred across the network to the environment where the procedure is to be executed (server). The procedure is then executed in that environment.


In the world of distributed networking, one crucial aspect is the ability to remotely control and communicate with various instruments, such as oscilloscopes, spectrum analyzers, and signal generators. VXI-11 (Virtual Instrument eXtensions for Instrumentation) is a protocol that defines a standardized way for remote control and communication with these test and measurement instruments. This article explores the implementation of VXI-11 RPC in iOS devices to overcome the challenges of communicating with telecom testing instruments using Swift.

What is LXI?

LXI (LAN eXtensions for Instrumentation) is a standard designed for controlling and managing test and measurement instruments over a local area network (LAN). It specifies the use of standard network technologies, such as Ethernet, and provides a framework for discovering and configuring instruments on a network. Many LXI instruments communicate over the LAN through one of two protocols: VXI-11 and HiSLIP.

What is VXI-11?

VXI-11 is a protocol that provides a standardized method for remote control and communication with test and measurement instruments. It is based on the principles of RPC and enables a client application to send RPC requests to a networked instrument to control its functions and retrieve data. VXI-11 employs ASCII commands, such as Standard Commands for Programmable Instrumentation (SCPI), to communicate with instruments.

Problem & Solution

One of the challenges we encountered was the need to communicate with telecom testing instruments using SCPI (Standard Commands for Programmable Instrumentation) on iOS devices like iPhones and iPads. iOS devices utilize the TCP/IP model for networking and internet communication. Various applications running on iOS devices use protocols at the application layer, with the iOS operating system handling the lower layers of the TCP/IP model for network communication. Unfortunately, there is no open-source framework available for implementing the VXI-11 protocol in iOS using Swift. Existing libraries are primarily written in C, Java, or Python. To meet our requirements, we developed a Swift wrapper that can call a C library supporting VXI-11.

In conclusion, the implementation of VXI-11 RPC in iOS devices presents a solution to the challenge of communicating with telecom testing instruments, allowing for seamless control and data retrieval on this platform. By bridging the gap between VXI-11 and Swift through a wrapper, we enable iOS devices to interact effectively with a wide range of test and measurement instruments. This innovative approach opens up new possibilities for instrument control and data acquisition within the iOS ecosystem.

Share :

Join the conversation

Other blogs

Top 5 Performance Testing Tools for Your Team

Performance testing checks how well your software holds up when it's under a lot of stress! The goal is to find parts that are too slow or use too many resources. Performance testing measures speed, response time, scalability, resource usage, and stability when your system is working hard. It helps you spot performance bottlenecks and other issues before users complain about a slow or unstable app. This type of testing makes sure your software stays speedy and stable even when flooded with traffic.

Katalon Studio: A Comprehensive Guide to Automated Testing

Katalon Studio serves as a comprehensive solution, integrating tools for conducting automated testing across various platforms, including web, API, mobile, and Windows desktop applications. By reducing the necessity for extensive coding expertise, Katalon Studio aims to streamline the software development life cycle (SDLC) process for teams, facilitating faster iteration and more efficient quality assurance practices.

Five Cutting-Edge AI Models to Keep an Eye on in 2024

Are you curious about the latest AI technology? Well, get ready. 2024 is shaping up to be an exciting year for AI advancements. In this blog post, I'm going to share five cutting-edge AI models that are worth keeping an eye on.

October 30, 2023
|
5
mins

Revolutionizing Instrument Control: VXI-11 RPC on iOS for Maximum Efficiency

Sridhar Rajendran

In distributed networking, when a program on one machine (client) executes a program on another machine (server) over a network, it is referred to as a remote procedure call (RPC). RPC is a communication technique that enables synchronous operation in a client-server environment. This means that when a remote procedure call is made, the calling environment (client) is temporarily suspended, and the procedure parameters are transferred across the network to the environment where the procedure is to be executed (server). The procedure is then executed in that environment.


In the world of distributed networking, one crucial aspect is the ability to remotely control and communicate with various instruments, such as oscilloscopes, spectrum analyzers, and signal generators. VXI-11 (Virtual Instrument eXtensions for Instrumentation) is a protocol that defines a standardized way for remote control and communication with these test and measurement instruments. This article explores the implementation of VXI-11 RPC in iOS devices to overcome the challenges of communicating with telecom testing instruments using Swift.

What is LXI?

LXI (LAN eXtensions for Instrumentation) is a standard designed for controlling and managing test and measurement instruments over a local area network (LAN). It specifies the use of standard network technologies, such as Ethernet, and provides a framework for discovering and configuring instruments on a network. Many LXI instruments communicate over the LAN through one of two protocols: VXI-11 and HiSLIP.

What is VXI-11?

VXI-11 is a protocol that provides a standardized method for remote control and communication with test and measurement instruments. It is based on the principles of RPC and enables a client application to send RPC requests to a networked instrument to control its functions and retrieve data. VXI-11 employs ASCII commands, such as Standard Commands for Programmable Instrumentation (SCPI), to communicate with instruments.

Problem & Solution

One of the challenges we encountered was the need to communicate with telecom testing instruments using SCPI (Standard Commands for Programmable Instrumentation) on iOS devices like iPhones and iPads. iOS devices utilize the TCP/IP model for networking and internet communication. Various applications running on iOS devices use protocols at the application layer, with the iOS operating system handling the lower layers of the TCP/IP model for network communication. Unfortunately, there is no open-source framework available for implementing the VXI-11 protocol in iOS using Swift. Existing libraries are primarily written in C, Java, or Python. To meet our requirements, we developed a Swift wrapper that can call a C library supporting VXI-11.

In conclusion, the implementation of VXI-11 RPC in iOS devices presents a solution to the challenge of communicating with telecom testing instruments, allowing for seamless control and data retrieval on this platform. By bridging the gap between VXI-11 and Swift through a wrapper, we enable iOS devices to interact effectively with a wide range of test and measurement instruments. This innovative approach opens up new possibilities for instrument control and data acquisition within the iOS ecosystem.

Other BLOGS