Skip to main content

lightcon

lightcon is a Python package of clients and wrappers for controlling Light Conversion hardware: OPAs, OPOs and lasers, motion and DAQ hardware, spectrometers, power meters, and beam diagnostics apps. Most modules talk to a device over its local HTTP REST API, a few wrap a vendor DLL or a serial link, and a couple are stand-alone helpers (unit conversion, plotting style).

Examples for most modules live in examples/ and are linked from the relevant module section below.

Installation

Pip

pip install lightcon

Modules

lightcon.laser_clients

REST API clients for PHAROS, CARBIDE lasers and FL1-generation FLINT oscillators. Newer FL2- and FL3-generation FLINTs as well as CRONUS-3P and CRONUS-2P systems have their own modules below.

Example: examples/laser_client_example.py

lightcon.flint3

REST API client (FL3Client) for FLINT lasers running FLINT App v2 and above. Older FLINT lasers are controlled through lightcon.laser_clients instead.

Example: examples/fl3_laser_test.py

lightcon.cronus3p

Thin REST API client (C3PClient) and a more complex control class (C3PControl) for CRONUS-3P lasers, hosted by Light Composer. Supports both the current C3Pv2 hardware via RESTv1 API (attenuator control, multiple tunable channels) and the legacy C3Pv1 via RESTv0.

lightcon.cronus2pv3

REST API client (C2Pv3Client) for CRONUS-2Pv3 OPOs running Cronus App v1 and above. Older CRONUS-2Pv1 lasers are controlled through lightcon.cronus2p instead.

Example: examples/c2pv3_laser_test.py

lightcon.cronus2p

REST API client (C2PControl) for CRONUS-2Pv1 optical parametric oscillators. The newer C2Pv3 OPOs are controlled via lightcon.cronus2pv3 instead.

lightcon.wintopas

REST API client (WinTopas) for Topas4-based optical parametric amplifiers, served by Topas Server.

lightcon.harpia

REST API client (Harpia) for the HARPIA spectroscopy systems hosted by HARPIA Service App, plus a CAN-over-REST provider (HarpiaLepreCanProvider) for reading/writing device registers directly.

Example: examples/harpia_rest_can.py — reading device registers over the CAN extension.

lightcon.harpia_daq

DLL wrapper (HarpiaDaqWrapper) for the universal six-channel DAQ (PE04-005-04 or newer).

Example: examples/harpia_daq_wrapper_example.py

lightcon.fast_daq

DLL wrapper (FastDaqWrapper) for the fast single-channel DAQ (E13-10023-02 or newer).

Example: examples/fast_daq_wrapper_example.py

lightcon.camera_app_client

REST API client (CameraApp) for the Camera App beam-diagnostics application.

Example, combined with lightcon.harpia's delay line: examples/delay_line_beam_position_test.py

lightcon.beam_alignment

REST API client (BeamAlignmentSystem) for the Beam Alignment App.

lightcon.power_meter

REST API client (PowerMeter) for the PowerMeter power-measurement application, with UDP auto-discovery of PowerMeter apps running on the local network.

lightcon.spectrometers

REST API client (RemoteSpectrometer) for Light Conversion spectraLight devices.

lightcon.eth_motor_board

API (EthMotorBoard) for the Ethernet motor controller board, plus a CAN-over-REST provider (EthMotorBoardLepreCanProvider).

Examples:

lightcon.timing_controller

Serial API for the timing controller, with TimingController (v1) and TimingControllerV2 classes.

lightcon.calculate

Helper functions for motor and stage configuration in EthMotorBoard.

lightcon.common

Shared connectivity functions for REST clients (HTTP_methods), UDP discovery (UdpLocator), and logging (init_logger)

Example: examples/logger.py

lightcon.datasets

Loader (load_csv_data, load_json_data) for datasets bundled with the package.

lightcon.style

Light Conversion plotting style for 1D matplotlib graphs, with watermarking.

Example: examples/lcstyle_plot1d_example.py

lightcon.utils

Miscellaneous internal fixes/utilities.

Metadata

Release files for lightcon 1.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lightcon 1.7.0
File Size Uploaded Provenance Actions
lightcon-1.7.0.tar.gz 47.2 kB With provenance Details for lightcon-1.7.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for lightcon 1.7.0
File Interpreter ABI Platform Actions
lightcon-1.7.0-py3-none-any.whl Python 3 none any Details for lightcon-1.7.0-py3-none-any.whl

Total release size: 107.7 kB

Release files / lightcon-1.7.0.tar.gz

Download URL lightcon-1.7.0.tar.gz
Size 47.2 kB
Tags Source
SHA-256 checksum
How to use checksums
5293301a0b9659611423a0f4941f1c1563016111e5d7eef1bcb29ea42372d94f
BLAKE2b-256 checksum
How to use checksums
dac1f3899972c4dee3f15d0a08964acb87e9b794d2eb5e3f689f09e326080158
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release files / lightcon-1.7.0-py3-none-any.whl

Download URL lightcon-1.7.0-py3-none-any.whl
Size 60.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fbd4fcc6ae7114455b5d6f67b750d1fbb8fce9b464be8fa4e0a2359c38d9fde8
BLAKE2b-256 checksum
How to use checksums
1ec555afb4132c096fba954d1cbfb8e2ba75387fe2abba3a2a19afe6b225c406
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Security for lightcon 1.7.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for lightcon-1.7.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.7.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page