Python driver for the coreDAQ 4-channel optical power meter.
Project description
coreDAQ
coreDAQ is a smart photonic data acquisition system for optical power measurement, programmable capture, and Python-driven lab automation.
On initialization, the API configures the instrument to 500 Hz sample rate and OS 1. You can change those global settings later with set_sample_rate_hz(...) and set_oversampling(...).
The runtime ships with embedded InGaAs and silicon responsivity curves, defaults to watt readings, and exposes a clean package import:
from py_coreDAQ import coreDAQ
Install
pip install .
For editable local development:
pip install -e .
Quick Start
from py_coreDAQ import coreDAQ
with coreDAQ("/dev/tty.usbmodemXXXX") as meter:
print(meter.identify())
print(meter.frontend(), meter.detector())
meter.set_wavelength_nm(1550.0)
meter.set_reading_unit("w")
power_w = meter.read_channel(0, n_samples=8)
capture = meter.get_data(frames=1024, unit="w")
print(power_w)
print(capture.trace(0)[:5])
Main User APIs
read_all()andread_channel()for live powermeter readingsread_all_full()andread_channel_full()when you want the full measurement objectget_data()andget_data_channel()for DAQ traces, includingtrigger=Trueexternal-trigger captureget_ranges(),get_range_all(),set_range(),set_range_power(), andset_ranges()capture_channel_mask(),set_capture_channel_mask(),capture_channels(), andset_capture_channels()for DAQ maskingset_sample_rate_hz()andset_oversampling()for global read settingsset_reading_unit("w" | "dbm" | "v" | "mv" | "adc")autoRange=Trueby default on allread*()methods, withautoRange=Falseavailable for fixed-range readszero_dark()andrestore_factory_zero()is_clipped()andsignal_status()
Documentation Map
- Quickstart: first read, first capture, and first trigger-based capture
- Read Power: every
read*method,n_samples,autoRange, and rich read fields - Capture Data:
get_data(...),CaptureResult, and capture status fields - Capture with External Trigger: trigger-based capture workflows
- Ranges and AutoRange: range indices, power-based range selection, and autoRange behavior
- Units, Sample Rate, and Oversampling: units, sample rate, oversampling, and recommended setups
- Frames, Masking, and Memory Limits: capture masks, frame counts, and SDRAM limits
- Zeroing and Signal Health: zeroing, clipping, and signal health checks
- API Reference: grouped method signatures and examples
Documentation
The docs site is configured for Read the Docs:
https://py-coredaq.readthedocs.io/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file py_coredaq-0.2.0.tar.gz.
File metadata
- Download URL: py_coredaq-0.2.0.tar.gz
- Upload date:
- Size: 34.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d3d848029149d55cb295c074292bded0ca1796992aa0e2e47ec777246a308a5
|
|
| MD5 |
0a5073df3dcabee5cecf87c7ce1ba7e1
|
|
| BLAKE2b-256 |
19cff3acb34906c0ff739091b5ce56a981e06ff2a5121bee3661f36a5bf801c5
|
File details
Details for the file py_coredaq-0.2.0-py3-none-any.whl.
File metadata
- Download URL: py_coredaq-0.2.0-py3-none-any.whl
- Upload date:
- Size: 29.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c2a6b49120b074ca744a747b149da58974d3576432b1424288f8cca451b58485
|
|
| MD5 |
98f4453d1700b9bcb5e13b6ca1d81e2b
|
|
| BLAKE2b-256 |
0597c29c2a43e08437cdfb65bce504732acb42c08aad976facc6da88f3848486
|