On Fri, Mar 21, 2008 at 4:56 AM, Kustaa Nyholm
<[EMAIL PROTECTED]> wrote:
> Hi List,
>
>  I tried to search the archives but could not realy get an answer.
>
>  For long time I've been searching (or rather waiting) for a viable
>  cross platform USB API for Java.
>
>  So far I've been using 'libusb' through 'jna' and it has realy been
>  easy for modest needs.
>
>  However, the future of that (too) project seems in doubt, the new
>  project 'owner' making
>  doubtfull choises.
>
>  So that is where javax-usb comes in. Seeing that is an official JSR it
>  should have a better future,
>  I hope. And about time too that we had a common USB API on Java!
>  Review
>  ballot in 2000
>  and now it is 2008 and no other 'official' implementation than the
>  Linux-RI. I like Linux
>  and run three different distros on this Mac, but the reality is that
>  the 90% of my users are
>  on Windows, 8% are on Mac and 2% are on Linux ....
>
>  So is anyone working on Mac OS X port/implementation?
>
>  I noticed that in addition to what is on the project website someone
>  had done some work
>  on the Windows implementation using 'libusb'.
>
>  If there is no work already done on Mac and if I can find the time I
>  might make hava a go at it.

Please do!  Anything you get working, I am more than willing to put
into CVS and post on the website.

>
>  Which road should one take, start from the Linux-RI, or from the
>  existing Windows-libusb
>  code, or from the Ricoh BSD code, after all, Mac OS X is BSD at some
>  level? Or is there
>  a licensing issue with the Ricoh code?

I would suggest you look at the common implementation lower level
interface, in the com/ibm/jusb/os/ directory.  All you really need to
implement is a single UsbServices object (to manage everything), and
use those mostly-complete "default" implementation classes to do most
of the data transfer work.  90% or more of the implementation is
common stuff in the common implementation.  Start by just creating
your own UsbServices implementation, to get the whole thing up.  then
try enumerating devices, but stub out all the data transfer stuff.  Or
at least try enumerating one host controller.  After the enumeration
stuff works, try adding hotplugging.  Then implement interface
claiming and pipe opening, if either of those are needed by the
platform.  Then data transfer.  You only really need to implement the
async data transfer, all the other types are handled in the common imp
for you.

>
>  br Kusti
>
>
>
>  -------------------------------------------------------------------------
>  This SF.net email is sponsored by: Microsoft
>  Defy all challenges. Microsoft(R) Visual Studio 2008.
>  http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
>  _______________________________________________
>  javax-usb-devel mailing list
>  javax-usb-devel@lists.sourceforge.net
>  https://lists.sourceforge.net/lists/listinfo/javax-usb-devel
>

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
javax-usb-devel mailing list
javax-usb-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/javax-usb-devel

Reply via email to