Skip to content

ad7490: add pyadi-iio support#680

Merged
tfcollins merged 1 commit intomainfrom
dev/ad7490
Sep 3, 2025
Merged

ad7490: add pyadi-iio support#680
tfcollins merged 1 commit intomainfrom
dev/ad7490

Conversation

@RaduSabau1
Copy link
Collaborator

@RaduSabau1 RaduSabau1 commented Aug 18, 2025

Description

Add support for AD7490.

Fixes # (issue)

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How has this been tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

  • Test A
  • Test B

Test Configuration:

  • Hardware: EVAL-AD7490 + AD-APARD32690-SL
  • OS: Linux

Documentation

If this is a new feature or example please mention or link any documentation. All new hardware interface classes require documentation.

Checklist:

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

@github-actions
Copy link

github-actions bot commented Aug 18, 2025

Test Results

1 712 tests  +3     461 ✅ +2   12m 0s ⏱️ +6s
    1 suites ±0   1 251 💤 +1 
    1 files   ±0       0 ❌ ±0 

Results for commit 404d72c. ± Comparison against base commit 6b33acd.

This pull request removes 4 and adds 7 tests. Note that renamed tests count towards both.
test.test_adrv9002_p ‑ test_adrv9002_hardware_gain[attr=rx_hardwaregain_chan0-val=[22.0, 6.5, 2.0, 15.5, 5.5, 7.0, 29.0, 2.0, 34.0, 7.5]-depends={'gain_control_mode_chan0': 'spi', 'rx_ensm_mode_chan0': 'rf_enabled'}-classname=adi.adrv9002]
test.test_adrv9002_p ‑ test_adrv9002_hardware_gain[attr=rx_hardwaregain_chan0-val=[30.0, 22.5, 8.0, 28.0, 29.0, 27.5, 25.0, 13.0, 26.0, 31.5]-depends={'gain_control_mode_chan1': 'spi', 'rx_ensm_mode_chan1': 'rf_enabled'}-classname=adi.adrv9002]
test.test_adrv9002_p ‑ test_adrv9002_hardware_gain[attr=tx_hardwaregain_chan0-val=[-37.6, -20.95, -17.25, -33.15, -24.15, -19.8, -12.2, -28.6, -35.05, -3.55]-depends={'atten_control_mode_chan0': 'spi'}-classname=adi.adrv9002]
test.test_adrv9002_p ‑ test_adrv9002_hardware_gain[attr=tx_hardwaregain_chan1-val=[-24.75, -21.1, -20.1, -11.5, -4.05, -37.3, -27.25, -39.15, -6.0, -26.1]-depends={'atten_control_mode_chan1': 'spi'}-classname=adi.adrv9002]
test.test_ad7490 ‑ test_ad7490_attr_multiple[attr=polarity-val=['BIPOLAR', 'UNIPOLAR']-classname=adi.ad7490]
test.test_ad7490 ‑ test_ad7490_attr_multiple[attr=range-val=['2X_REF_IN', 'REF_IN']-classname=adi.ad7490]
test.test_ad7490 ‑ test_ad7490_rx_data[channel=0-classname=adi.ad7490]
test.test_adrv9002_p ‑ test_adrv9002_hardware_gain[attr=rx_hardwaregain_chan0-val=[18.5, 23.5, 15.0, 14.0, 11.0, 27.0, 26.5, 29.0, 19.5, 17.0]-depends={'gain_control_mode_chan1': 'spi', 'rx_ensm_mode_chan1': 'rf_enabled'}-classname=adi.adrv9002]
test.test_adrv9002_p ‑ test_adrv9002_hardware_gain[attr=rx_hardwaregain_chan0-val=[3.5, 21.0, 28.5, 8.5, 19.5, 23.0, 8.0, 0.0, 5.0, 22.0]-depends={'gain_control_mode_chan0': 'spi', 'rx_ensm_mode_chan0': 'rf_enabled'}-classname=adi.adrv9002]
test.test_adrv9002_p ‑ test_adrv9002_hardware_gain[attr=tx_hardwaregain_chan0-val=[-28.45, -8.6, -13.3, -18.4, -23.25, -31.1, -25.4, -37.6, -39.8, -31.75]-depends={'atten_control_mode_chan0': 'spi'}-classname=adi.adrv9002]
test.test_adrv9002_p ‑ test_adrv9002_hardware_gain[attr=tx_hardwaregain_chan1-val=[-9.05, -27.35, -16.1, -20.7, -11.9, -9.7, -22.5, -24.8, -7.65, -13.95]-depends={'atten_control_mode_chan1': 'spi'}-classname=adi.adrv9002]

♻️ This comment has been updated with latest results.

@RaduSabau1 RaduSabau1 force-pushed the dev/ad7490 branch 4 times, most recently from b23aac0 to cbc3e3b Compare August 18, 2025 12:34
@RaduSabau1
Copy link
Collaborator Author

V2:

  • URI being passed as command argument
  • Added plots for all channels in the example
  • Testing other attributes in the test script

@RaduSabau1
Copy link
Collaborator Author

V3:

  • Added sampling frequency support although it is fixed at 1MSPS by the device.

Signed-off-by: RaduSabau1 <radu.sabau@analog.com>
@RaduSabau1
Copy link
Collaborator Author

V4:

  • Addressed EMU errors.
  • Addressed Linux Tests AD7490 related errors.

@tfcollins tfcollins merged commit 8cce91e into main Sep 3, 2025
69 of 87 checks passed
@tfcollins tfcollins deleted the dev/ad7490 branch September 3, 2025 01:38
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