Mouse rumble pack + left click LED

Discussion in 'The Projects Forum' started by d4j0n, Dec 13, 2007.

  1. d4j0n

    Thread Starter New Member

    Dec 13, 2007

    Kind of a newbie, taking my first EE course

    I stumbled upon a guide about how to add a "rumble pack" (like the console controllers) to activate upon clicking down a mouse. I have a USB mouse and the circuit as I understand it is shown in the jpg attached.

    My questions are:
    1. does the circuit look right?

    2. how would I go about adding a string of parallel LED's (independent from the variable R on the motor, so as bright as I can get em) to light up at the same time the mouse is clicked? Do I just copy the right side of the circuit (starting at the transistor) and add it to the left click switch as well?

    3. My end goal is to have two modes: [click lights + click rumble] / [click lights only]. I have a flip switch at my disposal that seems to be like the one shown in the picture if that can at all play a part in the final circuit.

    Many thanks
  2. n9352527

    AAC Fanatic!

    Oct 14, 2005
    I hope you are using a cheap USB hub for testing. I wouldn't want to see you blow the USB port on your PC, or worse your laptop :)
  3. gootee

    Senior Member

    Apr 24, 2007
    I would not try it, as you have shown it.

    Think about what happens when your "left-click switch" is closed.

    The NPN transistor will conduct when its Vbe is positive. In your circuit, it will stop conducting when the switch is closed.

    Also, you don't show any resistance between the "small voltage from ... mouse" and ground, to limit the current when the switch is closed.

    Are you actually, instead, going to try to find two circuit points inside the mouse that will apply a positive voltage from the NPN's B to E, when the left-click button is pressed?

    If so, be sure that the one you connect to the emitter is actually at the same potential as the USB ground you have shown. It might be a good idea to insert 1K resistors in both conductors that lead from the mouse connection points to the transistor's B and E pins, just in case the grounds are at slightly different potentials, and for a little added safety.

    Do you have the official USB port specs, so you can look up the maximum current that you should attempt to draw through the port?

    Note: You should put an additional fixed resistance in series with the motor speed-control potentiometer, so that if you assume that the pot and the motor and the transistor are all zero ohms, the fixed resistor will limit the current to the maximum that you are allowed to draw from the USB port (or less than that, if LEDs are also used).

    I think that I would probably also put 10 uF and 0.1 uF capacitors in parallel, across the +5v and Gnd terminals that come from the USB port. Make sure that the 10 uF electrolytic capacitor's + and - terminal are oriented correctly. I would probably also put a reverse diode in parallel with the motor, just in case, i.e. diode's arrow pointing to the right, in your diagram.

    The LED circuit could be added in parallel with the motor/pot/current-limit-resistor leg.

    You must then make absolutely sure that the total current drawn from the USB port will always be less than the spec given for the maximum allowed current, probably minus some safety margin.

    If you want to use more than one LED, and have them in parallel, but with each LED having a resistor in series with it, you will have to decide how much of the maximum allowed USB current you want to allot for the motor, and then go back and recalculate the value of the resistor that was added in series with the motor's speed-control pot, in order to limit the current to that value. Then make sure that the LEDs' resistors will keep the sum of all of the LED currents plus the maximum motor current below the USB port's maximum current spec.

    If you are wanting the motor to vibrate, you can add a small off-center mass to the shaft. But motor lifespan would probably be reduced.

    - Tom Gootee
  4. d4j0n

    Thread Starter New Member

    Dec 13, 2007