Thursday, August 15, 2013

The history of LIN protocol

Vector has a summary of LIN protocol milestones. I think it’s necessary for you to make it clear if you are learning LIN protocol.
The first fully implemented version of LIN protocol is version 1.3 published in November 2002.
Main features added:
a. API specification as recommended practices added
b. Frame length free in range of 1-8 bytes
c. Clarification regarding the physical layer

The second version of LIN protocol is version 2.0 published in September 2003.
Main features added:
a. Off-the-shelf Slave node concept added including NCF format
b. Diagnostic and Slave node configuration defined
c. Byte arrays
d. Enhanced checksum

The third version of LIN protocol is version 2.1 published in November 2006.
Main features added:
a. New Slave node configuration services
b. Slave Diagnostic classes I - III (class II and III require TP)
c. Functional addressing supported
d. Event triggered frame collision resolution with resolution table

The fourth version of LIN protocol is version 2.2A published in December 2010.
Main features added:
a. Clarified specification according to LIN2.1 errata sheet 1.4

Electronic Manufactures and Related LIN Products

Local Interconnect Network (LIN) has been broadly applied in automotive industry, which tremendously reduced design efforts and costs and provided flexible communication solutions for auto manufactures. Auto manufacturers and suppliers have developed substantial products supporting LIN standards J1850 and ISO 9141 communication protocols ranging from physical interfaces to System Basis Chips (SBCs).  And it’s been used in a fasting growing number of applications in vehicle communication like window lift, sun roof, HVAC, rain sensor, steering wheel module, and seat positioning.
Here Listed main manufactures and suppliers providing LIN products and supports around the globe for people who are interested in LIN development.

Freescale - LIN, ISO9141, J1850 Physical Interfaces

National Instruments - NI LIN Interfaces

Atmel Corp. - LIN Networking

Austriamicrosystems AG - 8Pin LIN Companion IC

Cast - LIN Bus Controller Core

Infineon - LIN Transceivers

Maxim Integrated Products - LIN Transceiver

MelexisLIN Transceivers and LIN System Basis ICs

MicrochipMCUs with LIN Transceiver

NXP - LIN Transceiver

Renesas - Industrial LIN Solutions

Yamar ElectronicsLIN Transceivers and System Basis ICs

Monday, August 12, 2013

Notes on Schedule tables in LIN protocol

One of key properties of LIN protocol is Schedule Tables. It’s applied for managing the timing of frame slots and traffic control on the bus. The application of Schedule Tables in LIN protocol guarantees that LIN bus won’t be overloaded.
To understand schedule tables, the first step you have to do is to clarify the concept of Time Base. For a specifically implemented LIN system, it’s a constant. It’s used to calculate the time length of a frame slot according to the formula Tframe_slot = Tbase * n, in which n is different for each frame slot. It depends on the length of a frame slot.
A schedule table can incorporate more than one frame slot as shown in Fig. 1. If only one schedule table is present in a system. When it reaches the end of the schedule table, the schedule will go back to the start of the schedule table and continue performing along the sequence in the schedule table.
Fig. 1 Master uses a schedule table
It’s possible that several schedule tables co-exist in a LIN system as shown in Fig. 2. When a schedule table has been performed, any one of the rest of schedule tables may be performed. It depends on system policies.
Fig. 2 Master uses different schedule tables
The inter-frame space is specified in schedule tables. It can’t be negative since there is no arbitration in LIN protocol frame errors will occur. It’s the key factor in schedule table to control transmission timing on the bus as shown in Fig. 3.
Fig. 3 The structure of a frame slot
Note that the inter-frame space points to the space between the end of response of previous frame slot and the start of header of next frame slot. When studying the frame structure as shown in Fig. 4, you’ll find that there is response space between header and response within a frame. The header of master task and the following response of slave task are combined as a full frame slot.


Fig. 4 The structure of a frame