DiamondLightSource / DiamondLightSource/dodal

Reconcile I22 and I03 DCMs

Open
#592 14 comments 0 reactions 1 assignee Claimed by @olliesilvester View on GitHub
enhancement i22
Dominant language
Python
Stars
5
Forks
13
Avg merge
3d 2h
Merged PRs (30d)
10

Description

As a developer I would like to work with a minimal number of `DCM` classes.

Currently the PV naming conventions vary across beamlines, even when the hardware configuration is relatively similar.
In the case of I22 and I03, the DCMs are quite similar. According to @JamesOHeaDLS:

> The main difference is that I03 only has roll and pitch on one of their crystals, whereas I22 has roll and pitch on both their first and second crystals

Which suggests that the PVs could at least adopt the same naming _conventions_, even if one DCM has extra motors, and we could have a shared base class.

## Acceptance Criteria
* One `DCM` base class
* I03 and I22 implementations with only the extra I22 motor added

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.