Skip to content

Commit 8481e2e

Browse files
committed
Merge remote-tracking branch 'origin/master' into DEV-331_S3R_DFU_MN
2 parents 53f7abe + f3a5646 commit 8481e2e

3 files changed

Lines changed: 22 additions & 6 deletions

File tree

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

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1084,6 +1084,7 @@ public static class ObjectClusterSensorName{
10841084

10851085
public static String TIMESTAMP = SensorShimmerClock.ObjectClusterSensorName.TIMESTAMP;//"Timestamp";
10861086
public static String REAL_TIME_CLOCK = SensorShimmerClock.ObjectClusterSensorName.REAL_TIME_CLOCK;//"RealTime";
1087+
public static String SHIMMER_CLOCK = SensorShimmerClock.ObjectClusterSensorName.SHIMMER_CLOCK;//"RealTime";
10871088
// public static String REAL_TIME_CLOCK_SYNC = TimeSyncModule.ObjectClusterSensorName.REAL_TIME_CLOCK_SYNC;//"RealTime_Sync";
10881089
// public static String TIMESTAMP_SYNC = TimeSyncModule.ObjectClusterSensorName.TIMESTAMP_SYNC;//"Timestamp_Sync";
10891090
public static String SYSTEM_TIMESTAMP = SensorSystemTimeStamp.ObjectClusterSensorName.SYSTEM_TIMESTAMP;//"System_Timestamp";
@@ -1727,6 +1728,7 @@ public static class CompatibilityInfoForMaps{
17271728
aMap.put(SensorSystemTimeStamp.ObjectClusterSensorName.SYSTEM_TIMESTAMP_PLOT, SensorShimmerClock.channelSystemTimestampPlot);
17281729

17291730
aMap.put(SensorShimmerClock.ObjectClusterSensorName.REAL_TIME_CLOCK, SensorShimmerClock.channelRealTimeClock);
1731+
aMap.put(SensorShimmerClock.ObjectClusterSensorName.SHIMMER_CLOCK, SensorShimmerClock.channelShimmerClock3LSB);
17301732
// aMap.put(ShimmerClock.ObjectClusterSensorName.REAL_TIME_CLOCK, ShimmerClock.channelRealTimeClockSync);
17311733
aMap.put(SensorShimmerClock.ObjectClusterSensorName.TIMESTAMP_OFFSET, SensorShimmerClock.channelShimmerClockOffset);
17321734
// aMap.putAll(ShimmerClock.mChannelMapRef);
@@ -1773,6 +1775,7 @@ public static class CompatibilityInfoForMaps{
17731775
aMap.put(SensorSystemTimeStamp.ObjectClusterSensorName.SYSTEM_TIMESTAMP_PLOT, SensorShimmerClock.channelSystemTimestampPlot);
17741776

17751777
aMap.put(SensorShimmerClock.ObjectClusterSensorName.REAL_TIME_CLOCK, SensorShimmerClock.channelRealTimeClock);
1778+
aMap.put(SensorShimmerClock.ObjectClusterSensorName.SHIMMER_CLOCK, SensorShimmerClock.channelShimmerClock3LSB);
17761779
// aMap.put(ShimmerClock.ObjectClusterSensorName.REAL_TIME_CLOCK, ShimmerClock.channelRealTimeClockSync);
17771780
aMap.put(SensorShimmerClock.ObjectClusterSensorName.TIMESTAMP_OFFSET, SensorShimmerClock.channelShimmerClockOffset);
17781781
// aMap.putAll(ShimmerClock.mChannelMapRef);

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

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2804,7 +2804,8 @@ else if (getHardwareVersion()==HW_ID.SHIMMER_2 || getHardwareVersion()==HW_ID.SH
28042804
protected void parseTimestampShimmer3(COMMUNICATION_TYPE fwType, ObjectCluster objectCluster, double[] uncalibratedData, String[] uncalibratedDataUnits, double[] calibratedData, String[] calibratedDataUnits, String[] sensorNames, long[] newPacketInt) {
28052805
int iTimeStamp=getSignalIndex(Configuration.Shimmer3.ObjectClusterSensorName.TIMESTAMP); //find index
28062806
double shimmerTimestampTicks = (double)newPacketInt[iTimeStamp];
2807-
2807+
objectCluster.addDataToMap(Shimmer3.ObjectClusterSensorName.SHIMMER_CLOCK,CHANNEL_TYPE.UNCAL.toString(),CHANNEL_UNITS.CLOCK_UNIT,shimmerTimestampTicks);
2808+
objectCluster.addDataToMap(Shimmer3.ObjectClusterSensorName.SHIMMER_CLOCK,CHANNEL_TYPE.CAL.toString(),CHANNEL_UNITS.CLOCK_UNIT,shimmerTimestampTicks);
28082809
if(mFirstTime && fwType==COMMUNICATION_TYPE.SD){
28092810
//this is to make sure the Raw starts from zero for SD data. See comment for mFirstTsOffsetFromInitialTsTicks.
28102811
mFirstTsOffsetFromInitialTsTicks = shimmerTimestampTicks;
@@ -2822,7 +2823,7 @@ protected void parseTimestampShimmer3(COMMUNICATION_TYPE fwType, ObjectCluster o
28222823

28232824
double timestampUnwrappedTicks = unwrapTimeStamp(shimmerTimestampTicks);
28242825
double timestampUnwrappedMilliSecs = timestampUnwrappedTicks/getRtcClockFreq()*1000; // to convert into mS
2825-
2826+
28262827
incrementPacketsReceivedCounters();
28272828
calculateTrialPacketLoss(timestampUnwrappedMilliSecs);
28282829

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

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ public static class ObjectClusterSensorName{
8383

8484
public static final String TIMESTAMP_DIFFERENCE = "Timestamp Difference";
8585
public static final String REAL_TIME_CLOCK = "RealTime";
86-
86+
public static final String SHIMMER_CLOCK = "Clock 3_LSB";
8787
public static final String TIMESTAMP_OFFSET = "Offset";
8888
}
8989

@@ -93,6 +93,7 @@ public static class DatabaseChannelHandles{
9393
public static final String OFFSET_TIMESTAMP = "OFFSET";//"Offset";
9494

9595
public static final String REAL_TIME_CLOCK = "Real_Time_Clock";
96+
public static final String SHIMMER_CLOCK = "Clock_3_LSB";
9697
}
9798

9899
public static final class DatabaseConfigHandle{
@@ -106,7 +107,8 @@ public static final class DatabaseConfigHandle{
106107
Arrays.asList(SensorShimmerClock.ObjectClusterSensorName.TIMESTAMP,
107108
SensorShimmerClock.ObjectClusterSensorName.TIMESTAMP_DIFFERENCE,
108109
SensorShimmerClock.ObjectClusterSensorName.REAL_TIME_CLOCK,
109-
SensorShimmerClock.ObjectClusterSensorName.TIMESTAMP_OFFSET
110+
SensorShimmerClock.ObjectClusterSensorName.TIMESTAMP_OFFSET,
111+
SensorShimmerClock.ObjectClusterSensorName.SHIMMER_CLOCK
110112
));
111113
{
112114
sensorShimmerClock.mIsApiSensor = true; // Even though TIMESTAMP channel is an API channel, there is no enabledSensor bit for it
@@ -220,6 +222,17 @@ public static final class DatabaseConfigHandle{
220222
channelRealTimeClock.mChannelSource = CHANNEL_SOURCE.API;
221223
}
222224

225+
public static final ChannelDetails channelShimmerClock3LSB = new ChannelDetails(
226+
ObjectClusterSensorName.SHIMMER_CLOCK,
227+
ObjectClusterSensorName.SHIMMER_CLOCK,
228+
DatabaseChannelHandles.SHIMMER_CLOCK,
229+
CHANNEL_UNITS.CLOCK_UNIT,
230+
Arrays.asList(CHANNEL_TYPE.UNCAL ,CHANNEL_TYPE.CAL), false, true);
231+
{
232+
//TODO put into above constructor
233+
channelRealTimeClock.mChannelSource = CHANNEL_SOURCE.API;
234+
}
235+
223236
//TODO: Move to separate class
224237
public static final ChannelDetails channelBattPercentage = new ChannelDetails(
225238
Configuration.Shimmer3.ObjectClusterSensorName.BATT_PERCENTAGE,
@@ -301,9 +314,8 @@ public void generateSensorMap() {
301314
channelMapRef.put(SensorShimmerClock.ObjectClusterSensorName.TIMESTAMP_DIFFERENCE, SensorShimmerClock.channelShimmerTsDiffernce);
302315
channelMapRef.put(SensorShimmerClock.ObjectClusterSensorName.TIMESTAMP_OFFSET, SensorShimmerClock.channelShimmerClockOffset);
303316
channelMapRef.put(SensorShimmerClock.ObjectClusterSensorName.REAL_TIME_CLOCK, SensorShimmerClock.channelRealTimeClock);
304-
317+
channelMapRef.put(SensorShimmerClock.ObjectClusterSensorName.SHIMMER_CLOCK, SensorShimmerClock.channelShimmerClock3LSB);
305318
channelMapRef.put(SensorBattVoltage.ObjectClusterSensorName.BATT_PERCENTAGE, SensorShimmerClock.channelBattPercentage);
306-
307319
channelMapRef.put(ShimmerStreamingProperties.ObjectClusterSensorName.PACKET_RECEPTION_RATE_CURRENT, SensorShimmerClock.channelReceptionRateCurrent);
308320
channelMapRef.put(ShimmerStreamingProperties.ObjectClusterSensorName.PACKET_RECEPTION_RATE_OVERALL, SensorShimmerClock.channelReceptionRateTrial);
309321
}

0 commit comments

Comments
 (0)