diff --git a/app/src/main/java/com/example/medilightv2android/services/labdb/LabdbUploader.kt b/app/src/main/java/com/example/medilightv2android/services/labdb/LabdbUploader.kt index 3b73220..d5d4d67 100644 --- a/app/src/main/java/com/example/medilightv2android/services/labdb/LabdbUploader.kt +++ b/app/src/main/java/com/example/medilightv2android/services/labdb/LabdbUploader.kt @@ -119,11 +119,12 @@ object LabdbUploader { val piezo = cycle.optJSONObject("piezo") ?: JSONObject() val imuArr = cycle.optJSONArray("imu") ?: JSONArray() - // labdb 표준 sensor.imu는 단일 샘플. 우리는 cycle당 15 샘플이라 - // 첫 샘플을 sensor.imu에 넣고 전체를 sensor.imu_samples에 free field로 보존. - val firstImu = if (imuArr.length() > 0) imuArr.optJSONObject(0) else null + // labdb 표준 sensor.imu는 단일 샘플. 우리는 cycle당 다수 샘플(FIFO 순)이라 + // 마지막(=가장 최근, piezo 캡처 직전) 샘플을 sensor.imu에 넣고 + // 전체를 sensor.imu_samples에 free field로 보존. + val latestImu = if (imuArr.length() > 0) imuArr.optJSONObject(imuArr.length() - 1) else null val sensor = JSONObject().apply { - firstImu?.let { + latestImu?.let { put("imu", JSONObject().apply { put("ax", it.optDouble("ax")) put("ay", it.optDouble("ay"))