I too am having this problem. I am using NI-DAQ 7.3, with PCI6033E and PCI-6602 cards. My counters (counters 0-3 on the 6602) are gated off of RTSI0, and RTSI0 is driven by the SCAN clock on a PCI-6033E card. The sampling rate is 1Khz; I've monitored the RTSI bus with a scope to verify that the gating pulses are OK (they are). I am using continuous buffered acquisition. The buffers are 5-seconds deep (5000 samples for each counter).
The basic algorithm is as follows:
1) I have a thread that sleeps for 5 milliseconds, then wakes up. When it wakes up it...
2) Reads the available samples from the PCI-6033E card (using DAQmonitor() to determine where in the ring buffer to read from)
3) Reads available samples from PCI-6602 card, channel by channel, using GPCTR_Watch(ND_AVAILABLE_POINTS) to determine how many samples are available, followed by a GPCTR_Read_Buffer(SlotNum,chan,ND_READ_MARK,0,avail,0,@countval,@buffer).
4) Writes any necessary outputs.
5) Goes back to sleep, then back to step 1
After a few hours of operation, I get a -10846 error. After this, all bets are off and I have to reset the software. Inicdentally, (and I don't know if this is related), I can swap the 6602 card with a 6601, and I get periodic "-10013" errors from GPCTR_Read_Buffer(), although unlike the -10846 errors, I am still able to keep the acquisition going.
I am running a HP/Compaq P4 2.8 Ghz, 512MB ram. I don't believe that CPU power is an issue, and the machine is not heavily loaded (CPU runs at about 6% capacity). The development envirnoment is Borland Delphi 5.
Any clues? Is there a bug in NI-DAQ or in the 6602?
Any help is most welcome!
-cfgmgr