From 98e922fb1146faa6757fa2dfe792abf66ebe346d Mon Sep 17 00:00:00 2001 From: HentaiHeavenVR Date: Thu, 4 Jul 2024 16:01:02 +0200 Subject: [PATCH] Re-add PET998DR quiet postamble (#249) Co-authored-by: nullstalgia --- src/radio/rmt/Petrainer998DREncoder.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/radio/rmt/Petrainer998DREncoder.cpp b/src/radio/rmt/Petrainer998DREncoder.cpp index 68b1f0c2..b55b16af 100644 --- a/src/radio/rmt/Petrainer998DREncoder.cpp +++ b/src/radio/rmt/Petrainer998DREncoder.cpp @@ -5,6 +5,7 @@ const rmt_data_t kRmtPreamble = {1500, 1, 750, 0}; const rmt_data_t kRmtOne = {750, 1, 250, 0}; const rmt_data_t kRmtZero = {250, 1, 750, 0}; +const rmt_data_t kRmtPostamble = {1500, 0, 1500, 0}; // Some subvariants expect a quiet period between commands using namespace OpenShock; @@ -45,7 +46,7 @@ std::vector Rmt::Petrainer998DREncoder::GetSequence(std::uint16_t sh std::uint64_t data = (static_cast(channel & 0b111) << 35 | static_cast(typeVal & 0b1111) << 31 | static_cast(shockerId & 0x1FFFF) << 14 | static_cast(intensity & 0x7F) << 7 | static_cast(typeInvert & 0b1111) << 3 | static_cast(channelInvert & 0b111)); std::vector pulses; - pulses.reserve(42); + pulses.reserve(43); // Generate the sequence pulses.push_back(kRmtPreamble); @@ -53,6 +54,7 @@ std::vector Rmt::Petrainer998DREncoder::GetSequence(std::uint16_t sh Internal::EncodeBits<38>(pulses, data, kRmtOne, kRmtZero); pulses.push_back(kRmtZero); pulses.push_back(kRmtZero); + pulses.push_back(kRmtPostamble); return pulses; }