Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table  Table of Contents

Table of Contents

...

Identifying a specific seat within a vehicle. This is based on location within the vehicle.

Information Type

Values (per GM uServices)

Illustration #BMWFordGMVolvo CarsVSS Alignment / MappingAndroid Alignment / MappingNotes

Seat (Instances)

Seat identity for 3 rows with 3 seats  per row, front to back

(looking towards front of vehicle from within the vehicle)

  • row1_left


row1_driver
or
row1_passenger
by region / config



Vehicle.

Row1.DriverSide

Note: Driver seat typically has more functions than others. Typical ECUs are DriverSeatModule and PassengerSeat Module, that are picked up as is (SW content & interfaces) and moved from left to right of vehicle based on region)

TBDrow1_center

Cabin.Seat.DriverPosition

Vehicle.Cabin.Seat.Row1.

Middlerow1_

DriverSide




 VehicleAreaSeatDriver and Passenger can be mapped to row1_left, etc...
  • row1_center





Vehicle.Cabin.Seat.Row1.Middle



  • row1_right


row1_driver
or
row1_passenger
by region / config



Vehicle.Cabin.Seat.Row1.PassengerSide



  • row2_left





  • Vehicle.Cabin.Seat.Row2.DriverSide


  • row2_center





  • Vehicle.Cabin.Seat.Row2.Middle


  • row2_right





  • Vehicle.Cabin.Seat.Row2.PassengerSide


  • row3_left





  • Vehicle.Cabin.Seat.Row3.DriverSide


  • row3_center





  • Vehicle.Cabin.Seat.Row3.Middle


  • row3_right





  • Vehicle.Cabin.Seat.Row3.PassengerSide


Seat Identity Illustrations

...

Pictures would be good

focus must be on Mechatronic components

AirbagAirbag.IsDeployed - boolean - Airbag deployment status. True = Airbag deployed. False = Airbag not deployed.
  • Vehicle.Cabin.Seat.Row1.PassengerSide.Airbag
  • Information TypeValues Illustration #BMWFordGMVolvo CarsVSS Alignment / MappingAndroid Alignment / mappingNotes

    Seat Component 

    Moveable Seating Component (Electrically Driven)



    Complete seat All

    Added




    • Vehicle.Cabin.Seat is the complete seat definition.
      •  Vehicle.Cabin.Seat.Row1.DriverSide would be an instance.

    SEAT_FORE_AFT

    SEAT_DEPTH

    SEAT_HEIGHT

    SEAT_TILT


    Lumbar

    • Top
    • Middle
    • Lower

    5

    • top =5a
    • mid =5b
    • lower =5c





    • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.Lumbar - Adjustable lumbar support mechanisms in seats allow the user to change the seat back shape.
      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.Lumbar.Height - mm - Height of lumbar support. Position is relative within available movable range of the lumbar support. 0 = Lowermost position supported.
      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.Lumbar.Support - percent - lumbar support (in/out position). 0 = Innermost position. 100 = Outermost position.

    Differs:  Lumbar is only one piece in VSS not three components

    SEAT_LUMBAR_VERTICAL

    SEAT_LUMBAR_FORE_AFT

    Cushion Side Bolster

    Need number

    Differs:  Lumbar is only one piece in Android


    Cushion Side Bolster

    12

    • right = 12a
    • left = 12b


    "lower bolsters"



    Inflation Right and Left Back (upper) bolstersInflaation level 0-100%Differs:  Does not exist in VSS

    SEAT_CUSHION_SIDE_SUPPORT


    Backrest Side Bolster

    8

    Right and Left Cushion (lower) bolsters

    11

    • right = 11a
    • left = 11b
    "upper bolsters"
    Inflation level Inflation level 0-100%
    • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.SideBolster - Backrest side bolster (lumbar side support) settings.
      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.SideBolster.Support percent - Side bolster support. 0 = Minimum support (widest side bolster setting). 100 = Maximum support.

    Differs:  SideBolster is represented as one piece vs two

    SEAT_LUMBAR_SIDE_SUPPORT

    Upper Shoulder (fwd/backward)

    9




    Differs:  Does not exist in VSS.  Is it needed?Differs:  Does not exist in Android

    Backrest (was Cushion Front)

    10




    Blue thing
    • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest - Describes signals related to the backrest of the seat.

    Cushion Extension

    Headrest

      Thigh Extension?

      see video

      Either works
        • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.
        Headrest - Headrest settings
        • Vehicle.Cabin.Seat.Row1.DriverSide.Headrest.Height - mm Seat position on vehicle z-axis. Position is relative within available movable range of the seating. 0 = Lowermost position supported.

      Airbag

        • Recline degrees - Backrest recline compared to seat z-axis (seat vertical axis). 0 degrees = Upright/Vertical backrest. Negative degrees for forward recline. Positive degrees for backward recline.

      SEAT_BACKREST_ANGLE_1

      SEAT_BACKREST_ANGLE_2


      Cushion Extension

      13

      Blue thing


      Thigh Extension?

      see video


      Either works
      • Vehicle.Cabin.Seat.Row1.DriverSide.Seating - Describes signals related to the seat bottom of the seat.
        • Vehicle.Cabin.Seat.Row1.DriverSide.Seating.Length - Length adjustment of seating. 0 = Adjustable part of seating in rearmost position (Shortest length of seating).
      Differs:  Does not exist in Android

      Headrest

      4





      • Vehicle.Cabin.Seat.Row1.DriverSide.Headrest - Headrest settings
        • Vehicle.Cabin.Seat.Row1.DriverSide.Headrest.Height - mm Seat position on vehicle z-axis. Position is relative within available movable range of the seating. 0 = Lowermost position supported.
        • Vehicle.Cabin.Seat.Row1.Middle.Headrest.Angle - Headrest angle, relative to backrest, 0 degrees if parallel to backrest, Positive degrees = tilted forward.

      SEAT_HEADREST_ANGLE

      SEAT_HEADREST_FORE_AFT

      SEAT_HEADREST_HEIGHT


      Airbag






      • Vehicle.Cabin.Seat.Row1.DriverSide.Airbag
        • Vehicle.Cabin.Seat.Row1.DriverSide.Airbag.IsDeployed - boolean - Airbag deployment status. True = Airbag deployed. False = Airbag not deployed.
      • Vehicle.Cabin.Seat.Row1.PassengerSide.Airbag


      VSS has deployed but not enabled.  

      SEAT_AIRBAG_ENABLED


      Has enabled only not deployed

      Should we consider extending VSS for other airbags.

      Neck Scarf (fan)

      6





      Differs:  Does not existDiffers: Does not existAdd to VSS?

      Seat Belt (height)






      • Vehicle.Cabin.Seat.Row1.DriverSide.
      • IsBelted
        • Boolean
      • Vehicle.Cabin.Seat.Row1.DriverSide.

      Neck Scarf (fan)

      Seat Belt (height)

      Seat Component Illustrations

      • SeatBeltHeight
        • Seat belt position on vehicle z-axis. Position is relative within available movable range of the seat belt. 0 = Lowermost position supported.

      SEAT_BELT_BUCKLED

      SEAT_BELT_HEIGHT_MOVE

      SEAT_BELT_HEIGHT_POS


      Seat Component Illustrations (maintained on  Miro)

      Image AddedImage Removed


      Bolsters and Bladders:

      Image RemovedImage Added


      Seat & Component Movements or Positions 

      ...

      Needs Clarification.Percent of total? clicks? x, y, z axis values?
      Information TypeDefinitionValues Illustration #BMWFordGMVolvo CarsVSS Alignment / MappingAndroid Alignment / MappingNotes
      DirectionDirection of seat or component movement
      • Forward - toward the front of the vehicle


      foredepends on the component

      Applied by seat or component like:

      Is Fold a direction?
      Team agreed it is a capability
      • Backward - toward the back of the vehicle

      aftdepends on the component

      • Up - toward the roof of the vehicle


      depends on the component

      Applied by Seat or Component like:

      • Vehicle.Cabin.Seat.Row1.DriverSide.Height
      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.Lumbar.Height
      • Vehicle.Cabin.Seat.Row1.DriverSide.Headrest.Height

      Applied by seat or component like:


      • Down - toward the bottom of the vehicle


      depends on the component

      • Inflate - fill with air

      increasedepends on the component

      Applied by inflatable Component like:

      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.Lumbar.Support percent - lumbar support (in/out position). 0 = Innermost position. 100 = Outermost position.
      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.SideBolster.Support percent - Side bolster support. 0 = Minimum support (widest side bolster setting). 100 = Maximum support.


      • Deflate - remove air

      decreasedepends on the component


      • Tilt / Recline (angles)

      anglesdepends on the component

      Applied by Component like:

      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.Recline -

      degrees - Seat z-axis depends on seat tilt. This means that movement of backrest due to seat tilting will not affect Backrest.Recline as long as the angle between Seating and Backrest are constant. Absolute recline relative to vehicle z-axis can be calculated as Tilt + Backrest.Recline.

      • Vehicle.Cabin.Seat.Row1.DriverSide.Headrest.Angle -

      degrees - Headrest angle, relative to backrest, 0 degrees if parallel to backrest, Positive degrees = tilted forward.



      • Swivel







      Position

      position on horizontal plane (x-axis) or vertical plane (z-axis) of seat or component




      needs clarification

      Position vs DirectionNeeds Clarification.
      Percent of total? clicks? x, y, z axis values?


      Should height be separate?

      Is y-axis needed?



      • Vehicle.Cabin.Seat.Row1.DriverSide.Position -

      Seat position on vehicle x-axis. mm - Position is relative to the frontmost position supported by the seat. 0 = Frontmost position supported.

      • Vehicle.Cabin.Seat.Row1.DriverSide.Height -

      mm - Seat position on vehicle z-axis. Position is relative within available movable range of the seating. 0 = Lowermost position supported.

      AI:  align what position means


      Tilt Angle


      tilt angle of seat or component (also known as recline)


      duplicate to Tilt / Recline (angles)

      duplicate to Tilt / Recline (angles) under "direction" above



      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.Recline -

      degrees - Seat z-axis depends on seat tilt. This means that movement of backrest due to seat tilting will not affect Backrest.Recline as long as the angle between Seating and Backrest are constant. Absolute recline relative to vehicle z-axis can be calculated as Tilt + Backrest.Recline.

      • Vehicle.Cabin.Seat.Row1.DriverSide.Headrest.Angle -

      degrees - Headrest angle, relative to backrest, 0 degrees if parallel to backrest, Positive degrees = tilted forward.



      ...

      Information TypeDefinitionValues Illustration #BMWFordGMVolvo CarsVSS MappingAndroid Alignment / mappingNotes

      Temperature





      OFF
      Cooling (level 1, 2, 3)

      Heat (level 1, 2, 3)



      • -100 = max cooling
      • 100 = max heating
      • 0 = off
      • 100 = max heating
      • 0 = off


      • Vehicle.Cabin.Seat.Row1.DriverSide.HeatingCooling
        •  Heating or Cooling requsted for the Item. -100 = Maximum cooling, 0 = Heating/cooling deactivated, 100 = Maximum heating
      HVAC_SEAT_TEMPERATUREShould this be heating cooling?

      Temperature Controlled Element Mode



      • On

      addedIs "On" covered by heat, cool, or vent?





      • Off









      • Cool


      level 1, 2, 3





      • Vent


      as predetermined percentages





      • Heat


      level 1, 2, 3




      Fan Speed
      • Off

      delete covered by Seat temp modeConcur with comment from BMW

      Not in VSS

      HVAC_SEAT_VENTILATION

      Not the same



      • Auto









      • Level 1 









      • Level 2









      • Level 3 









      • Level 4 

      added






      • Level 5








      ...

      Information TypeDefinitionValues Illustration #BMWFordGMVolvo CarsVSS Alignment / MappingAndroid Alignment / MappingNotes
      Massage CapabilityIs the seat capable of providing massage.

      yes/no or true/false


      we need a general discover mechanism

      Overlaps with with Seat Massage TypeNot in VSSNot in Andriod
      Massage Status
      On/Off



      Overlaps with Seat Massage Type
      • Vehicle.Cabin.Seat.Row1.DriverSide.Switch.Massage - Switches for SingleSeat.Massage.
      • Vehicle.Cabin.Seat.Row1.DriverSide.Switch.Massage.IsDecreaseEngaged - Decrease massage level switch engaged (SingleSeat.Massage).
      • Vehicle.Cabin.Seat.Row1.DriverSide.Switch.Massage.IsIncreaseEngaged - Increase massage level switch engaged (SingleSeat.Massage).


      Massage Types Available massage types for a specific seat, including none. Values will vary by OEM, therefore, need a capability to determine types per seat.

      Massage PatternsPatterns

      Not in VSSNot in Android
      Seat Massage Type
      • Off
      • Roll
      • Knead
      • Anti Fatigue
      • Pulse
      • Stretch
      • Lumbar
      • Shoulder
      • Wave
      • Relief
      • Glide


      Need discovery capability as will vary by seat.

      Not in VSSNot in Android
      Massage Intensity
      Intensity of massage
      ??

      1-5?Vehicle.Cabin.Seat.Row1.PassengerSideDriverSide.Massage MassageLevel - Seat massage level. 0 = off. 100 = max massage.

      ...

      Haptics are seat or component vibrations used to alert the driver or provide feedback. Used Typically used by ADAS such as lane departure warning.

      Information TypeDefinitionValues Illustration #BMWFordGMVolvo CarsVSS Alignment / MappingAndroid Alignment / Mapping
      Delay Between Pulses




      internal calibration at the moment, based on the requestor
      Not in VSSNot in Android
      Haptic Pulses









      Seat Occupancy and Safety

      ...

      Information TypeDefinitionValues Illustration #BMWFordGMVolvo CarsVSS Alignment / MappingAndroid Alignment / MappingNotes
      Seat Occupancy Status
      • Unknown





      Vehicle.Cabin.Seat.Row1.MiddleDriverSide.IsOccupied - boolean - is or is not occupied.  No Unkown.

      • Occupied





      • Empty





      Seat Occupant ID


      ??

      What is this?
      • Vehicle.Cabin.Seat.Row1.DriverSide.Occupant.Identifier -
        • v5.0  use data from Vehicle.Occupant.*.*.Identifier.
        • Identifier attributes based on OAuth 2.0.
      • Vehicle.Cabin.Seat.Row1.DriverSide.Occupant.Identifier.Subject
        • v5.0 - use data from Vehicle.Occupant.*.*.Identifier.
        • Subject for the authentication of the occupant e.g. UserID 7331677.


      Child seat
      • Installed (true/false)

      added





      Seat Belt Status
      • Fastened





      Vehicle.Cabin.Seat.Row1.PassengerSideDriverSide.IsBelted  - boolean - is or is not belted/fastened

      Related:

      • Vehicle.Cabin.Seat.Row1.PassengerSide.SeatBeltHeight - Seat belt position on vehicle z-axis. Position is relative within available movable range of the seat belt. 0 = Lowermost position supported.




      • Unfastened





      ...

      Information TypeDefinitionValues Illustration #BMWFordGMVolvo CarsVSS Alignment / MappingAndroid Alignment / MappingNotes
      Side of Seat Side of a specific Seat
      • Right
      • Left
      duplicate to "SEATS"Seat Switch 






      • Seat Switch Signals - e.g. Vehicle.Cabin.Seat.Row1.DriverSide.Switch.Backrest.IsReclineBackwardEngaged
      • See spec and generated schema for details

      Address in VSS - Is this needed for capabilities?  


      Seat Capability Alignment (WIP)

      ...

      Capability

      Description

      Inputs

      Outputs

      Dependencies

      Assumptions /Constraints

      VSS Examples / Mapping

      Android Examples / Mapping

      Notes

      Movement & Position - Control
      Move Seat IncrementallyContinuously

      Move the identified seat in the specified direction.  When a user commands a seat in a certain direction, it will

      incrementally move in that direction.
      • seat
      • direction
      • status

      move in that direction until the value is changed.  The change (e.g. stop) could come from the user or a hardware limit.

      • seat
      • direction
      • status


      Vehicle.Cabin.Seat.Row1.DriverSide.Switch.IsForwardEngaged:
        datatype: boolean
        description: Seat forward switch engaged (SingleSeat.Position).
        type: actuator

      Question:  How does something other than a switch use this capability?

      SEAT_FORE_AFT_MOVE includes speed.

      Android includes speed. VSS does not.  Is it needed? 

      One request/trigger moves one increment.

      Move Seat to Specified PositionSet the seat position for the identified seat.  This is entire seat position forward, back, up down.  
      • seat
      • position
      • status


      • Vehicle.Cabin.Seat.Row1.DriverSide.Position 

      Seat position on vehicle x-axis. mm - Position is relative to the frontmost position supported by the seat. 0 = Frontmost position supported.

      • Vehicle.Cabin.Seat.Row1.DriverSide.Height 

      mm - Seat position on vehicle z-axis. Position is relative within available movable range of the seating. 0 = Lowermost position supported.

      SEAT_FORE_AFT_POS

      What is the position definition?

      ISO 8895

      What is status?  Position Status.

      Move Seat Component IncrementallyContinuouslyMove the identified seat and component in the specified direction.  When a user commands a seat component in a certain direction, it will incrementally move in that direction until the user ceases their request.
      • seat
      • component
      • direction
      • status
      the value is changed.  The change (e.g. stop) could come from the user or a hardware limit.
      • seat
      • component
      • direction
      • status


      Vehicle.Cabin.Seat.Row1.Middle.Switch.Headrest.IsForwardEngaged:
        datatype: boolean
        description: Head rest forward switch engaged (SingleSeat.Headrest.Angle).
        type: actuator

      Question:  How does something other than a switch use this capability?

      SEAT_HEADREST_ANGLE_MOVE

      Different classes of comportment?  Certain directions apply to different components?


      Need to enumerate the components?  Component type?

      Set Seat Component Position Per SeatSet the seat component position for the identified seat.  This is position of the component only.
      • seat
      • seat component
      • position
      • angle
      • status


      Applied by Component and Direction like:

      • Vehicle.Cabin.Seat.Row1.DriverSide.Headrest.Height 
      • Vehicle.Cabin.Seat.Row1.DriverSide.Headrest.Angle
      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.Recline
      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.Lumbar.Height
      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.Lumbar.Support percent - lumbar support (in/out position). 0 = Innermost position. 100 = Outermost position.
      • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.SideBolster.Support percent - Side bolster support. 0 = Minimum support (widest side bolster setting). 100 = Maximum support.

      Applied by Component and Direction like:

      SEAT_HEADREST_ANGLE_POS


      Store Seat PositionStores current seat and component positions
      • seat
      • Seat Occupant ID



      N/AN/AAPersonalization not in VSS or Android
      Recall Seat PositionRecall seat and component positions
      • seat
      • seat occupant ID



      N/AN/APersonalization not in VSS or Android
      Fold HeadrestFold or unfold headrest
      • Seat
      • Fold or unfold





      Align with move seat compontent?
      Fold SeatFold or unfold seat
      • Seat
      • Fold or unfold





      Align with move seat component
      Movement & Position - Status / Data
      Get Seat Position Per SeatGet the seat position for the identified seat.  This is entire seat position.
      • seat
      • position
      • status





      Get Seat Component Position Per SeatGet the seat component position for the identified seat.  This is position of the component only.
      • seat
      • seat component
      • position
      • angle
      • status





      Get Seat Ids / LocationsProvides the list of seats available in "this" Vehicle
      • none

      Array of:

      • seat location (like row1_left, row1_center, etc)
      • Is_Present (true/false)





      ...

      F Headrest Height or Headrest Fwd/Backward

      Seat Heating and Cooling

      /Backward


      Seat Heating and Cooling


      Heating & Cooling - Control

      Capability

      Description

      Inputs

      Outputs

      Dependencies

      Assumptions /Constraints

      VSS Examples / Mapping

      Android Examples / Mapping

      Notes

      Heating & Cooling - Control
      Set Seat Temperature Level  Per SeatSet the temperature level for the identified seat 
      • seat
      • seat temperature level
      • seat
      • seat temperature level



      HVAC_SEAT_TEMPERATURE
      Set Seat Ventilation Per SeatGet ventilation level for the identified seat
      • seat
      • seat temperature level
      • seat
      • seat temperature level



      HVAC_SEAT_VENTILATION

      Capability

      Description

      Inputs

      Outputs

      Dependencies

      Assumptions /Constraints

      VSS Examples / Mapping

      Android Examples / Mapping

      Notes


      TBD
















      Seat Heating & Cooling - Status / Data
      Get Seat Heating Temperature Level Per SeatGet the heating mode and temerature level for the identified seat 
      • seat
      • seat
      • seat temperature modeseat temperature levellevel



      HVAC_SEAT_TEMPERATURE
      Get Seat Component Heating Ventilation  Level Per SeatGet the heating mode and ventilation level for the identified seat and component
      • seat
      • seat component
      • seat
      • seat component
      • seat temperature modeseat temperature levellevel



      HVAC_SEAT_VENTILATION









      Seat Massage


      Capability

      Description

      Inputs

      Outputs

      Dependencies

      Assumptions /Constraints

      VSS Examples / Mapping

      Android Examples / Mapping

      Notes

      Massage - Control Per Seat
      Set Seat Massage Per SeatSet the massage type and intensity for the identified seat 
      • seat
      • seat massage type 
      • massage intensity
      • status




      It will be difficult to agree on massage types / patterns.  So added a capability to determine what massage types or patterns are available per set.









      Massage - Status / Data Per Seat
      Get Seat Massage Per SeatGet the massage type and intensity for the identified seat 
      • seat
      • seat
      • massage type
      • massage intensity





      Get Massage Statusidentifies if massage is on or off for specific set(s)
      • seat
      • (or all)?
      • seat
      • massage status





      Get Seat Massage Capabilityidentifies if seats support massage
      • seat
      • (or all)?
      • seat
      • massage capability







      Get Seat Massage Types (Patterns)Provides a list of available massage types for a specific seat. May be none. 
      • seat
      • list of available massage patterns




      Need to consider in what format? Bounded array of string values?

      ...

      Capability

      Description

      Inputs

      Outputs

      Dependencies

      Assumptions /Constraints

      VSS Examples / Mapping

      Android Examples / Mapping

      Notes

      Haptics - Control
      Activate HapticsActivate seat haptic notification for driver's seat
      • seat (driver only) 
      • side (left right both)
      • delay between pulses
      • pulses

      What is a haptic seat?   Where does it fit?

      Use use case to help define.







      Haptics - Status / Data








      Is this needed?


      Seat Occupancy and Safety

      ...