Get the basics on the SENT bus, which transmits sensor data to ECUs and other vehicle processors, one nibble at a time. How do you test the automotive SENT protocol? Test & Measurement Tips describes how to test the data bus.
The Single Edge Nibble Transmission (SENT) protocol defines an approach to data communications in accordance with the Society of Automotive Engineers (SAE) J2716 standard. SENT provides a rugged, low-cost way of transmitting high-resolution data from a sensor to an engine control unit (ECU) or another controller. Data transfer occurs in nibbles, where a nibble is four bits or half a byte.
What does SENT look like?
Figure 1 shows the physical layer of a basic SENT implementation. It consists of a 5 V power supply line, a ground line, and a unidirectional signal line that carries data from a sensor to an ECU. A signal-line value of less than 0.5 V indicates a logic low, while a value of greater than 4.1 V indicates a logic high.
What does the signal look like?
To envision how SENT signaling works, you need to understand the SENT tick time. In an earlier series on PCI Express (see part 1 and part 2), we discussed the unit interval (UI). Like the UI for PCIe, the tick time is the basic unit of time for SENT. It ranges from 3 µs to about 90 µs, with clock-rate tolerances as high as ±25% to keep sensor costs low.
That’s quite a wide range. How does the receiver know what tick time to expect?
Every SENT message frame begins with a synchronization/calibration signal, which is shown as the light gray section on the left in Figure 2. The sync signal begins with a falling edge followed quickly by a logic-high pulse. The pulse width is adjusted so that the falling-edge to falling-edge time is 56 ticks. The receiver measures the sync signal’s duration and divides it by 56. In Figure 2, the width equals 168 µs, and dividing by 56 yields 3 µs per tick — the minimum.
How is the data encoded in the message frame?
The data is encoded in the eight nibbles that follow the sync bit. Each nibble begins with a 5 µs logic low followed by a variable-width logic-high pulse. SENT uses pulse width modulation to adjust the high pulse width so that the falling-edge to successive falling-edge times range from 12 ticks, corresponding to binary 0000 (decimal 1), to 27 ticks, corresponding to binary 1111 (decimal 15). Figure 3 shows all 16 possibilities.
What do the different colors for the data nibbles in Figure 2 indicate?
The yellow nibble directly following the sync pulse reserves two bits for device status and identification, but you can use the two additional bits for what’s called slow channel communication. You can use the slow channel for parameters that change slowly, such as ambient temperature. In Figure 2, the status nibble pulse is 12 ticks wide, corresponding to 0000. The next six nibbles carry what’s called fast-channel communication. In Figure 2, they are divided into channel 1 and channel 2, each channel having three nibbles, where channel 1 might carry temperature data while channel 2 might carry pressure data — that is, you can include parts of two or more data streams in each message frame. You can use other channel configurations as well. Following the fast channel data nibbles is a CRC nibble (on the right, shaded dark gray) for error checking. Finally, a pause of 12 to 768 ticks is optional. Because SENT message frames are of different lengths, you can use a pause to ensure that message frames begin at constant intervals. Many SENT devices will calculate the appropriate pause duration for you.
What is the throughput of SENT?
It depends greatly on the implementation details. Note that for the example in Figure 2 with a 12-tick pause, the data rate is over 40 kb/sec. But if your sensor’s clock is running 25% low, you will be down to 30 kb/sec. If you use a slower tick time, your data rate can be much lower. In general, SENT is built for low cost and high resolution — not speed.
How do I test SENT?
In part 2 of this series, we will look at how to use oscilloscopes to test SENT implementations.
What else should I know about SENT?
I have just described the standard SENT implementation with one-way communication from one sensor to one controller. Infineon offers a proprietary half-duplex implementation called SENT Short PWM Code (SPC) that enables one controller to manage up to four sensors. You can learn more here.
You may also like:
Filed Under: FAQ, Featured, SENT, Testing and Safety, Vehicle communications, Vehicle Control Unit