Using a USB to 15 pin converter

I have been looking around online alot for a simple usb to 15-pin converter. That seems like a much cheaper solution then using the usb-chicklet that IFI sells. Is there any reason that wouldn’t work, or maybe not legal?

Long answer: There’s a reason the Chicklet is so expensive, it’s effectively a small computer. USB uses bursts of serial data carrying the values of the gamepad/joysticks axes and buttons, much like the OI sends to the RC. You can’t simply convert the connection, you need a smart chip to interpret the serial stream, there is no “analog” data for the OI to read until the Chicklet generates it from the data coming in from the controller.

Short answer: The Chicklet is your only option for USB controllers this year unless you gut them and re-wire them.

On an interesting side-note (and I could be wrong), the voltage singals coming in from the 15-pin Gameport joysticks are not exactly analog either. The OI probably uses timers and a digital pulse input, and the joystick potentiometers adjust the “R” in the RC circuit. The OI then determines how much lag there is to the pulse output, and that is the “analog” value. (It was very interesting to see the way the Flightsticks were wired the first time I opened them expecting pure analog signals on the axes pins.)

But yes, USB cables only have 4 conductors - one is ground, one is power, and the other two are for serial communication with a very confusing protocol that can probably only be interpreted by something as complicated as the Chicklet.

The simple answer is:

The USB Chicklet is a Host. A joystick or gamepad is considered a device.
The USB Chicklet is the only device that can do what it does. It performs the same tasks as windows or Linux, only it does it faster. Considering that it is truly one of a kind, going against the rules of supply and demand, it is drastically under priced. We feel the price is more than fair based on its uniqueness and manufacturing cost.

Thanks everyone for the response. I guess I am just surprised this kind of device doesn’t exist else where.

I have been looking around online alot for a simple usb to 15-pin converter.

I guess I am just surprised this kind of device doesn’t exist else where.

This is like saying why isn’t there a simple SATA to IDE breakout cable or better yet, an IDE to SATA conversion cable! The IDE is a parallel bus, command and data bits are physically implemented. SATA is a serial bus, the serial bus requires a protocol overhead that encapsulates the data from the parallel physical implementation into a serial data packet that virtualizes the physical bus. You have to follow the serial bus transmission protocol and open and interpret the command/data packets in order to reconstitute the physical bus information. Since there could be different types of information in the packet - that too has to be included to identify the type of data.

Its the same with 15-pin joystick port and USB.

The 15 pin joystick cable is a physical implementation of switches and analog components. The physical components are right there on the pins. You can stick a multimeter on the pins and directly measure the switches and analog devices.

USB is a serial communications standard. Command and data packets are sent over the serial bus and embedded intelligence has follow the USB transmission protocol plus it needs to interpret the commands and data within the serial packets once it has them. Part of the command and control packet flow involves self-discovery (what are you? I’m a HID class device. Who are you? I’m a xbox 360 controller, etc.) So, the physical components on the controller, the switches, analog joysticks, D-pads, etc. are virtualized into serial command and data packets that sent over the USB port. To complicate matters, HID (human interface devices) can report out their data differently. There is no easy way to just rewire a USB virtual implementation into a physical implementation without a lot of embedded smarts to clock in/out the data, etc. Hence the chicklet.

http://en.wikipedia.org/wiki/Image:LeCroy_USB_Enumeration_Trace.jpg

http://en.wikipedia.org/wiki/USB_human_interface_device_class

You should be able to turn the expensive usb controller into a 15 pin controller but it requires major surgery. Open the controller cut out all the wires associated with the USB portion and throw them away. Now solder in a new 15-pin pig tail to the switches and joysticks directly - bypassing all the USB stuff. Of course if you do that, the joystick is no longer usable for its original USB purpose.

PS
As a complete aside - why go serial in the first place? Because there are physical limitations in parallel buses. Things like SCSI ULTRA320 have incredibly tight tolerances - both physical and electrical - because of signal propogation delay differences on the different bus lines. Signals are sent out together, but don’t arrive together due to different propogation delays. In contrast, a serial data protocal like 4G FCP fibre also used in storage systems doesn’t have those types of signal line limitations. In this case FCP-SCSI protocol is used. It virtualizes the standard SCSI storage protocol and allows multi-pathing, multi-drops, long transmission lines that are virtually impossible with parallel bus scsi. Networks using ethernet gigabit adapters are another serial protocol and there is SCSI over IP products. SD and MMC cards are serial. The I20 is a serial bus standard for which pre-packaged sensors exist. Lots and lots of serial buses. In addition, high pinout connectors are very costly especially ones for high frequency applications - simple 4 pin serial buses have relatively cheap connections in comparison. The big thing that serial needs to work is the additional intelligence to follow the communication protocol between the two ends and intelligence to package, send, recieve, and interpret the data once a packet arrives. Sorry for the digression - part of my day job.

This doesn’t sound right to me. I’ve never opened up an OI, but I know that it is far easier to build/integrate an analog-to-digital converter than it is to build an RC/pulse measuring circuit.

I learned this the hard way last year :). Spent about 200 bucks on these parts before hooking them up to no avail. We had xbox controller to usb, then usb female to female converter, then usb to female 15 pin, then male male 15 pin converter and finally into the oi. A LONG mess of useless wires. We ended up drilling 2 pieces of square stock to a piece of lexan in the long run with three controllers velcroed to it. We didn’t plan very well. :yikes: