
Getting started with the X-NUCLEO-IHM07M1 motor driver
expansion board based on the L6230 for STM32 Nucleo
Introduction
The X-NUCLEO-IHM07M1 is a three-phase brushless DC motor driver expansion board based on the
L6230 for STM32 Nucleo. It provides an affordable and easy-to-use solution for driving three-phase
brushless DC motors in your STM32 Nucleo project. The X-NUCLEO-IHM07M1 is compatible with the
ST morpho connector and supports the addition of other boards which can be stacked onto a single
STM32 Nucleo board. The user can also mount the Arduino UNO R3 connector. The X-NUCLEOIHM07M1 is fully configurable and ready to support different closed loop control based on sensor or
sensorless mode control, and it is compatible with three shunt or single shunt current sense measuring.
The driver used on this STM32 Nucleo expansion board is the L6230, a DMOS fully-integrated driver for
three-phase brushless PMSM motors, assembled in a PowerSO36 package, with overcurrent and
thermal protection. This user manual describes the procedure to configure the X-NUCLEO-IHM07M1
expansion board to operate with an STM32 Nucleo board.
Figure 1: X-NUCLEO-IHM07M1 three-phase brushless DC motor driver expansion board based on L6230 for
STM32 Nucleo

Contents
1 System introduction ......................................................................... 3
1.1 Main characteristics .......................................................................... 3
1.2 Target applications ............................................................................ 3
2 Getting started .................................................................................. 4
2.1 System architecture .......................................................................... 4
2.2 Building the system ........................................................................... 4
2.2.1 Hardware settings ............................................................................... 5
3 Board schematic ............................................................................. 10
4 Circuit description .......................................................................... 18
4.1 Power section – L6230 driver with integrated three-phase bridge ... 18
4.2 Power section – Overcurrent detection (OCP) and current sensing
measurement ............................................................................................... 19
4.3 Analog section – Hall/Encoder motor speed sensor ........................ 21
4.4 Analog section – BEMF detection circuit ......................................... 21
4.5 Analog section – Bus voltage and temperature sensing circuit ....... 21
5 BOM (bill of material) ..................................................................... 23
6 Revision history .............................................................................. 27

1 System introduction
1.1 Main characteristics
The list below provides the board specification data and the main parameters for the XNUCLEO-IHM07M1 expansion board:
Three-phase driver board for BLDC/PMSM motors
Nominal operating voltage range from 8 V to 48 V DC
2.8 A output peak current (1.4 A
RMS
)
Operating frequency up to 100 kHz
Non dissipative overcurrent detection and protection
Cross-conduction protection
Thermal measuring and overheating protection
Full compatibility with ST Six Step or ST FOC control algorithms
Full support for sensor and sensorless mode
3-shunt and 1-shunt configurable jumpers for motor current sensing
Hall/Encoder motor sensor connector and circuit
Debug connector for DAC, GPIOs, etc.
Potentiometer available for speed regulation
Fully populated board conception with test points
User LED
Compatible with STM32 Nucleo boards
Equipped with ST morpho connectors
RoHS compliant
PCB type and size:
PCB material: FR-4
4-layer layout
Copper thickness: 70 μm (external layer), 35 μm (internal layer)
Total dimensions of the board: 70 mm x 66 mm
1.2 Target applications
Low voltage PMSM motor driver
Low power fans
Power tools
Industrial drives

2 Getting started
2.1 System architecture
A generic motor control system can be schematized in three main blocks (see Figure 2:
"Overall system architecture"):
Control block - its main task is to accept user commands and drive a motor. The X-
NUCLEO-IHM07M1 is based on the STM32 Nucleo board, which provides all digital
signals to properly implement motor driver control.
Power block - it is based on three-phase inverter topology. The core of the power
block is the L6230 driver, which contains all the necessary active power and analog
components to perform low voltage PMSM motor control.
Motor - the X-NUCLEO-IHM07M1 is able to properly drive a low voltage BLDC/PMSM
motor.
Figure 2: Overall system architecture
2.2 Building the system
The X-NUCLEO-IHM07M1 expansion board is a complete hardware development platform
(Power block) for the STM32 Nucleo board, for evaluating a motor control solution for a
single BLDC/PMSM motor. For normal board operation, it must be connected to an STM32
Nucleo board (Control block) through the ST morpho connector, as shown in the image
below.

Figure 3: X-NUCLEO-IHM07M1 plugged on STM32 Nucleo
The interconnection between the STM32 Nucleo and the X-NUCLEO-IHM07M1 has been
designed for full-compatibility with many STM32 Nucleo boards and no solder bridge
modification is required. When stacked, the system is ready to operate with the connection
of a BLDC/PMSM motor. For proper use, please respect the hardware and software
settings. For the software details, refer to the X-CUBE-SPN7 software expansion
documents available on www.st.com.
2.2.1 Hardware settings
Table 1: Jumper settings
Selection for pull-up insertion (BIAS) in current sensing circuit
Selection for op amp gain modification in current sensing circuit
Selection for pull-up enabling in Hall/Encoder detection circuit
Selection to supply the STM32 Nucleo board through the X-NUCLEOIHM07M
(1)
Selection for single/three shunt configuration. Set to single shunt by
default
Selection for single/three shunt configuration. Set to single shunt by
default
Debug connector for DAC. Available for probe connection
(1)
It is recommended to REMOVE jumper J9 before power-on on J1

With J9 closed, it is mandatory not to exceed 12 V DC on the J1 connector to avoid
damage to the STM32 Nucleo board.
Jumper JP5 (STM32 Nucleo board) MUST be connected between pin 2 and 3 to enable
the STM32 Nucleo external power supply.
Table 2: Screw terminal table
Motor power supply input (8 V- 48 V DC)
Figure 4: X-NUCLEO-IHM07M1 – top layer with silk-screen
The X-NUCLEO-IHM07M1 expansion board is equipped with the ST morpho connector,
male pin headers (CN7 and CN10) accessible on both sides of the board. They can be
used to connect the power board to the STM32 Nucleo board. All signals and power pins of
the MCU are available on the ST morpho connector. For further details, please refer to user
manual UM1724 (5.12 STMicroelectronics morpho connector) available on www.st.com.
Table 3: ST morpho connector table

Notes:
(1)
Please refer to Table 9: Solder bridges in user manual UM1724 for further details
(2)
Please refer to Table 9: Solder bridges in user manual UM1724 for further details
(3)
U5V is 5 V power from ST-LINK/V2-1 USB connector and it rises before +5 V
(4)
For STM32F302-Nucleo only:
- pin PA5 is on CN10/pin 30 and PB13 is on CN10/pin 11
- pin PA6 is on CN10/pin 28 and PB14 is on CN10/pin 13
- pin PA7 is on CN10/pin 26 and PB15 is on CN10/pin 13

(5)
For STM32F302-Nucleo only:
- pin PA5 is on CN10/pin 30 and PB13 is on CN10/pin 11
- pin PA6 is on CN10/pin 28 and PB14 is on CN10/pin 13
- pin PA7 is on CN10/pin 26 and PB15 is on CN10/pin 13
(6)
For STM32F302-Nucleo only:
- pin PA5 is on CN10/pin 30 and PB13 is on CN10/pin 11
- pin PA6 is on CN10/pin 28 and PB14 is on CN10/pin 13
- pin PA7 is on CN10/pin 26 and PB15 is on CN10/pin 13
(7)
For STM32F302-Nucleo only:
- pin PA5 is on CN10/pin 30 and PB13 is on CN10/pin 11
- pin PA6 is on CN10/pin 28 and PB14 is on CN10/pin 13
- pin PA7 is on CN10/pin 26 and PB15 is on CN10/pin 13
(8)
For STM32F302-Nucleo only:
- pin PA5 is on CN10/pin 30 and PB13 is on CN10/pin 11
- pin PA6 is on CN10/pin 28 and PB14 is on CN10/pin 13
- pin PA7 is on CN10/pin 26 and PB15 is on CN10/pin 13
(9)
For STM32F302-Nucleo only:
- pin PA5 is on CN10/pin 30 and PB13 is on CN10/pin 11
- pin PA6 is on CN10/pin 28 and PB14 is on CN10/pin 13
- pin PA7 is on CN10/pin 26 and PB15 is on CN10/pin 13