The Faurecia BioFit Seat is a Bluetooth LE peripheral.

Type Value
int8 -128 .. 127
uint8 0 .. 255
int16 -32768 .. 32767
uint32 elapsed time


Characteristics marked with an asterisk are independently notifiable with values sent once per second. Other attributes are only notified when the value changes.

All values are integers unless a decimal precision is shown in which case it is fixed point (treat as integer and divide by 10 * number of decimal places to convert to floating point). The numeric types in order of preference are:

Reading BioFit Property Values

To get a stream of data from BioFit, use the notifiable group characteristic to specify which property values you would like to receive updates on. To do this, write the IDs (not the UUIDS) to the Notifiable Group characteristic. The Notifiable Group Values characteristic will notify every second with the values that were requested in the write to Notifiable Group. The first item in the list will always be a uint32 timestamp of when the data sample was taken. The subsequent values will be the requested properties, in the order they were written to the request. Properties are also readable. Reading loses the optimization benefit of packaging them together into a single communication, and loses the benefit of the timestamp. Reading is great for values that you want to check infrequently.

Limitations

A Bluetooth communication is limited to 20 bytes, so the size of the uint32 timestamp plus the length of the property data types requested must not exceed 20 bytes.

Example Workflow

  1. Write [7,11,12] as uint values to the notifiable group characteristic
  2. Subscribe to the notifiable group values characteristic
  3. When a notify occurs on the notifiable group, decode the array of values that are returned: [uint32 timestamp, int8 heart rate, int8 systolic blood pressure, int8 diastolic blood pressure]

Performing Seat Functions

BioFit also supports several seat functions such as performing massages, updating the position and heating and cooling the BioFit. BioFit function characteristics are writeable. Performing a function is as simple as writing to that function's characteristic. Functions take a little bit of time to complete - the seat can't instantly move forward. When the requested operation is complete, the write effect complete characteristic will notify with the int8 id of function characteristic that completed.


BioFit Service

BioFit has only one Bluetooth service. Its UUID is:

E5E8451C-A235-4A96-9E81-EAE3DF296564

BioFit Characteristics

ID  Property Type                                                                                               
0 Occupant Presence int8
1 System Time Stamp uint32
2 Connection Reference Time uint32
3 Current Elapsed Time uint32
4 Notifiable Group Array of uint8 IDs
5 Notifiable Group Values* Array of individually typed values [uint32, [type-1][type-2]...[type-n]]
6 Write Effect Complete* uint8 ID
7 Heart Rate uint8
8 Respiration Rate uint8
9 Integrated Pulmonary Index int8
10 Heart Rate Variability int8
11 Blood Pressure (Systolic) uint8
12 Blood Pressure (Diastolic) uint8
13 Blood Flow Index int8
14 Integrated Comfort Index int8
15 Stress int8
16 Emotional Valence int8
17 Emotional Arousal int8
18 Occupant Mass int16
19 Occupant Center of Mass [int16, int16, int16]
20 Ambient Humidity int8
21 Cushion Surface Humidity int8
22 Upper Back Surface Humidity int8
23 Lower Back Surface Humidity int8
24 Cushion Surface Temperature int16
25 Back Surface Temperature int16
26 Ambient Temperature int16
27 Lower Lumbar Pressure int8
28 Middle Lumbar Pressure int8
29 Upper Lumbar Pressure int8
30 Cushion Side Bolster Pressure int8
31 Back Side Bolster Pressure int8
32 Cushion Length int8
33 Cushion Edge Pressure int8
34 Upper Backrest Position int8
35 Massage Program Selection uint8
36 Massage Intensity int8
37 Massage Speed int8
38 Ventilation Level uint8
39 Back Heating and Cooling int8
40 Cushion Heating and Cooling int8

Property Characteristic Details

Occupant Presence

ID

0

UUID

B43EED9C-E88E-42FF-AB8C-4399977C3D9D

Type

int8

Bluetooth Properties

Readable

Values

0 or 1

Description

1 if seat is occupied, 0 if not
back to table

System Time Stamp

ID

1

UUID

71BFAE4D-51CD-422D-AE87-B4921AC75C1

Type

uint32

Bluetooth Properties

Readable

Values

yyyy-MM-dd-HH:mm:ss.SSSS

Description

Time at which the most recent data reading was recorded from BioFit.
back to table

Connection Reference Time

ID

2

UUID

21752B03-3735-473E-903F-485CF77DA0AE

Type

uint32

Bluetooth Properties

Readable

Values

yyyy-MM-dd-HH:mm:ss.SSSS

Description

The time at which the initial connection was made to the Bluetooth BioFit peripheral.
back to table

Current Elapsed Time

ID

3

UUID

0A347E6C-02E4-4749-A8A4-6BD6202E8FEA

Type

uint32

Bluetooth Properties

Readable

Values

milliseconds since initial connection was made.

Description

Elapsed time since initial connection was made in milliseconds
back to table

Notifiable Group

ID

4

UUID

B4A265CD-2786-432D-8E92-819B9113AA10

Type

uint8 for each element in array

Bluetooth Properties

Readable, Writeable

Values

[int8 ID-1][int8 ID-2]...[int8 ID-N]

Description

A list of characteristics to notify at 1Hz. Notifications will occur on the notifiable group values characteristic.
back to table

Notifiable Group Values

ID

5

UUID

5957BE8F-C01F-4531-A529-0924398E4FE9

Type

Array of individually typed values
[uint32, [type-1][type-2]...[type-n]]

Bluetooth Properties

Readable, Notifiable

Values

[Current Elapsed Time][Value-1][Value-2]...[Value-N]

Description

The packed values of the characteristics in the group. Values to notify determined by the notifiable group characteristic. Limited to a total length of 20 bytes. The first item will always be the time at which the requested values were read.
back to table

Write Effect Complete

ID

6

UUID

F56A209B-2285-44E5-862F-1AB206DFFBE6

Type

uint8

Bluetooth Properties

Readable, Notifiable

Values

[id] (0 ..40)

Description

Contains the id of a property. Notifies when the request that was written is complete.
back to table

Heart Rate

ID

7

UUID

39D1E3AE-EA25-43BD-BB62-ADD8ECD897D5

Type

uint8

Bluetooth Properties

Readable

Values

0 .. 255

Description

Heart Rate Value in Beats / Minute
back to table

Respiration Rate

ID

8

UUID

D5F34109-9F28-4213-85A4-808357CEF8F3

Type

uint8

Bluetooth Properties

Readable

Values

0 .. 200

Description

Filtered Respiration Rate Value in Breaths / Minute
back to table

Integrated Pulmonary Index

ID

9

UUID

8217E89D-C226-45F6-A36E-DA23DDE4A83A

Type

int8

Bluetooth Properties

Readable

Values

0 .. 100

Description

An integrated score that describes an occupant’s respiratory status (normal = 10, less than 6 may indicate intervention required)
back to table

Heart Rate Variability

ID

10

UUID

00CFF3E3-A2FF-4E05-8EFA-C22D799EB136

Type

int8

Bluetooth Properties

Readable

Values

0.00 .. 1.00

Description

heartRateVariability = returned int8 value / 100. =LF/(LF+HF): Very Low Frequency (VLF) < 0.04 Hz Low Frequency (LF), 0.04 .. 0.14 Hz High Frequency (HF) 0.15 .. 0.40 Hz
back to table

Blood Pressure (Systolic)

ID

11

UUID

D9A9F3E2-E884-40F4-91D6-41892C2D2E73

Type

uint8

Bluetooth Properties

Readable

Values

0 .. 255

Description

Value in mmHG (normal < 120, prehypertension 120 .. 139, hypertension 140 ..)
back to table

Blood Pressure (Diastolic)

ID

12

UUID

0038087B-31E2-4D67-8106-A4996E329EE2

Type

uint8

Bluetooth Properties

Readable

Values

0 .. 255

Description

Value in mmHG (normal < 80, prehypertension 80 .. 89, hypertension 90 ..)
back to table

Blood Flow Index

ID

13

UUID

65CF8D40-8943-473A-8DC9-400F5A17A6C7

Type

int8

Bluetooth Properties

Readable

Values

0 .. 100

Description

An integrated score that estimates an individual’s blood flow relative to ideal: ideal blood flow = 100, poor blood flow = 0
back to table

Integrated Comfort Index

ID

14

UUID

48560C7A-F383-4C27-BE20-E92C416C8F80

Type

int8

Bluetooth Properties

Readable

Values

0 .. 100

Description

An integrated score that estimates an individual’s level of comfort: extreme comfort = 100, extreme discomfort = 0
back to table

Stress

ID

15

UUID

96A70770-C16F-40CC-BB4D-768E0F02494E

Type

int8

Bluetooth Properties

Readable

Values

0 .. 100

Description

0 is very un-stressed, 100 is very stressed
back to table

Emotional Valence

ID

16

UUID

C2D2F281-7756-47A7-9B14-C9BAC900354F

Type

int8

Bluetooth Properties

Readable

Values

0 .. 100

Description

An estimate of emotional positivity or negativity: negative = 0, neutral = 50, positive = 100
back to table

Emotional Arousal

ID

17

UUID

3B7E5227-2926-4E15-9FE6-E4CD273371B2

Type

int8

Bluetooth Properties

Readable

Values

0 .. 100

Description

An estimate of how strong someone’s emotion is: calm = 0, excited = 100
back to table

Occupant Mass

ID

18

UUID

E76B29AC-FD59-4530-898B-35AB751A43C8

Type

int16

Bluetooth Properties

Readable

Values

0 .. 500

Description

Weight in Kilograms
back to table

Occupant Center of Mass

ID

19

UUID

B11102CC-5235-44BE-B8E8-825DFF3B90FD

Type

[int16, int16, int16]

Bluetooth Properties

Readable

Values

(-500, -500, -500) .. (500, 500, 500)

Description

XYZ Coordinates Relative to H-Point (mm)
back to table

Ambient Humidity

ID

20

UUID

2B46CF2F-C102-4683-8F05-9E6AD5A84843

Type

int8

Bluetooth Properties

Readable

Values

0 .. 100

Description

Percent Relative Humidity
back to table

Cushion Surface Humidity

ID

21

UUID

4612CD0D-64F0-4140-9EB5-198B770FC0D0

Type

int8

Bluetooth Properties

Readable

Values

0 .. 100

Description

Percent Relative Humidity
back to table

Upper Back Surface Humidity

ID

22

UUID

53603F65-6B4B-4D46-B373-B486B78590D2

Type

int8

Bluetooth Properties

Readable

Values

0 .. 100

Description

Percent Relative Humidity
back to table

Lower Back Surface Humidity

ID

23

UUID

7E3DF6AE-41C7-493E-8D4D-556A62321A9B

Type

int8

Bluetooth Properties

Readable

Values

0 .. 100

Description

Percent Relative Humidity
back to table

Cushion Surface Temperature

ID

24

UUID

75A8A1EF-B8E0-4FB4-A867-B68E653DF932

Type

int16

Bluetooth Properties

Readable

Values

0 .. 85

Description

Value in ⁰C Cushion Surface Temperature = returned int16 value / 10
back to table

Back Surface Temperature

ID

25

UUID

2CD29B7B-22D5-4371-89FF-E849E2120929

Type

int16

Bluetooth Properties

Readable

Values

0.0 .. 85.0

Description

Value in ⁰C Back Surface Temperature = returned int16 value / 10
back to table

Ambient Temperature

ID

26

UUID

45DEFC80-B2FC-49A4-A97D-A68FFDEFF8C2

Type

int16

Bluetooth Properties

Readable

Values

0.0 .. 85.0

Description

Value in ⁰C Ambient Temperature = returned int16 value / 10
back to table

Lower Lumbar Pressure

ID

27

UUID

1BA22BC7-28AB-4B25-A0EE-4553C4C28DC2

Type

int8

Bluetooth Properties

Readable, Writeable

Values

0.0 .. 100.0

Description

% of Range. 0 is no pressure, 100 is maximum pressure.
back to table

Middle Lumbar Pressure

ID

28

UUID

636235DE-D04C-42DD-8673-F11918D7C5BD

Type

int8

Bluetooth Properties

Readable, Writeable

Values

0 .. 100

Description

% of Range. 0 is no pressure, 100 is maximum pressure.
back to table

Upper Lumbar Pressure

ID

29

UUID

E430BAFB-B101-4896-9957-6E3938F575D8

Type

int8

Bluetooth Properties

Readable, Writeable

Values

0 .. 100

Description

% of Range. 0 is no pressure, 100 is maximum pressure.
back to table

Cushion Side Bolster Pressure

ID

30

UUID

434A3872-2DE3-4E76-A120-30A179286D28

Type

int8

Bluetooth Properties

Readable, Writeable

Values

0 .. 100

Description

% of Range. 0 is no pressure, 100 is maximum pressure.
back to table

Back Side Bolster Pressure

ID

31

UUID

984CB911-02F5-4941-9A1D-AD09A5764F15

Type

int8

Bluetooth Properties

Readable, Writeable

Values

0 .. 100

Description

% of Range. 0 is no pressure, 100 is maximum pressure.
back to table

Cushion Length

ID

32

UUID

65A45C5D-9B54-4488-ABD2-1853D11E7F54

Type

int8

Bluetooth Properties

Readable, Writeable

Values

0 .. 100

Description

Percent of Full Extension. 0 is minimum extension, 100 is maximum extension.
back to table

Cushion Edge Pressure

ID

33

UUID

7949ABDC-965E-4175-ACF1-B842848C6AD5

Type

int8

Bluetooth Properties

Readable, Writeable

Values

0 .. 100

Description

% of Range. 0 is no pressure, 100 is maximum pressure
back to table

Upper Backrest Position

ID

34

UUID

EC7D0CB9-34D4-423C-AAAC-CFF722E3A6C5

Type

int8

Bluetooth Properties

Readable, Writeable

Values

-20 .. +30

Description

Angle in Degrees
back to table

Massage Program Selection

ID

35

UUID

E66E4070-831B-4E23-B05E-D7BE5F06AF4B

Type

uint8

Bluetooth Properties

Readable, Writeable

Values

0 .. 99

Description

0 is off, 1-99 are pre-set programs. If you would like to run a specific program (ie 3 beats upper left, 3 beats upper right, 3 beats lower left, 3 beats lower right), pick a number, and describe in a README what program that represents.
back to table

Massage Intensity

ID

36

UUID

165F7489-A805-4D70-8900-135A4E174404

Type

int8

Bluetooth Properties

Readable, Writeable

Values

1 .. 9

Description

1 is min intensity, 9 is max intensity
back to table

Massage Speed

ID

37

UUID

C4248837-F351-4538-9A73-8480637F3841

Type

int8

Bluetooth Properties

Readable, Writeable

Values

1 .. 9

Description

1 is min speed, 9 is max speed
back to table

Ventilation Level

ID

38

UUID

25BFE8A4-786D-458D-A4AD-F710D4E7EFC6

Type

uint8

Bluetooth Properties

Readable, Writeable

Values

1 .. 9

Description

0 is off, 1 is min ventilation, 9 is max ventilation
back to table

Back Heating and Cooling

ID

39

UUID

C391FFC3-BD58-4BB4-AC90-08A96BF04E39

Type

int8

Bluetooth Properties

Readable, Writeable

Values

-9 .. 9

Description

Less than 0 is cooling, 0 is off, greater than 0 is heating. A higher magnitude represents a higher magnitude temperature.
back to table

Cushion Heating and Cooling

ID

40

UUID

B3AB6D33-3E6A-42B3-B1BD-D821FFBE3090

Type

int8

Bluetooth Properties

Readable, Writeable

Values

-9 .. 9

Description

Less than 0 is cooling, 0 is off, greater than 0 is heating. A higher magnitude represents a higher magnitude temperature.
back to table