Making a QNX box behave like a USB device

I’m currently working on a research project which involves a cool prototype haptics/teleop device. This device is plugged into a QNX box and run through some PCI cards. The design goal is to have this QNX box running the physics engine and doing the hairy math/position sensing calculations, and to have another end-user system (running windows/linux) which runs the actual simulation applications.

My supervisor would like the connection between the QNX box and the end-user box to optimally be over USB. Right now i’m trying to figure out how possible that is/how much work would be required to do so.

From what I understand of USB, it is not a peer-to-peer connection but a host/device connection, and QNX OS has a running USB stack which treats all connections as devices. It seems to me, that since one of QNX’s primary uses is in embedded systems, that there would be some built in OS support for communicating over USB as a device.

My battery of questions then, formally, are: How would I go about creating a functional connection between a QNX and windows/linux box over USB? Is it supported by QNX? Is there some hack to do peer communication over USB instead of host/device? Will this require writing a custom USB device and USB stack controller shiver [in which case I tell my supervisor that it is a completely separate project and/or not feasible].

Someone please save me from having to slug through the 320pg and 620pg USB 1.1 and 2.0 specs respectively



QNX doesn’t not support acting as a device. There are some hardware that will allow hosts to be connected together, however you will most probably need to write a custom driver for each OSes on both ends.

Thanks mario!

What sort of hardware are we talking about, and additionally do you know where might I be able to find it. (i.e. are we talking about a PCI card?)

The primary reason for using USB over ethernet is link latency, so a solution is going to have to preserve USB’s low latency to be viable too


The unit I saw ( at local computer shop ) was sort of like a USB hub.