Introduction:
A fault in LIN bus communication can cause multiple functions in the vehicle to fail or shut down complete control units as the entire network gets disabled. When a LIN bus fault is suspected, the signal course can be measured and evaluated with an oscilloscope. A multimeter is not sufficient for this purpose, although this diagnostic method sometimes appears in how-to videos by mechanics. A multimeter can show:
- constant 12 volts -> no communication;
- constant 0 volts -> no communication;
- fluctuating voltage between 6 and 9 volts -> communication is probably taking place.
This diagnosis with a multimeter is inadequate. With an oscilloscope, we can not only establish if there is communication but also whether all slaves respond to the master’s request frame and if there is a transitional resistance or interruption in a LIN bus wire.
How a LIN bus system works and how messages are structured is explained on the page LIN Bus. This page focuses on measuring the LIN bus with an oscilloscope and describes possible malfunctions and causes.
In the first paragraph “Diagnosing LIN Bus Signals,” the most common failure patterns with their causes and solutions are described. Want to dive deeper into the diagnostics? The next paragraph “Serial Decoding” analyzes the LIN bus signal in detail with and without faults.
Diagnosing LIN Bus Signals:
With an oscilloscope, we can measure the LIN bus on a single measurement channel relative to a ground point. The image on the right shows how the probes on channel A of the oscilloscope are connected:
- Blue probe: on the master or one of the three slaves;
- Black probe: on a good ground point.
The scope trace below shows a correct LIN bus signal. In the scope trace, we see three data frames that repeat themselves. The master is the body control module (BCM) and the slaves are the wiper motor, rain/light sensor, and the wiper switch.

Slave does not respond (1):
In the LIN bus signal, we see that the third data frame is significantly smaller than in the above signal. The master sets the start of the message from the break time up to the request frame, and then the signal remains between 12 and 14 volts. In this case, the slave does not respond. This may happen if the LIN bus wire between the master and the slave is broken, or if there is another reason why the slave does not send a response.
The fuse may be defect. If the slave does not get power, it cannot respond. Interrupted power wires or ground wires can also be causes.

Slave does not respond (2):
As in the previous scope trace, we are dealing with an interruption in the LIN bus wire to one slave. A two-channel measurement is used to illustrate how the voltage behaves up to the interruption (channel A) and what is measured at the time of the fault on the slave (channel B). After inserting the back probe into the slave’s connector, the voltage sent by the slave is a constant 12 volts.
However, after 10 seconds of inactivity, the slave’s voltage drops to 5 volts. Upon reinserting the back probe, the voltage rises again to 12 volts for 10 seconds and then drops back to 5 volts due to the inactivity of the LIN signal. It is unknown whether this voltage drop behaves the same way in other LIN systems. It is possible for the voltage to remain constantly 12 volts.

Transition resistance in LIN bus wire to slave (1):
A damaged wire can lead to transition resistance. If the LIN bus wire is pinched or worn through by a sharp part, the insulation can be damaged and the copper wire can corrode. This causes voltage loss, which is visible in the scope trace below. In the third data frame, the master sends a message to the slave, and the voltage drops to about 0.5 to 1 volt, which is normal. When the slave responds, the voltage does not drop further than 4 volts, indicating a transition resistance between the measurement point and the slave. This fault is simulated with a 330-ohm resistor. The worse the wire, the higher the transition resistance and the more the voltage increases.

Transition resistance in LIN bus wire to slave (2):
In the scope trace below, we again see the result of transition resistance, but this time the measurement is performed on the slave itself. The transition resistance affects all voltages coming from the master and other slaves reaching the slave through the resistor. This voltage does not drop further than 2 volts. Because the probe is connected to the slave, we correctly measure the voltage (between 0.5 and 1 volt) sent by the slave. To clarify this measurement, the resistance is increased to 330 kilo-ohms. The 330 ohm resistance in the previous measurement was not sufficient to affect the signals reaching the slave.

Transition resistance in LIN bus wire to slave (3):
The above two scope traces regarding the transition resistance are shown here in a two-channel measurement. Channel A (blue) is connected to the harness side and channel B (red) to the slave side.
A 330-ohm resistor is used in this measurement.
On channel A (blue), the voltage originating from slave 3 has risen to 4 volts. The voltage pattern on channel B (red) remains virtually unchanged.


Transition resistance in LIN bus wire to slave (4):
In the same setup as above, but with resistance increased to 330k, we again see that the voltage on channel A rises significantly, and that the high resistance now also affects the voltage on channel B. The voltage originating from the master and slaves 1 and 2 has also increased on channel B due to the resistance.


No activity or short circuit with positive:
The voltage on the LIN bus wire is constant between 12 and 14 volts, depending on the system voltage. No communication is visible. Depending on the cause, there may be slight ripples or noise in this voltage line. The constant voltage line can have two causes: the master does not send a signal, so the slaves do not respond, or there is a short circuit between the LIN bus and the positive, or measurement is being done on a slave that is not connected to the master and other slaves, e.g. due to a broken wire.
A short circuit with the positive can be in the wiring or a slave. To find the short circuit, the control units and/or connectors must be disassembled one by one. This removes both the defective control unit and the cause of the short circuit. In that case, LIN bus communication will restore. If measuring on the master side or a good slave, the scope will show a data frame with no response from the slave, as shown in the first issue on this page.

LIN bus short circuit to ground:
The LIN bus voltage is constantly 0 volts. As with a short to positive, the short circuit at a ground can exist somewhere in the wiring harness or in a slave. By disassembling slaves and/or connectors one by one, the cause can be removed and the LIN bus will immediately restore. However, it must be measured at a point where the master’s message arrives. For example: if a short circuit in a window motor is suspected and the connector in the A-pillar to the door is disassembled, it should be measured on one of the other doors or at the master.
In this case, it is useless to measure on the window motor in the disassembled door.

Serial Decoding:
With the “serial decoding” function, the Picoscope software can analyze the measured LIN bus message, allowing us to dive deeper into the diagnostics.
Each data frame is split into fields showing the break field, synchronization field, identifier, data fields, checksum, and the interframe space with the duration and corresponding hexadecimal values. With serial decoding, the Picoscope can also assess whether the LIN message is good enough to be processed by a master or slave.
We perform a two-channel measurement again. The probes of channels A and B are placed on different measurement points because we will insert a resistor between these points in the next measurement.
Below the databloks, we see a horizontal white line with markers underneath:
- Break field: purple
- Sync field: light blue
- Identifier field: green
- Data blocks: dark blue
- Checksum: blue
Each message has the same structure and termination, but the content differs due to the amount of information sent in the message. The first message contains four dark-blue data blocks, while in the second and third, we see five data blocks.

To better understand serial decoding, the first message with four data blocks is zoomed in on. This also creates space in the white decode area to display the time (break field) and the hexadecimal values (the rest) under the different parts of the message. Below the scope trace, there is a table with all data blocks with times and hexadecimal values. A checkmark (V) appears next to “parity OK” when this part of the message is properly transmitted and can be processed by the ECUs.
Transition resistance in LIN bus wire to slave:
Just like in the previous paragraph, a transition resistance is placed between slaves 2 and 3, and a two-channel measurement is used to measure the voltage pattern on both sides of the resistance. This time we add serial decoding.
The resistance is increased to about 500 ohms, causing the voltage from slave 3 to rise to about 5 volts in the measurement on channel A.

The serial decoding can still be performed. No errors are visible. Despite the presence of a transition resistance, the signal can still be read by the ECUs. Because of this transition resistance, no deviant message will be interpreted, and no fault codes will be stored.
When increasing the resistance, the voltage rises to 7 volts. Under the slave portion of the third message, all data and checksum markings from the identifier field onwards are missing. Additionally, the first blocks (break, sync, id) sent by the master are framed in red. This indicates that the message is erroneous. The information sent by the slave can no longer be read by the master and other slaves in the network.
In the table with times, identifiers, and hexadecimal values, we see that “frame identifier 30” is colored red. There are more red lines in the table. All red lines correspond to the red-framed parts in the above scope trace.
When the data frame is clicked, an information menu expands. Here we see data corresponding to the table: Protected Identifier B1 / Frame Identifier 31, data is missing, checksum is missing, and enhanced checksum has failed (x).

Related page: