/*************************************************************************************/

//                                                                                     

// Description: LIN Description file created using Vector's DaVinci Network Designer   

// Created:     07 Sep 2007 13:06:42

// Author:      Vector Informatik GmbH

// Version:     0.1                                                                    

//                                                                                     

/*************************************************************************************/

LIN_description_file;
LIN_protocol_version = "2.2";
LIN_language_version = "2.2";
LIN_speed = 19.2 kbps;

Nodes {
  Master: Gateway, 1 ms, 0.1 ms ;
  Slaves: Motor_back, Motor_head, Motor_horizontal, Motor_vertical, Seatheating, Seatsensor ;
}

Signals {
  Driver: 2, 0, Gateway, Motor_back, Motor_head, Motor_horizontal, Motor_vertical ;
  Head_down: 1, 0, Gateway, Motor_head ;
  Head_up: 1, 0, Gateway, Motor_head ;
  Heating: 2, 0, Gateway, Seatheating ;
  LockingSystem: 1, 0, Gateway, Motor_back, Motor_head, Motor_horizontal, Motor_vertical ;
  PowerOn: 1, 0, Gateway, Motor_back, Motor_head, Motor_horizontal, Motor_vertical ;
  Seat_back: 1, 0, Gateway, Motor_horizontal ;
  Seat_down: 1, 0, Gateway, Motor_vertical ;
  Seat_forward: 1, 0, Gateway, Motor_horizontal ;
  Seat_up: 1, 0, Gateway, Motor_vertical ;
  Seatback_back: 1, 0, Gateway, Motor_back ;
  Seatback_forward: 1, 0, Gateway, Motor_back ;
  Seatsensor: 1, 0, Seatsensor, Gateway ;
  Storeposition: 1, 0, Gateway, Motor_back, Motor_head, Motor_horizontal, Motor_vertical ;
  Moto_back_error: 1, 0, Motor_back, Gateway ;
  Motor_head_error: 1, 0, Motor_head, Gateway ;
  Motor_horizontal_error: 1, 0, Motor_horizontal, Gateway ;
  Motor_vertical_error: 1, 0, Motor_vertical, Gateway ;
  Seatheating_error: 1, 0, Seatheating, Gateway ;
  Seatsensor_error: 1, 0, Seatsensor, Gateway ;
}

Diagnostic_signals {
  MasterReqB0: 8, 0 ;
  MasterReqB1: 8, 0 ;
  MasterReqB2: 8, 0 ;
  MasterReqB3: 8, 0 ;
  MasterReqB4: 8, 0 ;
  MasterReqB5: 8, 0 ;
  MasterReqB6: 8, 0 ;
  MasterReqB7: 8, 0 ;
  SlaveRespB0: 8, 0 ;
  SlaveRespB1: 8, 0 ;
  SlaveRespB2: 8, 0 ;
  SlaveRespB3: 8, 0 ;
  SlaveRespB4: 8, 0 ;
  SlaveRespB5: 8, 0 ;
  SlaveRespB6: 8, 0 ;
  SlaveRespB7: 8, 0 ;
}



Frames {
  GW_Ignition: 15, Gateway, 1 {
    PowerOn, 0 ;
    LockingSystem, 1 ;
  }
  Seatheating: 21, Gateway, 1 {
    Heating, 0 ;
  }
  Seatposition: 16, Gateway, 1 {
    Driver, 0 ;
  }
  Seatsensor: 22, Seatsensor, 1 {
    Seatsensor, 0 ;
    Seatsensor_error, 1 ;
  }
  Seatsetting: 20, Gateway, 1 {
    Seat_up, 0 ;
    Seat_down, 1 ;
    Seat_forward, 2 ;
    Seat_back, 3 ;
    Seatback_forward, 4 ;
    Seatback_back, 5 ;
    Head_up, 6 ;
    Head_down, 7 ;
  }
  StoreSeatposition: 17, Gateway, 1 {
    Storeposition, 0 ;
  }
  Motor_back_state: 0, Motor_back, 1 {
    Moto_back_error, 0 ;
  }
  Motor_head_state: 1, Motor_head, 1 {
    Motor_head_error, 0 ;
  }
  Motor_horizontal_state: 2, Motor_horizontal, 1 {
    Motor_horizontal_error, 0 ;
  }
  Motor_vertical_state: 3, Motor_vertical, 1 {
    Motor_vertical_error, 0 ;
  }
  Seatheating_state: 4, Seatheating, 1 {
    Seatheating_error, 0 ;
  }
}



Diagnostic_frames {
  MasterReq: 0x3c {
    MasterReqB0, 0 ;
    MasterReqB1, 8 ;
    MasterReqB2, 16 ;
    MasterReqB3, 24 ;
    MasterReqB4, 32 ;
    MasterReqB5, 40 ;
    MasterReqB6, 48 ;
    MasterReqB7, 56 ;
  }
  SlaveResp: 0x3d {
    SlaveRespB0, 0 ;
    SlaveRespB1, 8 ;
    SlaveRespB2, 16 ;
    SlaveRespB3, 24 ;
    SlaveRespB4, 32 ;
    SlaveRespB5, 40 ;
    SlaveRespB6, 48 ;
    SlaveRespB7, 56 ;
  }
}

Node_attributes {
  Motor_back{
    LIN_protocol = "2.2" ;
    configured_NAD = 0x2 ;
    initial_NAD = 0x2 ;
    product_id = 0x1E, 0x1, 1 ;
    response_error = Moto_back_error ;
    P2_min = 50 ms ;
    ST_min = 0 ms ;
    N_As_timeout = 1000 ms ;
    N_Cr_timeout = 1000 ms ;
    configurable_frames {
      Motor_back_state ;
      Seatposition ;
      GW_Ignition ;
      Seatsetting ;
      StoreSeatposition ;
    }
  }
  Motor_head{
    LIN_protocol = "2.2" ;
    configured_NAD = 0x3 ;
    initial_NAD = 0x3 ;
    product_id = 0x1E, 0x2, 1 ;
    response_error = Motor_head_error ;
    P2_min = 50 ms ;
    ST_min = 0 ms ;
    N_As_timeout = 1000 ms ;
    N_Cr_timeout = 1000 ms ;
    configurable_frames {
      Motor_head_state ;
      Seatposition ;
      GW_Ignition ;
      Seatsetting ;
      StoreSeatposition ;
    }
  }
  Motor_horizontal{
    LIN_protocol = "2.2" ;
    configured_NAD = 0x4 ;
    initial_NAD = 0x4 ;
    product_id = 0x1E, 0x3, 1 ;
    response_error = Motor_horizontal_error ;
    P2_min = 50 ms ;
    ST_min = 0 ms ;
    N_As_timeout = 1000 ms ;
    N_Cr_timeout = 1000 ms ;
    configurable_frames {
      Motor_horizontal_state ;
      Seatposition ;
      GW_Ignition ;
      Seatsetting ;
      StoreSeatposition ;
    }
  }
  Motor_vertical{
    LIN_protocol = "2.2" ;
    configured_NAD = 0x5 ;
    initial_NAD = 0x5 ;
    product_id = 0x1E, 0x4, 1 ;
    response_error = Motor_vertical_error ;
    P2_min = 50 ms ;
    ST_min = 0 ms ;
    N_As_timeout = 1000 ms ;
    N_Cr_timeout = 1000 ms ;
    configurable_frames {
      Motor_vertical_state ;
      Seatposition ;
      GW_Ignition ;
      Seatsetting ;
      StoreSeatposition ;
    }
  }
  Seatheating{
    LIN_protocol = "2.2" ;
    configured_NAD = 0x6 ;
    initial_NAD = 0x6 ;
    product_id = 0x1E, 0x5, 1 ;
    response_error = Seatheating_error ;
    P2_min = 50 ms ;
    ST_min = 0 ms ;
    N_As_timeout = 1000 ms ;
    N_Cr_timeout = 1000 ms ;
    configurable_frames {
      Seatheating_state ;
      Seatheating ;
    }
  }
  Seatsensor{
    LIN_protocol = "2.2" ;
    configured_NAD = 0x7 ;
    initial_NAD = 0x7 ;
    product_id = 0x1E, 0x6, 1 ;
    response_error = Seatsensor_error ;
    P2_min = 50 ms ;
    ST_min = 0 ms ;
    N_As_timeout = 1000 ms ;
    N_Cr_timeout = 1000 ms ;
    configurable_frames {
      Seatsensor ;
    }
  }
}

Schedule_tables {
 Table_0 {
    StoreSeatposition delay 5 ms ;
    GW_Ignition delay 5 ms ;
    Seatheating delay 5 ms ;
    Seatposition delay 5 ms ;
    Seatsensor delay 5 ms ;
    Seatsetting delay 5 ms ;
  }
 ErrorTable1_CorruptedSchedule {
    StoreSeatposition delay 5 ms ;
    Seatheating delay 5 ms ;
    Seatposition delay 5 ms ;
    Seatsensor delay 5 ms ;
    Seatsetting delay 5 ms ;
  }
 ErrorTable2_SlowSchedule {
    StoreSeatposition delay 30 ms ;
    GW_Ignition delay 30 ms ;
    Seatheating delay 30 ms ;
    Seatposition delay 30 ms ;
    Seatsensor delay 30 ms ;
    Seatsetting delay 30 ms ;
  }
 Status_Table {
    Seatheating_state delay 5 ms ;
    Motor_vertical_state delay 5 ms ;
    Motor_horizontal_state delay 5 ms ;
    Motor_head_state delay 5 ms ;
    Motor_back_state delay 5 ms ;
  }
}


Signal_encoding_types {
  StandardPhys_Sig_Type {
    physical_value, 0, 0, 1, 0 ;
  }
}

Signal_representation {
  StandardPhys_Sig_Type: Head_down, Head_up, Seat_back, Seat_down, Seat_forward, Seat_up, Seatback_back, Seatback_forward, Seatsensor, Storeposition ;
}
