Two-Wire LIN networking with Atmel (Part 2)

In the first part of this series we took a closer look at the basics of LIN networking, the key parameters for a two-wire LIN (Atmel) solution and the details of a LIN Bus power supply. In the second part of this series, we’ll discuss various aspects of slave node current consumption, specifically, system clock frequency, sleep mode power management and LIN scheduling power management.

According to Atmel engineering rep Darius Rydahl, the system clock frequency of the microcontroller (MCU) has the most significant effect on the slave node current consumption. The slave node current consumption is directly proportional to the clock frequency, an effect illustrated in Figure 4. Clearly, one should attempt to use the lowest clock frequency that enables the application to meet functional design requirements.


In terms of power management-sleep mode, the overall current consumption of the two-wire LIN slave node can be further reduced by duty-cycling between low and high current operating modes, e.g. power-down/normal mode for the microcontroller and silent/normal mode for the LIN transceiver in between LIN data frames (see figure 5).


Atmel AVR microcontrollers provide various sleep modes, allowing the user to tailor power consumption to the application’s requirements. In the case of the two-wire LIN application, the power-down mode provides the greatest current reduction when used in conjunction with the silent mode of the LIN transceiver,” Rydahl explained.

“In this mode, all generated clocks are shut down, allowing operation of asynchronous modules only (external interrupts, USI and watchdog). To wake up the microcontroller from power-down, the LIN master must first generate a LIN wake-up request followed by a LIN frame header. This process is shown in figure 6.”


Upon wake-up, the microcontroller enters the normal mode and switches the EN pin (LIN transceiver enable) to HIGH at the start of each newly received LIN wake-up/frame packet.

During LIN data frames, the slave node microcontroller remains in normal mode and is able to provide an immediate data response upon receipt of the sync-break and message ID. At the end of the LIN data frame, the slave node returns to the power-down mode. It should be noted that operating the device in this manner will significantly reduce the average current consumption of the slave node.

On the subject of power management – LIN scheduling, the time between LIN frames, also known as the schedule table period, and the duration of the LIN frame define the power duty cycle of the slave node. This duty cycle affects the average current consumption of the two-wire LIN slave node. A typical LIN network operating at 19.2kbaud with a single frame, 8-bit message response has an average frame length of 2.95ms each. Figure 7 shows the effect of varying the schedule table period while connected to a slave node that is power duty cycling between power-down/silent and normal modes under these conditions.


Clearly, lengthening the schedule table period reduces the slave node’s average current consumption. However, this benefit is bounded by the power-down/silent mode current and offers minimal benefit for schedule periods greater than one second.

Interested in learning more Two-Wire LIN networking with Atmel? Part one of this series can be read here, while part three will be posted tomorrow.

3 thoughts on “Two-Wire LIN networking with Atmel (Part 2)

  1. Pingback: Two-Wire LIN networking with Atmel (Part 1) | Bits & Pieces from the Embedded Design World

  2. Pingback: Two-Wire LIN networking with Atmel (Part 3) | Bits & Pieces from the Embedded Design World

  3. Pingback: Two-Wire LIN networking with Atmel (Part 4) | Bits & Pieces from the Embedded Design World

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s