From 051f8c46e3ea461c53f7121bc16a2a2e67bd569b Mon Sep 17 00:00:00 2001 From: Andy CA6JAU Date: Fri, 9 Feb 2018 14:49:18 -0300 Subject: [PATCH] Jitter slots insert should be always multiple of 6 to avoid break DMR sequence --- DMRSlot.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/DMRSlot.cpp b/DMRSlot.cpp index d8d4b4d..7da67dc 100644 --- a/DMRSlot.cpp +++ b/DMRSlot.cpp @@ -30,6 +30,7 @@ #include #include #include +#include unsigned int CDMRSlot::m_colorCode = 0U; @@ -1835,7 +1836,9 @@ void CDMRSlot::init(unsigned int colorCode, bool embeddedLCOnly, bool dumpTAData m_rssiMapper = rssiMapper; m_jitterTime = jitter; - m_jitterSlots = jitter / DMR_SLOT_TIME; + + float jitter_tmp = float(jitter) / 360.0F; + m_jitterSlots = (unsigned int) (std::ceil(jitter_tmp) * 6.0F); m_idle = new unsigned char[DMR_FRAME_LENGTH_BYTES + 2U]; ::memcpy(m_idle, DMR_IDLE_DATA, DMR_FRAME_LENGTH_BYTES + 2U);