Making a USB HID joystick without an Arduino Leonardo

Hi, I’ve had this project in my mind for a while and I’ve been looking for things to help me get started for weeks but have had no luck. I would like to create a custom USB HID device, probably a joystick of some kind as a custom flight simulator controller. I know I could use an Arduino Leonardo or other microcontroller with USB built in, but I would like to take this opportunity to use a chip such as the MAX3420E (which seems incredibly complicated from the code samples supplied) or some chip from FTDI. I was looking at FTDI’s website at different chips (specifically the FT201X because it has an I2C interface) and I read on their FAQs that you can’t change the device class of their chips because they use a custom one, so you can’t use them to make a HID but then I came across the FT120 which has some weird multiplexing interface and they have sample code for it on how to make it a HID!? :~

Alright that’s enough waffle :P. What I would like a bit of help with is if anyone has had any kind of experience with using a dedicated USB to other interface chip, which one(s) or specifications I should be looking out for or whether I can use a chip like a FT201X to make a HID because on their corporate brochure I found http://www.ftdichip.com/Corporate/FTDI%20Brochure%20Nov12.pdf ← there on the 4th page it says

FTDI offers a comprehensive range of ICs for USB peripherals, including bridge chips and devices targeted at standard class driver support.

and second on the list is that FT201X. I am thoroughly confused and would be extremely grateful if someone could shed some light on this.

Thanks,
Fraser

Maybe a different approach http://www.circuitsathome.com/mcu/hid-joystick-code-sample

Ray

I haven't done it myself but I've read of people who have used a UNO to do HID emulation. I don't remember the details but I suppose it would involve reprogramming the Atmega16U2 that serves as the serial-to-USB converter.

UNO (328P-PU) HID:

but I've read of people who have used a UNO to do HID emulation. I don't remember the details but I suppose it would involve reprogramming the Atmega16U2 that serves as the serial-to-USB converter.]but I've read of people who have used a UNO to do HID emulation. I don't remember the details but I suppose it would involve reprogramming the Atmega16U2 that serves as the serial-to-USB converter.

That would be one approach as in the Leonardo (LUFA), but with Uno'ish Arduinos it is far easier to leave the Arduino stuff in-place and use the V-USB library: http://www.instructables.com/id/Arduino-Digital-and-Analog-logging-using-V-USB/

Ray

So I know it would be a lot easier to program the Arduinos to emulate a HID device, but I'm looking to eventually use this without an Arduino i.e. manufacturing a few hundred, which I know kind of defeats the object of these forums considering they're Arduino ones but I couldn't think of somewhere else to post. Thank's for the articles you've sent me, I might email FTDI and clarify if I can use the chip I wanted to for this.