Skip to content

Commit a460efb

Browse files
committed
Fix Keep Bike new protocol resistance writes
1 parent 2697022 commit a460efb

2 files changed

Lines changed: 9 additions & 9 deletions

File tree

src/devices/keepbike/keepbike.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,9 +109,9 @@ QByteArray keepbike::buildNewProtocolFrame(uint16_t sequence, quint32 session, c
109109
}
110110

111111
QByteArray keepbike::buildNewProtocolResistancePayload(resistance_t resistance) {
112-
QByteArray payload = QByteArray::fromHex("02b53130362f34ff");
113-
appendVarint(payload, 0x08);
114-
appendVarint(payload, resistance);
112+
QByteArray payload = QByteArray::fromHex("01b53130362f37ff");
113+
appendVarint(payload, 0x20);
114+
appendVarint(payload, resistance * 1000);
115115
return payload;
116116
}
117117

tst/Devices/TestKeepBikeParser.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,9 @@ TEST(KeepBikeNewProtocolRegressionTest, ResistanceComesFromLoggedStatusFrame) {
4444

4545
TEST(KeepBikeNewProtocolRegressionTest, BuildsResistanceWritePayload) {
4646
EXPECT_EQ(keepbike::buildNewProtocolResistancePayload(4),
47-
QByteArray::fromHex("02b53130362f34ff0804"));
48-
EXPECT_EQ(keepbike::buildNewProtocolResistancePayload(36),
49-
QByteArray::fromHex("02b53130362f34ff0824"));
47+
QByteArray::fromHex("01b53130362f37ff20a01f"));
48+
EXPECT_EQ(keepbike::buildNewProtocolResistancePayload(12),
49+
QByteArray::fromHex("01b53130362f37ff20e05d"));
5050
}
5151

5252
TEST(KeepBikeNewProtocolRegressionTest, RejectsCorruptMetricsFrame) {
@@ -66,11 +66,11 @@ TEST(KeepBikeNewProtocolRegressionTest, BuildsFramesWithValidNewProtocolCrc) {
6666
EXPECT_TRUE(frame.startsWith(QByteArray::fromHex("a5a5a00013003216ef235501c2c4040000")));
6767
}
6868

69-
TEST(KeepBikeNewProtocolRegressionTest, ResistanceWriteFrameUsesCommandMessageType) {
69+
TEST(KeepBikeNewProtocolRegressionTest, ResistanceWriteFrameUsesMetricsCommandType) {
7070
const QByteArray frame = keepbike::buildNewProtocolFrame(
7171
0x36a0, 0x04d7f9c2, keepbike::buildNewProtocolResistancePayload(4));
7272

7373
EXPECT_TRUE(keepbike::isNewProtocolFrame(frame));
74-
EXPECT_TRUE(frame.startsWith(QByteArray::fromHex("a5a5a03616003216ef235503c2f9d7040000")));
75-
EXPECT_TRUE(frame.contains(QByteArray::fromHex("02b53130362f34ff0804")));
74+
EXPECT_TRUE(frame.startsWith(QByteArray::fromHex("a5a5a03617003216ef235501c2f9d7040000")));
75+
EXPECT_TRUE(frame.contains(QByteArray::fromHex("01b53130362f37ff20a01f")));
7676
}

0 commit comments

Comments
 (0)