# Properties

When you want to override the default settings, you can adjust some of the module's default parameters.

## Measurement properties&#x20;

<table><thead><tr><th width="316.3333333333333">Property</th><th width="93">Default</th><th>Description</th></tr></thead><tbody><tr><td><code>sampleTime</code></td><td><code>60</code></td><td><p>The duration of the measurement in seconds. Default is set to 1 minute. `</p><p><em>Note that the sampleTime must be at least 35 seconds to perform a correct analysis.</em></p></td></tr><tr><td><code>flashEnabled</code></td><td><code>true</code></td><td><p>When enabled and supported by the device the SDK will turn on the camera flashlight while measuring. </p><p><em>Note that an (external) light source is necessary to perform a good measurement.</em></p></td></tr><tr><td><code>gravEnabled</code></td><td><code>false</code></td><td>When enabled and supported by the device, gravitational data will be included in the measurement.</td></tr><tr><td><code>gyroEnabled</code></td><td><code>false</code></td><td>When enabled and supported by the device, gyroscope data will be included in the measurement.</td></tr><tr><td><code>accEnabled</code></td><td><code>false</code></td><td>When enabled and supported by the device, accelerometer data will be included in the measurement.</td></tr><tr><td><code>rotationEnabled</code></td><td><code>false</code></td><td>When enabled and supported by the device, rotational data will be included in the measurement.</td></tr><tr><td><code>movementDetectionEnabled</code></td><td><code>true</code></td><td>When enabled the <code>onMovementDetected()</code> event will be thrown when movement is detected.</td></tr><tr><td><code>fingerDetectionExpiryTime</code></td><td><code>-1</code></td><td><p>The time until the finger detection will trigger the <code>onFingerDetectionTimeExpired</code>() event.</p><p>By default this value is <code>-1</code>, which indicates that it will keep waiting until a finger is detected.</p></td></tr><tr><td><code>pulseDetectionExpiryTime</code></td><td><code>10</code></td><td>The time until the pulse detection will trigger the <code>onPulseDetectionTimeExpired</code>() event.</td></tr><tr><td><code>waitForStartRecordingSignal</code></td><td><code>false</code></td><td>By default the measurement will start automatically after calibration is ready. When this flag is enabled, the measurement will wait until the <code>startRecording()</code> command has been given.</td></tr></tbody></table>

Take a look at the following platform-specific code snippets to see how to change the default measurement settings for each platform. It's only necessary to provide values for non-default properties. These values should only be changed in exceptional cases.

{% tabs %}
{% tab title="Flutter" %}

```
FibriCheckView(
    fibriCheckViewProperties: FibriCheckViewProperties(
        sampleTime: 60,
        flashEnabled: true,
        gravEnabled: false,
        gyroEnabled: false,
        accEnabled: false,
        rotationEnabled: false,
        movementDetectionEnabled: true,
        fingerDetectionExpiryTime: -1, 
        waitForStartRecordingSignal: false,
        ...,
    ),
    ...
)
```

{% endtab %}

{% tab title="React Native" %}

<pre><code>&#x3C;RNFibriCheckView
    ...
    sampleTime={60}
    flashEnabled={true}
<strong>    gravEnabled={false}
</strong>    gyroEnabled={false}
    accEnabled={false}
    rotationEnabled={false}
    movementDetectionEnabled={true}
    fingerDetectionExpiryTime={-1}
    pulseDetectionExpiryTime={10}
    waitForStartRecordingSignal={false}
    ...
/>
</code></pre>

{% endtab %}

{% tab title="iOS" %}

```swift
import FibriCheckCameraSDK


let fc = FibriChecker()

fc.sampleTime = 60
fc.flashEnabled = true
fc.gravEnabled = false
fc.gyroEnabled = false
fc.accEnabled = false
fc.rotationEnabled = false
fc.movementDetectionEnabled = true
fc.fingerDetectionExpiryTime = -1
fc.pulseDetectionExpiryTime = 10
fc.waitForStartRecordingSignal = false
```

{% endtab %}

{% tab title="Android" %}

```java
fc = new FibriChecker.FibriBuilder(ctx, viewGroup).build();

fc.sampleTime = 60
fc.flashEnabled = true
fc.gravEnabled = false
fc.gyroEnabled = false
fc.accEnabled = false
fc.rotationEnabled = false
fc.movementDetectionEnabled = true
fc.fingerDetectionExpiryTime = -1
fc.pulseDetectionExpiryTime = 10
fc.waitForStartRecordingSignal = false
```

{% endtab %}

{% tab title="Cordova" %}

```tsx

const { FibriCheckCordovaSDK: fc } = cordova.plugins;

// The full configuration can be updated at once
await fc.updateConfiguration({
    sampleTime: 60,
    flashEnabled: true,
    gravEnabled: false,
    gyroEnabled: false,
    accEnabled: false,
    rotationEnabled: false,
    movementDetectionEnabled: true,
    fingerDetectionExpiryTime: -1,
    pulseDetectionExpiryTime: 10,
    waitForStartRecordingSignal: false
});

// Or a subset of configuration values can be updated 
await fc.updateConfiguration({
    sampleTime: 60,
    flashEnabled: true
});


```

{% endtab %}
{% endtabs %}

## Platform-specific properties

{% tabs %}
{% tab title="Flutter" %}

### Graph Settings

#### graphBackgroundColor

Determines the graphBackground color. By default there is no background color

```
graphBackgroundColor: "";
```

#### drawGraph

When enabled the component draws a graph of the recorded PPG signal.

```
drawGraph: true;
```

#### lineColor

Determines the color of the graph line.

```
lineColor: "#63b3a6";
```

#### lineThickness

Determines the thickness of the graph line.

```
lineThickness: 8;
```

#### drawBackground

When enabled, the component will draw a background for the graph

```
drawBackground: true;
```

{% endtab %}

{% tab title="React Native" %}

### Styling

Add custom styling to the component. As a default, `{ flex: 1, backgroundColor: '#ffffff' }` is used.

**When customizing this, make sure to always add a&#x20;*****backgroundColor*****!**

```tsx
<RNFibriCheckView
    ...
    style = {{ flex: 1, backgroundColor: '#ffffff' }}
    ...
/>
```

### Graph Settings

#### graphBackgroundColor

Determines the color of the area under the graph. By default, this color is omitted. The backgroundColor is thus displayed under the graph.

```tsx
<RNFibriCheckView
    ...
    //graphBackgroundColor={''};
    ...
/>
```

#### drawGraph

When enabled the component draws a graph of the recorded PPG signal.

```tsx
<RNFibriCheckView
    ...
    drawGraph={true};
    ...
/>
```

#### lineColor

Determines the color of the graph line.

```tsx
<RNFibriCheckView
    ...
    lineColor={'#63b3a6'};
    ...
/>
```

#### lineThickness

Determines the thickness of the graph line.

```tsx
<RNFibriCheckView
    ...
    lineThickness={8}
    ...
/>
```

#### drawBackground

When enabled, the component will draw a background for the graph

```tsx
<RNFibriCheckView
    ...
    drawBackground={true}
    ...
/>
```

{% endtab %}
{% endtabs %}

###

<br>
