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

Foundations of Gen AI: Shaping the Future of Technology

The tremendous advances in artificial intelligence astound me as a computer geek. Gen AI, or "Generative Artificial Intelligence," is among the most fascinating technological advances of the last few years. The underpinnings of Gen AI are fascinating to investigate, as they will have a significant impact on how technology develops in the future.

Mastering Kubernetes: An Ultimate Guide to Containerized Application Management

Kubernetes (k8s) is an open-source platform for managing containerized applications and handling tasks like scaling, self-healing, service management, load balancing, deployment, storage orchestration, and updates and rollbacks.

Navigating .NET MAUI: Pros and Cons in Living Colour

.NET Multi-platform App UI (.NET MAUI) is an exciting new framework from Microsoft that allows developers to build native cross-platform apps for Windows, macOS, iOS and Android using C# and .NET.

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