Finding dark matter among the noise with Moku:Pro

Learn how researchers are leveraging flexible data logging and Python support to fast-track event detection with minimal setup

In a recent case study, we highlighted the use of the Moku:Pro in the search for what is known as “light” dark matter. These types of experiments involve searching for small signals, or “events,” usually within a vast sea of noise caused by room temperature electronics. These events also happen at unpredictable intervals, meaning that researchers must constantly monitor their experiments to catch as many events as possible. The short time length (< 1 ms) of each event combined with the long timescale (~minutes) of every search means that researchers are often left with gigabytes of data to sift through.   

Converting Moku data files

Los Alamos National Laboratory postdoctoral researcher Dr. Samuel Watkins, who is working on a collaborative project entitled “Search for Particles of Light Dark Matter with Narrow-gap Semiconductors,” or SPLENDOR, has developed open-source software to address the issue1. Dr. Watkins leveraged the flexibility and performance of Moku:Pro to create this new digital acquisition software, known as SPLENDAQ, using the device’s Python API. After the data is collected via the Moku:Pro Data Logger instrument, the native .li file extension can be converted to an .hdf5 file with a single Python command. SPLENDAQ then uses these .hdf5 files for analysis. 

Using Moku with a custom Python API

SPLENDAQ combs through these large files searching for specific events, usually beginning when the input voltage crosses a determined threshold. While this works straightforwardly for high-amplitude events, more careful analysis must be performed to recover low-amplitude signals. The first step is allowing the Moku:Pro Data Logger to “listen” to the background noise of the experimental setup by acquiring a stream of data without any events. This data set is then Fourier transformed to determine the power spectral density (PSD) — the distribution of noise as a function of frequency. The second step is to provide SPLENDAQ with a shape function, or template, for the events. In this case, events are represented by a double-exponential function with a fast rising time and slower falling time, as seen in Figure 1. 

Moku data logger capturing event

Figure 1: Detection of a test event using SPLENDAQ and Moku Data Logger. Figure reproduced from preprint2

When SPLENDAQ is supplied with both a shape function and PSD distribution, it can carefully process the input data stream to recover events that would normally be drowned out in noise. Dr. Watkins illustrates this in his paper, where a possible event that barely crosses the detection threshold is still recovered by SPLENDAQ2.

SPLENDAQ is available freely from GitHub and, like the Moku:Pro Data Logger, can be used for a wide variety of applications where continuous data acquisition is required — not just dark matter searches! 

Check out the SPLENDAQ paper on the arXiv here.


Get answers to FAQs in our Knowledge Base

If you have a question about a device feature or instrument function, check out our extensive Knowledge Base to find the answers you’re looking for. You can also quickly see popular articles and refine your search by product or topic.

Join our User Forum to stay connected

Want to request a new feature? Have a support tip to share? From use case examples to new feature announcements and more, the User Forum is your one-stop shop for product updates, as well as connection to Liquid Instruments and our global user community.


[1] Report number LA-UR-24-20435.

[2] S.L. Watkins. SPLENDAQ: a detector-agnostic data acquisition system for small-scale physics experiments. arXiv:2310.01279 [physics.ins-det] (2023).