HookeWire


Introduction

We have undoubtedly entered the era of communication, yet we have not fully embraced the era of collaboration. Different kind of interfaces are needed to make the experimental sensors and devices available to the acquisition systems, to the control algorithms and eventually to the scientific community.

To achieve true collaboration, new types of interfaces are required—interfaces that enable experimental sensors and devices to interact seamlessly with acquisition systems, control algorithms, and, ultimately, the broader scientific community.

Achieving this goal demands a structured and efficient way to organize and share information. There are two main approaches to this challenge:

  1. Protocol-based: define a simple, robust, and easy-to-implement protocol that can be integrated into any device (MDSplus is an example of such approach).
  2. Interface-based: develop a flexible framework capable of managing adaptable interface agreements between the various stages of the acquisition chain (for example Google protocol buffers, gRPC and capn'Proto are examples of such approach).

HookeWire would fit as a hybrid implementation, combining a base interface definition with a flexible marshalling mechanism.

Elements of a Standard Data Acquisition Chain

A typical data acquisition and analysis chain consists of six key components:

  1. Sensor Logic – The internal acquisition mechanism, including buffer and trigger logic.
  2. Acquisition Device – The physical sensor capable of transmitting data over a network.
  3. Edge Online Broker – Middleware that enables data exchange between the acquisition device and central storage.
  4. Central Data Storage – The main database or storage system.
  5. Data Distribution Layer – The messaging system that marshals data from central storage to applications.
  6. Client Scope – The client-side application or interface.

DAQ

Many well-established acquisition systems primarily cover all the steps but sometimes the infrastructure appears as too complex to maintain and the implementation are reduced to fit steps 2 and 4 .


The Case of MDSplus

MDSplus is a well-known system that connects device drivers to acquire data from standard device media and store it in central storage. Its key strength lies in its ability to create distributed acquisition systems —collecting data from multiple sources, storing it in a distributed database, and providing unified access through a single client application. This makes MDSplus particularly effective for handling large volumes of data, especially for the acquisition point of view.

However, a well-structured MDSplus implementation should clearly separate the “online” data acquisition flow from the “offline” data storage flow—ensuring efficient data throughput from the field and flexible data retrieval from central storage.

In practice, this separation is often missing. MDSplus is frequently configured so that distributed clients send data directly to a single central server, using the same data structure for both acquisition and analysis. This is mainly due to the need for prompt analysis immediately after or during data acquisition, which encourages direct retrieval from MDSplus rather than using intermediate layers. Even when the correct separation is implemented, accessing distributed data that has not yet been centralized remains a challenge for client applications.


Similar Patterns in IoT Frameworks

Other data acquisition ecosystems show similar patterns. In IoT systems , for example, there is often a clear separation between Edge Computing and Central Data Storage —as seen in platforms like ThingsBoard Edge and Ignition.

In these cases, the goals differ slightly:

  • Edge Computing performs local operations and maintains persistent local storage.
  • Central Data Storage provides distributed, scalable data access for analytics and visualization.

HookeWire’s Unified Approach

HookeWire addresses both scenarios by providing a common, structured interface that defines how data exchange occurs between Edge Computing components and Central Data Storage systems.

The key insight is that a well-defined interface protocol allows the creation of marshalling mechanisms that connect heterogeneous components, even when their internal implementations differ.

For instance, one could use MDSplus for data storage while leveraging SCADA systems to control experiments—both integrated seamlessly through HookeWire. Similarly, the same data could be exposed to multiple downstream systems or applications without redundant reimplementation.