herosdevices.hardware.menlo.dds¶
HERO driver for a DDS-based RF output of a Menlo Systems frequency comb.
Module Contents¶
- class herosdevices.hardware.menlo.dds.DDS(ofc: herosdevices.hardware.menlo.ofc.OFC, funclayer_identifier: str, observables: dict[str, dict[str, str]] | None = None)[source]¶
Bases:
herosdevices.hardware.menlo.functional_layer.FunctionalLayerModule,herosdevices.interfaces.atomiq.RFSourceDriver for a DDS-based RF output of a Menlo Systems frequency comb.
Wraps one functionalLayer.<funclayer_identifier>Settings sub-tree of an already-running
OFC.This covers only the bare DDS output. For a module that additionally has a closed feedback loop locking the DDS to a reference (a beat-note PLL), use
LaserLockinstead.Polls
DEFAULT_OBSERVABLESfor observable_data with live reads from the OFC, superseding the RFSource interface’s own cached-value observable.- Parameters:
ofc – The OFC HERO this DDS output belongs to.
funclayer_identifier – Identifier of the module’s functional-layer settings object, e.g. “cw1112_1” for the sub-tree at functionalLayer.cw1112_1Settings. Use ofc.explore(“functionalLayer”) to find the identifier for a given module.
observables – Additional observables to poll, merged on top of DEFAULT_OBSERVABLES, see
FunctionalLayerModule.
- amp_max: float = 1.0¶
- amp_min: float = 0.0¶
- freq_max: float = 100000000.0¶
- freq_min: float = 0.0¶
- DEFAULT_OBSERVABLES: dict[str, dict[str, str]]¶
- property output_enabled: bool¶
Whether the DDS output is enabled.
- ofc¶
- base_path¶
- observables¶
- get(relative_path: str) Any¶
Read the current value of a node relative to this module’s settings object.
Use this for module properties not already exposed as a named attribute. See
explore()to find the available relative paths, e.g. ofc.explore(module.base_path, depth=2).- Parameters:
relative_path – Dotted path relative to base_path.
- Returns:
The current value of the node.
- set(relative_path: str, value: Any) None¶
Set the value of a node relative to this module’s settings object.
- Parameters:
relative_path – Dotted path relative to base_path, see
get().value – Value to set.
- frequency: float = 1000000.0¶
- amplitude: float = 0.1¶
- phase: float = 0.0¶
- default_ramp_steps: int = 30¶
- blind: bool = False¶