Photonscore. Contact
Home / Documentation / LINTag Remote Interface
Software Documentation

LINTag Remote Interface

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 host

Quick 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

ParameterTypeDescription
channelintChannel index 0–7
thresholdfloatDiscriminator threshold in volts
offset_nsfloatPer-channel time offset in nanoseconds
dead_time_psintDead time after an edge in picoseconds
prolonged_dead_timeboolExtend dead time to suppress afterpulsing
dividerintHardware prescaler; record every n-th event
temrinate_50_ohmboolTerminate input with 50 Ω (else high impedance)
rising_edgeboolTrack the rising edge
falling_edgeboolTrack the falling edge
static_calibrationboolFix 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