How does streaming work on Moku?
Discover how streaming functions on Moku
-
Moku:Go
Moku:Go General Moku:Go Arbitrary Waveform Generator Moku:Go Data Logger Moku:Go Digital Filter Box Moku:Go FIR Filter Builder Moku:Go Frequency Response Analyzer Moku:Go Logic Analyzer & Pattern Generator Moku:Go Oscilloscope & Voltmeter Moku:Go PID Controller Moku:Go Spectrum Analyzer Moku:Go Waveform Generator Moku:Go Power Supplies Moku:Go Lock-in Amplifier Moku:Go Time & Frequency Analyzer Moku:Go Laser Lock Box Moku:Go Phasemeter
-
Moku:Lab
Moku:Lab General Moku:Lab Arbitrary Waveform Generator Moku:Lab Data Logger Moku:Lab Digital Filter Box Moku:Lab FIR Filter Builder Moku:Lab Frequency Response Analyzer Moku:Lab Laser Lock Box Moku:Lab Lock-in Amplifier Moku:Lab Oscilloscope Moku:Lab Phasemeter Moku:Lab PID Controller Moku:Lab Spectrum Analyzer Moku:Lab Time & Frequency Analyzer Moku:Lab Waveform Generator Moku:Lab Logic Analyzer/Pattern Generator
-
Moku:Pro
Moku:Pro General Moku:Pro Arbitrary Waveform Generator Moku:Pro Data Logger Moku:Pro Frequency Response Analyzer Moku:Pro Oscilloscope Moku:Pro PID Controller Moku:Pro Spectrum Analyzer Moku:Pro Waveform Generator Moku:Pro Lock-in Amplifier Moku:Pro Laser Lock Box Moku:Pro Digital Filter Box Moku:Pro FIR Filter Builder Moku:Pro Phasemeter Moku:Pro Multi-instrument Mode Moku:Pro Logic Analyzer/Pattern Generator Moku:Pro Time & Frequency Analyzer
- Python API
- MATLAB API
- Arbitrary Waveform Generator
- Data Logger
- Digital Filter Box
- FIR Filter Builder
- Frequency Response Analyzer
- Laser Lock Box
- Lock-in Amplifier
- Oscilloscope
- Phasemeter
- PID Controller
- Spectrum Analyzer
- Time & Frequency Analyzer
- Waveform Generator
- Logic Analyzer & Pattern Generator
- Multi Instrument Mode
- Moku Cloud Compile
- Moku general
- LabVIEW
The Data Logger can log data with the Moku app or API, or stream data over the network via the API. Logging collects data over time, storing the data on Moku. Users can download the data in multiple formats and process as needed. Streaming sends data from the Moku to a PC in real time, bypassing the need for storing the data.
Data Logging
The Data Logger can log data over a set time period. The input data is sampled and written to the storage onboard Moku. Once logging is complete, users can download the data as a CSV, NumPy, MATLAB, or HDF5 file and process as needed. Some users want the ability to monitor and process their data in real time, which can be achieved through streaming.
Data Streaming
Streaming handles data similarly, but without saving to storage. The input data is transferred to a buffer in Moku and then to a PC over the network. Following each transfer of data, the stream interface pauses allowing the buffer to collect more data before a transfer. If sample rates are too high, memory can overflow during the pause. It is important to note that streaming can only be accessed using the Moku API and requires the installation of mokucli
. Data can be streamed directly to an API script using get_stream_data()
or streamed to a file using stream_to_file()
. On the Moku:Pro, streaming is supported up to 10 MSa/s over ethernet and up to 500 kSa/s for Moku:Go