LINTag Remote Interface
The LINTagRemote class provides lightweight, settings-oriented remote control of the LINTag time tagger over gRPC. It talks to the LINTag Capture desktop application, which must be running and reachable on the network.
It is the counterpart to the `LINTag` interface: where LINTag exposes the on-board correlator and telemetry handles, LINTagRemote focuses on staging per-channel settings and driving file recording through a single Sync round trip.
Connection
from photonscore.LINTag.LINTagRemote import LINTagRemote
tag = LINTagRemote() # default: localhost:50052
tag = LINTagRemote("192.168.1.10:50052") # remote hostQuick Start
from photonscore.LINTag.LINTagRemote import LINTagRemote
tag = LINTagRemote("localhost:50052")
# Configure channel 0: -0.5 V threshold, 50 Ω input, rising edge
tag.setup_channel(
channel=0,
threshold=-0.5,
temrinate_50_ohm=True,
rising_edge=True,
)
# Apply staged settings and read back live device state
tag.sync()
print(tag.cps) # per-channel count rate in Hz (8 values)
# Record to disk, splitting the file every 60 s
tag.start_recording("run.lt", chunk_seconds=60)
# ... acquisition runs on the device ...
tag.stop_recording()How sync works
The service exposes a single Sync RPC that follows a read-modify-write convention. The client sends a settings message describing only the fields it wants to change; the server applies them and replies with the device's full current state. LINTagRemote accumulates staged changes in new_settings and resets that buffer on every sync(), so each call sends only what changed since the last one.
Channel Parameters Reference
| Parameter | Type | Description |
|---|---|---|
channel | int | Channel index 0–7 |
threshold | float | Discriminator threshold in volts |
offset_ns | float | Per-channel time offset in nanoseconds |
dead_time_ps | int | Dead time after an edge in picoseconds |
prolonged_dead_time | bool | Extend dead time to suppress afterpulsing |
divider | int | Hardware prescaler; record every n-th event |
temrinate_50_ohm | bool | Terminate input with 50 Ω (else high impedance) |
rising_edge | bool | Track the rising edge |
falling_edge | bool | Track the falling edge |
static_calibration | bool | Fix calibration (for clock-correlated signals) |
API Reference
Note
The reference for LINTag.LINTagRemote.LINTagRemote is generated from the Python docstrings and inserted here automatically. Do not write it out by hand.
options: heading_level: 3 members_order: source