Allegro MicroSystems APEK4964 User manual

APEK4964
A4964 Sensorless Sinusoidal Drive BLDC Controller
Evaluation Board User Manual
Introduction
This user manual describes the operation and use of the
APEK4964 evaluation board for the A4964 automotive,
programmable BLDC controller. The A4964 is a flexible
sensorless, sinusoidal motor controller that drives an external
three-phase N-channel MOSFET bridge for easy implemen-
tation of a BLDC motor driver. The A4964 can be used as
a standalone controller or it can be used in a system with a
microcontroller, providing communication to a central ECU
and intelligent fault and status handling. The A4964 can
provide the supply and watchdog for the microcontroller,
as well as a physical interface between a LIN bus network
or a supply level PWM signal and the microcontroller. The
A4964 can be easily put to sleep or woken up using software
commands or signal inputs. In the sleep state, the power
consumption can be reduced to a low level.
The motor can be driven using a number of modulation
options, from full three-phase sinusoidal drive to two-phase
trapezoidal drive and includes overdrive options in the sinu-
soidal mode.
Commutation between the phases is independent of any
position sensor and rotor position detection is achieved by
monitoring the motor back-emf (bemf). The integrated sen-
sorless startup scheme provides highly programmable startup
options, allowing the A4964 to operate over a wide range of
motor and load combinations. It also includes forward and
reverse pre-rotation (windmill) detection and synchroniza-
tion.
Several operational modes are available, including duty-
cycle (voltage) control, current (torque limit) control, and
closed-loop speed control. Operating mode and control
parameters can be altered through an SPI-compatible serial
interface.
Integrated diagnostics provide indication of undervoltage,
overtemperature, and power bridge faults and can protect
the power switches under most short-circuit condition. By
monitoring the contents of the status register in the A4964
via the serial interface, any fault conditions present can eas-
ily be identified.
The A4964 is fully described in its datasheet, which should
be read in conjunction with this user manual.
December 9, 2022
Table of Contents
Introduction ........................................................................... 1
Evaluation Board Features......................................................... 2
Evaluation Board Connections .................................................... 2
Power Connections .............................................................. 2
Load Connections ................................................................ 3
Control Connections ............................................................. 3
Software Installation................................................................. 3
GUI General Overview.............................................................. 4
Bridge PWM ....................................................................... 4
Speed Control..................................................................... 5
Motor Commutation .............................................................. 5
Motor Control...................................................................... 6
System ............................................................................. 6
Diagnostics ........................................................................ 7
Register Display .................................................................. 7
Action Buttons..................................................................... 8
Setting Up for First Time Use .................................................... 10
Set Supply Current to Minimum.............................................. 10
Interface the GUI ............................................................... 10
Controlling the Motor with the GUI.............................................. 10
Automatic Tuning for Speed Control Mode .................................... 10
Tuning Parameters for Speed Control.......................................... 12
Alignment ........................................................................ 12
Untuned Parameters for Ramp and Closed-Loop Sequence ........... 13
Ramp ............................................................................. 13
Coast ............................................................................. 14
Closed Loop Control ........................................................... 14
Speed Loop Gains.............................................................. 14
Position Loop Gains............................................................ 15
Phase Advance ................................................................. 15
Bemf Sensing ................................................................... 15
Tuning Parameters for Current Control and Open Loop Voltage Control ... 16
Appendix A: Evaluation Board Schematic ..................................... 17
Appendix B: Evaluation Board Layout.......................................... 18
Appendix C: Evaluation Board Components .................................. 19
Appendix D: Settings.............................................................. 20
APEK4964-UM, Rev. 4
MCO-0001338
Figure 1: A4964 Evaluation Board

2
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
Evaluation Board Features
The evaluation board is a two-sided FR4 surface-mount board,
as shown in Figure 1. This board includes the necessary passive
components and connections to provide a complete interface
between the required microcontroller and a three-phase BLDC
motor using the A4964. The board can also be run without a
microcontroller with a suitably programmed A4964 sample. The
board requires a single DC power supply between 5.5 V and 50 V.
The board does not include any reverse battery or transient clamp
circuits. The motor is connected to the board through a high-cur-
rent three-way connector and the main supply is connected to the
board through a high-current two-way connector. Additionally, a
USB cable is provided, together with a graphical user interface
(GUI) for users to control the motor, to program many of its inte-
grated features, and to read back diagnostic information via the
serial interface. A microcontroller is included on the evaluation
board to provide improved serial interface communication perfor-
mance between the PC and the A4964. In particular, this allows
the A4964 to be continuously interrogated for data log informa-
tion and to display that information in real time in the GUI. This
should not discourage users from using their own microcontroller
to communicate directly with the A4964, and a suitable micro-
controller connection is available.
The power section of the evaluation board is designed to dem-
onstrate the functionality of A4964 and has limited load current
capability. In the supplied configuration, the board can provide a
continuous motor current of ~10 A and a peak motor current of
~20 A for short period in normal room temperature conditions.
Circuit Description
The circuit diagram for the evaluation board is shown in Appen-
dix A. This provides the basic components required to use the
A4964 to drive a motor. The motor can be controlled via the
serial interface, by using the on-board PWM generator, or via
an externally supplied PWM signal input on the LIN terminal.
The serial interface control signals can be generated by the GUI
provided or by a user-provided processor or controller attached to
the SPI connector on the board.
The maximum current limit for the board is determined by the
sense resistors. Two 20 mΩ sense resistors in parallel are pro-
vided on the board, giving 10 mΩ total sense resistance. The
maximum possible current is limited by this resistor to 20 A. The
current limit can be changed by changing the sense resistor value
using the equation:
ILIM – VILIM
RSENSE
where RSENSE is the sense resistor value,
VILIM is the internally generated threshold voltage, and
ILIM is the limitation current value.
It is recommended to keep the maximum current limit below
20 A for this evaluation board. Lower current limits (higher sense
resistor values) can be useful for higher accuracy control of lower
power motors. The full circuit schematic is shown in Appendix A,
and the component placement and board layout is shown in
Appendix B. The function, specification, and selection criteria for
the components are listed in Table 2 in Appendix C.
Evaluation Board Setup and Operation
In order to run a motor using the evaluation board, the following
items are required:
• USB cable
• A4964 demo board
• External motor supply (5.5 to 50 V)
• USB cable driver and software
• A4964 Serial control GUI software
• Windows® based PC
A typical connection diagram to interface the GUI is provided in
Figure 2. The USB cable and GUI provided is not the only inter-
face option to control the A4964 to drive the motor. The A4964
evaluation board can also be used in conjunction with an exter-
nal microcontroller using serial interface communication or the
control can be done in standalone mode by using the LIN input as
described previously.
Figure 2: Connection Diagram to Interface the GUI
Evaluation Board Connections
The A4964 evaluation board has six connectors: a two-way screw
connector for the main supply, a two-way connecter that provides
the logic supply output from the A4964, a three-way screw con-
nector for the motor connection, a two-way screw connector for
LIN terminal for standalone mode control, a USB connector to
interface to the GUI, and a 16-pin IDC cable connector to inter-
face to an external microcontroller.
Power Connections
Power for the motor phases is provided through the two-way
screw connector X1. A positive supply, between 5.5 and 50 V,
is connected to X1, labelled VBB. The supply return is labelled

3
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
GND at X1. The power source for the motor phase current must
be capable of providing the necessary continuous input current at
the required input voltage to drive the motor up to the board cur-
rent limit plus any inrush current. The motor supply voltage must
not exceed 50 V in any conditions or permanent damage may
occur to the A4964, other components on the board and possibly
the motor. The current limit of the supply should initially be set to
twice the maximum operating current for the motor being driven.
The A4964 can provide logic voltage levels of either 5 V or 3.3 V
to different target devices such as external MCU through X2
connector as long as the provided current does not exceed 70 mA.
The logic level of the target device must be connected to the X2
connector at the point, labelled VLR, and the return path must be
connected to X2, at a point labelled GND.
Load Connections
A three-phase BLDC motor is connected through the three-way
screw terminal, X5, labelled SA, SB, and SC. The current to drive
the motor is provided via the three-phase MOSFET bridge from
the main supply connected to X1.
Control Connections
The serial interface communication between the A4964 and the
Windows® based GUI is provided using a standard USB to micro
USB cable by connecting the micro USB end to the connector X7
on the evaluation board and the standard USB connector to the
target PC (see Software Installation section for further details).
If an external microcontroller is to be used to communicate
directly with the serial interface of the A4964, then the signals
STRn, SCK, SDI, SDO, and GND must be connected to termi-
nals 18, 22, 24, 26, and 16 of the connector X3 respectively. In
this case, the jumpers J4, J5, J6, and J7 must be removed.
If standalone control of the motor is required, an externally
generated PWM signal can be applied to connector X4 at a LIN
terminal. The positive signal level must be connected to the
point labelled LIN and the return path must be connected to the
point labelled GND. The duty cycle of the PWM signal would
then determine the demand input. In standalone mode, the DIAG
terminal can also be shorted to the LIN terminal to shut down the
system in case any fault condition exists.
Software Installation
A USB cable is provided for users to operate the A4964 evalua-
tion board from a Windows® based desktop or laptop PC using
the A4964 serial control GUI. Hardware drivers must be installed
for the USB cable before use. A driver installer can be down-
loaded for the correct Windows version from the drivers page on
the FTDI website at ftdichip.com/FTDrivers.htm.
The detailed installation guides for the hardware driver can be
found through the support page on the FTDI website.
When hardware drivers are successfully installed, a virtual COM
port will appear in the Device Manager as shown in Figure 3.
Figure 3: Windows Device Manager
Allegro also provides a A4964 serial control GUI, which can be
used to operate the evaluation board through the USB cable. The
GUI is a standalone executable file, named A4964SerialVxpx.exe,
where xpx is the version number. The latest versions can be
accessed on the Allegro support website at registration.allegro-
micro.com. This GUI can be run directly on a Windows-based
PC without installation. A screenshot of the GUI when running is
shown in Figure 4.
Figure 4: GUI – Main Window
When running, the GUI will continuously check the communica-
tion between the PC and the USB cable. If the hardware driver
for the cable is successfully installed, the “SPI Status” window
in the GUI will display “OKAY!” when the cable is connected
between the PC and the evaluation board. If the cable is discon-
nected, or the driver has not been installed correctly, then the
“SPI Status” window will display “False!”.

4
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
GUI General Overview
The main window of the GUI is shown in Figure 4. Various set-
tings such as type of control, fault detection, etc., can be config-
ured in the GUI. Settings are grouped based on their functionality
in seven pop-up windows marked with red rectangle in Figure 4.
The summary of each configuration option is provided in this
user manual; however, if a detailed explanation of any parameter
is required, it can be easily found in the datasheet by searching
the relevant title.
For example, after clicking on the Bridge PWM button, the
window shown in Figure 5 will open. Then, if further informa-
tion about “Modulation Mode” is required, the title “Modulation
Mode” can be searched in the A4964 datasheet in order to obtain
full details about it.
Bridge PWM
The first pop-up window is the Bridge PWM (Figure 5).
Figure 5: GUI – Bridge PWM Section
The “Modulation Mode” setting defines the number of phases
that are turned on at the same time. For three-phase, all of the
phases will be driven with PWM signal, whereas for two-phase,
one of the phases is always driven low and two other phases are
driven with PWM signal. The two-phase modulation results in
lower switching loss; however, with three-phase modulation,
torque ripple is reduced, resulting in less audible noise at low
power outputs. Both trapezoidal and sinusoidal driving mode
are available in the A4964, which can be selected in the “Drive
Mode” setting. If higher driving capability is required than is
available in sinusoidal mode, the “Overmodulation” setting can
be used.
The frequency of the applied PWM signal can be controlled in
the “PWM Fixed Period” setting, and the alignment of PWM sig-
nals in the three phases can be done by using the “PWM Mode”
setting.
In order to avoid short circuit in the phase of the power MOSFET
bridge, a dead time is required between generating a low or high
side turn-off signal and a complementary turn-on signal. The
duration of the dead time can be selected using the “Dead Time”
setting.
In order to reduce the radiated and conducted electromagnetic
emission (EM), the dither frequency scheme can be used. By
stepping the PWM frequency in a triangular pattern, the EM
energy associated with the switching can be spread across a spec-
trum more effectively. The amount, duration, and the number of
steps can be controlled using “PWM Dither Freq Step”, “PWM
Dither Dwell Time”, and “PWM Dither Step Count” accordingly.
More information about dither frequency scheme can be found in
the datasheet.
In some applications, in order to comply with the EMC emis-
sion regulation, it is necessary to control the rate of change of
the phase voltage. This can usually be achieved by controlling
the FET gate charge and discharge rate. In the A4964, the slew
rate control can be used to control the FET charge and discharge
rate. The amount of the charging current applied to the gate of
the FET is controlled by two parameters, labelled IR1 and IR2.
For the duration defined by TR, the current defined by IR1 is
initially applied to the FET. Usually IR1 is set to maximum, and
turn-on duration is set to last long enough to reach the Miller
region. Once the duration TR ends, the current IR2 is sourced to
the gate of the FETs. IR2 is usually set lower than IR1 to increase
the duration of Miller region, which would therefore result in a
slower rise of the phase voltage. When the FET reaches a fully
on-state, the drive output will change from current mode to volt-
age mode in order to maintain the MOSFET in the fully on-state.
The turn-off sequence follows the same procedure in the reverse
manner, and the amount of sinking currents are determined by
IF1 and IF2. The duration of IF1 in this case is determined by
TF. More information about slew rate control can be found in the
datasheet.
The maximum current limit can be set for the system with the
help of current limit configuration. The amount of current going
through the motor can be determined by measuring the voltage
across the sense resistor, which are connected to Terminal CSP
and CSM as shown in Figure 2. Each time the output of the gate
driver changes, the current limit blank time is triggered. The
duration of blank time can be controlled by modifying OBT.
If at the end of the blank time voltage across the sense resistor
is higher than the current threshold limit defined by VILIM, all
the high-side outputs are turned off, and the phase current will
circulate through the low-side switches. This state is maintained
until the next PWM period starts. VILIM can be calculated using
the following equation:
VILIM = VMIT × VISC
where VMIT is the maximum threshold of the sense amplifier,
which can be set by MIT variable, and
VISC is the current limit scale defined by VIL.

5
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
For example, if VMIT is set to 200 mV and VISC to 1/16, then
the maximum allowed voltage across the sense resistor is equal
to 12.5 mV. The current limit can be disabled by clicking on the
System window and disabling DIL as shown in Figure 10.
Speed Control
In this section of the GUI, the parameters relating to acceleration,
deceleration, underspeed, and overspeed threshold can be modified.
Figure 6: GUI – Speed Control Section
The acceleration and deceleration profile that can be achieved
with the A4964 is shown in Figure 7. The linear speed rise, or
constant acceleration, is limited by the product of SGL and the
gain SG. Once the motor reaches speed = reference speed – SGL,
the acceleration will be limited by SG only. For deceleration,
there is an additional variable limiting the acceleration, which is
labelled DF. During deceleration, some current may flow back to
the supply, resulting in the rise of voltage to a dangerous level.
Therefore, introduction of this new variable into the deceleration
profile gives more feasibility in terms of control.
In order to mitigate the impact of any transient disturbance of the
power supply voltage on the motor control, voltage compensation
DV can be used. For supply voltages between 7 to 19 V, the com-
pensation should be set to 12 V, and for voltage ranges between
14 to 38 V, compensation should be set to 24 V.
Voltage compensation only affects open- and closed-loop speed
control and does not have any impact on the closed-loop current
control. More information about control modes are provided in
the Motor Control section.
The minimum and maximum achievable speed can be set by
the underspeed (SL) and overspeed (SH) threshold. If the motor
speed is below the underspeed threshold or above the overspeed
threshold, a loss of synchronization occurs, the fault LOS (shown
in the content of status register in Figure 4) will flag, and the
motor will stop by shutting down the FETs M1-M6 (shown in
Figure 2). More information about LOS can be found in the
datasheet.
Figure 7: Acceleration and Deceleration Prole
The electrical motor reference speed used in speed control mode
is the product of “Resolution”, SR, and “Demand Input”, DI. For
example, if SR is 0.2 Hz and DI is 100, then the reference speed
attempted by the controller to be achieved is equal to 20 Hz.
Motor Commutation
Figure 8: GUI – Motor Commutation Section
The content of motor commutation pop-up window is shown in
Figure 8. The parameters in this section affect the closed-loop
control and must be properly tuned in order to allow smooth
operation of the motor. The A4964 uses motor bemf for control
and the “BEMF Window” and “Sampling” settings are used to
achieve this.
In addition, to allow the motor to operate beyond the base speed
with the same supply voltage, field weakening must be per-
formed. This is accomplished by tuning parameters in the “Phase
Advance” section. Further information about control gain adjust-
ment, bemf sensing, and phase advance are provided in this user
manual in the Setting Up for First Time Use section.

6
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
Motor Control
Figure 9: GUI – Motor Control Section
This section of the GUI focuses on startup configuration. If there
is loss of synchronization in the system, RSC can be used to
restart the system if enabled. RSC can also restart the system in
cases where there is a supply or logic undervoltage.
Before applying the closed-loop speed control, there is a startup
sequence that consists of an alignment, followed by an open-
loop commutation with increasing speed and a short motor coast
period. The content of each of the startup sequences can be tuned
and modified to achieve smooth and consistent startup. The
startup sequence is discussed in detail in the last section of this
user manual.
There are some occasions where the motor may still be rotating
due to a previous running state or load condition. In these cases,
it is possible to use the windmill start feature to bypass the startup
sequence. The windmill startup conditions can be further studied
in the datasheet.
The motor rotation direction can also be controlled by modifying
“Rotation Direction”, DIR. If electromagnetic brake is required,
the “Brake Function”, BRK, can be used to enable all low-side
FETs and disable all high-side FETs. By enabling all low-side
FETs, the current continues to flow within the phases due to
bemf, creating torque against the rotational direction of the motor
and therefore forcing the motor to stop.
The motor constant (KM) is used to determine the application of
correct duty cycle to the bridge if windmilling or coast mode are
enabled. KM is related to the motor bemf constant and can be cal-
culated based on the following equations depending on the setting
for voltage compensation (DV).
KM =
⎧
⎪
⎨
⎪
⎩
642.4
VBB
×Kemf
npp
, DV = 0
53.5 × Kemf
npp
, DV = 1 or 3
53.5 × Kemf
npp
, DV = 2
where Kemf is the motor bemf constant in unit of v×s / rad, and
npp is the number of pole pairs.
System
Figure 10: GUI – System Section
In this pop-up window, several features of the device—such as
logic regulator and driver output voltage—can be modified. In
addition, the type of control to be applied—such as speed or cur-
rent control—can be selected. If the A4964 is used in conjunction
with a microcontroller, the watchdog can be used to determine if
the microcontroller is operating in an adverse state.
When watchdog is enabled, the input waveform to the WDOG
terminal must follow a certain configuration, which is explained
in the datasheet. If a watchdog failure occurs, the MRSTn termi-
nal output, which is an active-low signal, can be used to disable
or reset the microcontroller. A watchdog failure also disables all
the switches and can put the device to sleep depending on the
choice of settings. If the watchdog feature is not used, it should
be disabled in order to allow correct operation of the A4964
device. This can be done by masking the WD bit in the main
menu of the GUI shown in Figure 4.
There are three control modes in the A4964: closed-loop speed
control, closed-loop current control, and open-loop voltage con-

7
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
trol mode, which can be set by defining the CM bit.
There are two ways to set the demand input (speed reference) for
the A4964 in the closed speed control mode. The first method is to
define the required demand input in the GUI as shown in Figure 4.
In this case, serial interface communication is used and therefore
the “Operating Mode” OPM shown in Figure 10 must be set to
SPI. The other method is to apply duty cycle to the LIN input. In
this case, the OPM must be set to PWM (standalone mode). More
information about the LIN interface can be found in the datasheet.
When operating in closed-loop current control mode, the current
limit bit, DIL, must be enabled. In this case, the “Current Limit-
ing!” status in the main window of the GUI, shown in Figure 4,
will be shown in red if the current hasn’t reached to the defined
limit. Otherwise, it will be shown in green. In closed-loop speed
control or voltage control mode, if the current limit is enabled, the
“Current Limiting!” status will be red if the current has reached the
limit and it will be gray if the current is not at the limit.
As discussed previously, one way to put the device into sleep is
to use watchdog. Another method is to make a logic low to high
transition on the GTS bit. More information on sleep state and
how to wake up the device can be found in the datasheet.
Diagnostics
Figure 11: GUI – Diagnostic
The setting in the diagnostic register should be adjusted properly
in order to increase the reliability of the overall system and to
prevent possible damage to the A4964 as well as other components
such as FETs. The ESF bit, if set to “Stop on fail”, will disable all
the A4964 outputs in several conditions such as overtemperature,
drain-to-source overvoltage, and power supply (VBB) undervoltage.
The list of failures that can result in disabling the outputs when
ESF is set to “Stop on fail” can be found in the datasheet.
The drain-to-source voltage threshold VT provides protection for
the system in case any short circuit occurs in the bridge FETs.
When VDQ is set to “Debounce”, if the measured voltage across
FETs is higher than VT when they are fully on, all the outputs
will be disabled after the condition has persisted for the duration
VQT. If VDQ is set to “Blank”, the comparison of voltage across
the FET and overvoltage threshold VT is ignored once the output
is turned on for the duration defined by VQT. When VQT ends, if
the voltage across the FETs is higher than the threshold VT, then
the outputs will be disabled if ESF is set to “Stop on fail”.
The DIAG terminal on the A4964 evaluation board can provide
important information, such as motor electrical speed, and low-
or high-level signals in case of fault conditions. The output of the
DIAG pin depends on the setting of DGS. For example, if DGS
is set to “Active low fault flag”, then the DIAG will output a low
signal in case any fault occurs. If it is set to FG, it will then out-
put the motor speed, and so on. More information on the different
types of output waveforms depending on the setting of the DGS
can be found in the datasheet.
When CKS is set to “High impedance”, the SDO terminal output
works as it would during normal serial interface communica-
tion. When CKS is set to “Divided system clock”, it will output
the square waveform at a ratio of clock frequency when no data
is being transmitted (STRn = 1). This generated waveform will
allow more precise calibration of the timing settings, if required.
Register Display
Figure 12: GUI Register Display
The register display, shown in Figure 12, provides the hexadeci-
mal values of the present contents of the registers. Once all reg-

8
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
ister values have been tuned to a specific motor and load, these
settings may be written to the non-volatile memory (NVM) inside
the A4964. These values will then be used as the default power-
up values and can be used to avoid reprogramming the registers
at each power-on. This can then permit the A4964 to operate in a
standalone mode with only a PWM control input.
To write the present register values into NVM, the main sup-
ply should first be increased to at least 24 V before clicking on
the “Write NVM” button. The NVM write status box will then
display “Programming!” and the DSR selection pop-up window
will appear, asking “Would you like to set DSR=1”. The DSR bit
is not selectable in any other window and can only be set to 0 or
1 when writing to NVM. Click “Yes” or “No” and writing to the
NVM will commence. If NVM is updated successfully, then the
NVM write status box will display “success!”. If there are any
problems such that NVM is not updated successfully, then the
NVM write status box will display “Failed!”. If this occurs, check
that the supply voltage is above 24 V and the A4964 is active
and communicating with the GUI. Once any problems have been
resolved, click again on the “Write NVM” button.
Action Buttons
Clear
The “Clear” button will remove all the previous fault condition
shown in the “Status” section of Figure 4. If “Clear” is pressed
and there is no fault in the system, the content of the status
register should be shown in green. If the fault still exists, the cor-
responding fault will be shown in red.
Run
By pressing the “Run” button, the output of the A4964 is enabled
and the motor will start running if the settings are configured
properly.
Load Default
This button provides a quick way to set all parameters to their
datasheet default values. After clicking the “Load Default” but-
ton, all the selections in the drop-down menus and the display
buttons will be set to default values defined as the power-on reset
values in the datasheet. These values will then be written to the
A4964 mounted on the board if it is active.
Load
Clicking on the “Load” button allows loading previously con-
figured parameters into the GUI and as well updating the A4964
with these new parameters. The previously configured parameters
are in a text file with the “.rst” extension. Successful loading
occurs if the A4964 device is powered on and the USB connec-
tion between A4964 and PC exists at the time of the loading.
When the A4964 is initially powered up and the POR bit is set,
the content of registers from A4964 will be loaded into the GUI.
Also, if the GUI window is opened after the A4964 is powered
up, the contents of the registers in the GUI will be again updated
with A4964 register values. Thereafter, each time a parameter
is changed in the GUI, the register values of the A4964 will be
automatically updated with the changes.
If the USB is connected after the A4964 is powered up and the
GUI window is opened, the registers content from A4964 will not
be loaded into the GUI and vice versa. In this case, the register
values of the GUI and A4964 can be different, and therefore the
options “Update GUI » IC” and “Update IC » GUI” which are
described next can be useful.
Update GUI » IC
This option allows the contents of the GUI to be uploaded to
the A4964. By default, the contents of the GUI are loaded to the
A4964 whenever a parameter is changed. This option ensures that
the current contents of all registers in the GUI are loaded to the
A4964 and is useful for cases where the USB cable is discon-
nected and connected.
Update IC » GUI
When power is first applied to the A4964, the register parameter
settings that are saved in NVM will be loaded to the GUI. If the
GUI window is opened after the A4964 is powered up, the pres-
ent contents of registers from the A4964 will be loaded to the
GUI. This option ensures that the current contents of all A4964
registers are loaded to the GUI and is useful for cases where the
USB cable is disconnected and connected.
Save
The settings of operating parameters in the GUI can be saved to a
text file (with the file extension “.rst”) for future testing. To save
the parameters, click “Save”, input the file name in the pop-up
window, and choose a folder where the configuration file will be
saved. Then click “Save” in the pop-up window.
Demand Input
By increasing or decreasing the demand input, the user can alter
the motor reference speed or current limit depending on the con-
trol mode operation.
The motor electrical reference speed in closed-loop speed control
mode is equal to demand input (DI) multiplied by resolution SR.
For example, if demand input is equal to 200 and resolution is
equal to 0.8 Hz, then the motor electrical speed should be equal
to 160 Hz at steady state.
The amount of current limit in current control mode is defined by
the following equation:

9
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
ILIM – VILIM
RSENSE
where Rsense is the sense resistor.
In this case, demand input sets VILIM as a ratio of the maximum
threshold of VMIT. VMIT can be set by modifying the variable
MIT that can be found in the “Bridge PWM” section of the
GUI. For example, when demand input is 256 and VMIT is set to
200 mV, VILIM will be 50 mV.
Motor Status
Should there be any fault during operation of the A4964, the
“Status” section of the GUI will provide information about the
type of the fault. Some of the faults that are shown in the “Status”
are overtemperature, supply undervoltage, regulator undervolt-
age, etc. Once a specific type of fault occurs, the associated fault
will be marked in red and if there is no fault, it will be marked in
green.
When the A4964 is initially powered, the bits VLU, VRU, VSU,
WD, SE, POR, and FF will be shown in red. If watchdog is not
used, the WD bit must be masked as previously discussed. The
other faults can be cleared by clicking on the “Clear” button.
However, if the aforementioned faults genuinely exist in the sys-
tem and is not due to initial power on, even after clicking on the
“Clear” button, the fault will still be shown in the status section,
and its source must be removed from the system in order to clear
the fault in the GUI.
Capture
Data acquisition is possible by pressing the “Capture” button. The
data acquisition window will provide information about motor
speed, average supply current, supply voltage, chip temperature,
demand input, applied bridge peak duty cycle, and applied phase
advance. To ensure correct reading for motor speed and average
supply current, the number of pole pairs and sense resistor value
must be configured correctly. The information in the capture win-
dow is updated at approximately 700 ms intervals; however, this
strongly depends on the operating system and number of applica-
tions opened in the system background.

10
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
Setting Up for First Time Use
Before operating the evaluation board for the first time, it should
be set into a safe condition to avoid overcurrent stress to any
components or attached load. The jumpers should be in their
default position as shown in Table 1, and switch S1 should be in
the “On” position.
Set Supply Current to Minimum
Before connecting the supply for the first time, ensure the supply
current limit is set to a low value to avoid unexpected current
caused by any component or load problems.
After connecting the power supply to VBB (connector X1), the
power supply current should be approximately 15 mA at 12 V
without any motor connected.
Interface the GUI
Table 1: Default Jumper Connections
Jumper Terminal Details Default
Setting
J1 Supply Voltage to VBB input Short
J2 VLR output to on board connector Short
J3 Supply Voltage to VBB (bypass diode) Short
J4 Clock signal for SCK input Short
J5 Signal from master device to SDI Short
J6 Strobe signal from STRn to the target device Short
J7 Signal output from SDO to master device Short
J8 Signal from DIAG to LED Short
J13 Signal from VBB to on Board 5 V regulator Short
Once the supply voltage and current have been checked, the
board can be connected to the PC that has the GUI installed. The
procedure for proper installation of the USB driver as well as
the GUI has already been discussed in the Software Installation
section. The connection can be done by connecting one end of the
provided micro USB to the PC and the other end to the evaluation
board (connector X7). After connecting the two devices together,
open the GUI software. If the connection has been successful, the
“SPI status” window indicates “OKAY!” as shown in Figure 13,
otherwise it will indicate “False!”.
There is one more step needed before setting up the control
parameters of the motor in the GUI and connecting the motor to
the board. Since watchdog is not used when interfacing the GUI,
it must be masked in order to avoid the device going into sleep
mode or disabling the output as discussed in section “System”. In
order to mask the watchdog, simply checkmark the “WD” bit as
shown in Figure 13, then press the “Clear” button. If the opera-
tion is successful, all the text under the “Status” and “Readback
Register” should be shown in green and the WD will be grayed
out as shown in Figure 13. At this point, the motor can be con-
nected and it is now possible to configure the control setting to
run the motor.
Figure 13: GUI – Main Window
Controlling the Motor with the GUI
A number of example settings to run motors for different appli-
cations are provided in Appendix D. Once the desired setting is
determined, open a blank text file (e.g., using Notepad), copy
and paste the determined setting into the file. Next, save the file
with the “.rst” extension. In the main window of the GUI, click
“Load”, locate the file and open it. At this point, the GUI should
be updated with the new parameters and the GUI then updates the
A4964 with these parameters automatically.
Click the “Run” button and the motor should start to operate. If
the motor started successfully, further tuning may not be needed,
and the speed can be further increased or decreased by changing
the DI. The A4964 GUI also provides an automatic tuning fea-
ture, which can be used to adjust the control setting gains should
the user prefer not to use the provided files. If in both cases,
loading the file or using automatic tuning feature, there is startup
problem, the guidelines provided in the Tuning Parameters
for Speed Control section can be followed and with minimum
changes, the motor should be able to run.
Automatic Tuning for Speed Control Mode
The A4964 GUI provides an automatic tuning feature to adjust
the gains for the closed-loop speed control. To use the automatic
tuning feature, first ensure that the board is powered, and the PC
is connected to the GUI via the USB connection. Then click on
the “Load Default” button to load the registers with the default
values and mask the watchdog bit WD as shown in Figure 13 if
watchdog is not used. The parameters that are changed during
automatic tuning is shown and marked in Figure 14.
Once the default values are loaded in the GUI, click on the
“Automatic Tuning” button. The pop-up window shown in
Figure 14 should open.

11
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
Figure 14: Automatic Tuning Window
In order to start tuning, two important motor parameters (rated
speed (no load) and number of pole pairs) are required which
can be easily found in the specific motor datasheet. The user
then must provide the desired acceleration and PWM switching
period. It should be noted that if fast acceleration is required, the
current limiting function may have to be disabled by setting the
DIL bit to 1. To do this in the GUI, click on the “System” tab and
set “Current Limit” to “Disabled”. Once all the parameters are
defined, click on the “SET” button to ensure the “Set Maximum
Speed” window is updated with the latest motor rated speed and
then click on the “Start Tuning” button. A new pop-up message
will appear to confirm all the parameters are configured prop-
erly as shown in Figure 15. By clicking “Yes”, the gains will be
adjusted accordingly. Next, by clicking on the “RUN” button in
the main window of the GUI, the motor should be able to run.
If there is doubt about any of the parameters, click “No”, fix the
values, and click on “Start Tuning” again.
Figure 15: Automatic Tuning Message
The only parameter that must be tuned in the “Auto Tuning”
window is the desired acceleration. If the requested acceleration
is too high and is more than the capability of the motor, there can
be a startup problem. It is recommended to start with a low accel-
eration profile and increase it step by step until the motor can no
longer fulfil the desired acceleration. In rare cases where it is not
possible to start up the motor with any of the provided accelera-
tion profiles, a small adjustment to the control gain settings will
be necessary for which the guidelines provided in the next section
can be used.

12
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
Tuning Parameters for Speed Control
Figure 16: Startup Sequence
The startup sequence summary is shown in Figure 16. In order to
achieve successful startup of the motor, the parameters for each
of the sequences must be modified and tuned. Before starting the
parameter tuning, load the default setting (shown in Appendix D)
to ensure the initial settings are set properly and only the relevant
parameters that require tuning are changed.
Alignment
The first settings that must be tuned for the specific type of motor
are those related to alignment. This is used to move the rotor to a
known position before initiating a forced commutation sequence
to start the motor. This function is helpful for motor and loads
with high inertia. Consider a simplified drawing of typical BLDC
as shown in Figure 17.
Figure 17: Illustration of rotor movement
The winding of phase A is energized to form a magnetic pole
shown in orange in Figure 17a. The blue and orange colors indi-
cate magnetic poles of different polarities. The rotor starts rotat-
ing clockwise as shown in Figure 17a until its blue magnetic pole
is fully aligned with the stator, which is shown in Figure 17b. At
this point, in order to further rotate the rotor, phase B of the stator
must be commutated. However, for example, for the duration
of phase A turn-on, it is not possible for the rotor to fully align
itself with the stator due to its high inertia. Thus, it is placed at
the location shown in Figure 17c. At this point, by commutating
phase B, rather than moving clockwise, the rotor will try to rotate
counterclockwise, causing disturbance in the motor performance.
Therefore, the alignment function in the A4964 helps placing the
rotor into a known position in order to achieve correct commuta-
tion sequence in the next startup stage, which is ramp.
The state flow diagram to tune the parameters for alignment is
shown in Figure 18. Depending on the position of the rotor and
its inertia, the parameters relating to alignment (HT, HD, and
HR) must be tuned.
These parameters can be found in the “Motor Control” section of
the GUI as shown in Figure 9. For example, if the inertia is high
and initial rotor position is far from the known position, the hold
time, HT, must be increased to provide more time for the rotor
to move to the desired position. Increasing the peak duty dur-
ing alignment parameter, HD, and reducing the alignment duty
cycle ramp time, HR, results in faster movement of the rotor to
the known position, which can be used if a long hold time is not
desired. It should be noted that during alignment, once the motor
reaches the known position, it will remain in that position until
HT ends and the ramp sequence begins.
If there are any problems with tuning the parameters in this sec-
tion, the motor will start vibrating and juddering at a certain posi-
tion. For example, if HT is set to 3 seconds and motor juddering
is observed after 2 seconds of running the motor, it means that the
parameters in the alignment section must be tuned.
Otherwise, if the motor vibration occurs after three seconds, the
problem is due to other untuned parameters in the next sequences
of startup. The worst-case condition is if the rotor is 180˚ far from
the known position and motor inertia is high. In this case, longer
HT, larger value of HD, and lower value of HR is required in
order to allow the rotor reach to the known position and achieve
robust startup. It should be noted that a high value of HD can also
result in motor vibration, and so if the motor starts to vibrate, this
value must be reduced.
Figure 18: State Flow Diagram for Alignment Sequence
Tuning Parameters

13
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
Untuned Parameters for Ramp and Closed-Loop
Sequence
The untuned parameters in both ramp and closed-loop sequence
can result in stopping of the motor. In order to check at which stage
of startup this had occurred, the waveform of the signal FG must be
observed. The FG signal provides the electrical speed of the motor
and can be measured by connecting a probe to the point labelled
DIAG. The DIAG provides several measurements. To ensure that it
provides motor electrical speed, click on “Diagnostic” in the main
window of the GUI and set the DIAG output, DGS, to FG. Once
done, run the motor and observe the waveform of FG. Measure
the frequency of the signal FG on the oscilloscope. An example
of frequency measurement is shown in Figure 19. If the measured
frequency is higher than the value defined by parameter SF2, it
is confirmed that the ramp sequence is implemented successfully
and tuning must be done for the parameters of the closed-loop
sequence. If the motor stops or judders before the frequency
reaches the value defined by SF2, it indicates the parameters for
the ramp sequence are not well tuned. SF2 is among the parameters
that must be tuned for the ramp sequence and the importance of it
is discussed in the next section.
Figure 19: Frequency Measurement of the Signal FG
Ramp
The next important startup sequence after alignment is ramp. The
parameters to be tuned for this sequence are SF1, SD1, SF2, SD2,
SFS, and STS, which are provided in “Motor Control” section of
the GUI as shown in the Figure 9. In order to implement sensor-
less closed-loop motor control, measurement of the bemf signal is
required. The bemf signal level is equivalent to the motor speed.
Therefore, the purpose of the ramp sequence is to push the motor
speed high enough to be able to measure bemf effectively before
entering the closed-loop sequence.
When the ramp sequence begins, sinusoidal or trapezoidal
(depending on the choice of drive mode) waveforms are applied
to stator phases to create rotating magnetic fields that allow the
motor to rotate. The initial frequency of the waveforms and the
peak applied duty cycle are determined by the parameters SF1
and SD1. For two-phase modulation, the peak applied duty cycle
at zero-degree position for each phase, is defined as:
Phase A = (SD1 ÷ 2) %
Phase B = 0 Phase C = SD1 %
For three-phase modulation, the peak applied duty cycle for each
phase at zero-degree position is defined as:
Phase A = 50 %
Phase B = 50 – (SD1÷ 2) % Phase C= 50 + (SD1÷ 2) %
The applied frequency will then increase to the final value
defined by SF2, and the duty cycle by which the phases will be
modulated will increase to a final value defined by SD2. This
increase is done in steps, where duration of steps is determined
by STS and the amount of frequency increasing in each step is
determined by SFS. Figure 20 illustrates the waveform of applied
duty cycle with respect to time for a three-phase sinusoidal mod-
ulation. It should be noted that the applied duty cycle is equiva-
lent to the amount of phase voltage. With time advancement, it
can be noted that the peak duty cycle and frequency of the signal
increases. This increase continues until the frequency of the
signal has reached the value defined by SF2, after which the next
sequence (coast or closed-loop control) will initiate depending on
the configuration, which will be discussed later.
Figure 20: Ramp Sequence, Illustration of Duty Cycle
with Respect to Time
Tuning the Parameters for Ramp
The state flow diagram to tune parameters for the ramp sequence
is provided in Figure 21. In order to tune parameters for ramp,
one should realize the interdependency between the applied duty
cycle and frequency. Consider Figure 17 once again. If high fre-
quency step is applied to the phases, it means the rotor must also
react to the applied frequency, or otherwise it will lose synchro-
nism. In order for the rotor to react to the high-frequency step, a
high duty cycle step is also required. Higher duty cycle results in
higher phase voltages.
This creates stronger magnetic poles in each phase and therefore
results in faster acceleration of the rotor. However, it should be
noted that for the high inertia motors, a high-frequency step may
not be possible, as even the highest applied duty cycle step may

14
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
still not result in fast enough acceleration of the rotor compared
to the applied frequency.
To tune, start with low values of SF1 and SD1. This should avoid
any sudden oscillation in the rotor if its inertia is low. Also, start
with a low frequency step SFS but set the duration of step STS
to a high value. Usually, motor manufacturers provide the motor
voltage (bemf) constant. If the motor has low-voltage constant,
a higher value of SF2 is needed and vice versa. For motors with
high inertia, SD2 must be high. If the inertia is low, SD2 must be
low. Once the successful ramp sequence is achieved, the fre-
quency step SFS can be increased and the step time STS can be
reduced to achieve the desired acceleration during ramp.
If there is a problem for startup in this sequence, the motor usu-
ally starts rotating initially and then it begins to slip and lose
synchronism if the parameters are not set properly.
Coast
During coast, all switches are turned off for a very short duration,
which allows full measurement of bemf signal and detection of
zero-crossing point. This mode is useful for a high inertia motor
where it is harder to detect bemf due to lower acceleration and
therefore speed during ramp. It should also be noted that for very
low inertia motors, the coast mode can completely stop the motor,
therefore causing disturbance in the turn-on sequence. If a high
inertia motor is used, it is recommended to enable coast mode. If
the inertia is low, however, it is recommended to disable it. Coast
mode can be enabled or disabled by changing the bit STM in the
“Motor Control” section in Figure 9.
Figure 21: State Flow Diagram for
Ramp Sequence Tuning Parameters
Closed-Loop Control
The last important part for the startup configuration is tuning the
parameters for the closed-loop speed control. The parameters
that must be tuned in closed-loop control are provided in sec-
tions “Motor Commutation” and “Speed Control”. The state
flow diagram to tune the parameters in this section is provided in
Figure 22.
Figure 22: State Flow Diagram for
Close-Loop Tuning Parameters
Speed Loop Gains
Tuning the parameters for the closed-loop speed control fol-
lows the same logic as the ramp section. The acceleration during
closed-loop speed control is limited by the two parameters SGL
and SG. Higher gains can be used for low inertia motors and low
gains should be used for high inertia motors to achieve stable
performance. In addition to SGL and SG, a deceleration factor
DF is added to increase control loop versatility during decelera-
tion. If slow deceleration is required, the deceleration factor can
be increased.

15
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
Position Loop Gains
The position loop gains CP, CI, CPT, and CIT also must be tuned
properly for smooth speed control. If low gains are used, the esti-
mated motor position can lag behind the actual motor position,
therefore causing disturbance in the motor control due to late
commutation. On the contrary, if high gains are used, the esti-
mated motor position can be further ahead from the actual motor
position, which can again result in disturbance in the performance
of the motor. It is recommended to set CPT = CP and CIT = CI.
Figure 22 provides a diagram, which demonstrates how to tune
these parameters.
Phase Advance
Phase advance serves two purposes: to improve efficiency of the
system and to allow the motor to go beyond the base speed. The
state flow diagram to tune parameters for phase advance is shown
in Figure 23.
Figure 23: State Flow Diagram for
Phase Advance Tuning Parameters
The efficiency improvement by using phase advance can be
understood by observing Figure 24 and Figure 25. In Figure 24,
the waveforms of phase current and voltage are shown without
application of phase advance. It should be noted that the phase
voltage signal is averaged to make the impact of phase advance
clearer. Due to the inductance of the windings in the stator, when
phase voltage is applied, there will always be a short delay in
the rise of the current. The bemf signal is synchronized with the
signal FG, as shown in Figure 24. If at a point, the bemf zero
crossing occurs, the current will not be zero and there will be
a sudden spike at the phase voltage. This occurs because at the
point of bemf zero-crossing, both bridge FETs are in tri-state,
meaning the voltage seen at the phase is due to the voltage spike
in the coil inductance and center tap voltage only. This effect
results in distortion in both phase voltage and current and thus
leads to harmonic losses and a less efficient system. However,
with the introduction of phase advance, which shifts the current
waveform with respect to bemf, it is possible to align bemf zero-
crossing with phase current zero-crossing as shown in Figure 25.
By shifting the current waveform by 7 degrees, it can be noticed
at the point the bemf zero-crossing occurs when the current is
zero. Therefore, this results in a less distorted current and voltage
waveform, leading to a more efficient system.
Figure 24: Phase Current and Voltage Waveform
with No Phase Advance
Figure 25: Phase Current and Voltage Waveform
with 7-Degree Phase Advance
There are cases where even with the application of 100% duty
cycle, the desired speed cannot be achieved. In these cases,
phase advance can be used to force the motor to go beyond the
base speed. The bemf of the motor depends on motor speed and
voltage constant. In the best-case scenario, bemf can be equal to
phase voltage (no load condition).
Therefore, since the phase voltage is fixed, the only way to go
beyond the base speed is to reduce the voltage constant. By shift-
ing the current with respect to bemf, a field is created in the stator
that opposes the permanent magnet field. This results in a reduc-
tion of flux density, and therefore a reduction of voltage constant.
Reduction of voltage constant allows an increase of speed beyond

16
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
the base value. However, it should be noted that in this case, due
to weakening of the field, there is less torque available, and if the
motor is heavily loaded, it can result in a disturbance in motor
performance.
There are two modes of phase advance operation, manual and
automatic, which can be set using the parameter PAM. To adjust
phase advance in manual mode, initially set PA to zero degrees.
Record the waveform of the phase current at a falling edge of FG.
Check if there is any sudden current change. If there is, change
the phase advance slightly until a clean waveform without any
distortion is achieved. If automatic phase advance operation is
used, the phase advance is adjusted automatically to achieve
better efficiency. To achieve automatic phase advance success-
fully, it is important to set PA to 0 and to have each phase going
high-impedance (both high-side and low-side MOSFETs in the
off-state) for a minimum of approximately 50% of the program-
mable dead time, DT[5:0].
Bemf Sensing
The next important parameter to be tuned is the bemf window.
In order to detect bemf, the applied signal to the phases should
be stopped. The duration of bemf measurement is defined by
the bemf window. For low-speed motors, a small bemf window
should be sufficient; however, at higher speeds the bemf window
must be extended to allow detection of the zero-crossing point,
which is used for closed-loop speed control. The increase in the
bemf window results in more reliable control performance at high
speed at the expense of a less sinusoidal waveform. The number
of times the window is opened in each electrical cycle depends on
bemf sampling BS. If BS is set to 1, only one window will open,
and it is only for phase A. If BS is set to 2, two window will open
for phase A only. If BS is 3, one window will open for each of the
phases, and finally if BS is 6, two windows will open for each of
the phases. The higher the number of bemf sampling, the more reli-
able the control can be at the cost of more disturbance in sinusoidal
waveform across all phases. The bemf filter time is used for wind-
mill and it must be tuned only if windmill is used.
Tuning Parameters for Current Control and Open
Loop Voltage Control
In both control modes, the first two sequences, which are align-
ment and ramp, remain the same as speed control. In open-loop
control mode, DI defines the applied duty cycle to the system
after the first two sequences. In current control mode, the error
between measured current across the sense resistor and the refer-
ence current, defined by DI, defines the duty cycle applied to the
phases. For positive error, the duty cycle continues to increase
until the reference current is achieved and vice versa for the nega-
tive error. In both cases, the position loop gains must be adjusted
properly using the same method as shown in the last section, and
speed loop gains no longer have any impact in any of the two
modes. Therefore, in these two control modes, there are no addi-
tional parameters that must be tuned. The desired control mode
can be selected in the GUI by clicking on “System” and then
modifying “Motor Control Mode”, CM.

17
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
APPENDIX A: EVALUATION BOARD SCHEMATIC
Figure 26: A4964 Evaluation Board Schematic

18
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
APPENDIX B: EVALUATION BOARD LAYOUT
Figure 27: Top Board Layout
Figure 28: Bottom Board Layout

19
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
APPENDIX C: EVALUATION BOARD COMPONENTS
Table 2: Component Function, Specification, and Selection Criteria
Component Value Type Notes
C1 10 µF (25 V) X7R Ceramic Capacitor Decoupling capacitor used for 5 V regulator output. Used to provide inrush current for
diagnostic LED.
C2 100 nF (63 V) X7R Ceramic Capacitor Decoupling capacitor used for 5 V regulator input. Used to provide ripple current
required by the regulator.
C3 470 nF (63 V) X7R Ceramic Capacitor Local decoupling capacitors for near VBB pin of A4964 to provide high switching
currents.
C5 10 µF (25 V) X7R Ceramic Capacitor Output decoupling capacitor used for VREG voltage. Used to reduce VREG output
voltage ripple.
C6, C7 1000 µF (63 V) Electrolytic Capacitor
Motor supply decoupling capacitor. Provides a local low-impedance source to
compensate for any supply wiring inductance. This capacitor provides ripple current
pulses to the motor phase. Selected to be able to handle maximum motor phase
ripple current.
C8 1 µF X7R Ceramic Capacitor
VLR output decoupling capacitor. Provides a local low-impedance source to
compensate for any supply wiring inductance. Provides ripple current pulses to VCC.
Selected to be able to handle maximum VCC load ripple current.
C9, C10, C14 220 nF (25 V) X7R Ceramic Capacitor Bootstrap capacitors used to turn on high-side FETs.
C11, C12, C13 100 nF (63 V) X7R Ceramic Capacitor
Local supply decoupling capacitors for VBB supply pins. Provide high-frequency
switching currents to the motor phase. Mounted as close as possible to VBB
terminals on A4964.
C15 220 pF (50 V) X7R Ceramic Capacitor Local decoupling capacitors for LIN interface.
D1 0.2 A 60 V Diode Provides arbitrary path from supply voltage to A4964.
LED1 High-Efficiency
Red LED Red High-efficiency LED to indicate the power supply has been applied to the device.
LED2 High-Efficiency
Red LED Red
Low-current high-efficiency red LED. Indicates when the FAULTn output is low.
Provides fault indication when FAULTn is in default condition. R18 limits current
through this LED to about 2 mA.
R2, R3, R4, R5,
R6, R7, R8, R9,
R10, R11, R12
1 kΩ 0805 Chip resistor Logic signal current limit resistors. Provide some protection for logic inputs of A4964.
R13 10 kΩ 0805 Chip resistor Current limit resistor. Prevent current flow from 5 V regulator to DIAG pin.
R14, R16, R17,
R25 R26, R27 100 Ω 0805 Chip resistor Filter resistors for gate of the FETs.
R15 47 kΩ 0805 Chip resistor Current limiting resistor. Used to limit current flowing from DIAG pin to base of
transistor Q1.
R18 2.2 kΩ 0805 Chip resistor Current-limiting resistor for LED2.
R19, R20, R21,
R28, R29, R30 274 kΩ 0805 Chip Resistor Used as protection to turn off FETs in case A4964 device is fully turned off.
R31, R32, R33,
R38, R39 0 Ω 0805 Chip Resistor Jumper resistors used to provide interface between communication devices.
R41, R42 20 mΩ 2512 Chip Resistor 5 V LDO on-board regulator for on-board parts.
U2 USB port
protection Used to avoid flow of current back to USB port and limit current from USB device.
U3 PIC device Microcontroller that provides serial interface.
U4 FTDI Chip
U5 LDO LM2936HVMA-5.0 5 V LDO on-board regulator for on-board parts.
CRD1 E202 Current regulator to control current going to LED1.

20
Allegro MicroSystems
955 Perimeter Road
Manchester, NH 03103-3353 U.S.A.
www.allegromicro.com
APPENDIX D-1: GUI DEFAULT SETTINGS
The GUI default settings are loaded via the DEFAULT button and
can be used as a starting point when tuning the register settings.
Once the default settings are loaded into the GUI, the register
settings can be retuned using the guidelines provided in this user
manual.
To load the default settings into the GUI, follow the instructions
below:
1. Open GUI, ensure that A4964 is supplied with power and
USB connection exists between PC and A4964.
2. Click on the “Load Default” button in the main window of
the GUI.
3. At this point, the GUI is loaded with the settings and it auto-
matically updates the register of A4964 with these values.
The part number is: A4964 Config[0] is: 0CC Con-
fig[1] is: 001
Config[2] is: 028
Config[3] is: 001
Config[4] is: 001
Config[5] is: 001
Config[6] is: 0FE
Config[7] is: 07E
Config[8] is: 07F
Config[9] is: 001
Config[10] is: 001
Config[11] is: 021
Config[12] is: 021
Config[13] is: 006
Config[14] is: 070
Config[15] is: 3C2
Config[16] is: 038
Config[17] is: 04F
Config[18] is: 085
Config[19] is: 021
Config[20] is: 1EF
Config[21] is: 007
Config[22] is: 086
Config[23] is: 00F
Config[24] is: 0FE
Config[25] is: 289
Config[26] is: 001
Config[27] is: 001
Config[28] is: 201
Config[29] is: 180
Config[30] is: 102
RShunt is: 00A Npp is: 006
Table of contents
Other Allegro MicroSystems Motherboard manuals

Allegro MicroSystems
Allegro MicroSystems ASEK-1335-T-KIT User manual

Allegro MicroSystems
Allegro MicroSystems A4910 Quick start guide

Allegro MicroSystems
Allegro MicroSystems A89503 User manual

Allegro MicroSystems
Allegro MicroSystems ASEK31300 User manual

Allegro MicroSystems
Allegro MicroSystems ACS732 User manual