COMEDI_DATA_READ(3)

πŸ’– COMEDI_DATA_READ β€” ok bestie, let's read a sample πŸŽ€

so like… this is a page from the Comedi reference manual, section 3, and bestie, we're about to read ONE (1) single sample from a channel and it's gonna be iconic ✨


✨ NAME ✨

okay so comedi_data_read β€” read single sample from channel. that's it, that's the whole vibe. one sample. no more, no less. πŸ’…


🌸 SYNOPSIS 🌸

like, you gotta include the header first, obviously:

#include <comedilib.h>

and then here's the function signature, don't @ me, copy it exactly:

int comedi_data_read(comedi_t * device, unsigned int subdevice,
                     unsigned int channel, unsigned int range,
                     unsigned int aref, lsampl_t * data);

πŸ¦‹ DESCRIPTION πŸ¦‹

So bestie, what this function DOES is it reads a single sample on the channel you specify. Which channel? the one you tell it, using the Comedi device device, the subdevice subdevice, and the channel channel. No cap, that's literally it.

For the A/D conversion (if that even applies to your situation), the device gets configured to use range specification range and β€” again, if appropriate β€” analog reference type aref.

⚠️ heads up queen: analog reference types that the device doesn't support are silently ignored. no warning, no drama, they just ghost you. πŸ™ˆ

The function comedi_data_read reads one data value from the channel you picked and drops it into *data. slay.

🚨 WARNING 🚨 bestie I need you to LISTEN: comedi_data_read does NOT do any pausing to let multiplexed analog inputs settle before it starts an analog to digital conversion. it's giving zero patience energy. So if you're switching between different channels and you actually need your analog input to settle for an accurate reading, use comedi_data_read_delayed instead, or set the input channel at an earlier time with comedi_data_read_hint. do not skip this. fr fr. πŸ’€

Data values that come back from this function are unsigned integers less than or equal to the maximum sample value of the channel. How do you find that max? silly, use comedi_get_maxdata. 🫢

And if you wanna convert those data values into physical units (glow up from raw numbers to real-world measurements ✨), you got two options:

  • comedi_to_phys β€” for the linear conversion girlies
  • comedi_to_physical β€” for the non-linear polynomial conversion girlies

πŸ’œ RETURN VALUE πŸ’œ

  • On success, comedi_data_read returns 1 β€” that's the number of samples read, because we only read one, bestie. one. single. sample. periodt. πŸ‘‘
  • If there's an error, -1 is returned. 😭

🌈 AUTHORS 🌈

these are the icons who made it happen, show some respect:

  • David Schleef <ds@schleef.org> β€” Author.
  • Frank Mori Hess <fmhess@users.sourceforge.net> β€” Author.
  • Herman Bruyninckx <Herman.Bruyninckx@mech.kuleuven.ac.be> β€” Author.
  • Bernd Porr <tech@linux-usb-daq.co.uk> β€” Author.
  • Ian Abbott <abbotti@mev.co.uk> β€” Author.
  • Γ‰ric Piel <piel@delmic.com> β€” Author.

okay so legal era, we love a paper trail:

  • Copyright Β© 1998-2003 David Schleef
  • Copyright Β© 2001-2003, 2005, 2008 Frank Mori Hess
  • Copyright Β© 2002-2003 Herman Bruyninckx
  • Copyright Β© 2012 Bernd Porr
  • Copyright Β© 2012 Ian Abbott
  • Copyright Β© 2012, 2015 Γ‰ric Piel

This document is part of Comedilib. In the context of this document, the term "source code" as defined by the license is interpreted as the XML source.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, version 2.1 of the License.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.


and that's the whole page bestie πŸ’– this was Comedi, dated 03/20/2026, and the manual page is COMEDI_DATA_READ(3). go forth and read exactly one sample, you're doing amazing sweetie πŸŒΈβœ¨πŸ¦‹

πŸ“¦ where this page comes from