Skip to content

Commit 30f1eec

Browse files
authored
Merge pull request #233 from ShimmerEngineering/DEV-354_fixes_for_BAMP_and_P3D
DEV-354 fix for streaming PPG channels on S3R Proto3 Deluxe
2 parents 729ca60 + 4af0247 commit 30f1eec

4 files changed

Lines changed: 32 additions & 27 deletions

File tree

ShimmerDriver/src/main/java/com/shimmerresearch/driver/Configuration.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -820,10 +820,6 @@ public class DerivedSensorsBitMask {
820820
public final static int PPG_TO_HR1_12_13 = 1 << 6; // (0*8 + 6);
821821
public final static int PPG_TO_HR2_1_14 = 1 << 7; // (0*8 + 7);
822822

823-
public final static int PPG_10_15 = 1 << 2; // (0*8 + 2);
824-
public final static int PPG1_10_15 = 1 << 3; // (0*8 + 3);
825-
public final static int PPG2_17_16 = 1 << 4; // (0*8 + 4);
826-
827823
// -------------- Derived Channels Byte 1 -------------------
828824
public final static int ACTIVITY_MODULE = 1 << 8; // (1*8 + 0);
829825

ShimmerDriver/src/main/java/com/shimmerresearch/driver/ShimmerDevice.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2061,7 +2061,8 @@ public boolean isShimmerVideoDevice(){
20612061

20622062
public boolean isSupportedSrProgViaDock() {
20632063
if(mShimmerVerObject.compareVersions(HW_ID.SHIMMER_3, FW_ID.BTSTREAM, 0, 7, 13)
2064-
|| mShimmerVerObject.compareVersions(HW_ID.SHIMMER_3, FW_ID.LOGANDSTREAM, 0, 8, 1)){
2064+
|| mShimmerVerObject.compareVersions(HW_ID.SHIMMER_3, FW_ID.LOGANDSTREAM, 0, 8, 1)
2065+
|| isShimmerGen3R()){
20652066
return true;
20662067
}
20672068
return false;
@@ -2093,6 +2094,7 @@ public static boolean isSupportedDerivedSensors(ShimmerVerObject svo){
20932094
if((isVerCompatibleWith(svo, HW_ID.SHIMMER_3, FW_ID.BTSTREAM, 0, 7, 0))
20942095
||(isVerCompatibleWith(svo, HW_ID.SHIMMER_3, FW_ID.SDLOG, 0, 8, 69))
20952096
||(isVerCompatibleWith(svo, HW_ID.SHIMMER_3, FW_ID.LOGANDSTREAM, 0, 3, 17))
2097+
||(svo.isShimmerGen3R())
20962098
||(svo.isShimmerGenGq())
20972099
||(svo.isShimmerGen4())){
20982100
// ||(isVerCompatibleWith(svo, HW_ID.SHIMMER_4_SDK, ShimmerVerDetails.ANY_VERSION, ShimmerVerDetails.ANY_VERSION, ShimmerVerDetails.ANY_VERSION, ShimmerVerDetails.ANY_VERSION))){

ShimmerDriver/src/main/java/com/shimmerresearch/driver/ShimmerObject.java

Lines changed: 28 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1455,7 +1455,11 @@ else if (isShimmerGen3()) {
14551455
if (isSupportedDerivedSensors()){
14561456
//change name based on derived sensor value
14571457
if ((mDerivedSensors & DerivedSensorsBitMask.PPG2_1_14)>0){
1458-
sensorName = SensorPPG.ObjectClusterSensorName.PPG2_A1;
1458+
if(isShimmerGen3R()) {
1459+
sensorName = SensorPPG.ObjectClusterSensorName.PPG2_A3;
1460+
} else {
1461+
sensorName = SensorPPG.ObjectClusterSensorName.PPG2_A1;
1462+
}
14591463
}else if ((mDerivedSensors & DerivedSensorsBitMask.RES_AMP)>0){
14601464
sensorName = Shimmer3.ObjectClusterSensorName.RESISTANCE_AMP;
14611465
}else if((mDerivedSensors & DerivedSensorsBitMask.SKIN_TEMP)>0){
@@ -1497,20 +1501,20 @@ else if (isShimmerGen3()) {
14971501
//to Support derived sensor renaming
14981502
if (isSupportedDerivedSensors()){
14991503
//change name based on derived sensor value
1500-
if(isShimmerGen3R()) {
1501-
if ((mDerivedSensors & DerivedSensorsBitMask.PPG_10_15)>0){
1504+
if ((mDerivedSensors & DerivedSensorsBitMask.PPG_12_13)>0){
1505+
if (isShimmerGen3R()) {
15021506
sensorName = SensorPPG.ObjectClusterSensorName.PPG_A0;
1503-
} else if ((mDerivedSensors & DerivedSensorsBitMask.PPG1_10_15)>0){
1504-
sensorName = SensorPPG.ObjectClusterSensorName.PPG1_A0;
1505-
}
1506-
}else {
1507-
if ((mDerivedSensors & DerivedSensorsBitMask.PPG_12_13)>0){
1507+
} else {
15081508
sensorName = SensorPPG.ObjectClusterSensorName.PPG_A12;
1509-
} else if ((mDerivedSensors & DerivedSensorsBitMask.PPG1_12_13)>0){
1509+
}
1510+
} else if ((mDerivedSensors & DerivedSensorsBitMask.PPG1_12_13)>0){
1511+
if (isShimmerGen3R()) {
1512+
sensorName = SensorPPG.ObjectClusterSensorName.PPG1_A0;
1513+
} else {
15101514
sensorName = SensorPPG.ObjectClusterSensorName.PPG1_A12;
15111515
}
15121516
}
1513-
1517+
15141518
}
15151519

15161520
sensorNames[iA12]=sensorName;
@@ -1541,16 +1545,16 @@ else if (isShimmerGen3()) {
15411545
//to Support derived sensor renaming
15421546
if (isSupportedDerivedSensors()){
15431547
//change name based on derived sensor value
1544-
if(isShimmerGen3R()) {
1545-
if ((mDerivedSensors & DerivedSensorsBitMask.PPG_10_15)>0){
1548+
if ((mDerivedSensors & DerivedSensorsBitMask.PPG_12_13)>0){
1549+
if(isShimmerGen3R()) {
15461550
sensorName = SensorPPG.ObjectClusterSensorName.PPG_A1;
1547-
} else if ((mDerivedSensors & DerivedSensorsBitMask.PPG1_10_15)>0){
1548-
sensorName = SensorPPG.ObjectClusterSensorName.PPG1_A1;
1549-
}
1550-
}else {
1551-
if ((mDerivedSensors & DerivedSensorsBitMask.PPG_12_13)>0){
1551+
} else {
15521552
sensorName = SensorPPG.ObjectClusterSensorName.PPG_A13;
1553-
} else if ((mDerivedSensors & DerivedSensorsBitMask.PPG1_12_13)>0){
1553+
}
1554+
} else if ((mDerivedSensors & DerivedSensorsBitMask.PPG1_12_13)>0){
1555+
if(isShimmerGen3R()) {
1556+
sensorName = SensorPPG.ObjectClusterSensorName.PPG1_A1;
1557+
} else {
15541558
sensorName = SensorPPG.ObjectClusterSensorName.PPG1_A13;
15551559
}
15561560
}
@@ -1585,9 +1589,12 @@ else if (isShimmerGen3()) {
15851589
if (isSupportedDerivedSensors()){
15861590
//change name based on derived sensor value
15871591
if ((mDerivedSensors & DerivedSensorsBitMask.PPG2_1_14)>0){
1588-
sensorName = SensorPPG.ObjectClusterSensorName.PPG2_A14;
1589-
} else if ((mDerivedSensors & DerivedSensorsBitMask.PPG2_17_16)>0){
1590-
sensorName = SensorPPG.ObjectClusterSensorName.PPG2_A2;
1592+
if(isShimmerGen3R()) {
1593+
sensorName = SensorPPG.ObjectClusterSensorName.PPG2_A2;
1594+
}
1595+
else {
1596+
sensorName = SensorPPG.ObjectClusterSensorName.PPG2_A14;
1597+
}
15911598
}
15921599
}
15931600
sensorNames[iA14]=sensorName;

ShimmerDriver/src/main/java/com/shimmerresearch/sensors/SensorPPG.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ public class DatabaseChannelHandles{
108108
public static final String PPG2_A3 = "F5437a_PPG2_A3";
109109
}
110110

111-
public static class DatabaseConfigHandle{
111+
public static class DatabaseConfigHandle{
112112
public static final String PPG_ADC_SELECTION_BOARD = "PPG_ADC_Selection_Board";
113113
public static final String PPG1_ADC_SELECTION_BOARD = "PPG1_ADC_Selection_Board";
114114
public static final String PPG2_ADC_SELECTION_BOARD = "PPG2_ADC_Selection_Board";

0 commit comments

Comments
 (0)