Why VCC can be 5V
VCC reaches the regulator's input and nothing else, so 5V on VCC never reaches your board's pin, even on a 3.3 V board. Either supply gives the motor about 3.3 V, measured on a board, so use whichever is convenient. The book wires 5V, which takes the motor's current off your USB 5 V instead of your board's 3.3 V regulator.
Where VCC goes
On most TinkerBlock blocks VCC powers the part that talks back to your board, so VCC has to match your board's logic: 3V3 beside a 3.3 V board, or the part answers at 5 V into a pin built for 3.3. This block is different, and the net list shows why. VCC reaches exactly two things: the input of a 3.3 V regulator, and the 10 µF capacitor beside it.
Pick your board and where VCC goes. The motor runs from the regulator's output. SIGNAL runs to the MOSFET's gate. Between the two there is no wire, and nothing on the block puts any voltage on SIGNAL. Your pin sees only what it puts there itself.
Either one gives the motor 3.3 V
The motor is rated 3.0 V and made for 2.7 to 3.3 V. With VCC on 5V the regulator gives it 3.3 V, the top of that range, and on the datasheet's typical curve it turns at about 15,800 rpm and draws about 54 mA.
With VCC on 3V3 the regulator has nothing to regulate down, and it passes its input on. Measured on the motor's + pad of a shipped board, that is about 3.3 V from a 3.3 V VCC, the same as from 5V. So the motor turns and shakes the same on either, and the choice is whichever pin is handy.
What differs is where the current comes from. On 5V it comes from the USB supply, through this block's own regulator. On 3V3 it comes out of the small regulator on your board that also feeds your microcontroller, and the motor's start takes up to 120 mA for a moment. A board with little to spare can dip and reset. When it does not buzz covers it. The sketches in this book wire 5V for that reason.
Which pin is 5V
| Your board | VCC to | SIGNAL to |
|---|---|---|
| Arduino Uno | 5V | D9 |
| ESP32 | 5V (sometimes VIN) | GPIO 4 |
| ESP32-S3 | 5V | GPIO 4 |
| Raspberry Pi Pico | VBUS | GP15 |
On the ESP32 boards and the Pico that pin is the USB cable's 5 V, present while the board is powered by USB. On a battery, use 3V3: the motor gets the same 3.3 V.
What the regulator can give
The XC6206's datasheet guarantees at least 100 mA with 4.3 V in, lists 250 mA at the same input among its features, and limits at about 380 mA. The motor runs at about 54 mA and asks for up to 120 mA for the moment it starts, and the 10 µF on the output covers the first of that. From 5 V the regulator turns the difference into about 90 mW of heat, well under the 300 mW its package is rated for.
When it does not work
Yes, on this block. The net list puts VCC on the regulator's input and its 10 µF capacitor and nowhere else. SIGNAL is only the MOSFET's gate and a 10 kΩ to GND, and nothing on the board drives it. Your pin sees its own 3.3 V and nothing more. The rule that VCC must match the logic is for blocks that send a signal back.
Look for VIN or VBUS instead. On ESP32 and ESP32-S3 dev boards that pin carries the USB cable's 5 V while the board is powered from USB. If there is none, or the board runs from a battery, use 3V3. The motor still gets about 3.3 V.
VBUS is the USB connector's 5 V, and it is only there while USB is plugged in. On battery power, wire VCC to 3V3 instead. The motor gets about 3.3 V from that too, measured on a board, and shakes the same.
There is no reason to. The motor only ever gets 3.3 V, and every volt above that is turned into heat in the regulator. Its datasheet allows up to 8 V in, but nothing about this block is designed or tested beyond 5 V.
What the motor does to the switch as it stops, and the part that takes it.
The diode and the light →Edit this page — content/books/vibration-motor/why-vcc-can-be-5v.mdx
Questions about this product
See what other owners have asked, and read their solutions.
Vibration Motor
Loading discussions…
Discuss this article
Ask about this page. The answer stays here, on the page it belongs to, for whoever hits the same wall next.