Versions Compared

Key

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

...

Words describing control parameters or changeable properties related to movement or position.

Information TypeDefinitionValues Illustration #
BMWFordGMVolvo Cars
VSS Alignment / MappingAndroid Alignment / MappingNotes
DirectionDirection of seat or component movement
  • Forward - toward the front of the vehicle
fore
depends 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
aft
depends 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
increase
depends 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.
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

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




Seat Heating and Cooling

Words describing control parameters or changeable properties related to seat heating and cooling.

Information TypeDefinitionValues Illustration #
BMWFordGMVolvo CarsVSS Mapping
VSS MappingAndroid Alignment
Android Alignment
/ mappingNotes

Temperature

OFF
Cooling (level 1, 2, 3)

Heat (level 1, 2, 3)




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




Fan Speed
  • Off
delete covered by Seat temp modeConcur with comment from BMWNot in VSS

Not in VSS

HVAC_SEAT_VENTILATION

Not the same



  • Auto





  • Level 1 





  • Level 2





  • Level 3 





  • Level 4 
added





  • Level 5





Seat Massage


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.DriverSide.MassageLevel - Seat massage level. 0 = off. 100 = max massage.

...

Capability

Description

Inputs

Outputs

Dependencies

Assumptions /Constraints

VSS Examples / Mapping

Android Examples / Mapping

Notes

Seat Occupant Safety - Status / Data Per Seat
Get Seat Occupant Safety Per SeatGet the occupant safety status for the identified seat 
  • seat
  • seat
  • seat occupancy status
  • seat belt status





Get Child Seat StatusAllows user to determine if a Child Seat is installed
  • seat
  • seat
  • Is child Seat Installed
























Interfaces

Android VHAL Interface

The vehicle hardware abstraction layer (VHAL) interface defines the properties OEMs can implement and contains property metadata. For example, whether a property is an integer and which change modes are allowed. The VHAL interface is based on accessing (reading, writing, and subscribing) a property, which is an abstraction for a specific function.


Set Seat Position (SEAT_FORE_AFT_POS)

Code Block
languagejava
titleSet Seat Position
CarPropertyManager manager = (CarPropertyManager) car.getCarManager(Car.PROPERTY_SERVICE);

// 1. Get seat position
int position = manager.getIntProperty(VehiclePropertyIds.SEAT_FORE_AFT_POS,
                                      Seat.SEAT_ROW_1_LEFT);
Log.d("CAR_APP", "Seat fore-aft: " + position);

// 2. Set new seat position
manager.setIntProperty(VehiclePropertyIds.SEAT_FORE_AFT_POS,
                       Seat.SEAT_ROW_1_LEFT,
                       50); // New position



Move Seat (SEAT_FORE_AFT_MOVE)

Code Block
languagejava
titleMove Seat
Car car = Car.createCar(context);
CarPropertyManager manager = (CarPropertyManager) car.getCarManager(Car.PROPERTY_SERVICE);

// Move seat forward
manager.setIntProperty(VehiclePropertyIds.SEAT_FORE_AFT_MOVE,
                       Seat.SEAT_ROW_1_LEFT,
                       1);

// Optional: stop movement after some time (e.g. button release)
new Handler().postDelayed(() -> {
    manager.setIntProperty(VehiclePropertyIds.SEAT_FORE_AFT_MOVE,
                           Seat.SEAT_ROW_1_LEFT,
                           0); // stop
}, 1000); // stop after 1 second





Zonal Architecture for Reference

...