SENT (protocol)

The SAE J2716 SENT (Single Edge Nibble Transmission) protocol is a point-to-point scheme for transmitting signal values from a sensor to a vehicle controller. It is intended to allow for transmission of high resolution data with a low system cost.

A new revision SENT-B is currently being created to speed up the original SENT protocol (by a factor 2), while being compatible from hardware point of view.

Hardware
The SENT protocol is a one-way, asynchronous voltage interface which requires three wires: a signal line (low state < 0.5 V, high state > 4.1 V), a supply voltage line (5 V) and a ground line. SENT uses pulse-width modulation to encode four bits (one nibble) per symbol.

The basic unit of time in SENT is called a tick, where a tick can be between 3 - 90 μs, at the sender's option. Each message is preceded by a calibration pulse with a period of 56 ticks for framing and calibration of tick length. After the calibration pulse, each nibble is transmitted with a fixed-width low signal, followed by a variable-length high period. The low pulse-width is 5 (or more) ticks in length, while the high pulse-width can vary, for a total period between falling edges of between 12-27 ticks (representing nibbles ranging from 0-15).

Fast Channel
Data is transmitted in units of four bits (one nibble) for which the interval between two falling edges (single edge) of the modulated signal with a constant amplitude voltage is evaluated. A SENT message is 32 bits long (eight nibbles) and consists of the following components: 24 bits of signal data (six nibbles) that represents two measurement channels of three nibbles each (such as pressure and temperature), four bits (one nibble) for CRC error detection, and four bits (one nibble) of status/communication information. Optionally, data can be transferred in 20 bit messages (five nibbles) composed of a single 12 bit (three nibbles) measurement, a four-bit (one nibble) CRC error checksum, and a four-bit (one nibble) status/communication field. An optional Pause pulse may be included at the end of each message to pad them out to a constant number of ticks.

The image below shows the SENT signal described above. In this case a Pause Pulse is used to compensate for the varying length of the messages.



Slow Channel
In addition to the Fast Channel sensor data signal frame described above, SENT also allows for the simultaneous transmission of Slow Channel messages which can carry a wide range of other information. These messages are transmitted serially, a bit or so per fast channel message, encoded in the two most significant bits of the Status nibble. They might be used to transmit diagnostic information, or report values from additional slow-changing sensors like temperature.

For example: a 16-bit Short Serial Message Format transmits a 16 bit message across 16 Fast Channel message "frames". The message consists of: a 4 bit Message ID, 8 bits of data, and a 4 bit CRC code. It's encoded by bit 3 (the MSB) of the Status nibble being 1 for the first frame of the message, and zero for the following 15 frames. The message is then transmitted, 1 bit per frame, in Status bit 2.