I have managed to use pyadi-iio in both remote computer and device itself ( ZC706+AD9375) . Transmit and receive functions are okay for both remote computer and arm processor on ZC706 , thanks for the library. I wonder two things:
1) Is there any easy way to receive samples from obs-rx using the pyadi-iio.
2) Can I use a trigger signal as in the windows TES APİ with pyadi-iio . (like AdiCmdServerClient.RXTRIGGER.EXT_SMA, AdiCmdServerClient.RXTRIGGER.TX_LOOP)
Thank you .
1.) There is a PR that adds support here: https://github.com/analogdevicesinc/pyadi-iio/pull/67
API works this way:
sdr = adi.ad9371()
standard_adc_data = sdr.rx()
obs_data = sdr.obs.rx()
sdr.obs will contain the same settings as the standard ADC channels but applies to the obs drivers.
2.) No, as these API's are related to the HDL/FPGA on the TES platform. No such control or logic is available in the platform relating to pyadi-iio at the moment.
Thanks Travis, It worked. After selecting obs_rf_port, different than the rx() method it gives the real and imaginary samples separately, also, samples are weak as compared to rx samples. If I am not wrong, it is because of gain difference between ObsRx and Rx ( 18dB, 30 dB).
Do you have any recommendation related to rx, tx triggering with libiio, I am not familiar with it ?
Latest commit will update the data to output complex.
This is no AGC in the gain path for OBS/Sniffer so yes.
HasanSatana said:Do you have any recommendation related to rx, tx triggering with libiio, I am not familiar with it ?
This is not possible unless you add custom HDL which can control data captures. This is not something that exists in the HDL designs in the prototyping systems. Only TES supports this which is not compatible with pyadi-iio.