Skip to content

Commit

Permalink
Merge pull request #876 from yehoshuapw/hrs-driver-changes
Browse files Browse the repository at this point in the history
Hrs driver changes
  • Loading branch information
JF002 committed Jan 26, 2022
2 parents 458f5b8 + 464b689 commit 9e9010c
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 8 deletions.
8 changes: 4 additions & 4 deletions src/drivers/Hrs3300.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -54,18 +54,18 @@ void Hrs3300::Disable() {
WriteRegister(static_cast<uint8_t>(Registers::Enable), value);
}

uint16_t Hrs3300::ReadHrs() {
uint32_t Hrs3300::ReadHrs() {
auto m = ReadRegister(static_cast<uint8_t>(Registers::C0DataM));
auto h = ReadRegister(static_cast<uint8_t>(Registers::C0DataH));
auto l = ReadRegister(static_cast<uint8_t>(Registers::C0dataL));
return (m << 8) | ((h & 0x0f) << 4) | (l & 0x0f) | ((l & 0x30) << 12);
return ((l & 0x30) << 12) | (m << 8) | ((h & 0x0f) << 4) | (l & 0x0f);
}

uint16_t Hrs3300::ReadAls() {
uint32_t Hrs3300::ReadAls() {
auto m = ReadRegister(static_cast<uint8_t>(Registers::C1dataM));
auto h = ReadRegister(static_cast<uint8_t>(Registers::C1dataH));
auto l = ReadRegister(static_cast<uint8_t>(Registers::C1dataL));
return (m << 3) | ((h & 0x3f) << 11) | (l & 0x07);
return ((h & 0x3f) << 11) | (m << 3) | (l & 0x07);
}

void Hrs3300::SetGain(uint8_t gain) {
Expand Down
4 changes: 2 additions & 2 deletions src/drivers/Hrs3300.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ namespace Pinetime {
void Init();
void Enable();
void Disable();
uint16_t ReadHrs();
uint16_t ReadAls();
uint32_t ReadHrs();
uint32_t ReadAls();
void SetGain(uint8_t gain);
void SetDrive(uint8_t drive);

Expand Down
3 changes: 1 addition & 2 deletions src/heartratetask/HeartRateTask.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,7 @@ void HeartRateTask::Work() {
}

if (measurementStarted) {
auto hrs = heartRateSensor.ReadHrs();
ppg.Preprocess(hrs);
ppg.Preprocess(static_cast<float>(heartRateSensor.ReadHrs()));
auto bpm = ppg.HeartRate();

if (lastBpm == 0 && bpm == 0)
Expand Down

0 comments on commit 9e9010c

Please sign in to comment.