Supported Hardware Platforms

The following Infineon products are supported by this library:

Note

Be aware that each of these types (Kit 2Go, breakout board, bulk chip) can have different predefined communication protocols. You can change the protocol via the SSC interface, but it will revert to the default protocol after a reset or power off.

Note

The difference between these types (Kit 2Go, breakout board, bulk chip) are the presence or the absence of the resistors and capacitors for the communication protocol. This can influence the required setup for the sensor, especially when using with certain MCUs.

Note

This sensor uses a 3-Wire SPI, which means that the two data lines MOSI and MISO are combined to one line using either the Push-Pull or Open-Drain configuration. The 3-Wire protocol is also called SSC (Synchronous Serial Communication) in the sensor datasheet, see in the TLE5012B manual. Not all Arduino-compatible boards support the SSC protocol, as they cannot configure the data lines appropriately. To address this issue, the library includes specific software stacks that enable the use of the SSC protocol with Arduino.

Interfaces and Variants

The TLEx501B sensor is available in three different interface configurations: IIF, PWM, and SPC/HSM. All three also include the SSC interface. Only with the SSC communication protocol all registers of the DSP are available (see TLx5012B manual for further information). The purpose of the interfaces is to support a wide variety of different tasks, from ultra low power use replacing ordinary Hall-effect switches up to high performance use cases. This flexibility allows us to utilize the full range of functions, even if we don’t have the perfectly matching sensor type.

The following table summarizes the settings for each interface configuration:

Type

E1000

E3005

E5000

E5020

E9000

Interface

IIF (Incremental Interface)

HSM (Hall-Switch-Mode)

PWM (Pulse-Width-Modulation)

PWM (Pulse-Width-Modulation)

SPC (Short-PWM-Code)

SSC as push-pull output

SSC as push-pull output

SSC as push-pull output

SSC as push-pull output

SSC as push-pull output

IFA/B/C as push-pull output

IFA/B/C as push-pull output

IFA as push-pull output

IFA as open-drain output

IFA as open-drain output

Auto calibration

mode 1

mode 1

disabled

mode 2

disabled

Prediction

disabled

enabled

enabled

disabled

disabled

Spike filter

disabled

disabled

enabled

enabled

enabled

Absolute count

enabled

Hysteresis

0.703°

0.703°

disabled

disabled

disabled

Resolution

12bit mode, 0.088°

PWM frequency is 244 Hz

PWM frequency is 1953 Hz

SPC unit time is 3 μs

Update rate

42.7 μs

42.7 μs

85.4 μs

42.7 μs

85.4 μs

Usage

BLDC motor commutation

replacement of three Hall

steering angle and actuator

steering angle and actuator

steering angle and actuator

switches for BLDC motor

position sensing

position sensing

position sensing

commutation

Protocol Configuration

The SSC interface can be configured in two different ways, the Push-Pull configuration and the Open-Drain configuration. The Push-Pull configuration is the default configuration and is used in the TLE5012B E1xxx 2GO Kits and the TLE5012B E1xxx breakout boards. The Open-Drain configuration needs a different resistor setup.

Resistor setting for the SSC interface in Push-Pull configuration:

../_images/TLx5012B-Push-Pull.png

Resistor setting for the SSC interface in Open-Drain configuration:

../_images/TLx5012B-Open-Drain.png

Power Supply

The XENSIV™ TLx5012B family can be supplied with a voltage between 3.3V and 5.5V. The current consumption is around 5mA. The TLE5012B E1xxx 2GO Kits are supplied via the USB port of the XMC1100 2Go board and are running with 3.3V. The TLE5012B E1xxx breakout boards and the TLE5012B DSO-8-16 bulk chips need an external power supply.

Warning

Some MCUs need 5V on Vdd to work properly, you have to test that with your MCU, but be cautious as not all MCUs can handle 5V on their data lines. The sensor is capable of using both, 3.3V - 5.5V, for the SSC interface.

TLE5012B Exxxx 2GO Kit

../_images/TLE5012B_horizontal.png

The Infineon TLE5012B E1xxx 2GO Kits are XMC1100 2Go kits with a TLx5012B sensor attached. The sensor is connected to the XMC1100 via the SSC interface and 3-Wire SPI. Therefore a certain software stack is implemented into the library (see File spi3w-xmc.cpp) which automatically detects the right setup.

There is a handy pinout picture for all TLE5012B E1xxx 2GO Kits:

../_images/TLx5012B_Sensor_2Go_pinout.png

TLx5012B Breakout Board

../_images/TLE5012B_breakout.png

The breakout board is the top part of the TLE5012B E1xxx 2GO Kits and can be used with any Arduino-compatible boards. It is already equipped with the necessary resistors and capacitors for the SSC interface, including 100 Ohm resistors and 100nF capacitors for the chip select (CS) and system clock (SCK) lines. The data line (MOSI/MISO) is connected to the SSC interface of the sensor using a 470 Ohm resistor. This setup is known as the Push-Pull configuration. The Open-Drain configuration is also possible; refer to Interfaces and Variants for more details.

Also, this still needs some more external resistors to work properly on different MCUs, see the Arduino Compatible Kits Here is the pinout of the breakout board:

TLE5012B breakout board pinout YET NOT AVAILABLE

TLx5012B DSO-8-16 Bulk Chip

../_images/TLE_5012B_DSO-8-16_plain.png

The DSO-8-16 bulk chip is the bare chip which is used on your own PCBs. It is the smallest form factor of the TLx5012B family and can be used with any Arduino compatible board with the same pin functionalities as the Arduino. So you have to equip your own PCB with the needed resistors and capacitors for the SSC interface, which means 100 Ohm resistors and 100nF capacitors for the chipselect (CS) and the system clock (SCK) lines. The data line (MOSI/MISO) is connected to the SSC interface of the sensor with a 470 Ohm resistor. Also the Open-Drain configuration is possible, therefore see under Interfaces and Variants.

Here is the pin configuration of the DSO-8-16 bulk chip:

../_images/TLx5012B-bulk_chip.png

Pin

Function

In/Out

Description

1

IFC

I/O

Interface C, External Clock/ IIF Index / HSM Signal 3

2

SCK

IDE

SSC System Clock

3

CS

I

SSC Chip Select

4

Data

I/O

SSC Data

5

IFA

I/O

Interface A, IIF Phase A, HSM Signal 1, PWM/SPC trigger

6

VDD

I

Supply Voltage

7

GND

I

Ground

8

IFB

O

Interface B, IIF Phase B, HSM Signal 2

Reference Design

../_images/TLx5012b-reference-board-top.png ../_images/TLx5012b-reference-board-bottom.png

This reference design is a simple breakout board for the TLx5012B family and is based on the Push-Pull protocol configuration. It is designed to be used attached to motor or a shaft to measure the angle of the motor or shaft. The board is equipped with the needed resistors and capacitors and needs only a diametral magnet attached on the shaft. The board only needs to be connected to an Arduino compatible board where MISO/MOSI are combined to one line and the SCK and CS lines are connected to the SSC interface of the sensor. Shorting the solder bridges SJ1, SJ3, SJ5 or SJ6 allows to select certain lines for different CS settings or by shortening SJ2, SJ4 or SJ7 to use IFA, IFB and IFC instead.

../_images/TLx5012b-reference-design.png

This schema can be set onto a small round PCB with a diameter of 25 mm. The board is equipped with a 1.27 mm pitch header to connect to an Arduino compatible board and to keep the footprint as small as possible. Therefore you can attach this board to a motor or a shaft to measure the angle.

../_images/TLx5012b-reference-design-board.png