Basic Brushless Motor Control Question

I’m new to brushless motors and my question is rather general. I purchase the following:

  1. 227:1 Metal Gearmotor 25Dx56L mm MP 12V with 48 CPR Encoder (Pololu item #: 3245)
  2. Pololu Dual MC33926 Motor Driver for Raspberry Pi (Pololu item #: 2756)

In looking at the python motor driver library ( it states that motor speed parameter varies from -480 to 480 and that 0 = Break. Where MAXSPEED = 480.

Motor/Gear Specification: Free-run speed @ 12V: 33 rpm
My question: Under a zero load situation, can I assume the motor shaft rotational speed changes linearly from 0 to 33 RPM for a corresponding driver speed change from 0 to 480? Or is it non-linear?



Our #3245 25D gearmotors are not brushless motors, but they will work with the Dual MC33926 Motor Driver Carriers (which are intended for brushed DC motors). You should get an approximately linear output from the MC33926 motor driver, though some factors such as load and the motor driver mode (e.g. drive/brake or drive/coast) could cause the output to be biased away from linearity to some extent. The Raspberry Pi example and the way the circuitry on the Pololu Dual MC33926 Motor Driver for Raspberry Pi is setup uses the driver in drive/brake mode by default, which should give you a more linear output than drive/coast.