Motors and Rumble · Volume 2
Eccentric Rotating Mass Motors — Force, Frequency, Start-Up and the Parts on Sale
How an off-centre weight on a brushed motor shakes a gun, why its strength and frequency move together, what the makers' sled figures mean for a 1.3 kg shell, how long it takes to start and stop, how long the brushes last, and which motors are worth putting on the bench
2.1 How an ERM works
An eccentric-rotating-mass motor is a small permanent-magnet brushed DC motor with a weight fixed off-centre on its shaft. Nothing else is needed: apply DC and it vibrates. The cycle of operation is the ordinary DC motor’s.
- Current flows through the brushes and commutator into whichever rotor winding is in position; the field of the stator magnet and the current in the winding make a torque.
- The rotor accelerates until the back-EMF, proportional to speed, has risen far enough that the remaining voltage across the winding resistance drives only the current the load and friction need. That is the running speed.
- The off-centre weight, mass m at radius r from the shaft, needs a centripetal force m·r·ω² to go round. The shaft’s bearings supply it, and the reaction pushes the motor body, and whatever it is fixed to, round in a circle at the shaft frequency.
- Switched off, the motor coasts down against friction and its own weight’s inertia, unless the driver shorts or reverses the winding to brake it (Volume 4).
The makers sell three constructions, and Precision Microdrives’ datasheets name them on each sheet:
Table 1 — The makers sell three constructions, and Precision Microdrives' datasheets name them on each sheet
| Construction | Example | What it means |
|---|---|---|
| Iron core | 312-107, 312-004, 334-401, 324-104 | Rotor windings on a laminated iron core: more torque and inertia, slower to start, robust; the larger the motor, the more likely it is iron-cored |
| Coreless (cylindrical) | 307-103 | Self-supporting winding with no iron: very low rotor inertia and inductance (55 µH against 870 µH for the similar-sized iron-core 312-107), so fast to start |
| Flat coreless (“coin”, “pancake”) | 310-103, 310-118, Adafruit 1201 | The whole motor is a 10 mm disc 2 to 3 mm thick with the weight inside; the phone and wearable part |
The brushes are “precious metal” in the small motors and carbon in the 34 mm 334-401, which also has ball bearings where the small ones have sintered bronze.12 Carbon brushes and ball bearings are what a motor built for higher current and longer running gets.
2.2 The force law, in numbers
The peak force is F = m·r·ω², and the body’s acceleration is that force over everything that moves with it. A maker’s datasheet gives the result rather than m·r, but the product m·r can be worked back from it. For Precision Microdrives’ 34 mm 334-401, the sled figure is 11 G peak-to-peak on a 1,000 g sled at 6,800 rpm.1 Half of 11 G is a peak of 5.5 G, 54 m/s²; on the sled plus the 75 g motor that is about 58 N, and at 712 rad/s the motor’s m·r is about 1.1 × 10⁻⁴ kg·m, for instance 11 g at 10 mm. That is consistent with the solid brass weight visible on the product photograph.

The same arithmetic on the others, using each sheet’s own sled:
Table 2 — The same arithmetic on the others, using each sheet's own sled
| Motor | Speed, rpm (Hz) | Sled | Typical amplitude, p-p | Peak force (est.) | m·r implied |
|---|---|---|---|---|---|
| PMD 334-401 | 6,800 (113) | 1,000 g | 11 G | ≈ 58 N | ≈ 1.1 × 10⁻⁴ kg·m |
| PMD 312-107 | 6,400 (107) | 250 g | 5.7 G | ≈ 7.3 N | ≈ 1.6 × 10⁻⁵ kg·m |
| PMD 307-103 | 13,800 (230) | 100 g | 7 G | ≈ 3.6 N | ≈ 1.7 × 10⁻⁶ kg·m |
| PMD 310-103 | 12,200 (203) | 100 g | 1.3 G | ≈ 0.65 N | ≈ 4 × 10⁻⁷ kg·m |
The estimates assume the sled moves freely as one rigid body with the motor, which is how the makers’ test is built (Volume 7). They show the scale: the 34 mm motor’s weight carries about three hundred times the m·r of a coin motor, and that difference is what a 1.3 kg gun needs.
2.3 Voltage, speed and strength move together
A brushed motor’s no-load speed is close to proportional to the applied voltage, less the drop across the winding resistance at the running current. The vibration force goes as speed squared. So, to a first approximation:
- halving the average voltage halves the frequency and quarters the acceleration;
- in velocity, which Volume 1 found is what sets felt strength well above threshold, the same halving gives one half, not one quarter, because velocity is acceleration divided by frequency.
This is the ERM’s defining limitation. Strength and frequency cannot be set separately. OpenFIRE’s “Rumble Intensity” is a PWM duty on the motor (Open-Source Firmware Vol 5, §5.8), so turning the intensity down also lowers the pitch of the buzz. With a 334-401 run at half its rated voltage, the vibration would fall from about 113 Hz to roughly 55 Hz, out of the hand’s most sensitive band but still a strong, heavy shake. The figures are a first-order model that ignores friction and the start voltage below which the motor will not turn at all (1.25 V typical for the 334-401 without load; up to 3 V on the sled).1
The second consequence is that a PWM duty is not a voltage. The motor’s winding inductance and the rotor’s inertia filter the PWM, so the motor runs at a speed set by the average, provided the PWM frequency is well above the motor’s electrical corner (L/R: 3.65 mH over 3.5 Ω is about 1 ms for the 334-401). At OpenFIRE’s 1 kHz the current still ripples substantially within each period, which is audible (Volume 4).
2.4 Lag, rise and stop
Precision Microdrives publishes three haptic times for each motor at rated voltage on its sled: the lag before any vibration appears, the rise to the rated amplitude, and the stop time to come to rest when released.1234

Table 3 — Lag, rise and stop
| Motor | Lag | Rise | Stop | Read |
|---|---|---|---|---|
| 334-401 (34 mm, 12 V) | 6 ms | 77 ms | 176 ms | Starts at once (big voltage, low resistance), takes 80 ms to full, coasts for most of 0.2 s |
| 312-107 (12 mm, iron core) | 15.5 ms | 85.5 ms | 180 ms | Typical of the small cylindrical iron-core part |
| 324-104 (24 mm, 5 V) | 58 ms | 100 ms | 130 ms | Large weight, slow motor: 0.16 s to full |
| 307-103 (9 mm, coreless) | 8 ms | 28 ms | 49 ms | The fastest ERM here, because of the coreless rotor |
| 310-103 (10 mm coin) | 40 ms | 87 ms | 115 ms | The phone coin motor: slow to start |
| 310-118 (10 mm coin) | 41 ms | 96 ms | 128 ms | Similar |
Two consequences for a light gun follow directly.
Rumble FF with a coin motor does not work as a per-shot cue. OpenFIRE’s Rumble FF runs the motor for half the rumble length per shot: 75 ms at the 150 ms default (Open-Source Firmware Vol 5). A coin motor spends 40 ms doing nothing and has reached about a third of its way to full amplitude when the drive is removed, and then it coasts for over 100 ms, so in autofire successive “shots” blur into one weak hum. A fast coreless motor, a longer event, or overdrive and braking from the driver (Volume 4) fix it.
Every iron-core motor needs braking to stop crisply. The 334-401’s datasheet stop time is 176 ms coasting; the maker’s product page gives a typical “active brake” time of 72 ms.5 Braking requires a driver that can short or reverse the winding, which a single low-side MOSFET cannot do (Volume 4).
2.5 Start current
At switch-on the rotor is still, there is no back-EMF, and the current is the voltage over the winding resistance. The sheets list it as “start current”:
Table 4 — At switch-on the rotor is still, there is no back-EMF, and the current is the voltage over the winding resistance. The sheets list it as "start current"
| Motor | Rated V | Terminal resistance | Typical running current | Typical start current (max) |
|---|---|---|---|---|
| 334-401 | 12 V | 3.5 Ω | 180 mA | 2,700 mA (4,200 mA) |
| 312-107 | 3 V | 5.9 Ω | 250 mA | 530 mA (600 mA) |
| 312-004 | 3 V | 2.3 Ω | 290 mA | 1,070 mA |
| 307-103 | 3 V | 5.7 Ω | 100 mA | 525 mA (650 mA) |
| 310-103 | 3 V | 61 Ω | 58 mA | 106 mA (150 mA) |
| Adafruit 1201 | 2–5 V | not given | 100 mA at 5 V | not given |
Sources: the Precision Microdrives sheets12346 and Adafruit’s product page.7
The start current lasts for the lag and rise, tens of milliseconds, and matters in two places: a USB port’s budget, where a motor on VBUS shares 500 or 900 mA with everything else (Power Supplies Vol 3); and the 24 V brick, whose trip band is the hard limit on the recoil rail (Volume 6). A driver that limits current (Volume 4) caps it at the cost of a slower start.
2.6 The parts, with their published figures
The table collects every ERM whose maker’s own figures could be read on 19 October 2026. Frequencies are the rated speed over 60.
Table 5 — The parts, with their published figures
| Part | Size, mass | Rated (max) V | Speed → frequency | Running current | Typical amplitude on the maker’s load | Normalised (100 g) |
|---|---|---|---|---|---|---|
| PMD 334-401 | Ø34 × 29.5 mm body, 75 g, carbon brush, ball bearings | 12 V (14.4 V) | 6,800 rpm → 113 Hz | 180 mA | 11 G p-p on 1,000 g | 110 G |
| PMD 312-107 | Ø12 × 15.1 mm, 9.1 g | 3 V (3.5 V) | 6,400 rpm → 107 Hz | 250 mA | 5.7 G p-p on 250 g | 14.3 G |
| PMD 312-004 | Ø12 × 20 mm, 8.8 g | 3 V (3.6 V) | 13,000 rpm → 217 Hz | 290 mA | 2 G p-p on 250 g | 5 G |
| PMD 324-104 | Ø24.4 × 12.4 mm, 32.7 g | 5 V (6 V) | 2,400 rpm → 40 Hz | 62 mA | 0.64 G p-p on 1,000 g | 6.4 G |
| PMD 307-103 | Ø8.7 × 25.1 mm, 4.6 g, coreless | 3 V (3.7 V) | 13,800 rpm → 230 Hz | 100 mA | 7 G p-p on 100 g | 7 G |
| PMD 310-103 | Ø10 × 2.7 mm coin, 1 g | 3 V (3.6 V) | 12,200 rpm → 203 Hz | 58 mA | 1.3 G p-p on 100 g | 1.3 G |
| PMD 310-118 | Ø10 × 2.1 mm coin, 0.8 g | 3 V (3.3 V) | 14,000 rpm → 233 Hz | 60 mA | 1.1 G p-p on 100 g | 1.1 G |
| Adafruit 1201 | Ø10 × 2.7 mm coin, 0.9 g | 2–5 V (rated 2.5–3.8 V) | 11,000 rpm at 5 V → 183 Hz | 100 mA at 5 V | not given | not given |
| DFRobot DFR0440 module | coin motor on a 30 × 22 mm board | 5 V; on/off or PWM input | not given | not given | not given | not given |
Speeds carry wide tolerances: ±1,350 rpm on the 334-401, ±3,000 rpm on the 310-103.14 A motor’s frequency in a given gun is something to measure, not assume.

The DFRobot module’s wiki gives only a 5 V supply, an on/off or PWM input and a 30 by 22 mm board carrying a coin motor.8 It is a coin motor with a transistor already fitted, and inherits the coin motor’s strength in a gun (2.7).
What is missing from the hobby market is any motor between the coin and the 34 mm class with a published amplitude. The “gamepad rumble motor” sold as console spares is in that gap, but no listing read for this dive gave an amplitude, a rated voltage that matched the controller it came from, or a maker.
2.7 What each one does to a whole gun

Scaled by mass (Volume 1, 1.8), the parts sort themselves into three groups for a gun of about 1.3 kg:
Table 6 — Scaled by mass (Volume 1, 1.8), the parts sort themselves into three groups for a gun of about 1.3 kg
| Group | Parts | On a 1.3 kg gun at rated voltage (est.) | Verdict |
|---|---|---|---|
| Strong | PMD 334-401 | ≈ 8.5 G p-p, ≈ 29 m/s² r.m.s., ≈ 41 mm/s at 113 Hz | More than needed at full voltage; headroom to run it at reduced duty |
| Moderate | PMD 312-107; PMD 324-104 | ≈ 1.1 G p-p (3.8 m/s² r.m.s.) at 107 Hz; ≈ 0.5 G p-p at 40 Hz | Clearly felt but light; the 312-107 is in the hand’s best band |
| Weak | PMD 307-103, 312-004, the LRA of Volume 3; coins 310-103, 310-118 | 0.1 to 0.5 G p-p at 170 to 230 Hz | A tingle in the grip; coins barely more than threshold |
The estimate is an upper bound for the whole gun, because the hand adds mass and damping, and a lower bound near the motor in a shell that is not rigid. It is the comparison that matters: about two orders of magnitude separate the coin motor most hobby builds use from a motor that would make a gun-sized object shake.
2.8 Brushes, bearings, life and noise
Life. Precision Microdrives tests longevity by “powering the motors at their rated voltage for 2 seconds, then turning them off for 2 seconds”, and reports a mean time to failure from a Weibull fit, with the warning that it “should not be interpreted as a guaranteed lifetime”.3 The coreless 307-103 has an MTTF of 1,780 hours (20 motors, 1,550 hours of testing); the 310-103 coin motor 132.9 hours.34 In a light gun’s terms, a 150 ms rumble event every time the trigger is pulled off-screen, 132.9 hours of running is about 3.2 million events. Brush life is not the limit for cue-style rumble; it becomes one only for long continuous rumble driven by a game, or for a motor run above its rated voltage, which wears brushes and commutator faster and is common practice in the hobby where a 3 V motor is put straight on USB’s 5 V.
Construction for duty. Carbon brushes and ball bearings (334-401) tolerate more current and more hours than precious-metal brushes and sintered bronze. Sega’s Alien3 gun manual has a section on replacing the motor brushes (Arcade Light Guns Vol 5), which shows what continuous arcade duty did to a motor.
Noise. The sheets give a “Typical Max. Mech. Noise” of 50 dB(A) for the 310-103 and the 324-104 and 65 dB(A) for the 312-107, without stating the measurement distance.492 An ERM’s noise is mostly the shell it is mounted in buzzing at the shaft frequency and its harmonics, plus brush noise; Volume 6 deals with the mounting.
2.9 Where to buy, and what it costs
Prices as read on 19 October 2026:
Table 7 — Prices as read on 19 October 2026
| Part | Seller | Price | Note |
|---|---|---|---|
| Adafruit 1201 coin motor | Adafruit | $1.95 (1–9), $1.76 (10–99), $1.56 (100+) | 2–5 V, no amplitude published |
| DFRobot DFR0440 module | DFRobot wiki; retailers | not captured from DFRobot’s own page | A search result put it at A$6.16 at an Australian reseller; not read on the seller’s page |
| PMD 334-401, 312-107, 312-004, 324-104, 307-103, 310-103, 310-118 | Precision Microdrives | not shown | The 334-401 page says “Stocked design” and lists no price; the datasheets say evaluation samples of stocked types “can be ordered directly through our online store”. Price by enquiry |
The absence of a listed price for the motors with real datasheets is the practical obstacle. A sample order of the shortlist below from Precision Microdrives, by enquiry, is the route that gets parts whose amplitude is known.
2.10 Why this, and why not the others
Criteria: felt strength on a gun of about 1.3 kg; frequency in or near the hand’s 80–160 Hz band; start and stop fast enough for per-event cues once driven well; a published amplitude, so that the bench result can be checked against the maker; fit in a 42 mm-wide shell; current that the supplies can carry (Volume 6).
Table 8 — Why this, and why not the others
| Candidate | For | Against | Decision |
|---|---|---|---|
| PMD 334-401 (34 mm, 12 V) | The only part strong enough on a whole gun, at 113 Hz in the best band, with headroom to run it softly; carbon brushes and ball bearings; 6 ms lag | Ø34 mm body leaves about 1.5 mm a side inside a 42 mm gun with 2.4 mm walls, so only the widest section takes it; the weight is exposed and needs a guard; 12 V needs the 24 V rail and a current-limited driver (Volumes 4, 6); price by enquiry | Shortlist: the design target |
| PMD 312-107 (12 mm, 3 V) | In the best band (107 Hz); fits anywhere; moderate strength; runs from 5 V through PWM | About an eighth of the 334-401’s force on the same gun; 3 V rating means 5 V must be PWM-limited | Shortlist: the compact fallback |
| Adafruit 1201 (coin) | $1.95, in stock, what hobby guns use; a baseline that shows what “normal” feels like | About a hundredth of the target’s force on a gun; 40 ms lag; no amplitude published | Shortlist: the baseline only |
| PMD 324-104 (24 mm, 5 V) | Low, heavy 40 Hz shake from 5 V at 62 mA | Weak for its 33 g; 58 ms lag and 100 ms rise; below the best band | Rejected |
| PMD 307-103 (coreless) | Fastest start and stop of any ERM here | 230 Hz, above the best band; weak on a gun | Rejected as the rumble motor; kept in mind for a grip-panel actuator (Volume 3) |
| PMD 312-004, 310-103, 310-118 | Small, cheap | Weak; above the band; coins slow | Rejected |
| Unbranded “gamepad rumble motor” | Probably between the 312-107 and the 334-401 | No maker, no figures; each one bought is a different part | Rejected as a design part; worth one on the bench as a reference |
| DFRobot DFR0440 | Driver included | Coin-motor strength | Rejected |
This is proposed decision row MR-1 (status: Testing), mirroring the solenoid dive’s approach: buy the shortlist and rank on the bench (Volume 7), because the gun’s real shell and the hand will change the numbers above.
2.11 What could not be verified
- Prices for every Precision Microdrives part: not shown on the product pages; enquiry only.
- The 334-401’s brushes: the datasheet says carbon; the product page, read through a summariser, said precious metal. The datasheet is taken as correct.
- The product page’s resistance figure for the 334-401 came through as “3,650 Ω”; the datasheet gives 3.5 Ω and 3,650 µH, which is consistent with a units slip on the page or in the reading. The datasheet is used.
- Noise test conditions (distance, mounting) on the PMD sheets.
- DFRobot’s own price for the DFR0440.
Sources
Footnotes
-
Precision Microdrives, 334-401 product data sheet (34 mm Vibration Motor, Uni Vibe), key features, construction, operational and typical performance tables, haptic characteristics. https://precisionmicrodrives.com/cdn/catalog_product/85ea5173-e218-43d2-aaac-ca7db3589865/334-401-datasheet.pdf, read 2026-10-19. ↩ ↩2 ↩3 ↩4 ↩5 ↩6
-
Precision Microdrives, 312-107 product data sheet, R002. https://precisionmicrodrives.com/cdn/catalog_product/3aee1d35-6a45-411f-8188-b85793c9c24e/312-107-datasheet.pdf, read 2026-10-19. ↩ ↩2 ↩3 ↩4
-
Precision Microdrives, 307-103.013 product data sheet (9 mm Vibration Motor), including the reliability analysis. https://precisionmicrodrives.com/cdn/catalog_product/4c94af6d-99d2-4677-8d91-1b217c8a69d5/307-103.pdf, read 2026-10-19. ↩ ↩2 ↩3 ↩4
-
Precision Microdrives, 310-103.004 product data sheet (10 mm Vibration Motor), and 310-118.001. https://precisionmicrodrives.com/cdn/catalog_product/59072e84-3ff3-4155-a98a-733d7a611a29/310-103.pdf and https://precisionmicrodrives.com/cdn/catalog_product/a28a1e83-edad-45e1-bd6f-afa9c5fef1d4/310-118.pdf, read 2026-10-19. ↩ ↩2 ↩3 ↩4 ↩5
-
Precision Microdrives, “34mm Vibration Motor - 30mm Type”, model 334-401, product page (“Stocked design”; typical active brake 72 ms; no price). https://www.precisionmicrodrives.com/product/334-401-34mm-vibration-motor-30mm-type, read 2026-10-19. ↩
-
Precision Microdrives, 312-004 product data sheet. https://precisionmicrodrives.com/cdn/catalog_product/a60f9ee5-498d-4015-9efd-6a8221d96843/312-004-datasheet.pdf, read 2026-10-19. ↩
-
Adafruit, “Vibrating Mini Motor Disc”, product 1201. https://www.adafruit.com/product/1201, read 2026-10-19. ↩
-
DFRobot, “Gravity: Vibration Motor Module”, SKU DFR0440, wiki. https://wiki.dfrobot.com/DFR0440, read via search 2026-10-19. ↩
-
Precision Microdrives, 324-104.001 product data sheet (24 mm Vibration Motor, 12 mm type). https://precisionmicrodrives.com/cdn/catalog_product/ddb19c06-c7da-46fc-9003-b7d636d6e1e5/324-104.pdf, read 2026-10-19. ↩
Comments (0)