ControllerMate is a controller programming tool that allows you to customize the behavior of your HID devices - keyboards, keypads, mice, trackballs, joysticks, gamepads, throttles, among others. ControllerMate's philosophy is to be as flexible as possible, to provide a set of basic programming tools, and to allow the user to combine those tools in an endless variety of ways.

ControllerMate is an application for Mac OS X that allows you to easily customize the behavior of controllers with drag-and-drop blocks. You can easily customize the controls for your favorite game, make your controller work in applications that don't support it, or even make your controller act like a mouse. ControllerMate is a must have for any Mac gamer. ControllerMate is really easy to use and works great.

It has so many features it would take forever to name them all. Some include having over 50 types of building blocks, 8 block categories, and 3 types of virtual controllers. ControllerMate has a helper application so it can run even when the app is closed. ControllerMate supports many different types of controllers. I even was able to use the PS3 controller with it over bluetooth. (It didn't support motion sensing, trigger pressure, and the 4 led lights kept didn't stop blinking.) When programming, it is as simple as arranging your blocks in a way similar to a flowchart.

Compared to LCC, ControllerMate is a godsend. I was getting kernel panics with LCC, choppy mouse movements, and multiple mice/keyboards when I had only one set connected. ControllerMate readily allows me to customize every button on my LX500, with smooth, easy to read menus, no kernel panics, no more anxiety.