Class BTCompConfig
Configuration object for Bluetooth sensors
Inherited Members
Namespace: DelsysAPI.Configurations.Component
Assembly: DelsysAPI.dll
Syntax
public class BTCompConfig : ComponentConfig
Constructors
BTCompConfig()
Initializes a BT component with the default configuration.
Declaration
public BTCompConfig()
Properties
AccDecimator
Acceleromter decimator of the sensor.
Declaration
public int AccDecimator { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
AccDlpf
Acceleromter Digital Low-pass Filter of the sensor.
Declaration
public int AccDlpf { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
AccOdr
Acceleromter Output Data Rate of the sensor.
Declaration
public int AccOdr { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
AccRange
Acceleromter sampling range of the sensor.
Declaration
public int AccRange { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
AccSampleHz
Acceleromter sampling rate of the sensor (in hz)
Declaration
public double AccSampleHz { get; }
Property Value
| Type | Description |
|---|---|
| System.Double |
AccSampleRate
Acceleromter sampling rate of the sensor.
Declaration
public int AccSampleRate { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
AccSampleSize
Acceleromter sampling size of the sensor.
Declaration
public int AccSampleSize { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
AccSelfTest
True if the accelerometer self test passed
Declaration
public bool AccSelfTest { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
AccSelfTestInt
Acceleromter self test passed result
Declaration
public int AccSelfTestInt { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
ConnectionSuperVisionTimeout
Timeout of an unresponsive sensor (milliseconds)
Declaration
public int ConnectionSuperVisionTimeout { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
FrameIntervalAsMicroSeconds
Frame interval of sensor in microseconds
Declaration
public int FrameIntervalAsMicroSeconds { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
FrameIntervalAsSeconds
Frame interval of sensor in seconds
Declaration
public float FrameIntervalAsSeconds { get; }
Property Value
| Type | Description |
|---|---|
| System.Single |
GPIO
Current GPIO setting of the sensor
Declaration
public byte GPIO { get; }
Property Value
| Type | Description |
|---|---|
| System.Byte |
GyroDecimator
Gyroscope decimator of the sensor.
Declaration
public int GyroDecimator { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
GyroDlpf
Gyroscope Digital Low-pass Filter of the sensor.
Declaration
public int GyroDlpf { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
GyroOdr
Gyroscope sampling Output Data Rate of the sensor.
Declaration
public int GyroOdr { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
GyroRange
Gyroscope sampling range of the sensor.
Declaration
public int GyroRange { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
GyroSampleHz
Gyroscope sampling rate of the sensor (hz)
Declaration
public double GyroSampleHz { get; }
Property Value
| Type | Description |
|---|---|
| System.Double |
GyroSampleRate
Gyroscope sampling rate of the sensor.
Declaration
public int GyroSampleRate { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
GyroSampleSize
Gyroscope sampling size of the sensor.
Declaration
public int GyroSampleSize { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
GyroSelfTest
True if gyroscope self test passed.
Declaration
public bool GyroSelfTest { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
GyroSelfTestInt
Gyroscope self test output value.
Declaration
public int GyroSelfTestInt { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
IsAccEnabled
True if accelerometer is enabled.
Declaration
public bool IsAccEnabled { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsFaultLogEnabled
True if fault log is enabled.
Declaration
public bool IsFaultLogEnabled { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsGyroEnabled
True if gyroscope is enabled.
Declaration
public bool IsGyroEnabled { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsMagEnabled
True if magnetometer is enabled.
Declaration
public bool IsMagEnabled { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsOrientationEnabled
True if orientation is enabled.
Declaration
public bool IsOrientationEnabled { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
MagSampleHz
Magnetometer sampling rate of the sensor (hz)
Declaration
public double MagSampleHz { get; }
Property Value
| Type | Description |
|---|---|
| System.Double |
MagSampleRate
Magnetometer sampling rate of the sensor.
Declaration
public int MagSampleRate { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
MagSampleSize
Magnetometer sampling size of the sensor.
Declaration
public int MagSampleSize { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
MagSelfTest
True if mangetometer self test passed
Declaration
public bool MagSelfTest { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
MagSelfTestInt
Magnetometer self test result
Declaration
public int MagSelfTestInt { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
NumChannels
Number of channels in the BT configuration
Declaration
public int NumChannels { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
OrientationAccuracySampleRate
Orientation accuracy sampling rate of the sensor.
Declaration
public int OrientationAccuracySampleRate { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
OrientationAccuracySampleSize
Orientation accuracy sampling size of the sensor.
Declaration
public int OrientationAccuracySampleSize { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
OrientationODR
Orientation Output Data Rate of the sensor.
Declaration
public int OrientationODR { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
OrientationSampleHz
Orientation sampling rate of the sensor (hz)
Declaration
public double OrientationSampleHz { get; }
Property Value
| Type | Description |
|---|---|
| System.Double |
OrientationSampleRate
Orientation sampling rate of the sensor.
Declaration
public int OrientationSampleRate { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
OrientationSampleSize
Orientation sampling size of the sensor.
Declaration
public int OrientationSampleSize { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
SampleKeyString
Declaration
public string SampleKeyString { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
SampleMode
Sample mode of the sensor
Declaration
public int SampleMode { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
SampleModes
All sample modes of the sensor
Declaration
public string[] SampleModes { get; }
Property Value
| Type | Description |
|---|---|
| System.String[] |
Methods
GetChanMultiplex(Int32)
Get the multiplexing setting of the supplied channel index.
Declaration
public byte GetChanMultiplex(int channelNum)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | channelNum | Channel index |
Returns
| Type | Description |
|---|---|
| System.Byte | The multiplexing setting of the channel. |
GetChanOperateUpdateRate(Int32)
Return the chan operation update rate of the supplied channel index.
Declaration
public short GetChanOperateUpdateRate(int channelNum)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | channelNum | Channel index |
Returns
| Type | Description |
|---|---|
| System.Int16 | o If positive, specifies the number of operation updates per frame. Must not exceed the sample rate. o If zero, an operation is not performed on this channel. o If negative, specifies the number of frames between operation updates. Not supported. |
GetChanOperateWindowSize(Int32)
Return the operation window size of the supplied channel index.
Declaration
public ushort GetChanOperateWindowSize(int channelNum)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | channelNum | Channel index |
Returns
| Type | Description |
|---|---|
| System.UInt16 | 0 if no operation window size found. Otherwise the window size in samples. |
GetChanOperationType(Int32)
Gets the operation type of the channel at the supplied index
Declaration
public byte GetChanOperationType(int channelNum)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | channelNum | Channel index |
Returns
| Type | Description |
|---|---|
| System.Byte | 0 if none, otherwise the operation type as a byte value |
GetChanOperationTypeEnum(Int32)
Gets the operation type of the channel at the supplied index
Declaration
public BTCompConfig.OperationType GetChanOperationTypeEnum(int channelNum)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | channelNum | Channel index |
Returns
| Type | Description |
|---|---|
| BTCompConfig.OperationType | 0 if none, otherwise operation type as OperationType enum value |
GetChanSamplingRate(Int32)
Returns the sampling rate of the channel supplied.
Declaration
public byte GetChanSamplingRate(int channelNum)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | channelNum | Channel index to return the sample rate of. |
Returns
| Type | Description |
|---|---|
| System.Byte | 0 if no sampling rate detected, otherwise the sample rate in Hz |
GetChanSamplingSize(Int32)
Return the sampling size of the supplied channel index.
Declaration
public byte GetChanSamplingSize(int channelNum)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | channelNum | Channel index |
Returns
| Type | Description |
|---|---|
| System.Byte | The sampling size of the channel in samples |
IsChannelAvailable(Int32)
Whether the channel at the supplied index is available for use
Declaration
public bool IsChannelAvailable(int channelNum)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | channelNum | Channel index |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if the channel can be used for data streaming |
IsChanOperated(Int32)
Whether a channel has an operaiton applied to it or not
Declaration
public bool IsChanOperated(int channelNum)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | channelNum | Channel index |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if an operation is being applied to the channel. |
IsComponentAvailable()
True if component is available.
Declaration
public bool IsComponentAvailable()
Returns
| Type | Description |
|---|---|
| System.Boolean |
SelectSampleConfig(BTCompConfig)
Copies the configuration supplied as a parameter.
Declaration
public bool SelectSampleConfig(BTCompConfig config)
Parameters
| Type | Name | Description |
|---|---|---|
| BTCompConfig | config | Sensor BT config to copy |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if the configuration was successfully loaded. |
SelectSampleMode(String)
Selects the sensor mode given as a parameter
Declaration
public bool SelectSampleMode(string sampleMode)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | sampleMode | The sample mode to be loaded. |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if loading sensor mode was successful. |
SetAccConfiguration(Int32, Int32, Int32, Int32, Int32, Int32, Int32)
Configure IMU Accelerometer. The IMU Accelerometer Configuration characteristic is used to configure how digital samples are collected from the IMU accelerometer. Each sample consists of three values, one for each axis (X-Y-Z).
Declaration
public bool SetAccConfiguration(int sampleRate, int sampleSize, int range, int divider, int dlpf, int decimator, int selftest)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | sampleRate | If positive, specifies the number of samples per frame to collect. If zero, no samples are collected from this channel. If negative, specifies the number of frames between samples.Not supported. |
| System.Int32 | sampleSize | size in bits with a range of 4 to 16 bits. |
| System.Int32 | range | Range of acclerometer in g's. 0->2g, 1->4g, 2->8g, 3->16g |
| System.Int32 | divider | divider used to select the ODR of the accelerometer. Ranges from 0 to 4096. If the gyroscope is enabled, this value must be equal to the gyroscope ODR divider as the gyroscope ODR has priority. If equal to zero, the ODR is 4500 Hz(if the gyroscope is disabled), the DLPF is disabled, and the 3dB bandwidth is 1209 Hz. If greater than zero, the ODR is equal to(1125 / value) Hz. |
| System.Int32 | dlpf | only applies if the ODR divider is greater than zero and the decimator averages more than one sample. 3dB BandWidth 0->246.0Hz, 1->246.0Hz, 2->111.4Hz, 3->50.4Hz, 4->23.9Hz, 5->11.5Hz, 6->5.7Hz, 7->473Hz, |
| System.Int32 | decimator | only applies if the ODR divider is greater than zero. Samples Averaged 0->4, 1->8, 2->16, 3->32 |
| System.Int32 | selftest | selfCheck. Samples Averaged If 0,disable the internal self-test. greater than 0 ,enables the internal self-test. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
SetAnalogChanConfiguration(BTCompConfig.AnalogChannel, Int32, Int32, BTCompConfig.Multiplex, BTCompConfig.OperationType, Int32, Int32)
Configure Analog Channel. The RMS window and RMS update rate fields must both be non-zero to enable RMS calculations. The RMS calculations only involve the square, sum, and average operations
Declaration
public bool SetAnalogChanConfiguration(BTCompConfig.AnalogChannel ch, int sampleRate, int sampleSize, BTCompConfig.Multiplex multiplex, BTCompConfig.OperationType operateType, int operateWindowSize, int operateUpdateRate)
Parameters
| Type | Name | Description |
|---|---|---|
| BTCompConfig.AnalogChannel | ch | |
| System.Int32 | sampleRate | If positive, specifies the number of samples per frame to collect. If zero, no samples are collected from this channel. If negative, specifies the number of frames between samples.Not supported. |
| System.Int32 | sampleSize | size in bits with a range of 4 to 32 bits. Sizes greater than 16 bits only apply when RMS calculations are enabled. |
| BTCompConfig.Multiplex | multiplex | |
| BTCompConfig.OperationType | operateType | |
| System.Int32 | operateWindowSize | |
| System.Int32 | operateUpdateRate |
Returns
| Type | Description |
|---|---|
| System.Boolean |
SetConnectionSupervisionTimeout(Int32)
Sets the supervision timeout of the sensor
Declaration
public bool SetConnectionSupervisionTimeout(int input)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | input | The supervision timeout in milliseconds. |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if the supervision timeout was set. |
SetFaultLogConfiguration(BTCompConfig.ExportEnabled, BTCompConfig.EraseAtPowerDown)
Sets the fault log configuration of the sensor.
Declaration
public bool SetFaultLogConfiguration(BTCompConfig.ExportEnabled export, BTCompConfig.EraseAtPowerDown erase)
Parameters
| Type | Name | Description |
|---|---|---|
| BTCompConfig.ExportEnabled | export | Export the sensor fault log into data collection. |
| BTCompConfig.EraseAtPowerDown | erase | Erase the sensor fault log at power down of the sensor. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
SetFrameInterval(Int32)
Sets the frame interval of the sensor
Declaration
public bool SetFrameInterval(int input)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | input | Frame interval in microseconds |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if the frame interval was successfully set. |
SetGPIO(Int32)
Sets the GPIO of the sensor
Declaration
public bool SetGPIO(int input)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | input | GPIO integer value (e.g 3 = 011) |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if the GPIO was successfully set |
SetGyroConfiguration(Int32, Int32, Int32, Int32, Int32, Int32, Int32)
Configure IMU Gyroscope. The IMU Gyroscope Configuration characteristic is used to configure how digital samples are collected from the IMU gyroscope. Each sample consists of three values, one for each axis (X-Y-Z).
Declaration
public bool SetGyroConfiguration(int sampleRate, int sampleSize, int range, int divider, int dlpf, int decimator, int selftest)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | sampleRate | If positive, specifies the number of samples per frame to collect. If zero, no samples are collected from gyroscope. If negative, specifies the number of frames between samples.Not supported. |
| System.Int32 | sampleSize | size in bits with a range of 4 to 16 bits. |
| System.Int32 | range | Range of Gyro in dps. 0->250dps, 1->500dps, 2->1000dps, 3->2000dps |
| System.Int32 | divider | ODR divider (uint16): divider used to select the ODR of the gyroscope. Ranges from 0 to 256. If equal to zero, the ODR is 9000 Hz, the DLPF is disabled, and the 3dB bandwidth is 12106 Hz. If greater than zero, the ODR is equal to(1125 / value) Hz. |
| System.Int32 | dlpf | only applies if the ODR divider is greater than zero and the decimator averages more than one sample. 3dB BandWidth 0->196.6Hz, 1->151.8Hz, 2->119.5Hz, 3->51.2Hz, 4->23.9Hz, 5->11.6Hz, 6->5.7Hz, 7->361.4Hz, |
| System.Int32 | decimator | only applies if the ODR divider is greater than zero. Samples Averaged 0->1, 1->2, 2->4, 3->8, 4->16, 5->32, 6->64, 7->128 |
| System.Int32 | selftest | selfCheck. Samples Averaged If 0,disable the internal self-test. greater than 0 ,enables the internal self-test. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
SetMagConfiguration(Int32, Int32, Int32)
The IMU Magnetometer Configuration characteristic is used to configure how digital samples are collected from the IMU magnetometer. Each sample consists of three values, one for each axis (X-Y-Z).
Declaration
public bool SetMagConfiguration(int sampleRate, int sampleSize, int selftest)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | sampleRate | If positive, specifies the number of samples per frame to collect. If zero, no samples are collected from gyroscope. If negative, specifies the number of frames between samples.Not supported. |
| System.Int32 | sampleSize | size in bits with a range of 4 to 16 bits. |
| System.Int32 | selftest | selfCheck. Samples Averaged If 0,disable the internal self-test. greater than 0 ,enables the internal self-test. |
Returns
| Type | Description |
|---|---|
| System.Boolean |
SetOrientationConfiguration(Int32, Int32, Int32)
The IMU Orientation Configuration characteristic is used to configure how orientation data is collected from the IMU. The IMU sends orientation data to the sensor microcontroller at the selected ODR. The sensor then samples its internal orientation “register” at the selected sample rate. An orientation sample includes a four-element quaternion data point (each element is signed) and a 32-bit accuracy value.
Declaration
public bool SetOrientationConfiguration(int sampleRate, int sampleSize, int odr)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | sampleRate | If positive, specifies the number of samples per frame to collect. If zero, no samples are collected from orientation. If negative, specifies the number of frames between samples.Not supported. |
| System.Int32 | sampleSize | size in bits of each element value in the sample. Ranges from 4 to 32 bits. The native resolution is 32 bits; values are scaled to the requested size. The element values, accuracy value, and the samples are packed. The size of the accuracy value is not affected by this field. |
| System.Int32 | odr | ODR selection (uint8): controls the rate at which the IMU sends an orientation update to the sensor microcontroller. 0->1Hz, 1->5Hz, 2->15Hz, 3->30Hz, 4->51Hz, 5->56.5Hz, 6->60Hz, 7->102Hz, 8->112.5Hz, 9->225Hz |
Returns
| Type | Description |
|---|---|
| System.Boolean |