Jump to content
  • 0

FIFO went empty during output error


Tom M

Question

Hi,

I am writing a program using c#  and using the AOutScan and AInScan methods. The board is a USB-321. I keep getting the FIFO went empty during output error. Its occurs randomly. I made a completely separate program that only talks to the MCC device and I don't have this problem. I use the same method calls, its only when I incorporate it in my larger application do I see this error. I turned off printing of errors but that's just work around. My device is going through a usb hub. Could that be the issue? The full software talks to 8 USB devices through this hub. The software is only communicating with the mcc device when the error occurs.

Can someone give me some incite into this issue?

 

Thanks

Tom

 

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Hello @Tom M.

Please confirm the USB device is an USB-231.  Are you using only one USB-231 and seven other USB devices or eight USB-231 devices?

Since the separate program dedicated to only an USB-231 device worked and the application is not communicating with any of the other devices, then the host system should have enough resources to push data from the PC buffer over to the device's onboard FIFO.  Although, as you have noticed, disabling the printing of errors allowed the application to work.  Please review your code integration for any bottlenecks in the process.

What else is happening while the analog output subsystem is running?

Does the output error point to the same device every time?  If so, try swapping that device with another device from your pack to determine if the issue follows a particular USB cable and/or USB port.

Recommend using an externally powered USB hub.

Universal Library Help for Windows

Regards,

Fausto

Link to comment
Share on other sites

  • 0

Yes its only 1 USB-231 device. The other devices are from different manufactures a mix of usb-com devices an other devices from Thorlabs. It took me a while to figure out all the error code reporting but now I know what method is causing this error. Its my Ascanout method.  I am creating a ramp function that sweeps the voltage on Aout0 from 0V  to 10V while I record data on Ain0 and Ain1. My scan frequency is 1000 and my buffer size on the write is 886 and 1772 on the read. My code is doing nothing else at the time. however I don't know what the API's for my other usb devices are doing in the background. The hub is powered.

Thanks

Tom

 

Link to comment
Share on other sites

  • 0

Hello @Tom M.

Please test the UL example 'C:\Users\Public\Documents\Measurement Computing\DAQ\C#\ULAIO01' with your USB-231.  Do you get a FIFO error while the analog input and analog output are running concurrently?

Please reply with your C# example to review and test.

Regards,

Fausto

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...