SENT SPC serial bus decoding

SENT SPC (single edge nibble transmission short PWM code) is a half-duplex variation of the SENT protocol defined by Infineon Technologies AG. It is an extension of the SAE J2716 SENT protocol that allows on-demand transmission of a single SENT frame by a sensor in the event a controller initiates the transfer of data by sending a master trigger pulse (MTP).

There are three defined protocol modes of operation for SENT SPC: “Synchronous”, “Synchronous with range selection” and “ID selection”. These modes are characterized by the duration of the MTP. The “Synchronous” and “Synchronous with range selection” modes are used when only a single sensor is required on the bus. The “ID selection” mode defines a series of min/max “Master low time” ranges that correspond to pre-programmed IDs. This allows a controller to have parallel bidirectional communication with up to four sensors on a bus using only three lines (VDD, GND, OUT). 

In a SENT SPC application, the sensor monitors the OUT line and computes the duration the line is kept low by the controller. This time is called the “master low time” and is quantized using clock ticks. In “ID selection” protocol mode, the sensor starts to transfer the remaining SENT SPC frame only after receiving a master low pulse with an ID that is equivalent to the programmed value in its ID register. The sensor’s SPC ID register is a 2-bit value that is normally programmed into its EEPROM. The mapping between master low time and ID is specified in the given sensor’s datasheet. For this reason, PicoScope allows the user to enter the MTP ID0-ID3 durations prior to running the decode.

Most durations and timings for the SENT SPC protocol are defined as a multiple of a pre-programmed unit time (UT) value. Devices on the bus need to be aware of and provide a ±20% clock tolerance.

SENT SPC protocol allows transmission of error/warning flags in the status and communication nibble. As a result, the SENT SPC checksum nibble value is a 4-bit CRC of the data nibbles including the status nibble.

Capturing and analyzing SENT SPC communications with PicoScope

This guide will show you how to use the SENT SPC decoder in PicoScope 7.

Select Serial Decoding from the tab on the left. If it doesn’t appear on the main page, select the More… tab and you’ll find it there.

Next, select SENT SPC from the list of available protocols.

In the Configuration tab, select the corresponding PicoScope input channel for Data and also check if any of the SENT SPC fields require changing from their default values.

In the Display tab, select the desired Graph display format and Table display format options to display SENT SPC packets in the appropriate locations. 

Double-click a packet in the graph view to see the same packet in the table view, and vice versa, or use the zoom feature to focus in on the appropriate areas of the decoder packets.

References

  1. Infineon linear Hall IC TLE4998C3C Data Sheet, Rev 1.1, September 2009 (https://www.infineon.com/cms/en/product/sensor/magnetic-sensors/magnetic-position-sensors/linear-sensors/tle4998c3c/)
  2. Infineon programmable dual channel linear Hall sensor with fast SPC interface TLE4999C4 Data Sheet, Rev 1.0, December 2021 (https://www.infineon.com/cms/en/product/sensor/magnetic-sensors/magnetic-position-sensors/linear-sensors/tle4999c4/)
  3. Melexis Triaxis® Position Sensor IC Datasheet, Revision 003, December 2021 (https://www.melexis.com/en/product/MLX90377/Triaxis-Performance-Rotary-Linear-Position-Sensor-Analog-PWM-SENT-SPC)