ofxKinect cameras not updating - Isochronous transfer error: 1

2,631 views
Skip to first unread message

John S

unread,
Dec 12, 2010, 7:01:59 PM12/12/10
to openk...@googlegroups.com
Hi,

I am able to get Processing and my kinect to talk fine on OS X 10.6.5 but ran into issues on ofxKinect inside xcode 3.2.5. The ofxKinect is fresh off github today, 2010/12/12.

The app compiles and runs, it appears that the kinect cameras update for a few frames within the first second but then I see Isochronous transfer error: 1 in the console. The app continues to run with the accelerometer, threshold and tilt functions working normally. Just no camera updates.

I'm wondering, but not sure, could the existing libusb and libfreenects that were installed for the Processing sketch be affecting ofxKinect?

Appreciate any thoughts or ideas on troubleshooting.


(Sorry but I am cross posting this from the OpenFrameworks forum just to see if I can get some more eyes on it.)

Phoenix Perry

unread,
Dec 13, 2010, 6:57:54 AM12/13/10
to openk...@googlegroups.com, openk...@googlegroups.com
I don't think so. I just think it's a bit buggy but I do see the same issues here and I have all 3 installed as well. 

It runs fine for a bit then kinds peters out.  I just assumed it was because it was developer software. Try different frame rates perhaps?
N



Sent from my iPad

John S

unread,
Dec 13, 2010, 10:08:21 AM12/13/10
to openk...@googlegroups.com
Thanks Phoenix. Trying different frame rates, kind of helps but still fails quickly. I tried commenting out different features in the code, with random results. 

I'm going to test it out on a 2nd machine tonight to see if I can get the ofxKinect example to work for more than 1 second, just to satisfy myself. 

At this point, I'm going to blame my computer and not the code : )

- J


Phoenix Perry

unread,
Dec 13, 2010, 10:44:18 AM12/13/10
to openk...@googlegroups.com
Let me know if you find a fix -
nix

John S

unread,
Dec 13, 2010, 7:43:33 PM12/13/10
to openk...@googlegroups.com
Followup on a post. 

Successful testing ofxKinect on a 2nd machine (also osx 1.6.5) - worked as expected...magically!

Not sure what was wrong on my 1st machine but glad to have it working.

Cameron

unread,
Dec 14, 2010, 2:07:21 PM12/14/10
to openk...@googlegroups.com
Hi,

I was running into this same error before (while running glview too, not just ofxKinect).  It appears to be coming from isochronous transfer frame scheduling problems (see http://libusb.6.n5.nabble.com/BUG-Darwin-isochronous-transfers-td396026.html; this post also includes a way to get more informative debugging messages from libusb on OS X), and gets worse during heavy CPU loading.

If you adjust the number in the line that begins with "frame +=" (should be line 1213) in libusb/libusb/os/darwin_usb.c in the libusb library, you can slightly improve the amount of time that the camera feed lasts before dying.  (For testing robustness, I can usually force the camera stream(s) to die by calling up Expose a lot, because that always lags my poor old computer.)  Unfortunately, in my experience, tweaking this value can only improve the situation so far, is frustratingly inelegant— and the streams still eventually die.

The best solution that I've found so far (which is hacky and may make those actually familiar with USB driver programming smack their foreheads), is to edit src/usb_libusb10.c in libfreenect to restart isochronous transfers that die.  After editing, it should read:
    
        FN_WARNING("Isochronous transfer error: %d\n", xfer->status);
        libusb_submit_transfer(xfer);
        //strm->dead_xfers++;

You'll still get error messages (unless you comment out the warning line, I suppose), and the framerate may be affected, but the streams will at least stop freezing up.  

Hope this helps.  I'd be curious to figure out why only some people are having this problem on OS X, and how to fix it properly once and for all.

Best,
Cameron

John S

unread,
Dec 15, 2010, 11:19:26 AM12/15/10
to openk...@googlegroups.com
Thanks Cameron and Christian. I'll try to give these a try and see how things go.

mariano biotico

unread,
Dec 19, 2010, 6:49:33 PM12/19/10
to OpenKinect
Hi everyone!, this is my first post in this group, and I appreciate
all who are contributing on this project.

Ok, I have a first generation White Macbook Intel Core Duo (32 bits),
2GB memory and OS X SnowLeopard 10.6.5.

I don´t know why get the "Isochronous error: 1", if i follow correctly
steps to install most of frameworks or API.

I search over and over on the web any suggestion, but nobody has
solved this problem.

This issue cause all API stop work in seconds, but the frame rate
still works.

libfreenect, OfxKinect, TuioKinect, and other frameworks or API what
run in my 32bits machine, TILT.

Someone have a similar issue and has found a solution to this problem?

Please don´t let this topic die. I think many peoples have this
problem and the solution must be a priority to help any unfortunate
like me.

Thanks you for continuing this topic. Any suggestion will be
appreciated!

Mariano Biotico.

Juan Carlos del Valle

unread,
Dec 19, 2010, 7:36:46 PM12/19/10
to openk...@googlegroups.com
Hello Mariano,

I remember someone complaining about something similar, and that it
has something to do with libusb, the only thing i can help you with is
to try with this pkg
http://www.as3kinect.org/distribution/osx/as3kinect.pkg. It will
install libusb/libfreenect/demos/as3server. It works on clean OSX so
perhaps this may work for you.

Give it a try and tell me if this solved your problem.

JC

mariano biotico

unread,
Dec 19, 2010, 9:52:04 PM12/19/10
to OpenKinect
Juan Carlos, thanks for your fast answer. I tried one more time this
solution but the problem remains unresolved.

I believe that this problem is directly related to the transfer rate
of my MacBook works, which affects the proper function of the USB
port.

If so, I think it would be necessary to adapt the libusb library for
this generation of MacBook.

To be more precise, and if it helps, I attached the info from my
machine.


Model Name: MacBook
Model Identifier: MacBook1, 1
Processor Name: Intel Core Duo
Processor Speed: 2 GHz
Number Of Processors: 1
Total Number Of Cores: 2
L2 Cache: 2 MB
Memory: 2 GB
Bus Speed: 667 MHz

OS: SnowLeopard 10.6.5

Thank you for your help.

Mariano Biotico

farn

unread,
Jan 10, 2011, 12:12:16 PM1/10/11
to OpenKinect
hey everybody!
i am a newbie here but really happy to join. for starters i
encountered the same problem as mariano, but on a different system, so
i guess the solution could be somewhere else... any new ideas in the
meantime? could you solve your issue, mariano? thankful for any advice
- otherwise i will edit the src/usb_libusb10.c as described above, but
would be nicer to prevent the dropouts instead of restarting the
thing. thanks a lot!


oh -my system:
Model Name: MacBook Pro
Model Identifier: MacBookPro5,1
Processor Name: Intel Core 2 Duo
Processor Speed: 2,4 GHz
Number Of Processors: 1
Total Number Of Cores: 2
L2 Cache: 3 MB
Memory: 4 GB
Bus Speed: 1,07 GHz

OS: SnowLeopard 10.6.6

Christian Parsons

unread,
Dec 14, 2010, 2:19:00 PM12/14/10
to openk...@googlegroups.com
Hi, I had an 
Isochronous transfer error: 1
message on osx 10.6.5 when I had the libusb compiled with theses instructions
via
sudo port install libtool
 sudo port install libusb-devel
but this happened only with glview demo from libreenect, 
with ofxKinect everything went OK, as far as I tested.. (not really a long time, just a few minutes..)

then I installed this version

and glview also worked..


Christian Parsons
www.chparsons.com.ar
Reply all
Reply to author
Forward
0 new messages