Table of Contents
Note |
---|
|
Below is the start of translating the uServices definitions of seating capabilities to a technology neutral tabular format as agreed in our kick-off meeting on October 18th. Please take a look, iterate, comment and let me know if you have questions Paul Boyes
Agreed by Group: - Start a position D in architecture - see architecture diagram below
- Safety considerations to be noted but not exhaustively
|
...
Terminology Alignment (WIP)
Seatting.pptx
Aligning on information types is critical.
Image Removed
Bolsters and Bladders:
Image Removed
A
Image Removed(Seat Height or Seat Up/Down)
B
Image Removed Seat Forward/Backward
C
Image Removed Seat Recline
D
Image Removed Cushion Extension
E
Image Removed Cushion Tilt
F
Image RemovedHeadrest Height or Headrest Fwd/Backward
Notes:
- Seating accounts for over 1/5th of VSS.yaml. This is due to the many facets of seating and the number of instances.
- Seat Configuration:
- Vehicle.Cabin.SeatRowCount - number of rows - defaults to 2
- Vehicle.Cabin.SeatPosCount - array of number of seats per row - defaults to 2,3 which is 2 in row 1 and 3 in row 2
- Even though the default says only 2 seats in row 1, generated (yaml) it has Driver, Middle and Passenger
- Related:
- Vehicle.VehicleIdentification.VehicleSeatingCapacity - provides seating capacity vehicle
- Vehicle.Cabin.DriverPosition - driver left, middle or right
Seat Identity
Identifying a specific seat within a vehicle. This is based on location within the vehicle.
Information Type | Values (per GM uServices) | Illustration # | BMW | Ford | GM | Volvo Cars | VSS Alignment / Mapping | Android Alignment / Mapping | Notes |
---|
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_driver or row1_passenger by region / config |
|
| Vehicle.Cabin.Seat.DriverPosition Vehicle.Cabin.Seat.Row1.DriverSide
| VehicleAreaSeat. | Driver and Passenger can be mapped to row1_left, etc... |
|
|
|
|
|
| Vehicle.Cabin.Seat.Row1.Middle |
|
|
|
|
| row1_driver or row1_passenger by region / config |
|
| Vehicle.Cabin.Seat.Row1.PassengerSide |
|
|
|
|
|
|
|
| - Vehicle.Cabin.Seat.Row2.DriverSide
|
|
|
|
|
|
|
|
| - Vehicle.Cabin.Seat.Row2.Middle
|
|
|
|
|
|
|
|
| - Vehicle.Cabin.Seat.Row2.PassengerSide
|
|
|
|
|
|
|
|
| - Vehicle.Cabin.Seat.Row3.DriverSide
|
|
|
|
|
|
|
|
| - Vehicle.Cabin.Seat.Row3.Middle
|
|
|
|
|
|
|
|
| - Vehicle.Cabin.Seat.Row3.PassengerSide
|
|
|
Seat Identity Illustrations
tbd
Seat Components
Seat components that are movable or controllable, electrically driven.
Information Type | Values | Illustration # | BMW | Ford | GM | Volvo Cars | VSS Alignment / Mapping | Android Alignment / mapping | Notes |
---|
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 | 5 |
|
|
|
| - 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 |
| "lower bolsters"
|
| Inflation level 0-100% | Differs: Does not exist in VSS | SEAT_CUSHION_SIDE_SUPPORT |
|
Backrest Side Bolster | 11 | "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 | - 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 exist | Differs: Does not exist | Add to VSS? |
Seat Belt (height) |
|
|
|
|
| - Vehicle.Cabin.Seat.Row1.DriverSide.IsBelted
- Vehicle.Cabin.Seat.Row1.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 Added
Bolsters and Bladders:
Image Added
Seat & Component Movements or Positions
Words describing control parameters or changeable properties related to movement or position.
Information Type | Definition | Values | Illustration # | BMW | Ford | GM | Volvo Cars | VSS Alignment / Mapping | Android Alignment / Mapping | Notes |
---|
Direction | Direction 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 |
|
|
|
| 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.
|
|
|
|
| decrease | depends on the component |
|
|
|
|
| angles | depends 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. |
|
|
|
|
|
|
|
|
|
|
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 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 Type | Definition | Values | Illustration # | BMW | Ford | GM | Volvo Cars | VSS Mapping | Android Alignment / mapping | Notes |
---|
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_TEMPERATURE | Should this be heating cooling? |
Temperature Controlled Element Mode
|
| |
| added | Is "On" covered by heat, cool, or vent? |
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
| |
|
| level 1, 2, 3 |
|
|
|
|
|
| |
|
| as predetermined percentages |
|
|
|
|
|
| |
|
| level 1, 2, 3 |
|
|
|
|
|
Fan Speed |
| |
| delete covered by Seat temp mode | Concur with comment from BMW |
|
| Not in VSS | HVAC_SEAT_VENTILATION Not the same |
|
| |
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
| |
| added |
|
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
Seat Massage
Information Type | Definition | Values | Illustration # | BMW | Ford | GM | Volvo Cars | VSS Alignment / Mapping | Android Alignment / Mapping | Notes |
---|
Massage Capability | Is the seat capable of providing massage. | yes/no or true/false |
| we need a general discover mechanism |
|
| Overlaps with with Seat Massage Type | Not in VSS | Not in Andriod |
|
Massage Status |
| On/Off |
|
|
|
| Overlaps with Seat Massage Type |
Information Type | Definition | Illustration # | BMW | Ford | GM | Volvo Cars | VSS Mapping | Android |
---|
Seats Seat identity for 3 rows with 3 seats per row, front to back | | looking towards the front of vehicle from within the vehicle | General: Seating accounts for over 1/5th of VSS.yaml. This is due to the many facets of seating and the number of instances.
Seat Configuration:
- Vehicle.Cabin.SeatRowCount - number of rows - defaults to 2
- Vehicle.Cabin.SeatPosCount - array of number of seats per row - defaults to 2,3 which is 2 in row 1 and 3 in row 2
Note:
- Even though the default says only 2 seats in row 1, generated (yaml) it has Driver, Middle and Passenger
Related:
Vehicle.VehicleIdentification.VehicleSeatingCapacity - provides seating capacity vehicleVehicle.Cabin.DriverPosition - driver left, middle or right | | | | | | | | Moveable (Electrically Driven) Seating ComponentComplete seat | All | Added | Vehicle.Cabin.Seat is the complete seat definition. Vehicle.Cabin.Seat.Row1.DriverSide would be an instance. | - 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- Switch.Massage - Switches for SingleSeat.Massage.
- 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- Switch.Massage.IsDecreaseEngaged - Decrease massage level switch engaged (SingleSeat.Massage).
- Vehicle.Cabin.Seat.Row1.DriverSide.
|
Tilt - degrees - In VSS it is assumed that tilting a seat affects both seating (seat bottom) and backrest, i.e. the angle between seating and backrest will not be affected when changing Tilt.SEAT_FORE_AFT
SEAT_HEIGHT
Lumbar | 5 | - 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 VSS | Not 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 VSS | Not in Android |
|
Massage Intensity |
| Intensity of massage |
| ?? |
|
| 1-5? |
Did we somehow lose this?
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)MassageLevel - Seat massage level. 0 = |
Innermost position Outermost position.SEAT_LUMBAR_FORE_AFT SEAT_LUMBAR_SIDE_SUPPORT SEAT_LUMBAR_VERTICAL | Cushion Side Bolster | Need number | Pictures would be good
focus must be on Mechatronic components
Seat Haptics
Haptics are seat or component vibrations used to alert the driver or provide feedback. Typically used by ADAS such as lane departure warning.
Information Type | Definition | Values | Illustration # | BMW | Ford | GM | Volvo Cars | VSS Alignment / Mapping | Android Alignment / Mapping |
---|
Delay Between Pulses |
|
|
|
|
| internal calibration at the moment, based on the requestor |
| Not in VSS | Not in Android |
Haptic Pulses |
|
|
|
|
|
|
|
|
|
Seat Occupancy and Safety
Information Type | Definition | Values | Illustration # | BMW | Ford | GM | Volvo Cars | VSS Alignment / Mapping | Android Alignment / Mapping | Notes |
---|
Seat Occupancy Status |
| |
Right and Left Back (upper) bolsters | Infalation level 0-100% | SEAT_CUSHION_SIDE_SUPPORT | Backrest Side Bolster | 8 | Right and Left Cushion (lower) 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.
| SEAT_LUMBAR_SIDE_SUPPORT | Upper Shoulder (fwd/backward) | 9 | Backrest (was Cushion Front) | 10 | same as cushion above or is this "Back"? | Vehicle.Cabin.Seat.Row1.DriverSide.Backrest - Describes signals related to the backrest of the seat. |
|
|
|
|
| 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.boolean - is or is not occupied. No Unkown. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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 |
| |
| added |
|
|
|
|
|
|
Seat Belt Status |
| |
Cushion Extension | Blue thing | Thigh Extension? see video | Either works | Fold Seat | Row 3, Row 2, and possibly row 1 passenger seat | This is not a component. Its a capability or a directiion? | Headrest | Vehicle.Cabin.Seat.Row1.DriverSide.Headrest - Headrest settings.DriverSide.Headrest.Angle - degrees - Headrest angle, relative to backrest, 0 degrees if parallel to backrest, Positive degrees = tilted forward..DriverSide.IsBelted - boolean - is or is not belted/fastened Related: |
DriverSideHeadrest.Height mm - Seat belt position on vehicle z-axis.
|
Position is relative within available movable range of the seating. 0 = Lowermost position supported.- Position is relative within available movable range of the seat belt. 0 = Lowermost position supported.
|
|
|
| |
|
|
|
|
|
Other Seat Information
Information Type | Definition | Values | Illustration # | BMW | Ford | GM | Volvo Cars | VSS Alignment / Mapping | Android Alignment / Mapping | Notes |
---|
Seat Switch |
|
|
|
|
|
|
| - Seat Switch Signals - e.g.
|
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.Direction | - Forward - toward the front of the vehicle
| Needs Clarification. Percent of total? clicks? x, y, z axis values? | fore | depends on the component | AI: align this definition . Is Fold a direction? | - Backward - toward the back of the vehicle
| aft | depends on the component | - Up - toward the roof of the vehicle
| depends on the component | - Down - toward the bottom of the vehicle
| depends on the component | | increase | depends on the component | | decrease | depends on the component | | depends on the component | | Position | position on horizontal or vertical plane of seat or component | needs clarification Position vs Direction | Needs Clarification. Percent of total? clicks? x, y, z axis values? | AI: align what position means | Tilt Angle | tilt angle of seat or component | duplicate to Tilt / Recline (angles) | Neck Scarf (fan) | | Temperature | (Copied from VSS) - -100 - max cooling
- 100 - max heating
- 0 - off
| Cushion Seat Temperature | -100 - max cooling100 - max heating0 - off
| Scale which you can implement the way you want. | Do we use the below | Fan Speed | - -100 - max cooling
- 100 - max heating
- 0 - off
| Temperature Controlled Element Mode
| added | Is "On" covered by heat, cool, or vent? | | | | | Fan Speed | | delete covered by Seat temp mode | Concur with comment from BMW | | - Level 1
- Level 2
- Level 3
- Level 4
- Level 5
| added | Massage Capability | yes/no or true/false | we need a general discover mechanism | Overlaps with with Seat Massage Type | 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). |
| Address in VSS - Is this needed for capabilities? |
Seat Capability Alignment (WIP)
Column Definitions
- Capability: A concise name for the capability
- Description: A brief description of the capability and what it does and enables
- Inputs: What data (must align with VSS) is required by the capability
- Outputs: What data (must align with VSS) is output by the capability
- Dependencies: Other capabilities, processes, or systems the capability depends on
- Assumptions/Constraints: Any assumptions or limitations that should be considered
- Considerations: Including safety, security, performance, regulations, diagnostics…
- Location in Architecture: For context where does it sit in an architecture
General questions regarding API invocation:
- Can we use "actuate with commands, report with signals" as a general strategy?
- Do we use transaction IDs to tie commands to output signals/results?
Seat Movement and Position
Capability | Description | Inputs | Outputs | Dependencies | Assumptions /Constraints | VSS Examples / Mapping | Android Examples / Mapping | Notes |
Movement & Position - Control |
Move Seat Continuously | Move the identified seat in the specified direction. When a user commands a seat 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. | | |
|
| 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? |
Move Seat to Specified Position | Set the seat position for the identified seat. This is entire seat position forward, back, up down. | | |
|
| - 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 Continuously | Move the identified seat and component in the specified direction. When 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. | | |
|
| Vehicle.Cabin.Seat.Row1. |
DriverSideMassage.IsIncreaseEngaged - Increase massage level Headrest.IsForwardEngaged: datatype: boolean description: Head rest forward switch engaged (SingleSeat.Headrest. |
MassageProvide / get Massage Patterns | List of available massage patterns for a specific seat, including none. | Seat Massage Type | - Off
- Roll
- Knead
- Anti Fatigue
- Pulse
- Stretch
- Lumbar
- Shoulder
- Wave
- Relief
- Glide
| Need discovery capability as will vary by seat. | Massage Intensity | Intensity of massage | ?? | 1-5? | Vehicle.Cabin.Seat.Row1.PassengerSide.Massage - Seat massage level. 0 = off. 100 = max massage. | Seat Occupancy Status | | Vehicle.Cabin.Seat.Row1.Middle.IsOccupied - boolean - is or is not occupied. No Unkown. | | | Child seat | | added | Seat Belt Status | | Vehicle.Cabin.Seat.Row1.PassengerSide.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.
| | Seat Occupant ID | ?? | What is this? | 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 Seat | Set the seat component position for the identified seat. This is position of the component only. | - seat
- seat component
- position
- angle
| |
|
| 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.
|
Occupantv5.0 use data from Identifier -Occupant**Identifier.Identifier attributes based on OAuth 2.0.- DriverSide.Backrest.Lumbar.Height
- Vehicle.Cabin.Seat.Row1.DriverSide.
|
OccupantIdentifier.Subject- v5.0 - use data from Vehicle.Occupant.*.*.Identifier.
- Subject for the authentication of the occupant e.g. UserID 7331677.
Seat Side | | duplicate to "SEATS" | Is this side of specific seat? | Delay Between Pulses | internal calibration at the moment, based on the requestor | Haptic Pulses | Seat Switch | - Seat Switch Signals - e.g. Vehicle.Cabin.Seat.Row1.DriverSide.Switch.Backrest.IsReclineBackwardEngaged
- See spec and generated schema for details
| Capabilities
Column Definitions
- Capability: A concise name for the capability
- Description: A brief description of the capability and what it does and enables
- Inputs: What data (must align with VSS) is required by the capability
- Outputs: What data (must align with VSS) is output by the capability
- Dependencies: Other capabilities, processes, or systems the capability depends on
- Assumptions/Constraints: Any assumptions or limitations that should be considered
- Considerations: Including safety, security, performance, regulations, diagnostics…
- Location in Architecture: For context where does it sit in an architecture
General questions regarding API invocation:
- Can we use "actuate with commands, report with signals" as a general strategy?
- Do we use transaction IDs to tie commands to output signals/results?
- 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 Position | Stores current seat and component positions | |
|
|
| N/A | N/A | Personalization not in VSS or Android |
Recall Seat Position | Recall seat and component positions | |
|
|
| N/A | N/A | Personalization not in VSS or Android |
Fold Headrest | Fold or unfold headrest | |
|
|
|
|
| Align with move seat compontent? |
Fold Seat | Fold or unfold seat | |
|
|
|
|
| Align with move seat component |
Movement & Position - Status / Data |
Get Seat Position Per Seat | Get the seat position for the identified seat. This is entire seat position. | | |
|
|
|
|
|
Get Seat Component Position Per Seat | Get the seat component position for the identified seat. This is position of the component only. | - seat
- seat component
- position
- angle
| |
|
|
|
|
|
Get Seat Ids / Locations | Provides the list of seats available in "this" Vehicle | | Array of: - seat location (like row1_left, row1_center, etc)
- Is_Present (true/false)
|
|
|
|
|
|
Seat Movement Illustrations:
A
Image Added(Seat Height or Seat Up/Down)
B
Image Added Seat Forward/Backward
C
Image Added Seat Recline
D
Image Added Cushion Extension
E
Image Added Cushion Tilt
F
Image AddedHeadrest Height or Headrest Fwd/Backward
Seat Heating and Cooling
Capability | Description | Inputs | Outputs | Dependencies | Assumptions /Constraints | VSS Examples / Mapping | Android Examples / Mapping | Notes |
Heating & Cooling - Control |
Set Seat Temperature Level Per Seat | Set the temperature level for the identified seat | - seat
- seat temperature level
| - seat
- seat temperature level
|
|
|
| HVAC_SEAT_TEMPERATURE |
|
Set Seat Ventilation Per Seat | Get 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 Temperature Level Per Seat | Get the temerature level for the identified seat | | - seat
- seat temperature level
|
|
|
| HVAC_SEAT_TEMPERATURE |
|
Get Seat Ventilation Level Per Seat | Get the ventilation level for the identified seat | | - seat
- seat temperature level
|
|
|
| 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 Seat | Set the massage type and intensity for the identified seat | - seat
- seat massage type
- massage intensity
| |
|
|
|
| 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 Seat | Get the massage type and intensity |
Capability | Description | Inputs | Outputs | Dependencies | Assumptions /Constraints | Considerations | Location in Architecture | Notes | Control Seat Position Per Seat | Move Seat Incrementally | 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. | | | One request/trigger moves one increment. | Move Seat to Specified Position | Set the seat position for the identified seat. This is entire seat position forward, back, up down. | | | What is the position defintitoin? ISO 8895 What is status? Position Status. | Move Seat Component Incrementally | Move 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. | | | Different classes of compontnetn? Certain directions apply to different components?
Need to enumerate the compontents? Component type?
Set Seat Component Position Per Seat | Set the seat component position for the identified seat. This is position of the component only. | - seat
- seat component
- position
- angle
| | Store Seat Position | Stores current seat and component positions | | Recall Seat Position | Recall seat and comp | | Fold Headrest | Fold or unfold headrest | | Align with move seat compontent? | Fold Seat | Fold or unfold seat | | Align with move seat component | Control Seat Haptics | Activate Haptics | Activate 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. | Provide Current Seat Position Per Seat | Get Seat Position Per Seat | Get the seat position for the identified seat. This is entire seat position. | | | Get Seat Component Position Per Seat | Get the seat component position for the identified seat. This is position of the component only. | - seat
- seat component
- position
- angle
| | Provide Seat Heating Mode and Level Per Seat | Get Seat Heating Per Seat | Get the heating mode and level seat temperature modeseat temperature levelGet Seat Component Heating Per Seat | Get the heating mode and level for the identified seat and component | | - seat
- seat component
- seat temperature mode
- seat temperature level
| - massage type
- massage intensity
|
|
|
|
|
|
Get Massage Status | identifies if massage is on or off for specific set(s) | | |
|
|
|
|
|
Get Seat Massage Capability | identifies if seats support massage | |
|
|
|
|
|
|
Get Seat Massage Types (Patterns) |
Provide Seat Massage Patterns | Get Seat Massage Patterns | Provides a list of available massage |
patterns types for a specific seat. May be none. | | - list of available massage patterns
|
|
|
|
| Need to consider in what format? Bounded array of string values? |
Control Seat Massage Per Seat |
Seat Haptics
Capability | Description | Inputs | Outputs | Dependencies | Assumptions /Constraints | VSS Examples / Mapping | Android Examples / Mapping | Notes |
Haptics - Control |
Activate Haptics | Activate seat haptic notification for driver's seat | - seat (driver only)
- side (left right both)
- delay between pulses
- pulses
|
|
|
|
|
|
|
Haptics - Status / Data |
|
|
|
|
|
|
|
| Is this needed? |
Seat Occupancy and Safety
Capability | Description | Inputs | Outputs | Dependencies | Assumptions /Constraints | VSS Examples / Mapping | Android Examples / Mapping | Notes |
Seat Occupant Safety - Status / Data |
Set Seat Massage Per Seat | Set the massage type and intensity for the identified seat | - seat
- seat massage type (includes none?)
- massage intensity
| | Suggested that it will be difficult to agree on massage. So likely remove except for basic on/off and status. | Provide Seat Massage Per Seat | Get Seat Massage Per Seat | Get the massage type and intensity for the identified seat | | - seat
- seat massage type
- massage intensity
| Get Seat Massage Capability | identifies if seats support massage | | Get Massage Status | identifies if massage is on or off for specific set(s) | | | Provide Seat Occupant Safety Status Per Seat |
Get Seat Occupant Safety Per Seat | Get the occupant safety status for the identified seat | | - seat
- seat occupancy status
- seat belt status
|
Provide Seat locations in "this" Vehicle |
|
|
|
|
|
Get Child Seat Status | Allows user to determine if a Child Seat is installed | | - seat
- Is child Seat Installed
|
Get Seat Locations | Provides the list of seats available in "this" Vehicle | seat location (like row1_left, row1_center, etc)Is_Present (true/false)
Zonal Architecture for Reference
