Skip to content

Conversation

@panasee
Copy link
Contributor

@panasee panasee commented Feb 19, 2025

Description

Added several parameters into the oxford MercuryiPS driver, enabling the control of the heaters and the sensing of internal temperatures (magnet, PT1, and PT2 stage of cryogenic system). The new driver has been tested on a real-world iPS device with only a z-axis magnet and all three temperature sensors.

Implementation details

This pull request includes several updates to the src/qcodes/instrument_drivers/oxford/MercuryiPS_VISA.py file, focusing on adding new parameters and a parser function. The most important changes include the addition of a temperature parser function and new parameters for heater switch and temperature readings.

New Parser Function:

  • Added _temp_parser function to parse response strings into SI temperature values.

New Parameters:

  • Added heater_switch parameter to manage the heater switch status and settings. The heater switch control is bound to each WorkerPS, accepting "ON" and "OFF" as inputs.
  • Added magnet_temp, pt1_temp, and pt2_temp parameters for reading temperatures from different sensors, utilizing the new _temp_parser function. The addresses of sensors are stored statically within the overall iPS class

Breaking Changes

No breaking changes. But I am not sure if the heaters and temperature sensors exist for all MercuryiPS instruments.
Currently, the addresses of temperature sensors are written statically in the driver. Not sure if they could change across different systems.

… important temperatures of magnet, PT1 and PT2.

Also add a parser to the start for parsing the temperature from response
@panasee panasee requested a review from a team as a code owner February 19, 2025 06:08
@panasee
Copy link
Contributor Author

panasee commented Feb 19, 2025

@microsoft-github-policy-service agree

@jenshnielsen
Copy link
Collaborator

jenshnielsen commented Feb 19, 2025

Thanks @panasee looks good. Left one inline question and a missing type hint. Also please have a look at the precommit job and fix any issue there and then this is ready to merge

@codecov
Copy link

codecov bot commented Feb 19, 2025

Codecov Report

Attention: Patch coverage is 92.30769% with 1 line in your changes missing coverage. Please review.

Project coverage is 69.39%. Comparing base (c7bbcdf) to head (05b40f1).
Report is 13 commits behind head on main.

Files with missing lines Patch % Lines
...codes/instrument_drivers/oxford/MercuryiPS_VISA.py 92.30% 1 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##             main    #6889   +/-   ##
=======================================
  Coverage   69.38%   69.39%           
=======================================
  Files         341      341           
  Lines       31386    31399   +13     
=======================================
+ Hits        21776    21788   +12     
- Misses       9610     9611    +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@panasee
Copy link
Contributor Author

panasee commented Feb 21, 2025

Hello, I've fixed all the issues on my side. Please have a look.

@astafan8 astafan8 enabled auto-merge February 21, 2025 16:18
@astafan8 astafan8 added this pull request to the merge queue Feb 21, 2025
Merged via the queue into microsoft:main with commit 799b174 Feb 21, 2025
18 checks passed
@panasee panasee deleted the oxford-ips-driver-new-parameters branch February 22, 2025 03:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants