Releases: asvela/tektronix-func-gen
Releases · asvela/tektronix-func-gen
Hint hint
- Adding support for AFG1062, AFG3022
- Type hints across the module
RuntimeErrorraised ifset_custom_waveformis unable to verify the waveform- Adding an attribute for
_max_waveform_memory_user_locationsand checking that the memory location is within this boundary when setting a new custom waveform - The
override_compatibilityargument supports a string argument to select which model's limits to adopt - Avoiding close on
__del__or__exit__if the connection has already been closed - Making a property out of
_timeoutand changing name totimeout
Arbitrary
An overhaul:
- Adding _ suggesting private methods and functions:
- FuncGen methods
- _check_pyvisa_status()
- _initialise_model_properties()
- _normalise_to_waveform()
- _verify_waveform()
- _check_arb_waveform_length()
- _check_arb_waveform_type_and_range()
- _impedance_dependent_limit()
- _spawn_channel()
- FuncGen attributes
- _id
- _inst
- address -> _visa_address
- _arbitrary_waveform_length
- _arbitrary_waveform_resolution
- _override_compatibility
- _maker
- _serial
- _model
- FuncGenChannel
- _source
- state_str -> _state_to_str
- FuncGen methods
- Moving SI_prefix_to_factor() out of the class, now a private module function
- Moving to f""-strings from "".format()
Square
- Ensuring compatibility with
pyvisa v11.1: (issue #2)- PYVISAs
write()does not return the status code anymore, so the module is modified accordingly - not necessary to have an empty query after
write_binary_values()inset_custom_waveform()
- PYVISAs
- Added
check_pyvisa_status(), now checking status for both queries and writes - Bug fixes for
set_frequency()andset_offset()that were previously not taking into account the unit when calculating if it was within the limits
Sawtooth
Cosine
Sine
Non-compatible changes:
- More PEP8 compliant:
func_gen()->FuncGen()func_gen_channel()->FuncGenChannel()- All lines < 100 characters (mostly < 80)
- No more
enable/disable_frequency_lock(), nowset_frequency_lock() - Settings dictionary now contains tuples of value and unit, e.g.
settings = {"amplitude": (3, "Vpp"), ..}
New features:
- Implemented
set_settings()in bothFuncGenandFuncGenChannelthat takes a settings dictionary as input get/set_output()links toget/set_output_state()
Other:
- More examples
- Expanded README