Hi, been lurking on this list for a few years now, I believe.
Just spent a frustrating few hours in the list archives and googling the net to decide what to do. I'm about to write some code that will need to access a USB HID device. I mainly work on Mac and it seems that this will not be a big undertaking no matter how I do it. I can do it in C with the Mac OS IOKit but since essentially what I'm doing is not in anyway Mac specific it would make sense to write it to a cross platform USB API. And since Java is cross platform and I prefer to work with Java anyway, a Java USB API is what I would like to have. This is the very reason I've been lurking this list. My today's research produced pretty much similiar results as the once I've conducted in the past one or two years: there is no working cross platform USB API, not for C, not for Java, at least not one that has a future. A cross platform C API would be fine as it would be trivial to access that using JNA or JNI. Here is my summary of the situation: Project: jUSB Language: Java Status: Dead, last commits from 2002 Supports: Linux Project: libusb 0.1 Language: C Supports: Linux, MacOS X, Windows(libusb-win32 project) Status: complete, but no development in sight Notes: no isochronous endpoint / asynchronous I/O Project: libusb 1.0 Language: C Supports: Linux Status: complete, developed activly? Notes: API not compatible with 0.1, but a wrapper exist Project: OpenUSB Language: C Supports: Linux/BSD/Darwin (Mac OS X?) no Windows Status: Recent development Notes: Very little info, backed by SUN? Project: jsr80 / javax.usb Language: Java Supports: Linux Status: progressing slooowly for years Notes: The official USB API, some promise of Windows port Project: libusb4j Language: Java Supports: what ever libusb supports Notes: uses libusb 0.1 API so at the moment a sort of dead end Now why I'm writing on this mailing list? Since this javax.usb is *the* official USB API this seems the most logical place to discuss this. No point discussing this an a dead project's mailing list and OpenUSB does not even have one! The purpose of all this rant? I'm going to put in some serious hours to implement what I need. As consequence I'm going to learn (or fail!) how to 'do' USB on Mac and hence I might as well contribute something to the Java USB API project, but I would not like to back the wrong horse. So I would like to contribute to a project that has a future ie will become the dominant standard and that will contribute something back to me (I'm not keen on writing Linux/Windows support but I would like to have them). But at the moment I do not know which horse to back. I'm instinctively drawn to jsr80/javax.usb since it is the 'official' API but I've been badly disappointed *over the years* at the slow pace anything but Linux port. Like I said, I could maybe contribute (parts of) a Mac port but I would like to see a Windows port too. libusb 0.1 seems to be the best API at the moment for me since it works for the major three platforms that I'm interested in but it looks like a dead end and investing on it seem wrong. OpenUSB shows some promise but not much info is available on it. Some claim it is backed by Sun! It makes my head spin to think how many *different* efforts there have been to implement across platforms something that JSR80 specifies in little more than a dozen pages. What a waste. I guess cross platform is in nobody's interest, everyone is just interested in *their* platform. br Kusti ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ javax-usb-devel mailing list javax-usb-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/javax-usb-devel