Python interface for the NKT Photonics Basik fiber seed laser
Project description
NKT-basik
Python interface for NKT Photonics Basik fiber seed lasers.
Install
pip install nkt_basik
API design
The package now exposes one high-level API layer:
BasikLaserModeModulationRangeModulationSourceModulationCouplingModulationWaveformDeviceReffind_devices()/find_device()/find_devices_by_names()
Mode and modulation setters require enum inputs.
Quickstart
from nkt_basik import (
Basik,
LaserMode,
ModulationCoupling,
ModulationRange,
ModulationSource,
ModulationWaveform,
)
device = Basik("COM4", 1)
print(f"Name: {device.name}")
print(f"Wavelength: {device.wavelength:.4f} nm")
print(f"Frequency: {device.frequency:.4f} GHz")
device.mode = LaserMode.POWER
device.emission = True
device.modulation = True
device.modulation_source = ModulationSource.BOTH
device.modulation_range = ModulationRange.NARROW
device.modulation_coupling = ModulationCoupling.DC
device.modulation_waveform = ModulationWaveform.SINE
device.modulation_frequency = 100.0
device.frequency_setpoint = 275.1000
print(device.status)
print(device.error)
device.close()
Context manager usage is optional:
with Basik("COM4", 1) as device:
print(device.name)
Discovery
from nkt_basik import find_device, find_devices, find_devices_by_names
all_devices = find_devices()
named = find_device("seed-a")
grouped = find_devices_by_names(["seed-a", "seed-b"])
find_devices() always returns a list (possibly empty).
Errors
- Connection failures raise
nkt_basik.module.BasikConnectionError. - Bad API value types raise
nkt_basik.module.BasikTypeError. - Register communication errors raise
NKTRegisterException.
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
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 nkt_basik-0.4.1.tar.gz.
File metadata
- Download URL: nkt_basik-0.4.1.tar.gz
- Upload date:
- Size: 6.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
663a83760904890dc6370629e16360053948bab070b1129294d0be5f52810592
|
|
| MD5 |
e9fc36c6815fc9ab9f792008836e71bf
|
|
| BLAKE2b-256 |
2e57af9e082fc40edea7bbf44de77ec697c5b4a3b6430ed93a2203fb4649c7f7
|
File details
Details for the file nkt_basik-0.4.1-py3-none-any.whl.
File metadata
- Download URL: nkt_basik-0.4.1-py3-none-any.whl
- Upload date:
- Size: 6.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7ce92a3688c27ec425bb375367ac2bd9e2ba709d17f68f9524fae6e4ac5b6c45
|
|
| MD5 |
cbd7e1bd5cfc05203ebca479485a2e89
|
|
| BLAKE2b-256 |
9de0b1ace4fe3ccf5d6d88294dc2bb446e53488b368263b5c5a5eedc217f2889
|