Why is my circuit not providing the right voltage to my motor?
The 33Ω resistor is causing a big problem.  According to Ohm's Law, the voltage drop across a resistor is proportional to the current flowing through it:

$$
V=RI
$$

So when your motor is running and pulling 75mA the voltage drop across a 33Ω resistor would be (33 * 0.075) 2.475V.  That leaves just 2.525V to run your 3V motor.

However, that only holds true when the motor is actually running.  A motor doesn't arrive in its packaging already spinning - you have to get it to start moving, and that means overcoming its inertia.  This requires more current than the normal running current, and is known as the "stall" current, since the motor isn't spinning at the time (it's stalled).

That stall current could be many times the running current.

As an example, let's assume a stall current of 150mA.  What would the voltage drop through the resistor be then?

$$
V=RI = 33×0.15 = 4.95V
$$

4.96V from a 5V supply? That's not good - only 0.05V left for the motor.  There's no way that's going to start moving with just 0.05V.

So what do you need to do?  Well, simply put: ditch the 33Ω resistor and replace it with a power supply of the right voltage.

You are controlling the BJT from a controller board that runs at 3.3V.  That board will have its own 3.3V regulator on it to power the main chip.

Assuming that regulator is capable of providing enough current to drive the motor, then you can draw your main current from it:







simulate this circuit &ndash; Schematic created using CircuitLab

However, if the regulator on the board isn't powerful enough you will need to provide your own regulator to drop the voltage.







simulate this circuit



Edit: Apparently the regulator on your board is a MIC5216 which can supposedly supply up to 500mA. Assuming your motor has a stall current below 500mA (less the current required by the rest of the board) you should be safe enough to use it to supply the motor.