Skip to content

Commit c777677

Browse files
committed
fixing
1 parent c686e04 commit c777677

2 files changed

Lines changed: 8 additions & 13 deletions

File tree

src/devices/sunnyfitstepper/sunnyfitstepper.cpp

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -108,19 +108,14 @@ void sunnyfitstepper::processDataFrame(const QByteArray &completeFrame) {
108108
uint16_t rawCadence = ((uint8_t)completeFrame.at(7) << 8) | (uint8_t)completeFrame.at(6);
109109
Cadence = (double)rawCadence;
110110

111-
// Extract step count (bytes 16-19, little-endian)
112-
uint32_t steps = ((uint32_t)(uint8_t)completeFrame.at(19) << 24) |
113-
((uint32_t)(uint8_t)completeFrame.at(18) << 16) |
114-
((uint32_t)(uint8_t)completeFrame.at(17) << 8) |
115-
(uint32_t)(uint8_t)completeFrame.at(16);
111+
// Extract step count (bytes 10-12, little-endian)
112+
uint32_t steps = ((uint32_t)(uint8_t)completeFrame.at(12) << 16) |
113+
((uint32_t)(uint8_t)completeFrame.at(11) << 8) |
114+
(uint32_t)(uint8_t)completeFrame.at(10);
116115
StepCount = steps;
117116

118-
// Extract elevation (bytes 26-29, little-endian)
119-
uint32_t elevRaw = ((uint32_t)(uint8_t)completeFrame.at(29) << 24) |
120-
((uint32_t)(uint8_t)completeFrame.at(28) << 16) |
121-
((uint32_t)(uint8_t)completeFrame.at(27) << 8) |
122-
(uint32_t)(uint8_t)completeFrame.at(26);
123-
elevationAcc = (double)elevRaw / 100.0;
117+
// Calculate elevation manually (0.2 meters per step)
118+
elevationAcc = (double)steps * 0.20;
124119

125120
// Calculate speed from cadence (stairclimber convention)
126121
Speed = Cadence.value() / 3.2;

src/qfit.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -454,7 +454,7 @@ void qfit::save(const QString &filename, QList<SessionLine> session, BLUETOOTH_T
454454
sessionMesg.SetAvgStrokeDistance(session.last().avgStrokesLength);
455455
} else if (type == STAIRCLIMBER) {
456456

457-
sessionMesg.SetSport(FIT_SPORT_GENERIC);
457+
sessionMesg.SetSport(FIT_SPORT_FITNESS_EQUIPMENT);
458458
sessionMesg.SetSubSport(FIT_SUB_SPORT_STAIR_CLIMBING);
459459
} else if (type == JUMPROPE) {
460460

@@ -699,7 +699,7 @@ void qfit::save(const QString &filename, QList<SessionLine> session, BLUETOOTH_T
699699
lapMesg.SetSport(FIT_SPORT_JUMP_ROPE);
700700
} else if (type == STAIRCLIMBER) {
701701

702-
lapMesg.SetSport(FIT_SPORT_GENERIC);
702+
lapMesg.SetSport(FIT_SPORT_FITNESS_EQUIPMENT);
703703
lapMesg.SetSubSport(FIT_SUB_SPORT_STAIR_CLIMBING);
704704
} else {
705705

0 commit comments

Comments
 (0)