Topic: Development platform?

I've been doing research on a development platform for my next project, one of my requirements is that I need 3 USB ports I can program to. I'm posting some details here to try and find out if this is something I could do with Chumby. If I went this route it would double the cost of my next current option but having the LCD screen increases the coolness factor a lot! Not to mention all of the other cool Chumby features.

So this is what I need to do.

First I need to connect the Chumby to a PC running WinXP using one of the USB ports, this is for communication purposes, mostly in the PC -> Chumby direction. I will explain the nature of this data in a moment. This is probably the easy part, if I can make the Chumby show itself as an HID device to WinXP then is a simple matter of writing a windows driver to deliver the data. The data samples are small, I'm guessing about 32 bytes 64 times a second or so.

Then I need to connect the Chumby to another USB host using the second USB port, and finally there is a USB peripheral that will also be connected to the Chumby. The peripheral produces data, in a similar fashion to a HID device (like a mouse or something) I want 'most' of this data to be transfered to this host. With the exception of certain packets that will be modified using the data that is arriving from the PC.

In a sense I want to use the Chumby as a 'smart' USB hub that allows to modify packets on the fly.

Is this possible? If so would I be able to work at a high level? Or would I need to implement low level USB protocols?

Re: Development platform?

Well, you may be able do it, but it'd probably take quite a bit of kernel-level magic to accomplish I would imagine.