OE-FET / keithley2600

Python driver for Keithley 2600 series instruments.
https://keithley2600.readthedocs.io
MIT License
43 stars 17 forks source link

Some enumeration values for display are not defined #16

Closed soha-namnabat closed 4 years ago

soha-namnabat commented 4 years ago

Hi, I tried setting the proper display screen using this module and it didn't work as below. I think the values for display.SMUx and display.SMUA_SMUB were not given.

code : smu = Keithley(resource) smu.display.screen = smu.display.SMUA_SMUB

error message : AttributeError: '<class 'keithley2600.keithley_driver.MagicClass'>' object has no attribute 'SMUA_SMUB'

Also other values related to measurement display modes work but not in the autocompletion list. for example 'MEASURE_DCAMPS' in :

smu.display.smuX.measure.func = smu.display.MEASURE_DCAMPS

samschott commented 4 years ago

Yeah, I just realised that several constants are not actually implemented. I generated the list of commands and constants semi-automatically from the table of contents of the Keithley reference manual. It looks like some constants are not listed there but only in the explicit documentation of the commands that use them.

samschott commented 4 years ago

For now, the best work-around is to use the actual numerical values for the missing constants. I'll try to update the list of constants soon.

samschott commented 4 years ago

This is fixed in the latest release v2.0.0 where Keithley commands and constants are no longer hard-coded but created at runtime when connecting to the instrument.