diff --git a/ShimmerDriver/src/main/java/com/shimmerresearch/driver/ShimmerDevice.java b/ShimmerDriver/src/main/java/com/shimmerresearch/driver/ShimmerDevice.java index 54a55ee54..9e1265b19 100644 --- a/ShimmerDriver/src/main/java/com/shimmerresearch/driver/ShimmerDevice.java +++ b/ShimmerDriver/src/main/java/com/shimmerresearch/driver/ShimmerDevice.java @@ -2078,6 +2078,13 @@ public boolean isSupportedSdLogSync() { return false; } + public boolean isFWSupportedBtBleControl() { + if(getFirmwareIdentifier()==ShimmerVerDetails.FW_ID.LOGANDSTREAM + && mShimmerVerObject.compareVersions(HW_ID.SHIMMER_3, FW_ID.LOGANDSTREAM, 1, 0, 4)){ + return true; + } + return false; + } public boolean isLegacySdLog(){ if (getFirmwareIdentifier()==FW_ID.SDLOG && getFirmwareVersionMajor()==0 && getFirmwareVersionMinor()==5){ diff --git a/ShimmerDriver/src/main/java/com/shimmerresearch/driver/ShimmerObject.java b/ShimmerDriver/src/main/java/com/shimmerresearch/driver/ShimmerObject.java index 396c75e68..eca0679ed 100644 --- a/ShimmerDriver/src/main/java/com/shimmerresearch/driver/ShimmerObject.java +++ b/ShimmerDriver/src/main/java/com/shimmerresearch/driver/ShimmerObject.java @@ -10830,6 +10830,14 @@ public static boolean isSupportedNewImuSensors(ShimmerVerObject svo, ExpansionBo return false; } } + + public boolean isSupportedBtBleControl() { + //TODO check S3/S3R FW version in-which command was introduced? + BluetoothModuleVersionDetails bluetoothModuleVersionDetails = getBtFwVerDetails(); + return (bluetoothModuleVersionDetails.isBtModuleVersionKnown() + && !bluetoothModuleVersionDetails.isBtModuleVersionRn41() + && !bluetoothModuleVersionDetails.isBtModuleVersionRn42()); + } @Override public LinkedHashMap getMapOfAllChannelsForStoringToDB(COMMUNICATION_TYPE commType, CHANNEL_TYPE channelType, boolean isKeyOJCName, boolean showDisabledChannels) { diff --git a/ShimmerDriver/src/main/java/com/shimmerresearch/driver/shimmer2r3/BluetoothModuleVersionDetails.java b/ShimmerDriver/src/main/java/com/shimmerresearch/driver/shimmer2r3/BluetoothModuleVersionDetails.java index dcb20ccfe..379058e30 100644 --- a/ShimmerDriver/src/main/java/com/shimmerresearch/driver/shimmer2r3/BluetoothModuleVersionDetails.java +++ b/ShimmerDriver/src/main/java/com/shimmerresearch/driver/shimmer2r3/BluetoothModuleVersionDetails.java @@ -74,4 +74,29 @@ public String getBtModuleVersionReceived() { return mBtModuleVersionReceived; } + public boolean isBtModuleVersionKnown() { + return mBtModuleVersionParsed != BT_MODULE_VERSION.UNKNOWN && mBtModuleVersionParsed != BT_MODULE_VERSION.NOT_READ; + } + + public boolean isBtModuleVersionRn42() { + return mBtModuleVersionParsed == BT_MODULE_VERSION.RN42_VERSION_RESPONSE_V4_77 || + mBtModuleVersionParsed == BT_MODULE_VERSION.RN42_VERSION_RESPONSE_V6_15; + } + + public boolean isBtModuleVersionRn41() { + return mBtModuleVersionParsed == BT_MODULE_VERSION.RN41_VERSION_RESPONSE_V4_77; + } + + public boolean isBtModuleVersionRn4678() { + return mBtModuleVersionParsed == BT_MODULE_VERSION.RN4678_VERSION_RESPONSE_V1_00_5 + || mBtModuleVersionParsed == BT_MODULE_VERSION.RN4678_VERSION_RESPONSE_V1_11_0 + || mBtModuleVersionParsed == BT_MODULE_VERSION.RN4678_VERSION_RESPONSE_V1_13_5 + || mBtModuleVersionParsed == BT_MODULE_VERSION.RN4678_VERSION_RESPONSE_V1_22_0 + || mBtModuleVersionParsed == BT_MODULE_VERSION.RN4678_VERSION_RESPONSE_V1_23_0; + } + + public boolean isBtModuleVersionVelaIf820() { + return mBtModuleVersionParsed == BT_MODULE_VERSION.VELA_IF820_V01_04_12_12 + || mBtModuleVersionParsed == BT_MODULE_VERSION.VELA_IF820_V01_04_16_16; + } }