I've been using Dave Dribin's DDHidLib library for all of my controller support lately. It's an Objective-C wrapper around IOHIDLib. I also comes with a few sample projects to get you started.
"Included is DDHidDevice, a class for generic HID devices, as well as four subclasses for common device types: joysticks (and gamepads), mice, keyboards, and the Apple IR remote. DDHidDevice provides easy access to HID elements and queues. The subclasses provide easier access to device specific elements (i.e. you don't have to dig through recursive dictionaries to find the mouse buttons), and provide delegates for asynchronous notifications of these elements."