Skip to content

Commit e4437ac

Browse files
Steven Fengmeta-codesync[bot]
authored andcommitted
{BugFix} Core - Recognize Aria Gen2 battery stream (502-1) in the VRS data provider
Summary: Explanation: Aria Gen2 recordings contain a Battery stream (`RecordableTypeId` 502, flavor `device/oatmeal`), but the VRS data provider did not recognize it. `getSensorDataType` had no `BatteryRecordableClass` entry, so the stream was dropped with `Fail to activate streamId 502-1`; and the Gen2 `StreamIdLabelMapper` had no `502-1` entry, so it logged `stream id 502-1 not found in Aria Device Model`. This adds the missing `RecordableTypeId` -> `SensorDataType::BatteryStatus` mapping (routing 502 to the already-present `BatteryStatusPlayer` case in `addPlayers`) and the `502-1` -> `battery-status` label. Battery telemetry now loads instead of being dropped as an unrecognized stream. This does not affect the separate VRS Health Check `device_info`/proximity validation. Reproducibility: Open a Gen2 `profile8` recording with `createVrsDataProvider`; the `502-1` stream is now activated and labeled `battery-status` rather than emitting the two warnings above. ___ Differential Revision: D113469938 fbshipit-source-id: e7564d5cf530aacffa0e75a3a462ae13cb51c8d9
1 parent 5c453b9 commit e4437ac

3 files changed

Lines changed: 10 additions & 0 deletions

File tree

core/data_provider/StreamIdLabelMapper.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ std::shared_ptr<StreamIdLabelMapper> getAriaGen2StreamIdLabelMapper(
108108
{vrs::StreamId::fromNumericName("248-1"), "ppg"},
109109
{vrs::StreamId::fromNumericName("500-1"), "als"},
110110
{vrs::StreamId::fromNumericName("241-1"), "emg"},
111+
{vrs::StreamId::fromNumericName("502-1"), "battery-status"},
111112
// MPV Streams
112113
{vrs::StreamId::fromNumericName("373-1"), "eyegaze"},
113114
};

core/data_provider/VrsDataProviderFactory.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,9 @@ SensorDataType getSensorDataType(const vrs::RecordableTypeId& id, const std::str
7676
// Temperature
7777
{vrs::RecordableTypeId::TemperatureRecordableClass, SensorDataType::Temperature},
7878

79+
// Battery
80+
{vrs::RecordableTypeId::BatteryRecordableClass, SensorDataType::BatteryStatus},
81+
7982
// eyegaze
8083
{vrs::RecordableTypeId::GazeRecordableClass, SensorDataType::EyeGaze},
8184
};

core/data_provider/test/VrsDataProviderStreamIdLabelMapperTest.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,4 +82,10 @@ TEST(VrsDataProvider, StreamIdLabelMapper_Gen2) {
8282
const std::string expectedVioHighFreqStreamName = "371-3";
8383
EXPECT_TRUE(maybeVioHighFreqStream);
8484
EXPECT_EQ(maybeVioHighFreqStream->getNumericName(), expectedVioHighFreqStreamName);
85+
86+
// Battery status (502-1) must be labeled on Gen2 so it is not reported as
87+
// "not found in Aria Device Model".
88+
const auto maybeBatteryStream = mapper->getStreamIdFromLabel("battery-status");
89+
EXPECT_TRUE(maybeBatteryStream);
90+
EXPECT_EQ(maybeBatteryStream->getNumericName(), "502-1");
8591
}

0 commit comments

Comments
 (0)