pyadi-iio icon indicating copy to clipboard operation
pyadi-iio copied to clipboard

Add pyadi support for ADAQ4001 and ADAQ4003

Open machschmitt opened this issue 9 months ago • 8 comments

Description

This PR adds pyadi support for ADAQ4001 and ADAQ4003.

AD4003/AD4007/AD4011, AD4020/AD4021/AD4022, and ADAQ4001/ADAQ4003 belong to a series of differential SAR ADC devices which are supported by the same Linux kernel driver.

This PR:

  • Adds a python class for ADAQ4001 and ADAQ4003.
  • Adds scale_available attribute to classes supporting AD4000 series devices.
  • Adds iio-emu emulation model for ADAQ4003.
  • Adds automated tests for ADAQ4003 class.
  • Updates to ad4020 example so it works for other devices belonging to the AD4000 series.

Related JIRA task: https://jira.analog.com/browse/COSGTM-277

Type of change

  • [x] New feature (non-breaking change which adds functionality)

How has this been tested?

  • [x] Tested with iio-emu emulation model generated from ADAQ4003 device on Linux
  • [x] Tested on CoraZ7 with Eval-ADAQ4003 and m2k+Scopy for input signal generation.

Test Configuration:

  • Hardware: iio-emu model generated from a ADAQ4003 device running on Linux
  • OS: Kuiper Linux

Documentation

The new python class was added to the list of documented classes provided by the ad4020 python module.

Checklist:

  • [x] My code follows the style guidelines of this project
  • [x] I have performed a self-review of my own code
  • [x] I have commented my code, particularly in hard-to-understand areas
  • [x] I have signed off all commits and they contain "Signed-off by: "
  • [x] I have made corresponding changes to the documentation
  • [x] My changes generate no new warnings
  • [x] I have added tests that prove my fix is effective or that my feature works
  • [x] New and existing unit tests pass locally with my changes
  • [ ] Any dependent changes have been merged and published in downstream modules

machschmitt avatar May 23 '24 14:05 machschmitt