rst
The Lakeshore 370 (LS370) units are an older version of the Lakshore 372, used for 100 mK and 1K thermometer readout. Basic functionality to interface and control an LS370 is provided by the socs.Lakeshore.Lakeshore370.py
module.
To configure your Lakeshore 370 for use with OCS you need to add a Lakeshore370Agent block to your ocs configuration file. Here is an example configuration block:
{'agent-class': 'Lakeshore370Agent',
'instance-id': 'LSA22YG',
'arguments': [['--serial-number', 'LSA22YG'],
['--port', '/dev/ttyUSB1'],
['--dwell-time-delay', 0]]},
Each device requires configuration under 'agent-instances'. See the OCS site configs documentation for more details.
The Lakeshore 370 Agent should be configured to run in a Docker container. An example configuration is:
ocs-LSA22YG:
image: simonsobs/socs:latest
hostname: ocs-docker
environment:
- INSTANCE_ID=LSA22YG
volumes:
- ${OCS_CONFIG_DIR}:/config:ro
devices:
- "/dev/ttyUSB1:/dev/ttyUSB1"
Note
The serial numbers here will need to be updated for your device.
Note
The device path may differ on your machine, and if only using the ttyUSB value as shown here, is not guaranteed to be static.
Direct communication with the Lakeshore can be achieved without OCS, using the Lakeshore370.py
module in socs/socs/Lakeshore/
. From that directory, you can run a script like:
from Lakeshore370 import LS370
ls = LS370('/dev/ttyUSB1')
You can use the API detailed on this page to then interact with the Lakeshore. Each Channel is given a Channel object in ls.channels
. You can query the resistance measured on the currently active channel with:
ls.get_active_channel().get_resistance_reading()
That should get you started with direct communication. The API is fairly full featured. For any feature requests for functionality that might be missing, please file a Github issue.
socs.agents.lakeshore370.agent.LS370_Agent
For the API all methods should start with one of the following:
- set - set a parameter of arbitary input (i.e. set_excitation)
- get - get the status of a parameter (i.e. get_excitation)
- enable - enable a boolean parameter (i.e. enable_autoscan)
- disable - disbale a boolean parameter (i.e. disable_channel)
socs.Lakeshore.Lakeshore370