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.DriverSideNote: 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)

Cabin.Seat.DriverPosition

Vehicle.Cabin.Seat.

DriverPosition sets the DriverSide in VSS.  It is allows ['LEFT', 'MIDDLE', 'RIGHT'] .   

In uServices, it does not appear Driver Position or similar is spelled out.

Decision:  For Seating Capabilities, not how it is done internally to your organization, can we align around VSS Vehicle.Cabin.Seat?

Stupid Question Erik Jaegervall bear with me :  How does Vehicle.Cabin.SeatPosCount work with what is actually generated for vss.yaml (the instances) and/or how you use? 

For instance, in Cabin.vspec the default is 

SeatPosCount:
  datatype: uint8[]
  type: attribute
  default: [2, 3]

Based on the Seat branch definition:

Seat:
  type: branch
  instances:
    - Row[1,2]
    - ["DriverSide","Middle","PassengerSide"]

The following instances are generated per row:

Vehice.Cabin.Seat.Row1.DriverSide,

Vehice.Cabin.Seat.Row1.Middle,

Vehice.Cabin.Seat.Row1.PassengerSide

It is implied or just well known that in this case you just don't use Middle?  What if SeatPosition is [1,1] ... DriverSide and PassengerSide or the same?  What if it is your instances are ["DriverSide","Middle1","Middle2"PassengerSide"] and your SeatPosition is [3,4]?  

I guess it is implied, industry knowledge or incumbent on the implementor to spell it out? Right?

Comment from Erik Jaegervall 2024-12-18:

In general - how to indicate whether a VSS signal or a seat instance actually exists is up to the implementation. It might be based on that you do changes to your in VSS (for example with delete: true attribute to remove specific instances), or it may handle it dynamically, like no ECU provide values for specific seat). In the latter case, the VSS spec just shows "valid paths", it does not say whether a specific feature or seat actually exist.

The SeatPosCount signal is old. Once upon the time we actually had a numeric "pos" argument for seats, like Pos1, Pos2 and then you could possibly use it to know which seats that existed, but now it is more of guesswork.

There have been discussions if the instance-part should be removed from the VSS-spec and especially from the full dot-notated paths, as that is rather deployment information. That "core" VSS should specify that there can be multiple seats, and possibly that row/pos are attributes that seat can have, but specifying the actual instances is rather for the implementation. That would be a bit similar to the Android zone concept.

TBD
  • 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

tbd

Seat Components

Seat components that are movable or controllable, electrically driven.

Row1.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

tbd

Seat Components

Seat components that are movable or controllable, electrically driven.

Seat Component 

Moveable Seating Component (Electrically Driven)

SEAT_FORE_AFT

SEAT_HEIGHT

Pictures would be good

focus must be on Mechatronic components

Inflation level 0-100%Vehicle.Cabin.Seat.Row1.DriverSide.AirbagAirbag.IsDeployed - boolean - Airbag deployment status. True = Airbag deployed. False = Airbag not deployed..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

Differs:  Lumbar is only one piece in Android


Cushion Side Bolster

12

  • right = 12a
  • left = 12b


"lower bolsters"



Inflation level 0-100%Differs:  Does not exist in VSS

SEAT_CUSHION_SIDE_SUPPORT


Backrest Side Bolster

11

  • right = 11a
  • left = 11b
"upper bolsters"
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




  • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest - Describes signals related to the backrest of the seat.
    • Vehicle.Cabin.Seat.Row1.DriverSide.Backrest.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
Information TypeValues Illustration #BMWFordGMVolvo CarsVSS Alignment / MappingAndroid Alignment / mappingNotes
Complete seat All

Added

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

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.Seating - Describes signals related to the seat bottom of the seat.
      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.BackrestSeating.Lumbar.Support - percent - lumbar support (in/out position). 0 = Innermost position. 100 = Outermost position.

SEAT_LUMBAR_VERTICAL

SEAT_LUMBAR_FORE_AFT

Cushion Side Bolster

Need number

    • 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





Right and Left Back (upper) bolstersInflaation level 0-100%

SEAT_CUSHION_SIDE_SUPPORT

Backrest Side Bolster

8

Right and Left Cushion (lower) bolsters
  • Vehicle.Cabin.Seat.Row1.DriverSide.Headrest - Headrest settings
    • Vehicle.Cabin.Seat.Row1.DriverSide.
    Backrest.SideBolster - Backrest side bolster (lumbar side support) settings
    • 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.DriverSideMiddle.Backrest.SideBolster.Support percent - Side bolster support. 0 = Minimum support (widest side bolster setting). 100 = Maximum support.
SEAT_LUMBAR_SIDE_SUPPORT
    • 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

Upper Shoulder (fwd/backward)

9

Backrest (was Cushion Front)

10






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

Cushion Extension

Blue thing

Thigh Extension?

see video

Either works
  • Airbag
    • Vehicle.Cabin.
    Seat.Row1.DriverSide.Headrest - Headrest settings
    • Seat.Row1.DriverSide.Airbag.IsDeployed - boolean - Airbag deployment status. True = Airbag deployed. False = Airbag not deployed.
  • 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

  • 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

Neck Scarf (fan)

Seat Belt (height)

Seat Component Illustrations

  • .DriverSide.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.



...

Heat
Information TypeDefinitionValues Illustration #BMWFordGMVolvo CarsVSS MappingAndroid Alignment / mappingNotesNotes

Temperature





OFF
Cooling (level 1, 2, 3)

Heat (level 1, 2, 3)



Temperature

  • -100 = max cooling
  • 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
  • Vent





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 Patterns

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 requestoron 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

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
One request/trigger moves one increment.

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? 

N/A

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

N/A

a user commands a seat component in a certain direction, it will move in that direction until 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/APersonalization not in VSS or Android
Recall Seat PositionRecall seat and component positions
  • seat
  • seat occupant ID



N/A/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)





...

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
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

...