Skip to content

Commit efe2c14

Browse files
committed
adi:ad7768-1: Add support for ad7768-1/adaq776x-1
Signed-off-by: Reymond Olmedo <[email protected]>
1 parent b89168a commit efe2c14

File tree

14 files changed

+403
-0
lines changed

14 files changed

+403
-0
lines changed

adi/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
from adi.ad7689 import ad7689
3737
from adi.ad7746 import ad7746
3838
from adi.ad7768 import ad7768, ad7768_4
39+
from adi.ad7768_1 import ad7768_1, adaq776x_1
3940
from adi.ad7799 import ad7799
4041
from adi.ad9081 import ad9081
4142
from adi.ad9081_mc import QuadMxFE, ad9081_mc

adi/ad7768_1.py

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
# Copyright (C) 2025 Analog Devices, Inc.
2+
#
3+
# SPDX short identifier: ADIBSD
4+
import numpy as np
5+
6+
from adi.context_manager import context_manager
7+
from adi.rx_tx import rx
8+
9+
10+
class ad7768_1(rx, context_manager):
11+
12+
""" AD7768-1 1-channel, Dynamic Signal Analysis Sigma-Delta ADC """
13+
14+
_device_name = " "
15+
_rx_data_type = np.int32
16+
17+
def __init__(
18+
self, uri="ip:analog.local",
19+
):
20+
"""Initialize."""
21+
context_manager.__init__(self, uri, self._device_name)
22+
23+
self._ctrl = self._ctx.find_device("ad7768-1")
24+
self._rxadc = self._ctx.find_device("ad7768-1")
25+
self._device_name = "ad7768-1"
26+
27+
if not self._ctrl or not self._rxadc:
28+
raise Exception("Error in selecting matching device: ctrl or rxadc")
29+
30+
self._rx_channel_names = []
31+
for ch in self._rxadc.channels:
32+
name = ch._id
33+
self._rx_channel_names.append(name)
34+
35+
rx.__init__(self)
36+
37+
@property
38+
def sampling_frequency_available(self):
39+
"""Get available sampling frequencies."""
40+
return self._get_iio_dev_attr("sampling_frequency_available")
41+
42+
@property
43+
def sampling_frequency(self):
44+
"""Get sampling frequency."""
45+
return self._get_iio_dev_attr("sampling_frequency")
46+
47+
@sampling_frequency.setter
48+
def sampling_frequency(self, rate):
49+
"""Set sampling frequency."""
50+
if rate in self.sampling_frequency_available:
51+
self._set_iio_dev_attr("sampling_frequency", rate)
52+
else:
53+
raise ValueError(
54+
"Error: Sampling frequency not supported \nUse one of: "
55+
+ str(self.sampling_frequency_available)
56+
)
57+
58+
@property
59+
def common_mode_voltage_available(self):
60+
"""Get common mode voltage available."""
61+
return self._get_iio_dev_attr_str("common_mode_voltage_available")
62+
63+
@property
64+
def common_mode_voltage(self):
65+
"""Get common mode voltage."""
66+
return self._get_iio_dev_attr_str("common_mode_voltage")
67+
68+
@common_mode_voltage.setter
69+
def common_mode_voltage(self, rate):
70+
"""Set sampling frequency."""
71+
if rate in self.common_mode_voltage_available:
72+
self._set_iio_dev_attr_str("common_mode_voltage", rate)
73+
else:
74+
raise ValueError(
75+
"Error: Common mode voltage not supported \nUse one of: "
76+
+ str(self.common_mode_voltage_available)
77+
)
78+
79+
80+
class adaq776x_1(ad7768_1):
81+
82+
""" ADAQ776x-1 is a 24-bit single channel μModule Data Acquisition System """
83+
84+
_compatible_parts = ["adaq7767-1", "adaq7768-1", "adaq7769-1"]
85+
86+
def __init__(self, uri="ip:analog.local"):
87+
super().__init__(uri)
88+
89+
@property
90+
def sync_start_enable_available(self):
91+
"""Get available sync start enable types."""
92+
return self._get_iio_dev_attr_str("sync_start_enable_available")
93+
94+
@property
95+
def sync_start_enable(self):
96+
"""Get sync start enable."""
97+
return self._get_iio_dev_attr_str("sync_start_enable")
98+
99+
@sync_start_enable.setter
100+
def sync_start_enable(self, ftype):
101+
"""Set sync start enable."""
102+
if ftype in self.sync_start_enable_available:
103+
self._set_iio_dev_attr_str("sync_start_enable", ftype)
104+
else:
105+
raise ValueError(
106+
"Error: Sync start enable not supported \nUse one of: "
107+
+ str(self.sync_start_enable_available)
108+
)
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
ad7768_1
2+
=================
3+
4+
.. automodule:: adi.ad7768_1
5+
:members:
6+
:undoc-members:
7+
:show-inheritance:

doc/source/devices/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ Supported Devices
3939
adi.ad7689
4040
adi.ad7746
4141
adi.ad7768
42+
adi.ad7768_1
4243
adi.ad777x
4344
adi.ad7799
4445
adi.ad9081

examples/ad7768_1_example.py

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# Copyright (C) 2023 Analog Devices, Inc.
2+
#
3+
# SPDX short identifier: ADIBSD
4+
5+
import sys
6+
from time import sleep
7+
8+
import matplotlib.pyplot as plt
9+
10+
import adi
11+
12+
13+
def display_settings(sampling_frequency, rx_enabled_channels, common_mode_voltage):
14+
# def display_settings(sampling_frequency, rx_enabled_channels):
15+
print("Sampling Frequency: ", sampling_frequency)
16+
print("Enabled Channels: ", rx_enabled_channels)
17+
print("Common mode voltage: ", common_mode_voltage)
18+
19+
20+
# Optionally pass URI as command line argument,
21+
22+
my_uri = sys.argv[1] if len(sys.argv) >= 2 else "ip:analog.local"
23+
print("uri: " + str(my_uri))
24+
25+
my_adc = adi.ad7768_1(uri=my_uri)
26+
my_adc.rx_buffer_size = 1024
27+
28+
my_adc.sampling_frequency = 8000 # Set Sample Rate
29+
30+
my_adc.rx_output_type = "SI" # Choose output format: "SI" or "RAW"
31+
32+
my_adc.common_mode_voltage = "(AVDD1-AVSS)/2" # mV # Set common mode voltage: (AVDD1-AVSS)/2 2V5 2V05 1V9 1V65 1V1 0V9 OFF
33+
34+
# Verify settings:
35+
display_settings(
36+
my_adc.sampling_frequency, my_adc.rx_enabled_channels, my_adc.common_mode_voltage,
37+
)
38+
39+
# --- Live Plot Setup ---
40+
plt.ion() # turn on interactive mode
41+
fig, ax = plt.subplots(figsize=(10, 6)) # reasonable size for most monitors
42+
(line,) = ax.plot([], [], label="voltage")
43+
ax.set_xlabel("Data Point")
44+
ax.set_ylabel("Millivolts" if my_adc.rx_output_type == "SI" else "ADC counts")
45+
ax.legend(loc="upper right")
46+
plt.show()
47+
48+
# --- Live Update Loop ---
49+
try:
50+
while True:
51+
data = my_adc.rx()
52+
data = data[1:] # skip first sample
53+
54+
line.set_xdata(range(len(data)))
55+
line.set_ydata(data)
56+
57+
ax.relim()
58+
ax.autoscale_view()
59+
60+
plt.pause(0.01)
61+
62+
except KeyboardInterrupt:
63+
print("Stopped by user.")
64+
65+
del my_adc

examples/adaq776x_1_example.py

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
import sys
2+
from time import sleep
3+
4+
import matplotlib.pyplot as plt
5+
6+
import adi
7+
8+
9+
def display_settings(sampling_frequency, rx_enabled_channels, common_mode_voltage):
10+
# def display_settings(sampling_frequency, rx_enabled_channels):
11+
print("Sampling Frequency: ", sampling_frequency)
12+
print("Enabled Channels: ", rx_enabled_channels)
13+
print("Common mode voltage: ", common_mode_voltage)
14+
15+
16+
# Optionally pass URI as command line argument,
17+
18+
my_uri = sys.argv[1] if len(sys.argv) >= 2 else "ip:analog.local"
19+
part_name = sys.argv[2].lower() if len(sys.argv) >= 3 else "adaq7768-1"
20+
21+
print(f"URI: {my_uri}")
22+
print(f"Selected device: {part_name}")
23+
24+
# Initialize ADC depending on device name
25+
if part_name == "adaq7767-1":
26+
my_adc = adi.adaq7767_1(uri=my_uri)
27+
elif part_name == "adaq7768-1":
28+
my_adc = adi.adaq7768_1(uri=my_uri)
29+
elif part_name == "adaq7769-1":
30+
my_adc = adi.adaq7769_1(uri=my_uri)
31+
else:
32+
raise ValueError(f"Unsupported device: {part_name}")
33+
34+
my_adc = adi.adaq776x_1(uri=my_uri)
35+
my_adc.rx_buffer_size = 1024
36+
37+
my_adc.sampling_frequency = 8000 # Set Sample Rate
38+
39+
my_adc.rx_output_type = "SI" # Choose output format: "SI" or "RAW"
40+
41+
my_adc.common_mode_voltage = "(AVDD1-AVSS)/2" # mV # Set common mode voltage: (AVDD1-AVSS)/2 2V5 2V05 1V9 1V65 1V1 0V9 OFF
42+
43+
# Verify settings:
44+
display_settings(
45+
my_adc.sampling_frequency, my_adc.rx_enabled_channels, my_adc.common_mode_voltage,
46+
)
47+
48+
# --- Live Plot Setup ---
49+
plt.ion() # turn on interactive mode
50+
fig, ax = plt.subplots(figsize=(10, 6)) # reasonable size for most monitors
51+
(line,) = ax.plot([], [], label="voltage")
52+
ax.set_xlabel("Data Point")
53+
ax.set_ylabel("Millivolts" if my_adc.rx_output_type == "SI" else "ADC counts")
54+
ax.legend(loc="upper right")
55+
plt.show()
56+
57+
# --- Live Update Loop ---
58+
try:
59+
while True:
60+
data = my_adc.rx()
61+
data = data[1:] # skip first sample
62+
63+
line.set_xdata(range(len(data)))
64+
line.set_ydata(data)
65+
66+
ax.relim()
67+
ax.autoscale_view()
68+
69+
plt.pause(0.01)
70+
71+
except KeyboardInterrupt:
72+
print("Stopped by user.")
73+
74+
del my_adc

supported_parts.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@
9696
- AD7291
9797
- AD7490
9898
- AD7768
99+
- AD7768-1
99100
- AD7768-4
100101
- AD7770
101102
- AD7771
@@ -127,6 +128,7 @@
127128
- ADAQ4216
128129
- ADAQ4220
129130
- ADAQ4224
131+
- ADAQ776x-1 (ADAQ7767-1, ADAQ7768-1, ADAQ7769-1)
130132
- ADAQ8092
131133
- ADAR1000
132134
- ADF4030

test/emu/devices/ad7768-1.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE context [<!ELEMENT context (device | context-attribute)*><!ELEMENT context-attribute EMPTY><!ELEMENT device (channel | attribute | debug-attribute | buffer-attribute)*><!ELEMENT channel (scan-element?, attribute*)><!ELEMENT attribute EMPTY><!ELEMENT scan-element EMPTY><!ELEMENT debug-attribute EMPTY><!ELEMENT buffer-attribute EMPTY><!ATTLIST context name CDATA #REQUIRED description CDATA #IMPLIED><!ATTLIST context-attribute name CDATA #REQUIRED value CDATA #REQUIRED><!ATTLIST device id CDATA #REQUIRED name CDATA #IMPLIED><!ATTLIST channel id CDATA #REQUIRED type (input|output) #REQUIRED name CDATA #IMPLIED><!ATTLIST scan-element index CDATA #REQUIRED format CDATA #REQUIRED scale CDATA #IMPLIED><!ATTLIST attribute name CDATA #REQUIRED filename CDATA #IMPLIED value CDATA #IMPLIED><!ATTLIST debug-attribute name CDATA #REQUIRED value CDATA #IMPLIED><!ATTLIST buffer-attribute name CDATA #REQUIRED value CDATA #IMPLIED>]><context name="network" description="192.168.3.2 Linux analog 5.15.0-175919-g427c94e8faa5 #823 SMP PREEMPT Tue Dec 12 10:08:06 EET 2023 armv7l" ><context-attribute name="hdl_system_id" value="[ad77681evb] on [zed] git branch [hdl_2022_r2] git [b31d4fbba87a96f329f858da3118771503c7c6b4] clean [2023-10-27 11:04:17] UTC" /><context-attribute name="hw_carrier" value="Xilinx Zynq ZED" /><context-attribute name="hw_model" value="EVAL-AD7768-1FMCZ on Xilinx Zynq ZED" /><context-attribute name="hw_mezzanine" value="EVAL-AD7768-1FMCZ" /><context-attribute name="hw_name" value="AD7768-1" /><context-attribute name="hw_vendor" value="Analog Devices" /><context-attribute name="hw_serial" value="Empty Field" /><context-attribute name="local,kernel" value="5.15.0-175919-g427c94e8faa5" /><context-attribute name="uri" value="ip:192.168.3.2" /><context-attribute name="ip,ip-addr" value="192.168.3.2" /><device id="hwmon0" name="e000b000ethernetffffffff00" ><channel id="temp1" type="input" ><attribute name="crit" filename="temp1_crit" value="100000" /><attribute name="input" filename="temp1_input" value="36000" /><attribute name="max_alarm" filename="temp1_max_alarm" value="0" /></channel></device><device id="iio:device0" name="ad7768-1" ><channel id="voltage0" type="input" ><scan-element index="0" format="le:s24/32&gt;&gt;8" scale="0.000488" /><attribute name="label" filename="in_voltage0_label" value="(null)" /><attribute name="raw" filename="in_voltage0_raw" value="-193" /><attribute name="scale" filename="in_voltage_scale" value="0.000488281" /></channel><attribute name="common_mode_voltage" value="(AVDD1-AVSS)/2" /><attribute name="common_mode_voltage_available" value="(AVDD1-AVSS)/2 2V5 2V05 1V9 1V65 1V1 0V9 OFF" /><attribute name="sampling_frequency" value="256000" /><attribute name="sampling_frequency_available" value="256000 128000 64000 32000 16000 8000 4000 2000 1000" /><buffer-attribute name="data_available" value="0" /><buffer-attribute name="length_align_bytes" value="8" /><debug-attribute name="direct_reg_access" value="0x0" /></device><device id="iio:device1" name="xadc" ><channel id="voltage5" name="vccoddr" type="input" ><attribute name="label" filename="in_voltage5_vccoddr_label" value="vccoddr" /><attribute name="raw" filename="in_voltage5_vccoddr_raw" value="2022" /><attribute name="scale" filename="in_voltage5_vccoddr_scale" value="0.732421875" /></channel><channel id="voltage0" name="vccint" type="input" ><attribute name="label" filename="in_voltage0_vccint_label" value="vccint" /><attribute name="raw" filename="in_voltage0_vccint_raw" value="1368" /><attribute name="scale" filename="in_voltage0_vccint_scale" value="0.732421875" /></channel><channel id="voltage4" name="vccpaux" type="input" ><attribute name="label" filename="in_voltage4_vccpaux_label" value="vccpaux" /><attribute name="raw" filename="in_voltage4_vccpaux_raw" value="2440" /><attribute name="scale" filename="in_voltage4_vccpaux_scale" value="0.732421875" /></channel><channel id="temp0" type="input" ><attribute name="offset" filename="in_temp0_offset" value="-2219" /><attribute name="raw" filename="in_temp0_raw" value="2533" /><attribute name="scale" filename="in_temp0_scale" value="123.040771484" /></channel><channel id="voltage7" name="vrefn" type="input" ><attribute name="label" filename="in_voltage7_vrefn_label" value="vrefn" /><attribute name="raw" filename="in_voltage7_vrefn_raw" value="-12" /><attribute name="scale" filename="in_voltage7_vrefn_scale" value="0.732421875" /></channel><channel id="voltage1" name="vccaux" type="input" ><attribute name="label" filename="in_voltage1_vccaux_label" value="vccaux" /><attribute name="raw" filename="in_voltage1_vccaux_raw" value="2437" /><attribute name="scale" filename="in_voltage1_vccaux_scale" value="0.732421875" /></channel><channel id="voltage2" name="vccbram" type="input" ><attribute name="label" filename="in_voltage2_vccbram_label" value="vccbram" /><attribute name="raw" filename="in_voltage2_vccbram_raw" value="1364" /><attribute name="scale" filename="in_voltage2_vccbram_scale" value="0.732421875" /></channel><channel id="voltage3" name="vccpint" type="input" ><attribute name="label" filename="in_voltage3_vccpint_label" value="vccpint" /><attribute name="raw" filename="in_voltage3_vccpint_raw" value="1367" /><attribute name="scale" filename="in_voltage3_vccpint_scale" value="0.732421875" /></channel><channel id="voltage6" name="vrefp" type="input" ><attribute name="label" filename="in_voltage6_vrefp_label" value="vrefp" /><attribute name="raw" filename="in_voltage6_vrefp_raw" value="1690" /><attribute name="scale" filename="in_voltage6_vrefp_scale" value="0.732421875" /></channel><attribute name="sampling_frequency" value="961538" /></device><device id="iio_sysfs_trigger" ><attribute name="add_trigger" value="ERROR" /><attribute name="remove_trigger" value="ERROR" /></device></context>

test/emu/devices/adaq7767-1.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE context [<!ELEMENT context (device | context-attribute)*><!ELEMENT context-attribute EMPTY><!ELEMENT device (channel | attribute | debug-attribute | buffer-attribute)*><!ELEMENT channel (scan-element?, attribute*)><!ELEMENT attribute EMPTY><!ELEMENT scan-element EMPTY><!ELEMENT debug-attribute EMPTY><!ELEMENT buffer-attribute EMPTY><!ATTLIST context name CDATA #REQUIRED description CDATA #IMPLIED><!ATTLIST context-attribute name CDATA #REQUIRED value CDATA #REQUIRED><!ATTLIST device id CDATA #REQUIRED name CDATA #IMPLIED><!ATTLIST channel id CDATA #REQUIRED type (input|output) #REQUIRED name CDATA #IMPLIED><!ATTLIST scan-element index CDATA #REQUIRED format CDATA #REQUIRED scale CDATA #IMPLIED><!ATTLIST attribute name CDATA #REQUIRED filename CDATA #IMPLIED value CDATA #IMPLIED><!ATTLIST debug-attribute name CDATA #REQUIRED value CDATA #IMPLIED><!ATTLIST buffer-attribute name CDATA #REQUIRED value CDATA #IMPLIED>]><context name="network" description="192.168.3.2 Linux analog 5.15.0-175919-g427c94e8faa5 #823 SMP PREEMPT Tue Dec 12 10:08:06 EET 2023 armv7l" ><context-attribute name="hdl_system_id" value="[ad77681evb] on [zed] git branch [hdl_2022_r2] git [b31d4fbba87a96f329f858da3118771503c7c6b4] clean [2023-10-27 11:04:17] UTC" /><context-attribute name="hw_carrier" value="Xilinx Zynq ZED" /><context-attribute name="hw_model" value="EV-ADAQ7767-1FMC1Z on Xilinx Zynq ZED" /><context-attribute name="hw_mezzanine" value="EV-ADAQ7767-1FMC1Z" /><context-attribute name="hw_name" value="ADAQ7767-1" /><context-attribute name="hw_vendor" value="Analog Devices" /><context-attribute name="hw_serial" value="Empty Field" /><context-attribute name="local,kernel" value="5.15.0-175919-g427c94e8faa5" /><context-attribute name="uri" value="ip:192.168.3.2" /><context-attribute name="ip,ip-addr" value="192.168.3.2" /><device id="hwmon0" name="e000b000ethernetffffffff00" ><channel id="temp1" type="input" ><attribute name="crit" filename="temp1_crit" value="100000" /><attribute name="input" filename="temp1_input" value="36000" /><attribute name="max_alarm" filename="temp1_max_alarm" value="0" /></channel></device><device id="iio:device0" name="ad7768-1" ><channel id="voltage0" type="input" ><scan-element index="0" format="le:s24/32&gt;&gt;8" scale="0.000488" /><attribute name="label" filename="in_voltage0_label" value="(null)" /><attribute name="raw" filename="in_voltage0_raw" value="-193" /><attribute name="scale" filename="in_voltage_scale" value="0.000488281" /></channel><attribute name="common_mode_voltage" value="(AVDD1-AVSS)/2" /><attribute name="common_mode_voltage_available" value="(AVDD1-AVSS)/2 2V5 2V05 1V9 1V65 1V1 0V9 OFF" /><attribute name="sampling_frequency" value="256000" /><attribute name="sampling_frequency_available" value="256000 128000 64000 32000 16000 8000 4000 2000 1000" /><buffer-attribute name="data_available" value="0" /><buffer-attribute name="length_align_bytes" value="8" /><debug-attribute name="direct_reg_access" value="0x0" /></device><device id="iio:device1" name="xadc" ><channel id="voltage5" name="vccoddr" type="input" ><attribute name="label" filename="in_voltage5_vccoddr_label" value="vccoddr" /><attribute name="raw" filename="in_voltage5_vccoddr_raw" value="2022" /><attribute name="scale" filename="in_voltage5_vccoddr_scale" value="0.732421875" /></channel><channel id="voltage0" name="vccint" type="input" ><attribute name="label" filename="in_voltage0_vccint_label" value="vccint" /><attribute name="raw" filename="in_voltage0_vccint_raw" value="1368" /><attribute name="scale" filename="in_voltage0_vccint_scale" value="0.732421875" /></channel><channel id="voltage4" name="vccpaux" type="input" ><attribute name="label" filename="in_voltage4_vccpaux_label" value="vccpaux" /><attribute name="raw" filename="in_voltage4_vccpaux_raw" value="2440" /><attribute name="scale" filename="in_voltage4_vccpaux_scale" value="0.732421875" /></channel><channel id="temp0" type="input" ><attribute name="offset" filename="in_temp0_offset" value="-2219" /><attribute name="raw" filename="in_temp0_raw" value="2533" /><attribute name="scale" filename="in_temp0_scale" value="123.040771484" /></channel><channel id="voltage7" name="vrefn" type="input" ><attribute name="label" filename="in_voltage7_vrefn_label" value="vrefn" /><attribute name="raw" filename="in_voltage7_vrefn_raw" value="-12" /><attribute name="scale" filename="in_voltage7_vrefn_scale" value="0.732421875" /></channel><channel id="voltage1" name="vccaux" type="input" ><attribute name="label" filename="in_voltage1_vccaux_label" value="vccaux" /><attribute name="raw" filename="in_voltage1_vccaux_raw" value="2437" /><attribute name="scale" filename="in_voltage1_vccaux_scale" value="0.732421875" /></channel><channel id="voltage2" name="vccbram" type="input" ><attribute name="label" filename="in_voltage2_vccbram_label" value="vccbram" /><attribute name="raw" filename="in_voltage2_vccbram_raw" value="1364" /><attribute name="scale" filename="in_voltage2_vccbram_scale" value="0.732421875" /></channel><channel id="voltage3" name="vccpint" type="input" ><attribute name="label" filename="in_voltage3_vccpint_label" value="vccpint" /><attribute name="raw" filename="in_voltage3_vccpint_raw" value="1367" /><attribute name="scale" filename="in_voltage3_vccpint_scale" value="0.732421875" /></channel><channel id="voltage6" name="vrefp" type="input" ><attribute name="label" filename="in_voltage6_vrefp_label" value="vrefp" /><attribute name="raw" filename="in_voltage6_vrefp_raw" value="1690" /><attribute name="scale" filename="in_voltage6_vrefp_scale" value="0.732421875" /></channel><attribute name="sampling_frequency" value="961538" /></device><device id="iio_sysfs_trigger" ><attribute name="add_trigger" value="ERROR" /><attribute name="remove_trigger" value="ERROR" /></device></context>

0 commit comments

Comments
 (0)