1 What: /sys/bus/iio/devices/iio:deviceX
3 Contact: linux-iio@vger.kernel.org
5 Hardware chip or device accessed by one communication port.
6 Corresponds to a grouping of sensor channels. X is the IIO
9 What: /sys/bus/iio/devices/triggerX
11 Contact: linux-iio@vger.kernel.org
13 An event driven driver of data capture to an in kernel buffer.
14 May be provided by a device driver that also has an IIO device
15 based on hardware generated events (e.g. data ready) or
16 provided by a separate driver for other hardware (e.g.
17 periodic timer, GPIO or high resolution timer).
19 Contains trigger type specific elements. These do not
20 generalize well and hence are not documented in this file.
21 X is the IIO index of the trigger.
23 What: /sys/bus/iio/devices/iio:deviceX/buffer
25 Contact: linux-iio@vger.kernel.org
27 Directory of attributes relating to the buffer for the device.
29 What: /sys/bus/iio/devices/iio:deviceX/name
31 Contact: linux-iio@vger.kernel.org
33 Description of the physical chip / device for device X.
34 Typically a part number.
36 What: /sys/bus/iio/devices/iio:deviceX/label
38 Contact: linux-iio@vger.kernel.org
40 Optional symbolic label for a device.
41 This is useful for userspace to be able to better identify an
44 The contents of the label are free-form, but there are some
47 For proximity sensors which give the proximity (of a person) to
48 a certain wlan or wwan antenna the following standardized labels
53 * "proximity-wifi-lte"
54 * "proximity-wifi-left"
55 * "proximity-wifi-right"
57 These are used to indicate to userspace that these proximity
58 sensors may be used to tune transmit power to ensure that
59 Specific Absorption Rate (SAR) limits are honored.
60 The "-left" and "-right" labels are for devices with multiple
63 In some laptops/tablets the standardized proximity sensor labels
64 instead indicate proximity to a specific part of the device:
66 * "proximity-palmrest" indicates proximity to the keyboard's palmrest
67 * "proximity-palmrest-left" indicates proximity to the left part of the palmrest
68 * "proximity-palmrest-right" indicates proximity to the right part of the palmrest
69 * "proximity-lap" indicates the device is being used on someone's lap
71 Note "proximity-lap" is special in that its value may be
72 calculated by firmware from other sensor readings, rather then
73 being a raw sensor reading.
75 For accelerometers used in 2-in-1s with 360° (yoga-style) hinges,
76 which have an accelerometer in both their base and their display,
77 the following standardized labels are used:
82 For devices where an accelerometer is housed in the swivel camera subassembly
83 (for AR application), the following standardized label is used:
87 What: /sys/bus/iio/devices/iio:deviceX/current_timestamp_clock
89 Contact: linux-iio@vger.kernel.org
91 String identifying current posix clock used to timestamp
92 buffered samples and events for device X.
94 What: /sys/bus/iio/devices/iio:deviceX/sampling_frequency
95 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency
96 What: /sys/bus/iio/devices/iio:deviceX/buffer/sampling_frequency
97 What: /sys/bus/iio/devices/triggerX/sampling_frequency
99 Contact: linux-iio@vger.kernel.org
101 Some devices have internal clocks. This parameter sets the
102 resulting sampling frequency. In many devices this
103 parameter has an effect on input filters etc. rather than
104 simply controlling when the input is sampled. As this
105 affects data ready triggers, hardware buffers and the sysfs
106 direct access interfaces, it may be found in any of the
107 relevant directories. If it affects all of the above
108 then it is to be found in the base device directory.
110 The stm32-timer-trigger has the additional characteristic that
111 a sampling_frequency of 0 is defined to stop sampling.
113 What: /sys/bus/iio/devices/iio:deviceX/sampling_frequency_available
114 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_sampling_frequency_available
115 What: /sys/bus/iio/devices/iio:deviceX/in_proximity_sampling_frequency_available
116 What: /sys/.../iio:deviceX/buffer/sampling_frequency_available
117 What: /sys/bus/iio/devices/triggerX/sampling_frequency_available
118 KernelVersion: 2.6.35
119 Contact: linux-iio@vger.kernel.org
121 When the internal sampling clock can only take a specific set of
122 frequencies, we can specify the available values with:
124 - a small discrete set of values like "0 2 4 6 8"
125 - a range with minimum, step and maximum frequencies like
128 What: /sys/bus/iio/devices/iio:deviceX/oversampling_ratio
129 KernelVersion: 2.6.38
130 Contact: linux-iio@vger.kernel.org
132 Hardware dependent ADC oversampling. Controls the sampling ratio
133 of the digital filter if available.
135 What: /sys/bus/iio/devices/iio:deviceX/oversampling_ratio_available
136 KernelVersion: 2.6.38
137 Contact: linux-iio@vger.kernel.org
139 Hardware dependent values supported by the oversampling filter.
141 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_raw
142 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_raw
143 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_i_raw
144 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_q_raw
145 KernelVersion: 2.6.35
146 Contact: linux-iio@vger.kernel.org
148 Raw (unscaled no bias removal etc.) voltage measurement from
149 channel Y. In special cases where the channel does not
150 correspond to externally available input one of the named
151 versions may be used. The number must always be specified and
152 unique to allow association with event codes. Units after
153 application of scale and offset are millivolts.
155 Channels with 'i' and 'q' modifiers always exist in pairs and both
156 channels refer to the same signal. The 'i' channel contains the in-phase
157 component of the signal while the 'q' channel contains the quadrature
160 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY-voltageZ_raw
161 KernelVersion: 2.6.35
162 Contact: linux-iio@vger.kernel.org
164 Raw (unscaled) differential voltage measurement equivalent to
165 channel Y - channel Z where these channel numbers apply to the
166 physically equivalent inputs when non differential readings are
167 separately available. In differential only parts, then all that
168 is required is a consistent labeling. Units after application
169 of scale and offset are millivolts.
171 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_raw
172 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_supply_raw
174 Contact: linux-iio@vger.kernel.org
176 Raw (unscaled no bias removal etc.) current measurement from
177 channel Y. In special cases where the channel does not
178 correspond to externally available input one of the named
179 versions may be used. The number must always be specified and
180 unique to allow association with event codes. Units after
181 application of scale and offset are milliamps.
183 What: /sys/bus/iio/devices/iio:deviceX/in_powerY_raw
185 Contact: linux-iio@vger.kernel.org
187 Raw (unscaled no bias removal etc.) power measurement from
188 channel Y. The number must always be specified and
189 unique to allow association with event codes. Units after
190 application of scale and offset are milliwatts.
192 What: /sys/bus/iio/devices/iio:deviceX/in_capacitanceY_raw
194 Contact: linux-iio@vger.kernel.org
196 Raw capacitance measurement from channel Y. Units after
197 application of scale and offset are nanofarads.
199 What: /sys/.../iio:deviceX/in_capacitanceY-capacitanceZ_raw
201 Contact: linux-iio@vger.kernel.org
203 Raw differential capacitance measurement equivalent to
204 channel Y - channel Z where these channel numbers apply to the
205 physically equivalent inputs when non differential readings are
206 separately available. In differential only parts, then all that
207 is required is a consistent labeling. Units after application
208 of scale and offset are nanofarads.
210 What: /sys/.../iio:deviceX/in_capacitanceY-capacitanceZ_zeropoint
212 Contact: linux-iio@vger.kernel.org
214 For differential channels, this an offset that is applied
215 equally to both inputs. As the reading is of the difference
216 between the two inputs, this should not be applied to the _raw
217 reading by userspace (unlike _offset) and unlike calibbias
218 it does not affect the differential value measured because
219 the effect of _zeropoint cancels out across the two inputs
220 that make up the differential pair. It's purpose is to bring
221 the individual signals, before the differential is measured,
222 within the measurement range of the device. The naming is
223 chosen because if the separate inputs that make the
224 differential pair are drawn on a graph in their
225 _raw units, this is the value that the zero point on the
226 measurement axis represents. It is expressed with the
227 same scaling as _raw.
229 What: /sys/bus/iio/devices/iio:deviceX/in_temp_raw
230 What: /sys/bus/iio/devices/iio:deviceX/in_tempX_raw
231 What: /sys/bus/iio/devices/iio:deviceX/in_temp_x_raw
232 What: /sys/bus/iio/devices/iio:deviceX/in_temp_y_raw
233 What: /sys/bus/iio/devices/iio:deviceX/in_temp_ambient_raw
234 What: /sys/bus/iio/devices/iio:deviceX/in_temp_object_raw
235 KernelVersion: 2.6.35
236 Contact: linux-iio@vger.kernel.org
238 Raw (unscaled no bias removal etc.) temperature measurement.
239 If an axis is specified it generally means that the temperature
240 sensor is associated with one part of a compound device (e.g.
241 a gyroscope axis). The ambient and object modifiers distinguish
242 between ambient (reference) and distant temperature for contact-
243 less measurements. Units after application of scale and offset
244 are milli degrees Celsius.
246 What: /sys/bus/iio/devices/iio:deviceX/in_tempX_input
247 KernelVersion: 2.6.38
248 Contact: linux-iio@vger.kernel.org
250 Scaled temperature measurement in milli degrees Celsius.
252 What: /sys/bus/iio/devices/iio:deviceX/in_accel_x_raw
253 What: /sys/bus/iio/devices/iio:deviceX/in_accel_y_raw
254 What: /sys/bus/iio/devices/iio:deviceX/in_accel_z_raw
255 KernelVersion: 2.6.35
256 Contact: linux-iio@vger.kernel.org
258 Acceleration in direction x, y or z (may be arbitrarily assigned
259 but should match other such assignments on device).
260 Has all of the equivalent parameters as per voltageY. Units
261 after application of scale and offset are m/s^2.
263 What: /sys/bus/iio/devices/iio:deviceX/in_accel_linear_x_raw
264 What: /sys/bus/iio/devices/iio:deviceX/in_accel_linear_y_raw
265 What: /sys/bus/iio/devices/iio:deviceX/in_accel_linear_z_raw
267 Contact: linux-iio@vger.kernel.org
269 As per in_accel_X_raw attributes, but minus the
270 acceleration due to gravity.
272 What: /sys/bus/iio/devices/iio:deviceX/in_gravity_x_raw
273 What: /sys/bus/iio/devices/iio:deviceX/in_gravity_y_raw
274 What: /sys/bus/iio/devices/iio:deviceX/in_gravity_z_raw
276 Contact: linux-iio@vger.kernel.org
278 Gravity in direction x, y or z (may be arbitrarily assigned
279 but should match other such assignments on device).
280 Units after application of scale and offset are m/s^2.
282 What: /sys/bus/iio/devices/iio:deviceX/in_deltaangl_x_raw
283 What: /sys/bus/iio/devices/iio:deviceX/in_deltaangl_y_raw
284 What: /sys/bus/iio/devices/iio:deviceX/in_deltaangl_z_raw
286 Contact: linux-iio@vger.kernel.org
288 Angular displacement between two consecutive samples on x, y or
289 z (may be arbitrarily assigned but should match other such
290 assignments on device).
291 In order to compute the total angular displacement during a
292 desired period of time, the application should sum-up the delta
293 angle samples acquired during that time.
294 Units after application of scale and offset are radians.
296 What: /sys/bus/iio/devices/iio:deviceX/in_deltavelocity_x_raw
297 What: /sys/bus/iio/devices/iio:deviceX/in_deltavelocity_y_raw
298 What: /sys/bus/iio/devices/iio:deviceX/in_deltavelocity_z_raw
300 Contact: linux-iio@vger.kernel.org
302 The linear velocity change between two consecutive samples on x,
303 y or z (may be arbitrarily assigned but should match other such
304 assignments on device).
305 In order to compute the total linear velocity change during a
306 desired period of time, the application should sum-up the delta
307 velocity samples acquired during that time.
308 Units after application of scale and offset are meters per
311 What: /sys/bus/iio/devices/iio:deviceX/in_angl_raw
312 What: /sys/bus/iio/devices/iio:deviceX/in_anglY_raw
314 Contact: linux-iio@vger.kernel.org
316 Angle of rotation. Units after application of scale and offset
319 What: /sys/bus/iio/devices/iio:deviceX/in_positionrelative_x_raw
320 What: /sys/bus/iio/devices/iio:deviceX/in_positionrelative_y_raw
322 Contact: linux-iio@vger.kernel.org
324 Relative position in direction x or y on a pad (may be
325 arbitrarily assigned but should match other such assignments on
327 Units after application of scale and offset are milli percents
328 from the pad's size in both directions. Should be calibrated by
331 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_x_raw
332 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_y_raw
333 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_z_raw
334 KernelVersion: 2.6.35
335 Contact: linux-iio@vger.kernel.org
337 Angular velocity about axis x, y or z (may be arbitrarily
338 assigned). Has all the equivalent parameters as per voltageY.
339 Units after application of scale and offset are radians per
342 What: /sys/bus/iio/devices/iio:deviceX/in_incli_x_raw
343 What: /sys/bus/iio/devices/iio:deviceX/in_incli_y_raw
344 What: /sys/bus/iio/devices/iio:deviceX/in_incli_z_raw
345 KernelVersion: 2.6.35
346 Contact: linux-iio@vger.kernel.org
348 Inclination raw reading about axis x, y or z (may be
349 arbitrarily assigned). Data converted by application of offset
350 and scale to degrees.
352 What: /sys/bus/iio/devices/iio:deviceX/in_magn_x_raw
353 What: /sys/bus/iio/devices/iio:deviceX/in_magn_y_raw
354 What: /sys/bus/iio/devices/iio:deviceX/in_magn_z_raw
355 KernelVersion: 2.6.35
356 Contact: linux-iio@vger.kernel.org
358 Magnetic field along axis x, y or z (may be arbitrarily
359 assigned). Data converted by application of offset
362 What: /sys/bus/iio/devices/iio:deviceX/in_accel_x_peak_raw
363 What: /sys/bus/iio/devices/iio:deviceX/in_accel_y_peak_raw
364 What: /sys/bus/iio/devices/iio:deviceX/in_accel_z_peak_raw
365 KernelVersion: 2.6.36
366 Contact: linux-iio@vger.kernel.org
368 Highest value since some reset condition. These
369 attributes allow access to this and are otherwise
370 the direct equivalent of the <type>Y[_name]_raw attributes.
372 What: /sys/bus/iio/devices/iio:deviceX/in_accel_xyz_squared_peak_raw
373 KernelVersion: 2.6.36
374 Contact: linux-iio@vger.kernel.org
376 A computed peak value based on the sum squared magnitude of
377 the underlying value in the specified directions.
379 What: /sys/bus/iio/devices/iio:deviceX/in_pressureY_raw
380 What: /sys/bus/iio/devices/iio:deviceX/in_pressure_raw
382 Contact: linux-iio@vger.kernel.org
384 Raw pressure measurement from channel Y. Units after
385 application of scale and offset are kilopascal.
387 What: /sys/bus/iio/devices/iio:deviceX/in_pressureY_input
388 What: /sys/bus/iio/devices/iio:deviceX/in_pressure_input
390 Contact: linux-iio@vger.kernel.org
392 Scaled pressure measurement from channel Y, in kilopascal.
394 What: /sys/bus/iio/devices/iio:deviceX/in_humidityrelative_raw
396 Contact: linux-iio@vger.kernel.org
398 Raw humidity measurement of air. Units after application of
399 scale and offset are milli percent.
401 What: /sys/bus/iio/devices/iio:deviceX/in_humidityrelative_input
403 Contact: linux-iio@vger.kernel.org
405 Scaled humidity measurement in milli percent.
407 What: /sys/bus/iio/devices/iio:deviceX/in_X_mean_raw
409 Contact: linux-iio@vger.kernel.org
411 Averaged raw measurement from channel X. The number of values
412 used for averaging is device specific. The converting rules for
413 normal raw values also applies to the averaged raw values.
415 What: /sys/bus/iio/devices/iio:deviceX/in_accel_offset
416 What: /sys/bus/iio/devices/iio:deviceX/in_accel_x_offset
417 What: /sys/bus/iio/devices/iio:deviceX/in_accel_y_offset
418 What: /sys/bus/iio/devices/iio:deviceX/in_accel_z_offset
419 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_offset
420 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_offset
421 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_i_offset
422 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_q_offset
423 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_q_offset
424 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_i_offset
425 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_offset
426 What: /sys/bus/iio/devices/iio:deviceX/in_current_offset
427 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_i_offset
428 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_q_offset
429 What: /sys/bus/iio/devices/iio:deviceX/in_current_q_offset
430 What: /sys/bus/iio/devices/iio:deviceX/in_current_i_offset
431 What: /sys/bus/iio/devices/iio:deviceX/in_tempY_offset
432 What: /sys/bus/iio/devices/iio:deviceX/in_temp_offset
433 What: /sys/bus/iio/devices/iio:deviceX/in_pressureY_offset
434 What: /sys/bus/iio/devices/iio:deviceX/in_pressure_offset
435 What: /sys/bus/iio/devices/iio:deviceX/in_humidityrelative_offset
436 What: /sys/bus/iio/devices/iio:deviceX/in_magn_offset
437 What: /sys/bus/iio/devices/iio:deviceX/in_rot_offset
438 What: /sys/bus/iio/devices/iio:deviceX/in_angl_offset
439 What: /sys/bus/iio/devices/iio:deviceX/in_capacitanceX_offset
440 KernelVersion: 2.6.35
441 Contact: linux-iio@vger.kernel.org
443 If known for a device, offset to be added to <type>[Y]_raw prior
444 to scaling by <type>[Y]_scale in order to obtain value in the
445 <type> units as specified in <type>[Y]_raw documentation.
446 Not present if the offset is always 0 or unknown. If Y or
447 axis <x|y|z> is not present, then the offset applies to all
448 in channels of <type>.
449 May be writable if a variable offset can be applied on the
450 device. Note that this is different to calibbias which
451 is for devices (or drivers) that apply offsets to compensate
452 for variation between different instances of the part, typically
453 adjusted by using some hardware supported calibration procedure.
454 Calibbias is applied internally, offset is applied in userspace
457 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_scale
458 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_i_scale
459 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_q_scale
460 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_scale
461 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_scale
462 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_i_scale
463 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_q_scale
464 What: /sys/bus/iio/devices/iio:deviceX/in_voltage-voltage_scale
465 What: /sys/bus/iio/devices/iio:deviceX/out_voltageY_scale
466 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_scale
467 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_scale
468 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_supply_scale
469 What: /sys/bus/iio/devices/iio:deviceX/in_current_scale
470 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_i_scale
471 What: /sys/bus/iio/devices/iio:deviceX/in_currentY_q_scale
472 What: /sys/bus/iio/devices/iio:deviceX/in_current_i_scale
473 What: /sys/bus/iio/devices/iio:deviceX/in_current_q_scale
474 What: /sys/bus/iio/devices/iio:deviceX/in_accel_scale
475 What: /sys/bus/iio/devices/iio:deviceX/in_accel_peak_scale
476 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_scale
477 What: /sys/bus/iio/devices/iio:deviceX/in_energy_scale
478 What: /sys/bus/iio/devices/iio:deviceX/in_distance_scale
479 What: /sys/bus/iio/devices/iio:deviceX/in_magn_scale
480 What: /sys/bus/iio/devices/iio:deviceX/in_magn_x_scale
481 What: /sys/bus/iio/devices/iio:deviceX/in_magn_y_scale
482 What: /sys/bus/iio/devices/iio:deviceX/in_magn_z_scale
483 What: /sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_scale
484 What: /sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_scale
485 What: /sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_scale
486 What: /sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_scale
487 What: /sys/bus/iio/devices/iio:deviceX/in_pressureY_scale
488 What: /sys/bus/iio/devices/iio:deviceX/in_pressure_scale
489 What: /sys/bus/iio/devices/iio:deviceX/in_humidityrelative_scale
490 What: /sys/bus/iio/devices/iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_scale
491 What: /sys/bus/iio/devices/iio:deviceX/in_illuminance_scale
492 What: /sys/bus/iio/devices/iio:deviceX/in_countY_scale
493 What: /sys/bus/iio/devices/iio:deviceX/in_deltaangl_scale
494 What: /sys/bus/iio/devices/iio:deviceX/in_deltavelocity_scale
495 What: /sys/bus/iio/devices/iio:deviceX/in_angl_scale
496 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_x_scale
497 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_y_scale
498 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_z_scale
499 What: /sys/bus/iio/devices/iio:deviceX/in_concentration_co2_scale
500 KernelVersion: 2.6.35
501 Contact: linux-iio@vger.kernel.org
503 If known for a device, scale to be applied to <type>Y[_name]_raw
504 post addition of <type>[Y][_name]_offset in order to obtain the
505 measured value in <type> units as specified in
506 <type>[Y][_name]_raw documentation. If shared across all in
507 channels then Y and <x|y|z> are not present and the value is
508 called <type>[Y][_name]_scale. The peak modifier means this
509 value is applied to <type>Y[_name]_peak_raw values.
511 What: /sys/bus/iio/devices/iio:deviceX/in_accel_x_calibbias
512 What: /sys/bus/iio/devices/iio:deviceX/in_accel_y_calibbias
513 What: /sys/bus/iio/devices/iio:deviceX/in_accel_z_calibbias
514 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibbias
515 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibbias
516 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibbias
517 What: /sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibbias
518 What: /sys/bus/iio/devices/iio:deviceX/in_proximity0_calibbias
519 What: /sys/bus/iio/devices/iio:deviceX/in_pressureY_calibbias
520 What: /sys/bus/iio/devices/iio:deviceX/in_pressure_calibbias
521 KernelVersion: 2.6.35
522 Contact: linux-iio@vger.kernel.org
524 Hardware applied calibration offset (assumed to fix production
526 icm42600: For this device values are real physical offsets
527 expressed in SI units (m/s^2 for accelerometers and rad/s
530 What: /sys/bus/iio/devices/iio:deviceX/in_accel_calibbias_available
531 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_calibbias_available
533 Contact: linux-iio@vger.kernel.org
535 Available values of calibbias. Maybe expressed as either of:
537 - a small discrete set of values like "0 2 4 6 8"
538 - a range specified as "[min step max]"
540 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_calibscale
541 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_supply_calibscale
542 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_i_calibscale
543 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_q_calibscale
544 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_i_calibscale
545 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_q_calibscale
546 What: /sys/bus/iio/devices/iio:deviceX/in_altvoltage_calibscale
547 What: /sys/bus/iio/devices/iio:deviceX/in_voltage_calibscale
548 What: /sys/bus/iio/devices/iio:deviceX/in_accel_x_calibscale
549 What: /sys/bus/iio/devices/iio:deviceX/in_accel_y_calibscale
550 What: /sys/bus/iio/devices/iio:deviceX/in_accel_z_calibscale
551 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_x_calibscale
552 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_y_calibscale
553 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_z_calibscale
554 What: /sys/bus/iio/devices/iio:deviceX/in_illuminance0_calibscale
555 What: /sys/bus/iio/devices/iio:deviceX/in_proximity0_calibscale
556 What: /sys/bus/iio/devices/iio:deviceX/in_pressureY_calibscale
557 What: /sys/bus/iio/devices/iio:deviceX/in_pressure_calibscale
558 What: /sys/bus/iio/devices/iio:deviceX/in_illuminance_calibscale
559 KernelVersion: 2.6.35
560 Contact: linux-iio@vger.kernel.org
562 Hardware applied calibration scale factor (assumed to fix
563 production inaccuracies). If shared across all channels,
564 <type>_calibscale is used.
566 What: /sys/bus/iio/devices/iio:deviceX/in_activity_calibgender
567 What: /sys/bus/iio/devices/iio:deviceX/in_energy_calibgender
568 What: /sys/bus/iio/devices/iio:deviceX/in_distance_calibgender
569 What: /sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender
571 Contact: linux-iio@vger.kernel.org
573 Gender of the user (e.g.: male, female) used by some pedometers
574 to compute the stride length, distance, speed and activity
577 What: /sys/bus/iio/devices/iio:deviceX/in_activity_calibgender_available
578 What: /sys/bus/iio/devices/iio:deviceX/in_energy_calibgender_available
579 What: /sys/bus/iio/devices/iio:deviceX/in_distance_calibgender_available
580 What: /sys/bus/iio/devices/iio:deviceX/in_velocity_calibgender_available
582 Contact: linux-iio@vger.kernel.org
584 Lists all available gender values (e.g.: male, female).
586 What: /sys/bus/iio/devices/iio:deviceX/in_activity_calibheight
587 What: /sys/bus/iio/devices/iio:deviceX/in_energy_calibheight
588 What: /sys/bus/iio/devices/iio:deviceX/in_distance_calibheight
589 What: /sys/bus/iio/devices/iio:deviceX/in_velocity_calibheight
591 Contact: linux-iio@vger.kernel.org
593 Height of the user (in meters) used by some pedometers
594 to compute the stride length, distance, speed and activity
597 What: /sys/bus/iio/devices/iio:deviceX/in_energy_calibweight
599 Contact: linux-iio@vger.kernel.org
601 Weight of the user (in kg). It is needed by some pedometers
602 to compute the calories burnt by the user.
604 What: /sys/bus/iio/devices/iio:deviceX/in_accel_scale_available
605 What: /sys/.../iio:deviceX/in_anglvel_scale_available
606 What: /sys/.../iio:deviceX/in_magn_scale_available
607 What: /sys/.../iio:deviceX/in_illuminance_scale_available
608 What: /sys/.../iio:deviceX/in_intensity_scale_available
609 What: /sys/.../iio:deviceX/in_proximity_scale_available
610 What: /sys/.../iio:deviceX/in_voltageX_scale_available
611 What: /sys/.../iio:deviceX/in_voltage-voltage_scale_available
612 What: /sys/.../iio:deviceX/out_voltageX_scale_available
613 What: /sys/.../iio:deviceX/out_altvoltageX_scale_available
614 What: /sys/.../iio:deviceX/in_capacitance_scale_available
615 What: /sys/.../iio:deviceX/in_pressure_scale_available
616 What: /sys/.../iio:deviceX/in_pressureY_scale_available
617 KernelVersion: 2.6.35
618 Contact: linux-iio@vger.kernel.org
620 If a discrete set of scale values is available, they
621 are listed in this attribute.
623 What: /sys/bus/iio/devices/iio:deviceX/out_voltageY_hardwaregain
624 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain
625 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_red_hardwaregain
626 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_green_hardwaregain
627 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_blue_hardwaregain
628 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_clear_hardwaregain
629 KernelVersion: 2.6.35
630 Contact: linux-iio@vger.kernel.org
632 Hardware applied gain factor. If shared across all channels,
633 <type>_hardwaregain is used.
635 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_hardwaregain_available
637 Contact: linux-iio@vger.kernel.org
639 Lists all available hardware applied gain factors. Shared across all
642 What: /sys/.../in_accel_filter_low_pass_3db_frequency
643 What: /sys/.../in_magn_filter_low_pass_3db_frequency
644 What: /sys/.../in_anglvel_filter_low_pass_3db_frequency
646 Contact: linux-iio@vger.kernel.org
648 If a known or controllable low pass filter is applied
649 to the underlying data channel, then this parameter
650 gives the 3dB frequency of the filter in Hz.
652 What: /sys/.../in_accel_filter_high_pass_3db_frequency
653 What: /sys/.../in_anglvel_filter_high_pass_3db_frequency
654 What: /sys/.../in_magn_filter_high_pass_3db_frequency
656 Contact: linux-iio@vger.kernel.org
658 If a known or controllable high pass filter is applied
659 to the underlying data channel, then this parameter
660 gives the 3dB frequency of the filter in Hz.
662 What: /sys/bus/iio/devices/iio:deviceX/out_voltageY_raw
663 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_raw
664 KernelVersion: 2.6.37
665 Contact: linux-iio@vger.kernel.org
667 Raw (unscaled, no bias etc.) output voltage for
668 channel Y. The number must always be specified and
669 unique if the output corresponds to a single channel.
670 While DAC like devices typically use out_voltage,
671 a continuous frequency generating device, such as
672 a DDS or PLL should use out_altvoltage.
674 What: /sys/bus/iio/devices/iio:deviceX/out_voltageY&Z_raw
675 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY&Z_raw
676 KernelVersion: 2.6.37
677 Contact: linux-iio@vger.kernel.org
679 Raw (unscaled, no bias etc.) output voltage for an aggregate of
680 channel Y, channel Z, etc. This interface is available in cases
681 where a single output sets the value for multiple channels
684 What: /sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown_mode
685 What: /sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown_mode
686 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown_mode
687 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown_mode
688 KernelVersion: 2.6.38
689 Contact: linux-iio@vger.kernel.org
691 Specifies the output powerdown mode.
692 DAC output stage is disconnected from the amplifier and
693 1kohm_to_gnd: connected to ground via an 1kOhm resistor,
694 2.5kohm_to_gnd: connected to ground via a 2.5kOhm resistor,
695 6kohm_to_gnd: connected to ground via a 6kOhm resistor,
696 20kohm_to_gnd: connected to ground via a 20kOhm resistor,
697 90kohm_to_gnd: connected to ground via a 90kOhm resistor,
698 100kohm_to_gnd: connected to ground via an 100kOhm resistor,
699 125kohm_to_gnd: connected to ground via an 125kOhm resistor,
700 500kohm_to_gnd: connected to ground via a 500kOhm resistor,
701 640kohm_to_gnd: connected to ground via a 640kOhm resistor,
702 three_state: left floating.
703 For a list of available output power down options read
704 outX_powerdown_mode_available. If Y is not present the
705 mode is shared across all outputs.
707 What: /sys/.../iio:deviceX/out_voltageY_powerdown_mode_available
708 What: /sys/.../iio:deviceX/out_voltage_powerdown_mode_available
709 What: /sys/.../iio:deviceX/out_altvoltageY_powerdown_mode_available
710 What: /sys/.../iio:deviceX/out_altvoltage_powerdown_mode_available
711 KernelVersion: 2.6.38
712 Contact: linux-iio@vger.kernel.org
714 Lists all available output power down modes.
715 If Y is not present the mode is shared across all outputs.
717 What: /sys/bus/iio/devices/iio:deviceX/out_voltageY_powerdown
718 What: /sys/bus/iio/devices/iio:deviceX/out_voltage_powerdown
719 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_powerdown
720 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltage_powerdown
721 KernelVersion: 2.6.38
722 Contact: linux-iio@vger.kernel.org
724 Writing 1 causes output Y to enter the power down mode specified
725 by the corresponding outY_powerdown_mode. DAC output stage is
726 disconnected from the amplifier. Clearing returns to normal
727 operation. Y may be suppressed if all outputs are controlled
730 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_frequency
732 Contact: linux-iio@vger.kernel.org
734 Output frequency for channel Y in Hz. The number must always be
735 specified and unique if the output corresponds to a single
737 Some drivers have additional constraints:
738 ADF4371 has an integrated VCO with fundamendal output
739 frequency ranging from 4000000000 Hz 8000000000 Hz.
741 out_altvoltage0_frequency:
742 A divide by 1, 2, 4, 8, 16, 32 or circuit generates
743 frequencies from 62500000 Hz to 8000000000 Hz.
744 out_altvoltage1_frequency:
745 This channel duplicates the channel 0 frequency
746 out_altvoltage2_frequency:
747 A frequency doubler generates frequencies from
748 8000000000 Hz to 16000000000 Hz.
749 out_altvoltage3_frequency:
750 A frequency quadrupler generates frequencies from
751 16000000000 Hz to 32000000000 Hz.
753 Note: writes to one of the channels will affect the frequency of
754 all the other channels, since it involves changing the VCO
755 fundamental output frequency.
757 What: /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_phase
759 Contact: linux-iio@vger.kernel.org
761 Phase in radians of one frequency/clock output Y
762 (out_altvoltageY) relative to another frequency/clock output
763 (out_altvoltageZ) of the device X. The number must always be
764 specified and unique if the output corresponds to a single
767 What: /sys/bus/iio/devices/iio:deviceX/out_currentY_raw
770 Contact: Johan Hovold <jhovold@gmail.com>
772 Set/get output current for channel Y. Units after application
773 of scale and offset are milliamps.
774 For some devices current channels are used to specify
775 current supplied to elements used in taking a measurement
776 of a different type. E.g. LED currents.
778 What: /sys/bus/iio/devices/iio:deviceX/events
779 KernelVersion: 2.6.35
780 Contact: linux-iio@vger.kernel.org
782 Configuration of which hardware generated events are passed up
785 What: /sys/.../iio:deviceX/events/in_accel_x_thresh_rising_en
786 What: /sys/.../iio:deviceX/events/in_accel_x_thresh_falling_en
787 What: /sys/.../iio:deviceX/events/in_accel_y_thresh_rising_en
788 What: /sys/.../iio:deviceX/events/in_accel_y_thresh_falling_en
789 What: /sys/.../iio:deviceX/events/in_accel_z_thresh_rising_en
790 What: /sys/.../iio:deviceX/events/in_accel_z_thresh_falling_en
791 What: /sys/.../iio:deviceX/events/in_anglvel_x_thresh_rising_en
792 What: /sys/.../iio:deviceX/events/in_anglvel_x_thresh_falling_en
793 What: /sys/.../iio:deviceX/events/in_anglvel_y_thresh_rising_en
794 What: /sys/.../iio:deviceX/events/in_anglvel_y_thresh_falling_en
795 What: /sys/.../iio:deviceX/events/in_anglvel_z_thresh_rising_en
796 What: /sys/.../iio:deviceX/events/in_anglvel_z_thresh_falling_en
797 What: /sys/.../iio:deviceX/events/in_magn_x_thresh_rising_en
798 What: /sys/.../iio:deviceX/events/in_magn_x_thresh_falling_en
799 What: /sys/.../iio:deviceX/events/in_magn_y_thresh_rising_en
800 What: /sys/.../iio:deviceX/events/in_magn_y_thresh_falling_en
801 What: /sys/.../iio:deviceX/events/in_magn_z_thresh_rising_en
802 What: /sys/.../iio:deviceX/events/in_magn_z_thresh_falling_en
803 What: /sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_rising_en
804 What: /sys/.../iio:deviceX/events/in_rot_from_north_magnetic_thresh_falling_en
805 What: /sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_rising_en
806 What: /sys/.../iio:deviceX/events/in_rot_from_north_true_thresh_falling_en
807 What: /sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_en
808 What: /sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_en
809 What: /sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_rising_en
810 What: /sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_thresh_falling_en
811 What: /sys/.../iio:deviceX/events/in_voltageY_supply_thresh_rising_en
812 What: /sys/.../iio:deviceX/events/in_voltageY_supply_thresh_falling_en
813 What: /sys/.../iio:deviceX/events/in_voltageY_thresh_rising_en
814 What: /sys/.../iio:deviceX/events/in_voltageY_thresh_falling_en
815 What: /sys/.../iio:deviceX/events/in_voltageY_thresh_either_en
816 What: /sys/.../iio:deviceX/events/in_tempY_thresh_rising_en
817 What: /sys/.../iio:deviceX/events/in_tempY_thresh_falling_en
818 What: /sys/.../iio:deviceX/events/in_capacitanceY_thresh_rising_en
819 What: /sys/.../iio:deviceX/events/in_capacitanceY_thresh_falling_en
820 KernelVersion: 2.6.37
821 Contact: linux-iio@vger.kernel.org
823 Event generated when channel passes a threshold in the specified
824 (_rising|_falling) direction. If the direction is not specified,
825 then either the device will report an event which ever direction
826 a single threshold value is passed in (e.g.
827 <type>[Y][_name]_<raw|input>_thresh_value) or
828 <type>[Y][_name]_<raw|input>_thresh_rising_value and
829 <type>[Y][_name]_<raw|input>_thresh_falling_value may take
830 different values, but the device can only enable both thresholds
833 Note the driver will assume the last p events requested are
834 to be enabled where p is how many it supports (which may vary
835 depending on the exact set requested. So if you want to be
836 sure you have set what you think you have, check the contents of
837 these attributes after everything is configured. Drivers may
838 have to buffer any parameters so that they are consistent when
839 a given event type is enabled at a future point (and not those for
840 whatever event was previously enabled).
842 What: /sys/.../iio:deviceX/events/in_accel_x_roc_rising_en
843 What: /sys/.../iio:deviceX/events/in_accel_x_roc_falling_en
844 What: /sys/.../iio:deviceX/events/in_accel_y_roc_rising_en
845 What: /sys/.../iio:deviceX/events/in_accel_y_roc_falling_en
846 What: /sys/.../iio:deviceX/events/in_accel_z_roc_rising_en
847 What: /sys/.../iio:deviceX/events/in_accel_z_roc_falling_en
848 What: /sys/.../iio:deviceX/events/in_anglvel_x_roc_rising_en
849 What: /sys/.../iio:deviceX/events/in_anglvel_x_roc_falling_en
850 What: /sys/.../iio:deviceX/events/in_anglvel_y_roc_rising_en
851 What: /sys/.../iio:deviceX/events/in_anglvel_y_roc_falling_en
852 What: /sys/.../iio:deviceX/events/in_anglvel_z_roc_rising_en
853 What: /sys/.../iio:deviceX/events/in_anglvel_z_roc_falling_en
854 What: /sys/.../iio:deviceX/events/in_magn_x_roc_rising_en
855 What: /sys/.../iio:deviceX/events/in_magn_x_roc_falling_en
856 What: /sys/.../iio:deviceX/events/in_magn_y_roc_rising_en
857 What: /sys/.../iio:deviceX/events/in_magn_y_roc_falling_en
858 What: /sys/.../iio:deviceX/events/in_magn_z_roc_rising_en
859 What: /sys/.../iio:deviceX/events/in_magn_z_roc_falling_en
860 What: /sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_rising_en
861 What: /sys/.../iio:deviceX/events/in_rot_from_north_magnetic_roc_falling_en
862 What: /sys/.../iio:deviceX/events/in_rot_from_north_true_roc_rising_en
863 What: /sys/.../iio:deviceX/events/in_rot_from_north_true_roc_falling_en
864 What: /sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_rising_en
865 What: /sys/.../iio:deviceX/events/in_rot_from_north_magnetic_tilt_comp_roc_falling_en
866 What: /sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_rising_en
867 What: /sys/.../iio:deviceX/events/in_rot_from_north_true_tilt_comp_roc_falling_en
868 What: /sys/.../iio:deviceX/events/in_voltageY_supply_roc_rising_en
869 What: /sys/.../iio:deviceX/events/in_voltageY_supply_roc_falling_en
870 What: /sys/.../iio:deviceX/events/in_voltageY_roc_rising_en
871 What: /sys/.../iio:deviceX/events/in_voltageY_roc_falling_en
872 What: /sys/.../iio:deviceX/events/in_tempY_roc_rising_en
873 What: /sys/.../iio:deviceX/events/in_tempY_roc_falling_en
874 KernelVersion: 2.6.37
875 Contact: linux-iio@vger.kernel.org
877 Event generated when channel passes a threshold on the rate of
878 change (1st differential) in the specified (_rising|_falling)
879 direction. If the direction is not specified, then either the
880 device will report an event which ever direction a single
881 threshold value is passed in (e.g.
882 <type>[Y][_name]_<raw|input>_roc_value) or
883 <type>[Y][_name]_<raw|input>_roc_rising_value and
884 <type>[Y][_name]_<raw|input>_roc_falling_value may take
885 different values, but the device can only enable both rate of
886 change thresholds or neither.
888 Note the driver will assume the last p events requested are
889 to be enabled where p is however many it supports (which may
890 vary depending on the exact set requested. So if you want to be
891 sure you have set what you think you have, check the contents of
892 these attributes after everything is configured. Drivers may
893 have to buffer any parameters so that they are consistent when
894 a given event type is enabled a future point (and not those for
895 whatever event was previously enabled).
897 What: /sys/.../events/in_capacitanceY_adaptive_thresh_rising_en
898 What: /sys/.../events/in_capacitanceY_adaptive_thresh_falling_en
900 Contact: linux-iio@vger.kernel.org
902 Adaptive thresholds are similar to normal fixed thresholds
903 but the value is expressed as an offset from a value which
904 provides a low frequency approximation of the channel itself.
905 Thus these detect if a rapid change occurs in the specified
906 direction which crosses tracking value + offset.
907 Tracking value calculation is devices specific.
909 What: /sys/.../in_capacitanceY_adaptive_thresh_rising_timeout
910 What: /sys/.../in_capacitanceY_adaptive_thresh_falling_timeout
912 Contact: linux-iio@vger.kernel.org
914 When adaptive thresholds are used, the tracking signal
915 may adjust too slowly to step changes in the raw signal.
916 Thus these specify the time in seconds for which the
917 difference between the slow tracking signal and the raw
918 signal is allowed to remain out-of-range before a reset
919 event occurs in which the tracking signal is made equal
920 to the raw signal, allowing slow tracking to resume and the
921 adaptive threshold event detection to function as expected.
923 What: /sys/.../events/in_accel_thresh_rising_value
924 What: /sys/.../events/in_accel_thresh_falling_value
925 What: /sys/.../events/in_accel_x_raw_thresh_rising_value
926 What: /sys/.../events/in_accel_x_raw_thresh_falling_value
927 What: /sys/.../events/in_accel_y_raw_thresh_rising_value
928 What: /sys/.../events/in_accel_y_raw_thresh_falling_value
929 What: /sys/.../events/in_accel_z_raw_thresh_rising_value
930 What: /sys/.../events/in_accel_z_raw_thresh_falling_value
931 What: /sys/.../events/in_anglvel_x_raw_thresh_rising_value
932 What: /sys/.../events/in_anglvel_x_raw_thresh_falling_value
933 What: /sys/.../events/in_anglvel_y_raw_thresh_rising_value
934 What: /sys/.../events/in_anglvel_y_raw_thresh_falling_value
935 What: /sys/.../events/in_anglvel_z_raw_thresh_rising_value
936 What: /sys/.../events/in_anglvel_z_raw_thresh_falling_value
937 What: /sys/.../events/in_magn_x_raw_thresh_rising_value
938 What: /sys/.../events/in_magn_x_raw_thresh_falling_value
939 What: /sys/.../events/in_magn_y_raw_thresh_rising_value
940 What: /sys/.../events/in_magn_y_raw_thresh_falling_value
941 What: /sys/.../events/in_magn_z_raw_thresh_rising_value
942 What: /sys/.../events/in_magn_z_raw_thresh_falling_value
943 What: /sys/.../events/in_rot_from_north_magnetic_raw_thresh_rising_value
944 What: /sys/.../events/in_rot_from_north_magnetic_raw_thresh_falling_value
945 What: /sys/.../events/in_rot_from_north_true_raw_thresh_rising_value
946 What: /sys/.../events/in_rot_from_north_true_raw_thresh_falling_value
947 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_rising_value
948 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_thresh_falling_value
949 What: /sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_rising_value
950 What: /sys/.../events/in_rot_from_north_true_tilt_comp_raw_thresh_falling_value
951 What: /sys/.../events/in_voltageY_supply_raw_thresh_rising_value
952 What: /sys/.../events/in_voltageY_supply_raw_thresh_falling_value
953 What: /sys/.../events/in_voltageY_raw_thresh_rising_value
954 What: /sys/.../events/in_voltageY_raw_thresh_falling_value
955 What: /sys/.../events/in_tempY_raw_thresh_rising_value
956 What: /sys/.../events/in_tempY_raw_thresh_falling_value
957 What: /sys/.../events/in_illuminance0_thresh_falling_value
958 What: /sys/.../events/in_illuminance0_thresh_rising_value
959 What: /sys/.../events/in_proximity0_thresh_falling_value
960 What: /sys/.../events/in_proximity0_thresh_rising_value
961 What: /sys/.../events/in_illuminance_thresh_rising_value
962 What: /sys/.../events/in_illuminance_thresh_falling_value
963 What: /sys/.../events/in_capacitanceY_thresh_rising_value
964 What: /sys/.../events/in_capacitanceY_thresh_falling_value
965 What: /sys/.../events/in_capacitanceY_thresh_adaptive_rising_value
966 What: /sys/.../events/in_capacitanceY_thresh_falling_rising_value
967 KernelVersion: 2.6.37
968 Contact: linux-iio@vger.kernel.org
970 Specifies the value of threshold that the device is comparing
971 against for the events enabled by
972 <type>Y[_name]_thresh[_rising|falling]_en.
974 If separate attributes exist for the two directions, but
975 direction is not specified for this attribute, then a single
976 threshold value applies to both directions.
978 The raw or input element of the name indicates whether the
979 value is in raw device units or in processed units (as _raw
980 and _input do on sysfs direct channel read attributes).
982 What: /sys/.../events/in_accel_scale
983 What: /sys/.../events/in_accel_peak_scale
984 What: /sys/.../events/in_anglvel_scale
985 What: /sys/.../events/in_magn_scale
986 What: /sys/.../events/in_rot_from_north_magnetic_scale
987 What: /sys/.../events/in_rot_from_north_true_scale
988 What: /sys/.../events/in_voltage_scale
989 What: /sys/.../events/in_voltage_supply_scale
990 What: /sys/.../events/in_temp_scale
991 What: /sys/.../events/in_illuminance_scale
992 What: /sys/.../events/in_proximity_scale
994 Contact: linux-iio@vger.kernel.org
996 Specifies the conversion factor from the standard units
997 to device specific units used to set the event trigger
1000 What: /sys/.../events/in_accel_x_thresh_rising_hysteresis
1001 What: /sys/.../events/in_accel_x_thresh_falling_hysteresis
1002 What: /sys/.../events/in_accel_x_thresh_either_hysteresis
1003 What: /sys/.../events/in_accel_y_thresh_rising_hysteresis
1004 What: /sys/.../events/in_accel_y_thresh_falling_hysteresis
1005 What: /sys/.../events/in_accel_y_thresh_either_hysteresis
1006 What: /sys/.../events/in_accel_z_thresh_rising_hysteresis
1007 What: /sys/.../events/in_accel_z_thresh_falling_hysteresis
1008 What: /sys/.../events/in_accel_z_thresh_either_hysteresis
1009 What: /sys/.../events/in_anglvel_x_thresh_rising_hysteresis
1010 What: /sys/.../events/in_anglvel_x_thresh_falling_hysteresis
1011 What: /sys/.../events/in_anglvel_x_thresh_either_hysteresis
1012 What: /sys/.../events/in_anglvel_y_thresh_rising_hysteresis
1013 What: /sys/.../events/in_anglvel_y_thresh_falling_hysteresis
1014 What: /sys/.../events/in_anglvel_y_thresh_either_hysteresis
1015 What: /sys/.../events/in_anglvel_z_thresh_rising_hysteresis
1016 What: /sys/.../events/in_anglvel_z_thresh_falling_hysteresis
1017 What: /sys/.../events/in_anglvel_z_thresh_either_hysteresis
1018 What: /sys/.../events/in_magn_x_thresh_rising_hysteresis
1019 What: /sys/.../events/in_magn_x_thresh_falling_hysteresis
1020 What: /sys/.../events/in_magn_x_thresh_either_hysteresis
1021 What: /sys/.../events/in_magn_y_thresh_rising_hysteresis
1022 What: /sys/.../events/in_magn_y_thresh_falling_hysteresis
1023 What: /sys/.../events/in_magn_y_thresh_either_hysteresis
1024 What: /sys/.../events/in_magn_z_thresh_rising_hysteresis
1025 What: /sys/.../events/in_magn_z_thresh_falling_hysteresis
1026 What: /sys/.../events/in_magn_z_thresh_either_hysteresis
1027 What: /sys/.../events/in_rot_from_north_magnetic_thresh_rising_hysteresis
1028 What: /sys/.../events/in_rot_from_north_magnetic_thresh_falling_hysteresis
1029 What: /sys/.../events/in_rot_from_north_magnetic_thresh_either_hysteresis
1030 What: /sys/.../events/in_rot_from_north_true_thresh_rising_hysteresis
1031 What: /sys/.../events/in_rot_from_north_true_thresh_falling_hysteresis
1032 What: /sys/.../events/in_rot_from_north_true_thresh_either_hysteresis
1033 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_hysteresis
1034 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_hysteresis
1035 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_either_hysteresis
1036 What: /sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_hysteresis
1037 What: /sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_hysteresis
1038 What: /sys/.../events/in_rot_from_north_true_tilt_comp_thresh_either_hysteresis
1039 What: /sys/.../events/in_voltageY_thresh_rising_hysteresis
1040 What: /sys/.../events/in_voltageY_thresh_falling_hysteresis
1041 What: /sys/.../events/in_voltageY_thresh_either_hysteresis
1042 What: /sys/.../events/in_tempY_thresh_rising_hysteresis
1043 What: /sys/.../events/in_tempY_thresh_falling_hysteresis
1044 What: /sys/.../events/in_tempY_thresh_either_hysteresis
1045 What: /sys/.../events/in_illuminance0_thresh_falling_hysteresis
1046 What: /sys/.../events/in_illuminance0_thresh_rising_hysteresis
1047 What: /sys/.../events/in_illuminance0_thresh_either_hysteresis
1048 What: /sys/.../events/in_proximity0_thresh_falling_hysteresis
1049 What: /sys/.../events/in_proximity0_thresh_rising_hysteresis
1050 What: /sys/.../events/in_proximity0_thresh_either_hysteresis
1052 Contact: linux-iio@vger.kernel.org
1054 Specifies the hysteresis of threshold that the device is comparing
1055 against for the events enabled by
1056 <type>Y[_name]_thresh[_(rising|falling)]_hysteresis.
1057 If separate attributes exist for the two directions, but
1058 direction is not specified for this attribute, then a single
1059 hysteresis value applies to both directions.
1061 For falling events the hysteresis is added to the _value attribute for
1062 this event to get the upper threshold for when the event goes back to
1063 normal, for rising events the hysteresis is subtracted from the _value
1064 attribute. E.g. if in_voltage0_raw_thresh_rising_value is set to 1200
1065 and in_voltage0_raw_thresh_rising_hysteresis is set to 50. The event
1066 will get activated once in_voltage0_raw goes above 1200 and will become
1067 deactivated again once the value falls below 1150.
1069 What: /sys/.../events/in_accel_x_raw_roc_rising_value
1070 What: /sys/.../events/in_accel_x_raw_roc_falling_value
1071 What: /sys/.../events/in_accel_y_raw_roc_rising_value
1072 What: /sys/.../events/in_accel_y_raw_roc_falling_value
1073 What: /sys/.../events/in_accel_z_raw_roc_rising_value
1074 What: /sys/.../events/in_accel_z_raw_roc_falling_value
1075 What: /sys/.../events/in_anglvel_x_raw_roc_rising_value
1076 What: /sys/.../events/in_anglvel_x_raw_roc_falling_value
1077 What: /sys/.../events/in_anglvel_y_raw_roc_rising_value
1078 What: /sys/.../events/in_anglvel_y_raw_roc_falling_value
1079 What: /sys/.../events/in_anglvel_z_raw_roc_rising_value
1080 What: /sys/.../events/in_anglvel_z_raw_roc_falling_value
1081 What: /sys/.../events/in_magn_x_raw_roc_rising_value
1082 What: /sys/.../events/in_magn_x_raw_roc_falling_value
1083 What: /sys/.../events/in_magn_y_raw_roc_rising_value
1084 What: /sys/.../events/in_magn_y_raw_roc_falling_value
1085 What: /sys/.../events/in_magn_z_raw_roc_rising_value
1086 What: /sys/.../events/in_magn_z_raw_roc_falling_value
1087 What: /sys/.../events/in_rot_from_north_magnetic_raw_roc_rising_value
1088 What: /sys/.../events/in_rot_from_north_magnetic_raw_roc_falling_value
1089 What: /sys/.../events/in_rot_from_north_true_raw_roc_rising_value
1090 What: /sys/.../events/in_rot_from_north_true_raw_roc_falling_value
1091 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_rising_value
1092 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_raw_roc_falling_value
1093 What: /sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_rising_value
1094 What: /sys/.../events/in_rot_from_north_true_tilt_comp_raw_roc_falling_value
1095 What: /sys/.../events/in_voltageY_supply_raw_roc_rising_value
1096 What: /sys/.../events/in_voltageY_supply_raw_roc_falling_value
1097 What: /sys/.../events/in_voltageY_raw_roc_rising_value
1098 What: /sys/.../events/in_voltageY_raw_roc_falling_value
1099 What: /sys/.../events/in_tempY_raw_roc_rising_value
1100 What: /sys/.../events/in_tempY_raw_roc_falling_value
1101 KernelVersion: 2.6.37
1102 Contact: linux-iio@vger.kernel.org
1104 Specifies the value of rate of change threshold that the
1105 device is comparing against for the events enabled by
1106 <type>[Y][_name]_roc[_rising|falling]_en.
1108 If separate attributes exist for the two directions,
1109 but direction is not specified for this attribute,
1110 then a single threshold value applies to both directions.
1111 The raw or input element of the name indicates whether the
1112 value is in raw device units or in processed units (as _raw
1113 and _input do on sysfs direct channel read attributes).
1115 What: /sys/.../events/in_accel_x_thresh_rising_period
1116 What: /sys/.../events/in_accel_x_thresh_falling_period
1117 What: /sys/.../events/in_accel_x_roc_rising_period
1118 What: /sys/.../events/in_accel_x_roc_falling_period
1119 What: /sys/.../events/in_accel_y_thresh_rising_period
1120 What: /sys/.../events/in_accel_y_thresh_falling_period
1121 What: /sys/.../events/in_accel_y_roc_rising_period
1122 What: /sys/.../events/in_accel_y_roc_falling_period
1123 What: /sys/.../events/in_accel_z_thresh_rising_period
1124 What: /sys/.../events/in_accel_z_thresh_falling_period
1125 What: /sys/.../events/in_accel_z_roc_rising_period
1126 What: /sys/.../events/in_accel_z_roc_falling_period
1127 What: /sys/.../events/in_anglvel_x_thresh_rising_period
1128 What: /sys/.../events/in_anglvel_x_thresh_falling_period
1129 What: /sys/.../events/in_anglvel_x_roc_rising_period
1130 What: /sys/.../events/in_anglvel_x_roc_falling_period
1131 What: /sys/.../events/in_anglvel_y_thresh_rising_period
1132 What: /sys/.../events/in_anglvel_y_thresh_falling_period
1133 What: /sys/.../events/in_anglvel_y_roc_rising_period
1134 What: /sys/.../events/in_anglvel_y_roc_falling_period
1135 What: /sys/.../events/in_anglvel_z_thresh_rising_period
1136 What: /sys/.../events/in_anglvel_z_thresh_falling_period
1137 What: /sys/.../events/in_anglvel_z_roc_rising_period
1138 What: /sys/.../events/in_anglvel_z_roc_falling_period
1139 What: /sys/.../events/in_magn_x_thresh_rising_period
1140 What: /sys/.../events/in_magn_x_thresh_falling_period
1141 What: /sys/.../events/in_magn_x_roc_rising_period
1142 What: /sys/.../events/in_magn_x_roc_falling_period
1143 What: /sys/.../events/in_magn_y_thresh_rising_period
1144 What: /sys/.../events/in_magn_y_thresh_falling_period
1145 What: /sys/.../events/in_magn_y_roc_rising_period
1146 What: /sys/.../events/in_magn_y_roc_falling_period
1147 What: /sys/.../events/in_magn_z_thresh_rising_period
1148 What: /sys/.../events/in_magn_z_thresh_falling_period
1149 What: /sys/.../events/in_magn_z_roc_rising_period
1150 What: /sys/.../events/in_magn_z_roc_falling_period
1151 What: /sys/.../events/in_rot_from_north_magnetic_thresh_rising_period
1152 What: /sys/.../events/in_rot_from_north_magnetic_thresh_falling_period
1153 What: /sys/.../events/in_rot_from_north_magnetic_roc_rising_period
1154 What: /sys/.../events/in_rot_from_north_magnetic_roc_falling_period
1155 What: /sys/.../events/in_rot_from_north_true_thresh_rising_period
1156 What: /sys/.../events/in_rot_from_north_true_thresh_falling_period
1157 What: /sys/.../events/in_rot_from_north_true_roc_rising_period
1158 What: /sys/.../events/in_rot_from_north_true_roc_falling_period
1159 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_rising_period
1160 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_thresh_falling_period
1161 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_rising_period
1162 What: /sys/.../events/in_rot_from_north_magnetic_tilt_comp_roc_falling_period
1163 What: /sys/.../events/in_rot_from_north_true_tilt_comp_thresh_rising_period
1164 What: /sys/.../events/in_rot_from_north_true_tilt_comp_thresh_falling_period
1165 What: /sys/.../events/in_rot_from_north_true_tilt_comp_roc_rising_period
1166 What: /sys/.../events/in_rot_from_north_true_tilt_comp_roc_falling_period
1167 What: /sys/.../events/in_voltageY_supply_thresh_rising_period
1168 What: /sys/.../events/in_voltageY_supply_thresh_falling_period
1169 What: /sys/.../events/in_voltageY_supply_roc_rising_period
1170 What: /sys/.../events/in_voltageY_supply_roc_falling_period
1171 What: /sys/.../events/in_voltageY_thresh_rising_period
1172 What: /sys/.../events/in_voltageY_thresh_falling_period
1173 What: /sys/.../events/in_voltageY_roc_rising_period
1174 What: /sys/.../events/in_voltageY_roc_falling_period
1175 What: /sys/.../events/in_tempY_thresh_rising_period
1176 What: /sys/.../events/in_tempY_thresh_falling_period
1177 What: /sys/.../events/in_tempY_roc_rising_period
1178 What: /sys/.../events/in_tempY_roc_falling_period
1179 What: /sys/.../events/in_accel_x&y&z_mag_falling_period
1180 What: /sys/.../events/in_intensity0_thresh_period
1181 What: /sys/.../events/in_proximity0_thresh_period
1182 What: /sys/.../events/in_activity_still_thresh_rising_period
1183 What: /sys/.../events/in_activity_still_thresh_falling_period
1184 What: /sys/.../events/in_activity_walking_thresh_rising_period
1185 What: /sys/.../events/in_activity_walking_thresh_falling_period
1186 What: /sys/.../events/in_activity_jogging_thresh_rising_period
1187 What: /sys/.../events/in_activity_jogging_thresh_falling_period
1188 What: /sys/.../events/in_activity_running_thresh_rising_period
1189 What: /sys/.../events/in_activity_running_thresh_falling_period
1190 What: /sys/.../events/in_illuminance_thresh_either_period
1191 KernelVersion: 2.6.37
1192 Contact: linux-iio@vger.kernel.org
1194 Period of time (in seconds) for which the condition must be
1195 met before an event is generated. If direction is not
1196 specified then this period applies to both directions.
1198 What: /sys/.../events/in_accel_thresh_rising_low_pass_filter_3db
1199 What: /sys/.../events/in_anglvel_thresh_rising_low_pass_filter_3db
1200 What: /sys/.../events/in_magn_thresh_rising_low_pass_filter_3db
1202 Contact: linux-iio@vger.kernel.org
1204 If a low pass filter can be applied to the event generation
1205 this property gives its 3db frequency in Hz.
1206 A value of zero disables the filter.
1208 What: /sys/.../events/in_accel_thresh_rising_high_pass_filter_3db
1209 What: /sys/.../events/in_anglvel_thresh_rising_high_pass_filter_3db
1210 What: /sys/.../events/in_magn_thresh_rising_high_pass_filter_3db
1212 Contact: linux-iio@vger.kernel.org
1214 If a high pass filter can be applied to the event generation
1215 this property gives its 3db frequency in Hz.
1216 A value of zero disables the filter.
1218 What: /sys/.../events/in_activity_still_thresh_rising_en
1219 What: /sys/.../events/in_activity_still_thresh_falling_en
1220 What: /sys/.../events/in_activity_walking_thresh_rising_en
1221 What: /sys/.../events/in_activity_walking_thresh_falling_en
1222 What: /sys/.../events/in_activity_jogging_thresh_rising_en
1223 What: /sys/.../events/in_activity_jogging_thresh_falling_en
1224 What: /sys/.../events/in_activity_running_thresh_rising_en
1225 What: /sys/.../events/in_activity_running_thresh_falling_en
1227 Contact: linux-iio@vger.kernel.org
1229 Enables or disables activity events. Depending on direction
1230 an event is generated when sensor ENTERS or LEAVES a given state.
1232 What: /sys/.../events/in_activity_still_thresh_rising_value
1233 What: /sys/.../events/in_activity_still_thresh_falling_value
1234 What: /sys/.../events/in_activity_walking_thresh_rising_value
1235 What: /sys/.../events/in_activity_walking_thresh_falling_value
1236 What: /sys/.../events/in_activity_jogging_thresh_rising_value
1237 What: /sys/.../events/in_activity_jogging_thresh_falling_value
1238 What: /sys/.../events/in_activity_running_thresh_rising_value
1239 What: /sys/.../events/in_activity_running_thresh_falling_value
1241 Contact: linux-iio@vger.kernel.org
1243 Confidence value (in units as percentage) to be used
1244 for deciding when an event should be generated. E.g for
1245 running: If the confidence value reported by the sensor
1246 is greater than in_activity_running_thresh_rising_value
1247 then the sensor ENTERS running state. Conversely, if the
1248 confidence value reported by the sensor is lower than
1249 in_activity_running_thresh_falling_value then the sensor
1250 is LEAVING running state.
1252 What: /sys/.../iio:deviceX/events/in_accel_mag_en
1253 What: /sys/.../iio:deviceX/events/in_accel_mag_rising_en
1254 What: /sys/.../iio:deviceX/events/in_accel_mag_falling_en
1255 What: /sys/.../iio:deviceX/events/in_accel_x_mag_en
1256 What: /sys/.../iio:deviceX/events/in_accel_x_mag_rising_en
1257 What: /sys/.../iio:deviceX/events/in_accel_x_mag_falling_en
1258 What: /sys/.../iio:deviceX/events/in_accel_y_mag_en
1259 What: /sys/.../iio:deviceX/events/in_accel_y_mag_rising_en
1260 What: /sys/.../iio:deviceX/events/in_accel_y_mag_falling_en
1261 What: /sys/.../iio:deviceX/events/in_accel_z_mag_en
1262 What: /sys/.../iio:deviceX/events/in_accel_z_mag_rising_en
1263 What: /sys/.../iio:deviceX/events/in_accel_z_mag_falling_en
1264 What: /sys/.../iio:deviceX/events/in_accel_x&y&z_mag_rising_en
1265 What: /sys/.../iio:deviceX/events/in_accel_x&y&z_mag_falling_en
1266 KernelVersion: 2.6.37
1267 Contact: linux-iio@vger.kernel.org
1269 Similar to in_accel_x_thresh[_rising|_falling]_en, but here the
1270 magnitude of the channel is compared to the threshold, not its
1273 What: /sys/.../events/in_accel_raw_mag_value
1274 What: /sys/.../events/in_accel_x_raw_mag_rising_value
1275 What: /sys/.../events/in_accel_y_raw_mag_rising_value
1276 What: /sys/.../events/in_accel_z_raw_mag_rising_value
1277 KernelVersion: 2.6.37
1278 Contact: linux-iio@vger.kernel.org
1280 The value to which the magnitude of the channel is compared. If
1281 number or direction is not specified, applies to all channels of
1284 What: /sys/.../iio:deviceX/events/in_accel_mag_referenced_en
1285 What: /sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_en
1286 What: /sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_en
1287 What: /sys/.../iio:deviceX/events/in_accel_y_mag_referenced_en
1288 What: /sys/.../iio:deviceX/events/in_accel_y_mag_referenced_rising_en
1289 What: /sys/.../iio:deviceX/events/in_accel_y_mag_referenced_falling_en
1291 Contact: linux-iio@vger.kernel.org
1293 Similar to in_accel_mag[_y][_rising|_falling]_en, but the event
1294 value is relative to a reference magnitude. The reference magnitude
1295 includes the graviational acceleration.
1297 What: /sys/.../iio:deviceX/events/in_accel_mag_referenced_value
1298 What: /sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_value
1299 What: /sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_value
1300 What: /sys/.../iio:deviceX/events/in_accel_y_mag_referenced_value
1301 What: /sys/.../iio:deviceX/events/in_accel_y_mag_referenced_rising_value
1302 What: /sys/.../iio:deviceX/events/in_accel_y_mag_referenced_falling_value
1304 Contact: linux-iio@vger.kernel.org
1306 The value to which the reference magnitude of the channel is
1307 compared. If the axis is not specified, it applies to all channels
1310 What: /sys/.../events/in_steps_change_en
1312 Contact: linux-iio@vger.kernel.org
1314 Event generated when channel passes a threshold on the absolute
1315 change in value. E.g. for steps: a step change event is
1316 generated each time the user takes N steps, where N is set using
1317 in_steps_change_value.
1319 What: /sys/.../events/in_steps_change_value
1321 Contact: linux-iio@vger.kernel.org
1323 Specifies the value of change threshold that the
1324 device is comparing against for the events enabled by
1325 <type>[Y][_name]_roc[_rising|falling|]_en. E.g. for steps:
1326 if set to 3, a step change event will be generated every 3
1329 What: /sys/bus/iio/devices/iio:deviceX/trigger/current_trigger
1330 KernelVersion: 2.6.35
1331 Contact: linux-iio@vger.kernel.org
1333 The name of the trigger source being used, as per string given
1334 in /sys/class/iio/triggerY/name.
1336 What: /sys/bus/iio/devices/iio:deviceX/bufferY/length
1338 Contact: linux-iio@vger.kernel.org
1340 Number of scans contained by the buffer.
1342 What: /sys/bus/iio/devices/iio:deviceX/bufferY/enable
1344 Contact: linux-iio@vger.kernel.org
1346 Actually start the buffer capture up. Will start trigger
1347 if first device and appropriate.
1349 Note that it might be impossible to configure other attributes,
1350 (e.g.: events, scale, sampling rate) if they impact the currently
1351 active buffer capture session.
1353 What: /sys/bus/iio/devices/iio:deviceX/bufferY
1355 Contact: linux-iio@vger.kernel.org
1357 Directory containing interfaces for elements that will be
1358 captured for a single triggered sample set in the buffer.
1360 Since kernel 5.11 the scan_elements attributes are merged into
1361 the bufferY directory, to be configurable per buffer.
1363 What: /sys/.../iio:deviceX/bufferY/in_accel_x_en
1364 What: /sys/.../iio:deviceX/bufferY/in_accel_y_en
1365 What: /sys/.../iio:deviceX/bufferY/in_accel_z_en
1366 What: /sys/.../iio:deviceX/bufferY/in_deltaangl_x_en
1367 What: /sys/.../iio:deviceX/bufferY/in_deltaangl_y_en
1368 What: /sys/.../iio:deviceX/bufferY/in_deltaangl_z_en
1369 What: /sys/.../iio:deviceX/bufferY/in_deltavelocity_x_en
1370 What: /sys/.../iio:deviceX/bufferY/in_deltavelocity_y_en
1371 What: /sys/.../iio:deviceX/bufferY/in_deltavelocity_z_en
1372 What: /sys/.../iio:deviceX/bufferY/in_anglvel_x_en
1373 What: /sys/.../iio:deviceX/bufferY/in_anglvel_y_en
1374 What: /sys/.../iio:deviceX/bufferY/in_anglvel_z_en
1375 What: /sys/.../iio:deviceX/bufferY/in_magn_x_en
1376 What: /sys/.../iio:deviceX/bufferY/in_magn_y_en
1377 What: /sys/.../iio:deviceX/bufferY/in_magn_z_en
1378 What: /sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_en
1379 What: /sys/.../iio:deviceX/bufferY/in_rot_from_north_true_en
1380 What: /sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_tilt_comp_en
1381 What: /sys/.../iio:deviceX/bufferY/in_rot_from_north_true_tilt_comp_en
1382 What: /sys/.../iio:deviceX/bufferY/in_timestamp_en
1383 What: /sys/.../iio:deviceX/bufferY/in_voltageY_supply_en
1384 What: /sys/.../iio:deviceX/bufferY/in_voltageY_en
1385 What: /sys/.../iio:deviceX/bufferY/in_voltageY-voltageZ_en
1386 What: /sys/.../iio:deviceX/bufferY/in_voltageY_i_en
1387 What: /sys/.../iio:deviceX/bufferY/in_voltageY_q_en
1388 What: /sys/.../iio:deviceX/bufferY/in_voltage_i_en
1389 What: /sys/.../iio:deviceX/bufferY/in_voltage_q_en
1390 What: /sys/.../iio:deviceX/bufferY/in_incli_x_en
1391 What: /sys/.../iio:deviceX/bufferY/in_incli_y_en
1392 What: /sys/.../iio:deviceX/bufferY/in_pressureY_en
1393 What: /sys/.../iio:deviceX/bufferY/in_pressure_en
1394 What: /sys/.../iio:deviceX/bufferY/in_rot_quaternion_en
1395 What: /sys/.../iio:deviceX/bufferY/in_proximity_en
1397 Contact: linux-iio@vger.kernel.org
1399 Scan element control for triggered data capture.
1401 What: /sys/.../iio:deviceX/bufferY/in_accel_type
1402 What: /sys/.../iio:deviceX/bufferY/in_deltaangl_type
1403 What: /sys/.../iio:deviceX/bufferY/in_deltavelocity_type
1404 What: /sys/.../iio:deviceX/bufferY/in_anglvel_type
1405 What: /sys/.../iio:deviceX/bufferY/in_magn_type
1406 What: /sys/.../iio:deviceX/bufferY/in_incli_type
1407 What: /sys/.../iio:deviceX/bufferY/in_voltageY_type
1408 What: /sys/.../iio:deviceX/bufferY/in_voltage_type
1409 What: /sys/.../iio:deviceX/bufferY/in_voltageY_supply_type
1410 What: /sys/.../iio:deviceX/bufferY/in_voltageY_i_type
1411 What: /sys/.../iio:deviceX/bufferY/in_voltageY_q_type
1412 What: /sys/.../iio:deviceX/bufferY/in_voltage_i_type
1413 What: /sys/.../iio:deviceX/bufferY/in_voltage_q_type
1414 What: /sys/.../iio:deviceX/bufferY/in_timestamp_type
1415 What: /sys/.../iio:deviceX/bufferY/in_pressureY_type
1416 What: /sys/.../iio:deviceX/bufferY/in_pressure_type
1417 What: /sys/.../iio:deviceX/bufferY/in_rot_quaternion_type
1418 What: /sys/.../iio:deviceX/bufferY/in_proximity_type
1420 Contact: linux-iio@vger.kernel.org
1422 Description of the scan element data storage within the buffer
1423 and hence the form in which it is read from user-space.
1424 Form is [be|le]:[s|u]bits/storagebits[>>shift].
1425 be or le specifies big or little endian. s or u specifies if
1426 signed (2's complement) or unsigned. bits is the number of bits
1427 of data and storagebits is the space (after padding) that it
1428 occupies in the buffer. shift if specified, is the shift that
1429 needs to be applied prior to masking out unused bits. Some
1430 devices put their data in the middle of the transferred elements
1431 with additional information on both sides. Note that some
1432 devices will have additional information in the unused bits
1433 so to get a clean value, the bits value must be used to mask
1434 the buffer output value appropriately. The storagebits value
1435 also specifies the data alignment. So s48/64>>2 will be a
1436 signed 48 bit integer stored in a 64 bit location aligned to
1437 a 64 bit boundary. To obtain the clean value, shift right 2
1438 and apply a mask to zero the top 16 bits of the result.
1439 For other storage combinations this attribute will be extended
1442 What: /sys/.../iio:deviceX/scan_elements/in_accel_type_available
1443 KernelVersion: 2.6.37
1444 Contact: linux-iio@vger.kernel.org
1446 If the type parameter can take one of a small set of values,
1447 this attribute lists them.
1449 What: /sys/.../iio:deviceX/bufferY/in_voltageY_index
1450 What: /sys/.../iio:deviceX/bufferY/in_voltageY_supply_index
1451 What: /sys/.../iio:deviceX/bufferY/in_voltageY_i_index
1452 What: /sys/.../iio:deviceX/bufferY/in_voltageY_q_index
1453 What: /sys/.../iio:deviceX/bufferY/in_voltage_i_index
1454 What: /sys/.../iio:deviceX/bufferY/in_voltage_q_index
1455 What: /sys/.../iio:deviceX/bufferY/in_accel_x_index
1456 What: /sys/.../iio:deviceX/bufferY/in_accel_y_index
1457 What: /sys/.../iio:deviceX/bufferY/in_accel_z_index
1458 What: /sys/.../iio:deviceX/bufferY/in_deltaangl_x_index
1459 What: /sys/.../iio:deviceX/bufferY/in_deltaangl_y_index
1460 What: /sys/.../iio:deviceX/bufferY/in_deltaangl_z_index
1461 What: /sys/.../iio:deviceX/bufferY/in_deltavelocity_x_index
1462 What: /sys/.../iio:deviceX/bufferY/in_deltavelocity_y_index
1463 What: /sys/.../iio:deviceX/bufferY/in_deltavelocity_z_index
1464 What: /sys/.../iio:deviceX/bufferY/in_anglvel_x_index
1465 What: /sys/.../iio:deviceX/bufferY/in_anglvel_y_index
1466 What: /sys/.../iio:deviceX/bufferY/in_anglvel_z_index
1467 What: /sys/.../iio:deviceX/bufferY/in_magn_x_index
1468 What: /sys/.../iio:deviceX/bufferY/in_magn_y_index
1469 What: /sys/.../iio:deviceX/bufferY/in_magn_z_index
1470 What: /sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_index
1471 What: /sys/.../iio:deviceX/bufferY/in_rot_from_north_true_index
1472 What: /sys/.../iio:deviceX/bufferY/in_rot_from_north_magnetic_tilt_comp_index
1473 What: /sys/.../iio:deviceX/bufferY/in_rot_from_north_true_tilt_comp_index
1474 What: /sys/.../iio:deviceX/bufferY/in_incli_x_index
1475 What: /sys/.../iio:deviceX/bufferY/in_incli_y_index
1476 What: /sys/.../iio:deviceX/bufferY/in_timestamp_index
1477 What: /sys/.../iio:deviceX/bufferY/in_pressureY_index
1478 What: /sys/.../iio:deviceX/bufferY/in_pressure_index
1479 What: /sys/.../iio:deviceX/bufferY/in_rot_quaternion_index
1480 What: /sys/.../iio:deviceX/bufferY/in_proximity_index
1482 Contact: linux-iio@vger.kernel.org
1484 A single positive integer specifying the position of this
1485 scan element in the buffer. Note these are not dependent on
1486 what is enabled and may not be contiguous. Thus for user-space
1487 to establish the full layout these must be used in conjunction
1488 with all _en attributes to establish which channels are present,
1489 and the relevant _type attributes to establish the data storage
1492 What: /sys/.../iio:deviceX/in_activity_still_input
1493 What: /sys/.../iio:deviceX/in_activity_walking_input
1494 What: /sys/.../iio:deviceX/in_activity_jogging_input
1495 What: /sys/.../iio:deviceX/in_activity_running_input
1497 Contact: linux-iio@vger.kernel.org
1499 This attribute is used to read the confidence for an activity
1500 expressed in units as percentage.
1502 What: /sys/.../iio:deviceX/in_anglvel_z_quadrature_correction_raw
1503 KernelVersion: 2.6.38
1504 Contact: linux-iio@vger.kernel.org
1506 This attribute is used to read the amount of quadrature error
1507 present in the device at a given time.
1509 What: /sys/.../iio:deviceX/in_accelX_power_mode
1511 Contact: linux-iio@vger.kernel.org
1513 Specifies the chip power mode.
1514 low_noise: reduce noise level from ADC,
1515 low_power: enable low current consumption.
1516 For a list of available output power modes read
1517 in_accel_power_mode_available.
1519 What: /sys/.../iio:deviceX/in_energy_input
1520 What: /sys/.../iio:deviceX/in_energy_raw
1522 Contact: linux-iio@vger.kernel.org
1524 This attribute is used to read the energy value reported by the
1525 device (e.g.: human activity sensors report energy burnt by the
1526 user). Units after application of scale are Joules.
1528 What: /sys/.../iio:deviceX/in_distance_input
1529 What: /sys/.../iio:deviceX/in_distance_raw
1531 Contact: linux-iio@vger.kernel.org
1533 This attribute is used to read the measured distance to an object
1534 or the distance covered by the user since the last reboot while
1535 activated. Units after application of scale are meters.
1537 What: /sys/bus/iio/devices/iio:deviceX/store_eeprom
1538 KernelVersion: 3.4.0
1539 Contact: linux-iio@vger.kernel.org
1541 Writing '1' stores the current device configuration into
1542 on-chip EEPROM. After power-up or chip reset the device will
1543 automatically load the saved configuration.
1545 What: /sys/.../iio:deviceX/in_proximity_raw
1546 What: /sys/.../iio:deviceX/in_proximity_input
1547 What: /sys/.../iio:deviceX/in_proximityY_raw
1549 Contact: linux-iio@vger.kernel.org
1551 Proximity measurement indicating that some
1552 object is near the sensor, usually by observing
1553 reflectivity of infrared or ultrasound emitted.
1555 Often these sensors are unit less and as such conversion
1556 to SI units is not possible. Higher proximity measurements
1557 indicate closer objects, and vice versa. Units after
1558 application of scale and offset are meters.
1560 What: /sys/.../iio:deviceX/in_illuminance_input
1561 What: /sys/.../iio:deviceX/in_illuminance_raw
1562 What: /sys/.../iio:deviceX/in_illuminanceY_input
1563 What: /sys/.../iio:deviceX/in_illuminanceY_raw
1564 What: /sys/.../iio:deviceX/in_illuminanceY_mean_raw
1565 What: /sys/.../iio:deviceX/in_illuminance_ir_raw
1566 What: /sys/.../iio:deviceX/in_illuminance_clear_raw
1568 Contact: linux-iio@vger.kernel.org
1570 Illuminance measurement, units after application of scale
1573 What: /sys/.../iio:deviceX/in_intensityY_raw
1574 What: /sys/.../iio:deviceX/in_intensityY_ir_raw
1575 What: /sys/.../iio:deviceX/in_intensityY_both_raw
1576 What: /sys/.../iio:deviceX/in_intensityY_uv_raw
1577 What: /sys/.../iio:deviceX/in_intensityY_duv_raw
1579 Contact: linux-iio@vger.kernel.org
1581 Unit-less light intensity. Modifiers both and ir indicate
1582 that measurements contain visible and infrared light
1583 components or just infrared light, respectively. Modifier
1584 uv indicates that measurements contain ultraviolet light
1585 components. Modifier duv indicates that measurements
1586 contain deep ultraviolet light components.
1588 What: /sys/.../iio:deviceX/in_uvindex_input
1590 Contact: linux-iio@vger.kernel.org
1592 UV light intensity index measuring the human skin's response to
1593 different wavelength of sunlight weighted according to the
1594 standardised CIE Erythemal Action Spectrum. UV index values range
1595 from 0 (low) to >=11 (extreme).
1597 What: /sys/.../iio:deviceX/in_intensity_integration_time
1598 What: /sys/.../iio:deviceX/in_intensity_red_integration_time
1599 What: /sys/.../iio:deviceX/in_intensity_green_integration_time
1600 What: /sys/.../iio:deviceX/in_intensity_blue_integration_time
1601 What: /sys/.../iio:deviceX/in_intensity_clear_integration_time
1602 What: /sys/.../iio:deviceX/in_illuminance_integration_time
1604 Contact: linux-iio@vger.kernel.org
1606 This attribute is used to get/set the integration time in
1607 seconds. If shared across all channels of a given type,
1608 <type>_integration_time is used.
1610 What: /sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_integration_time
1612 Contact: linux-iio@vger.kernel.org
1614 Number of seconds in which to compute speed.
1616 What: /sys/bus/iio/devices/iio:deviceX/in_rot_quaternion_raw
1618 Contact: linux-iio@vger.kernel.org
1620 Raw value of quaternion components using a format
1621 x y z w. Here x, y, and z component represents the axis about
1622 which a rotation will occur and w component represents the
1625 What: /sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_tilt_comp_raw
1626 What: /sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_tilt_comp_raw
1627 What: /sys/bus/iio/devices/iio:deviceX/in_rot_from_north_magnetic_raw
1628 What: /sys/bus/iio/devices/iio:deviceX/in_rot_from_north_true_raw
1630 Contact: linux-iio@vger.kernel.org
1632 Raw value of rotation from true/magnetic north measured with
1633 or without compensation from tilt sensors.
1635 What: /sys/bus/iio/devices/iio:deviceX/in_currentX_raw
1636 What: /sys/bus/iio/devices/iio:deviceX/in_currentX_i_raw
1637 What: /sys/bus/iio/devices/iio:deviceX/in_currentX_q_raw
1639 Contact: linux-iio@vger.kernel.org
1641 Raw current measurement from channel X. Units are in milliamps
1642 after application of scale and offset. If no offset or scale is
1643 present, output should be considered as processed with the
1646 Channels with 'i' and 'q' modifiers always exist in pairs and both
1647 channels refer to the same signal. The 'i' channel contains the in-phase
1648 component of the signal while the 'q' channel contains the quadrature
1651 What: /sys/.../iio:deviceX/in_energy_en
1652 What: /sys/.../iio:deviceX/in_distance_en
1653 What: /sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_en
1654 What: /sys/.../iio:deviceX/in_steps_en
1656 Contact: linux-iio@vger.kernel.org
1658 Activates a device feature that runs in firmware/hardware.
1659 E.g. for steps: the pedometer saves power while not used;
1660 when activated, it will count the steps taken by the user in
1661 firmware and export them through in_steps_input.
1663 What: /sys/.../iio:deviceX/in_steps_input
1665 Contact: linux-iio@vger.kernel.org
1667 This attribute is used to read the number of steps taken by the user
1668 since the last reboot while activated.
1670 What: /sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_input
1671 What: /sys/.../iio:deviceX/in_velocity_sqrt(x^2+y^2+z^2)_raw
1673 Contact: linux-iio@vger.kernel.org
1675 This attribute is used to read the current speed value of the
1676 user (which is the norm or magnitude of the velocity vector).
1677 Units after application of scale are m/s.
1679 What: /sys/.../iio:deviceX/in_steps_debounce_count
1681 Contact: linux-iio@vger.kernel.org
1683 Specifies the number of steps that must occur within
1684 in_steps_filter_debounce_time for the pedometer to decide the
1685 consumer is making steps.
1687 What: /sys/.../iio:deviceX/in_steps_debounce_time
1689 Contact: linux-iio@vger.kernel.org
1691 Specifies number of seconds in which we compute the steps
1692 that occur in order to decide if the consumer is making steps.
1694 What: /sys/bus/iio/devices/iio:deviceX/bufferY/watermark
1696 Contact: linux-iio@vger.kernel.org
1698 A single positive integer specifying the maximum number of scan
1699 elements to wait for.
1701 Poll will block until the watermark is reached.
1703 Blocking read will wait until the minimum between the requested
1704 read amount or the low water mark is available.
1706 Non-blocking read will retrieve the available samples from the
1707 buffer even if there are less samples then watermark level. This
1708 allows the application to block on poll with a timeout and read
1709 the available samples after the timeout expires and thus have a
1710 maximum delay guarantee.
1712 What: /sys/bus/iio/devices/iio:deviceX/bufferY/data_available
1714 Contact: linux-iio@vger.kernel.org
1716 A read-only value indicating the bytes of data available in the
1717 buffer. In the case of an output buffer, this indicates the
1718 amount of empty space available to write data to. In the case of
1719 an input buffer, this indicates the amount of data available for
1722 What: /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_enabled
1724 Contact: linux-iio@vger.kernel.org
1726 A read-only boolean value that indicates if the hardware fifo is
1727 currently enabled or disabled. If the device does not have a
1728 hardware fifo this entry is not present.
1729 The hardware fifo is enabled when the buffer is enabled if the
1730 current hardware fifo watermark level is set and other current
1731 device settings allows it (e.g. if a trigger is set that samples
1732 data differently that the hardware fifo does then hardware fifo
1735 If the hardware fifo is enabled and the level of the hardware
1736 fifo reaches the hardware fifo watermark level the device will
1737 flush its hardware fifo to the device buffer. Doing a non
1738 blocking read on the device when no samples are present in the
1739 device buffer will also force a flush.
1741 When the hardware fifo is enabled there is no need to use a
1742 trigger to use buffer mode since the watermark settings
1743 guarantees that the hardware fifo is flushed to the device
1746 What: /sys/bus/iio/devices/iio:device*/buffer/hwfifo_timeout
1748 Contact: linux-iio@vger.kernel.org
1750 A read/write property to provide capability to delay reporting of
1751 samples till a timeout is reached. This allows host processors to
1752 sleep, while the sensor is storing samples in its internal fifo.
1753 The maximum timeout in seconds can be specified by setting
1754 hwfifo_timeout.The current delay can be read by reading
1755 hwfifo_timeout. A value of 0 means that there is no timeout.
1757 What: /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark
1759 Contact: linux-iio@vger.kernel.org
1761 Read-only entry that contains a single integer specifying the
1762 current watermark level for the hardware fifo. If the device
1763 does not have a hardware fifo this entry is not present.
1764 The watermark level for the hardware fifo is set by the driver
1765 based on the value set by the user in buffer/watermark but
1766 taking into account hardware limitations (e.g. most hardware
1767 buffers are limited to 32-64 samples, some hardware buffers
1768 watermarks are fixed or have minimum levels). A value of 0
1769 means that the hardware watermark is unset.
1771 What: /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_min
1773 Contact: linux-iio@vger.kernel.org
1775 A single positive integer specifying the minimum watermark level
1776 for the hardware fifo of this device. If the device does not
1777 have a hardware fifo this entry is not present.
1779 If the user sets buffer/watermark to a value less than this one,
1780 then the hardware watermark will remain unset.
1782 What: /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_max
1784 Contact: linux-iio@vger.kernel.org
1786 A single positive integer specifying the maximum watermark level
1787 for the hardware fifo of this device. If the device does not
1788 have a hardware fifo this entry is not present.
1790 If the user sets buffer/watermark to a value greater than this
1791 one, then the hardware watermark will be capped at this value.
1793 What: /sys/bus/iio/devices/iio:deviceX/buffer/hwfifo_watermark_available
1795 Contact: linux-iio@vger.kernel.org
1797 A list of positive integers specifying the available watermark
1798 levels for the hardware fifo. This entry is optional and if it
1799 is not present it means that all the values between
1800 hwfifo_watermark_min and hwfifo_watermark_max are supported.
1802 If the user sets buffer/watermark to a value greater than
1803 hwfifo_watermak_min but not equal to any of the values in this
1804 list, the driver will chose an appropriate value for the
1805 hardware fifo watermark level.
1807 What: /sys/bus/iio/devices/iio:deviceX/in_temp_calibemissivity
1808 What: /sys/bus/iio/devices/iio:deviceX/in_tempX_calibemissivity
1809 What: /sys/bus/iio/devices/iio:deviceX/in_temp_object_calibemissivity
1810 What: /sys/bus/iio/devices/iio:deviceX/in_tempX_object_calibemissivity
1812 Contact: linux-iio@vger.kernel.org
1814 The emissivity ratio of the surface in the field of view of the
1815 contactless temperature sensor. Emissivity varies from 0 to 1,
1816 with 1 being the emissivity of a black body.
1818 What: /sys/bus/iio/devices/iio:deviceX/in_magn_x_oversampling_ratio
1819 What: /sys/bus/iio/devices/iio:deviceX/in_magn_y_oversampling_ratio
1820 What: /sys/bus/iio/devices/iio:deviceX/in_magn_z_oversampling_ratio
1822 Contact: linux-iio@vger.kernel.org
1824 Hardware applied number of measurements for acquiring one
1825 data point. The HW will do <type>[_name]_oversampling_ratio
1826 measurements and return the average value as output data. Each
1827 value resulted from <type>[_name]_oversampling_ratio measurements
1828 is considered as one sample for <type>[_name]_sampling_frequency.
1830 What: /sys/bus/iio/devices/iio:deviceX/in_concentration_raw
1831 What: /sys/bus/iio/devices/iio:deviceX/in_concentrationX_raw
1832 What: /sys/bus/iio/devices/iio:deviceX/in_concentration_co2_raw
1833 What: /sys/bus/iio/devices/iio:deviceX/in_concentrationX_co2_raw
1834 What: /sys/bus/iio/devices/iio:deviceX/in_concentration_ethanol_raw
1835 What: /sys/bus/iio/devices/iio:deviceX/in_concentrationX_ethanol_raw
1836 What: /sys/bus/iio/devices/iio:deviceX/in_concentration_h2_raw
1837 What: /sys/bus/iio/devices/iio:deviceX/in_concentrationX_h2_raw
1838 What: /sys/bus/iio/devices/iio:deviceX/in_concentration_o2_raw
1839 What: /sys/bus/iio/devices/iio:deviceX/in_concentrationX_o2_raw
1840 What: /sys/bus/iio/devices/iio:deviceX/in_concentration_voc_raw
1841 What: /sys/bus/iio/devices/iio:deviceX/in_concentrationX_voc_raw
1843 Contact: linux-iio@vger.kernel.org
1845 Raw (unscaled no offset etc.) reading of a substance. Units
1846 after application of scale and offset are percents.
1848 What: /sys/bus/iio/devices/iio:deviceX/in_resistance_raw
1849 What: /sys/bus/iio/devices/iio:deviceX/in_resistanceX_raw
1850 What: /sys/bus/iio/devices/iio:deviceX/out_resistance_raw
1851 What: /sys/bus/iio/devices/iio:deviceX/out_resistanceX_raw
1853 Contact: linux-iio@vger.kernel.org
1855 Raw (unscaled no offset etc.) resistance reading.
1856 Units after application of scale and offset are ohms.
1858 What: /sys/bus/iio/devices/iio:deviceX/heater_enable
1859 KernelVersion: 4.1.0
1860 Contact: linux-iio@vger.kernel.org
1862 '1' (enable) or '0' (disable) specifying the enable
1863 of heater function. Same reading values apply.
1865 This ABI is especially applicable for humidity sensors
1866 to heatup the device and get rid of any condensation
1867 in some humidity environment
1869 What: /sys/bus/iio/devices/iio:deviceX/in_ph_raw
1871 Contact: linux-iio@vger.kernel.org
1873 Raw (unscaled no offset etc.) pH reading of a substance as a negative
1874 base-10 logarithm of hydrodium ions in a litre of water.
1876 What: /sys/bus/iio/devices/iio:deviceX/mount_matrix
1877 What: /sys/bus/iio/devices/iio:deviceX/in_mount_matrix
1878 What: /sys/bus/iio/devices/iio:deviceX/out_mount_matrix
1879 What: /sys/bus/iio/devices/iio:deviceX/in_anglvel_mount_matrix
1880 What: /sys/bus/iio/devices/iio:deviceX/in_accel_mount_matrix
1882 Contact: linux-iio@vger.kernel.org
1884 Mounting matrix for IIO sensors. This is a rotation matrix which
1885 informs userspace about sensor chip's placement relative to the
1886 main hardware it is mounted on.
1888 Main hardware placement is defined according to the local
1889 reference frame related to the physical quantity the sensor
1892 Given that the rotation matrix is defined in a board specific
1893 way (platform data and / or device-tree), the main hardware
1894 reference frame definition is left to the implementor's choice
1895 (see below for a magnetometer example).
1897 Applications should apply this rotation matrix to samples so
1898 that when main hardware reference frame is aligned onto local
1899 reference frame, then sensor chip reference frame is also
1900 perfectly aligned with it.
1902 Matrix is a 3x3 unitary matrix and typically looks like
1903 [0, 1, 0; 1, 0, 0; 0, 0, -1]. Identity matrix
1904 [1, 0, 0; 0, 1, 0; 0, 0, 1] means sensor chip and main hardware
1905 are perfectly aligned with each other.
1907 For example, a mounting matrix for a magnetometer sensor informs
1908 userspace about sensor chip's ORIENTATION relative to the main
1911 More specifically, main hardware orientation is defined with
1912 respect to the LOCAL EARTH GEOMAGNETIC REFERENCE FRAME where :
1914 * Y is in the ground plane and positive towards magnetic North ;
1915 * X is in the ground plane, perpendicular to the North axis and
1916 positive towards the East ;
1917 * Z is perpendicular to the ground plane and positive upwards.
1919 An implementor might consider that for a hand-held device, a
1920 'natural' orientation would be 'front facing camera at the top'.
1921 The main hardware reference frame could then be described as :
1923 * Y is in the plane of the screen and is positive towards the
1925 * X is in the plane of the screen, perpendicular to Y axis, and
1926 positive towards the right hand side of the screen ;
1927 * Z is perpendicular to the screen plane and positive out of the
1930 Another example for a quadrotor UAV might be :
1932 * Y is in the plane of the propellers and positive towards the
1934 * X is in the plane of the propellers, perpendicular to Y axis,
1935 and positive towards the starboard side of the UAV ;
1936 * Z is perpendicular to propellers plane and positive upwards.
1938 What: /sys/bus/iio/devices/iio:deviceX/in_electricalconductivity_raw
1940 Contact: linux-iio@vger.kernel.org
1942 Raw (unscaled no offset etc.) electric conductivity reading.
1943 Units after application of scale and offset are siemens per
1946 What: /sys/bus/iio/devices/iio:deviceX/in_countY_raw
1948 Contact: linux-iio@vger.kernel.org
1950 This interface is deprecated; please use the Counter subsystem.
1952 Raw counter device counts from channel Y. For quadrature
1953 counters, multiplication by an available [Y]_scale results in
1954 the counts of a single quadrature signal phase from channel Y.
1956 What: /sys/bus/iio/devices/iio:deviceX/in_indexY_raw
1958 Contact: linux-iio@vger.kernel.org
1960 This interface is deprecated; please use the Counter subsystem.
1962 Raw counter device index value from channel Y. This attribute
1963 provides an absolute positional reference (e.g. a pulse once per
1964 revolution) which may be used to home positional systems as
1967 What: /sys/bus/iio/devices/iio:deviceX/in_count_count_direction_available
1969 Contact: linux-iio@vger.kernel.org
1971 This interface is deprecated; please use the Counter subsystem.
1973 A list of possible counting directions which are:
1975 - "up" : counter device is increasing.
1976 - "down": counter device is decreasing.
1978 What: /sys/bus/iio/devices/iio:deviceX/in_countY_count_direction
1980 Contact: linux-iio@vger.kernel.org
1982 This interface is deprecated; please use the Counter subsystem.
1984 Raw counter device counters direction for channel Y.
1986 What: /sys/bus/iio/devices/iio:deviceX/in_voltageY_label
1987 What: /sys/bus/iio/devices/iio:deviceX/out_voltageY_label
1989 Contact: linux-iio@vger.kernel.org
1991 Optional symbolic label to a device channel.
1992 If a label is defined for this channel add that to the channel
1993 specific attributes. This is useful for userspace to be able to
1994 better identify an individual channel.
1996 What: /sys/bus/iio/devices/iio:deviceX/in_phaseY_raw
1998 Contact: linux-iio@vger.kernel.org
2000 Raw (unscaled) phase difference reading from channel Y.
2001 Units after application of scale and offset are radians.
2003 What: /sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm1_input
2004 What: /sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm1_input
2005 What: /sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm2p5_input
2006 What: /sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm2p5_input
2007 What: /sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm4_input
2008 What: /sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm4_input
2009 What: /sys/bus/iio/devices/iio:deviceX/in_massconcentration_pm10_input
2010 What: /sys/bus/iio/devices/iio:deviceX/in_massconcentrationY_pm10_input
2012 Contact: linux-iio@vger.kernel.org
2014 Mass concentration reading of particulate matter in ug / m3.
2015 pmX consists of particles with aerodynamic diameter less or
2016 equal to X micrometers.
2018 What: /sys/bus/iio/devices/iio:deviceX/events/in_illuminance_period_available
2021 Contact: linux-iio@vger.kernel.org
2023 List of valid periods (in seconds) for which the light intensity
2024 must be above the threshold level before interrupt is asserted.
2026 What: /sys/bus/iio/devices/iio:deviceX/in_filter_notch_center_frequency
2028 Contact: linux-iio@vger.kernel.org
2030 Center frequency in Hz for a notch filter. Used i.e. for line
2033 What: /sys/bus/iio/devices/iio:deviceX/in_temp_thermocouple_type
2035 Contact: linux-iio@vger.kernel.org
2037 One of the following thermocouple types: B, E, J, K, N, R, S, T.
2039 What: /sys/bus/iio/devices/iio:deviceX/in_temp_object_calibambient
2040 What: /sys/bus/iio/devices/iio:deviceX/in_tempX_object_calibambient
2042 Contact: linux-iio@vger.kernel.org
2044 Calibrated ambient temperature for object temperature
2045 calculation in milli degrees Celsius.
2047 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_x_raw
2048 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_y_raw
2049 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_z_raw
2051 Contact: linux-iio@vger.kernel.org
2053 Unscaled light intensity according to CIE 1931/DIN 5033 color space.
2054 Units after application of scale are nano nanowatts per square meter.
2056 What: /sys/bus/iio/devices/iio:deviceX/in_anglY_label
2058 Contact: linux-iio@vger.kernel.org
2060 Optional symbolic label for channel Y.
2061 For Intel hid hinge sensor, the label values are:
2062 hinge, keyboard, screen. It means the three channels
2063 each correspond respectively to hinge angle, keyboard angle,
2066 What: /sys/bus/iio/devices/iio:deviceX/in_illuminance_hysteresis_relative
2067 What: /sys/bus/iio/devices/iio:deviceX/in_intensity_hysteresis_relative
2069 Contact: linux-iio@vger.kernel.org
2071 Specify the percent for light sensor relative to the channel
2072 absolute value that a data field should change before an event
2073 is generated. Units are a percentage of the prior reading.
2075 What: /sys/bus/iio/devices/iio:deviceX/calibration_auto_enable
2078 Contact: linux-iio@vger.kernel.org
2080 Some sensors have the ability to apply auto calibration at
2081 runtime. For example, it may be necessary to compensate for
2082 contaminant build-up in a measurement chamber or optical
2083 element deterioration that would otherwise lead to sensor drift.
2085 Writing 1 or 0 to this attribute will respectively activate or
2086 deactivate this auto calibration function.
2088 Upon reading, the current status is returned.
2090 What: /sys/bus/iio/devices/iio:deviceX/calibration_forced_value
2093 Contact: linux-iio@vger.kernel.org
2095 Some sensors have the ability to apply a manual calibration using
2096 a known measurement value, perhaps obtained from an external
2099 Writing a value to this function will force such a calibration
2100 change. For the scd30 the value should be from the range
2103 Note for the scd30 that a valid value may only be obtained once
2104 it is has been written. Until then any read back of this value
2105 should be ignored. As for the scd4x an error will be returned
2106 immediately if the manual calibration has failed.
2108 What: /sys/bus/iio/devices/iio:deviceX/calibration_forced_value_available
2110 Contact: linux-iio@vger.kernel.org
2112 Available range for the forced calibration value, expressed as:
2114 - a range specified as "[min step max]"
2116 What: /sys/bus/iio/devices/iio:deviceX/in_voltageX_sampling_frequency
2117 What: /sys/bus/iio/devices/iio:deviceX/in_powerY_sampling_frequency
2118 What: /sys/bus/iio/devices/iio:deviceX/in_currentZ_sampling_frequency
2120 Contact: linux-iio@vger.kernel.org
2122 Some devices have separate controls of sampling frequency for
2123 individual channels. If multiple channels are enabled in a scan,
2124 then the sampling_frequency of the scan may be computed from the
2125 per channel sampling frequencies.
2127 What: /sys/.../events/in_accel_gesture_singletap_en
2128 What: /sys/.../events/in_accel_gesture_doubletap_en
2130 Contact: linux-iio@vger.kernel.org
2132 Device generates an event on a single or double tap.
2134 What: /sys/.../events/in_accel_gesture_singletap_value
2135 What: /sys/.../events/in_accel_gesture_doubletap_value
2137 Contact: linux-iio@vger.kernel.org
2139 Specifies the threshold value that the device is comparing
2140 against to generate the tap gesture event. The lower
2141 threshold value increases the sensitivity of tap detection.
2142 Units and the exact meaning of value are device-specific.
2144 What: /sys/.../events/in_accel_gesture_tap_value_available
2146 Contact: linux-iio@vger.kernel.org
2148 Lists all available threshold values which can be used to
2149 modify the sensitivity of the tap detection.
2151 What: /sys/.../events/in_accel_gesture_singletap_reset_timeout
2152 What: /sys/.../events/in_accel_gesture_doubletap_reset_timeout
2154 Contact: linux-iio@vger.kernel.org
2156 Specifies the timeout value in seconds for the tap detector
2157 to not to look for another tap event after the event as
2158 occurred. Basically the minimum quiet time between the two
2159 single-tap's or two double-tap's.
2161 What: /sys/.../events/in_accel_gesture_tap_reset_timeout_available
2163 Contact: linux-iio@vger.kernel.org
2165 Lists all available tap reset timeout values. Units in seconds.
2167 What: /sys/.../events/in_accel_gesture_doubletap_tap2_min_delay
2169 Contact: linux-iio@vger.kernel.org
2171 Specifies the minimum quiet time in seconds between the two
2172 taps of a double tap.
2174 What: /sys/.../events/in_accel_gesture_doubletap_tap2_min_delay_available
2176 Contact: linux-iio@vger.kernel.org
2178 Lists all available delay values between two taps in the double
2179 tap. Units in seconds.
2181 What: /sys/.../events/in_accel_gesture_tap_maxtomin_time
2183 Contact: linux-iio@vger.kernel.org
2185 Specifies the maximum time difference allowed between upper
2186 and lower peak of tap to consider it as the valid tap event.
2189 What: /sys/.../events/in_accel_gesture_tap_maxtomin_time_available
2191 Contact: linux-iio@vger.kernel.org
2193 Lists all available time values between upper peak to lower
2194 peak. Units in seconds.
2196 What: /sys/bus/iio/devices/iio:deviceX/in_rot_yaw_raw
2197 What: /sys/bus/iio/devices/iio:deviceX/in_rot_pitch_raw
2198 What: /sys/bus/iio/devices/iio:deviceX/in_rot_roll_raw
2200 Contact: linux-iio@vger.kernel.org
2202 Raw (unscaled) euler angles readings. Units after
2203 application of scale are deg.
2205 What: /sys/bus/iio/devices/iio:deviceX/serialnumber
2207 Contact: linux-iio@vger.kernel.org
2209 An example format is 16-bytes, 2-digits-per-byte, HEX-string
2210 representing the sensor unique ID number.
2212 What: /sys/.../events/in_proximity_thresh_either_runningperiod
2214 Contact: linux-iio@vger.kernel.org
2216 A running period of time (in seconds) for which
2217 in_proximity_thresh_either_runningcount amount of conditions
2218 must occur before an event is generated. If direction is not
2219 specified then this period applies to both directions.
2221 What: /sys/.../events/in_proximity_thresh_either_runningcount
2223 Contact: linux-iio@vger.kernel.org
2225 Number of conditions that must occur, during a running
2226 period, before an event is generated.
2228 What: /sys/bus/iio/devices/iio:deviceX/in_colortemp_raw
2230 Contact: linux-iio@vger.kernel.org
2232 Represents light color temperature, which measures light color
2233 temperature in Kelvin.
2235 What: /sys/bus/iio/devices/iio:deviceX/in_chromaticity_x_raw
2236 What: /sys/bus/iio/devices/iio:deviceX/in_chromaticity_y_raw
2238 Contact: linux-iio@vger.kernel.org
2240 The x and y light color coordinate on the CIE 1931 chromaticity
2243 What: /sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_mag_either_label
2244 What: /sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_mag_rising_label
2245 What: /sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_thresh_falling_label
2246 What: /sys/bus/iio/devices/iio:deviceX/events/in_altvoltageY_thresh_rising_label
2247 What: /sys/bus/iio/devices/iio:deviceX/events/in_anglvelY_mag_rising_label
2248 What: /sys/bus/iio/devices/iio:deviceX/events/in_anglY_thresh_rising_label
2249 What: /sys/bus/iio/devices/iio:deviceX/events/in_phaseY_mag_rising_label
2251 Contact: linux-iio@vger.kernel.org
2253 Optional symbolic label to a device channel event.
2254 If a label is defined for this event add that to the event
2255 specific attributes. This is useful for userspace to be able to
2256 better identify an individual event.