- From: David Schleef <ds_at_schleef.org>
- Date: Mon, 9 Sep 2002 12:11:00 -0700
On Mon, Sep 09, 2002 at 11:51:47AM -0700, Jack Culpepper wrote:
> Thanks for everyone's help. Let me just give a little background info to aid
> in my explanation here: I am reading 8-16 channels at 4 KHz, one row at a time
> (yes, I know I should be reading more than a row at a time to improve
> performance, etc. but it SHOULD work on my machine). For a long time it was
> working fine. Then, I think after upgrading from comedilib-0.7.18 to 19, the
> channel bounce started happening. After doing some debugging, I discovered
> that the reason it was happening was because during the bounce, every read from
> the driver was returning less than the number of bytes than it should have.
> (I wasn't checking for this before..demo/cmd.c doesn't check either. Dave:
> you might consider adding this code to demo/cmd.c at around line 150
>
> if (0 != (ret % sizeof (sampl_t))) {
> fprintf (stderr, "Error! got an odd number of bytes: %d\n", ret);
> exit (3);
> }
This should never happen. Unless you specifically ask for an odd
number of samples, reads will always be aligned on sample boundaries.
> Finally: upgrading everything to the versions in CVS fixed me, yay!
Um, ok.
dave...
Received on 2002-09-09Z18:11:00