Quite early in the project, I decided to have a vibration motor in the game console. The reason is to add an extra dimension when playing: As a player you can see the explosion or car crash, hear it but when you also feel it, it gives you a deeper feeling of the game (or as a gamer would say: an extra level).
In my first version I use a simple MOSFET solution to activate the motor. The MOSFET is controlled by a PWM output of the microcontroller and by changing the frequency and/or duty cycle I can simulate different types of haptic feedback.
But such solution requires quite a lot of programming and the MCU will need to work hard and even though I certainly have the MCU speed to handle it with little CPU load, if any at all, I want to reduce the time I spent on programming (yes, I love to program but there is a lot to be implemented to get the console where I want it to be).
Googling around I stumbled upon on a very nice driver for vibration motors that also add built-in programs for a variety of haptic feedbacks like e.g. a click. It does require some more pins as it uses a combination of I2C and PWM input but on the other hand it needs few external components and more important, programming it seems like a very easy thing to do.
My first draft of the schematic is very much based on the typical application example found in the datasheet.
So far, all of this is still a theory as I am still working on my second hardware version but it does look promising.