Skip to main content

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() and read_channel() for live powermeter readings
  • read_all_full() and read_channel_full() when you want the full measurement object
  • get_data() and get_data_channel() for DAQ traces, including trigger=True external-trigger capture
  • get_ranges(), get_range_all(), set_range(), set_range_power(), and set_ranges()
  • capture_channel_mask(), set_capture_channel_mask(), capture_channels(), and set_capture_channels() for DAQ masking
  • set_sample_rate_hz() and set_oversampling() for global read settings
  • set_reading_unit("w" | "dbm" | "v" | "mv" | "adc")
  • autoRange=True by default on all read*() methods, with autoRange=False available for fixed-range reads
  • zero_dark() and restore_factory_zero()
  • is_clipped() and signal_status()

Documentation Map

Documentation

The docs site is configured for Read the Docs:

https://py-coredaq.readthedocs.io/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_coredaq-1.0.0.tar.gz (33.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_coredaq-1.0.0-py3-none-any.whl (28.9 kB view details)

Uploaded Python 3

File details

Details for the file py_coredaq-1.0.0.tar.gz.

File metadata

  • Download URL: py_coredaq-1.0.0.tar.gz
  • Upload date:
  • Size: 33.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for py_coredaq-1.0.0.tar.gz
Algorithm Hash digest
SHA256 9f472bc82ed5c6b91f5f76ea766b1f88356855431f5aa7f1811fa18bbbd1d40a
MD5 df82cbc007748d8d1381c780611aa2da
BLAKE2b-256 c3be0ceb19071b7c6ce41dc17b6a40d06e177313c5babcf1bfb653d811d2cea5

See more details on using hashes here.

File details

Details for the file py_coredaq-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: py_coredaq-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 28.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for py_coredaq-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a33afb419d108942c7a5bfaa57a42e9f584865c5e8dcfeb7e0686ba29c1808a5
MD5 7929a28bfe1f84de3658258c111745e8
BLAKE2b-256 2a652cd655070a2befeaeae7a6e2c9a2f22b50ee463bdd8afcb15ba2f52a7f3f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page