diff --git a/src/common/p25/lc/tdulc/LC_CALL_TERM.cpp b/src/common/p25/lc/tdulc/LC_CALL_TERM.cpp index 58bc24bd..96377749 100644 --- a/src/common/p25/lc/tdulc/LC_CALL_TERM.cpp +++ b/src/common/p25/lc/tdulc/LC_CALL_TERM.cpp @@ -50,7 +50,7 @@ void LC_CALL_TERM::encode(uint8_t* data) m_implicit = true; rsValue = 0U; - rsValue = (rsValue << 24) + WUID_FNE; // System Radio Address + rsValue = (rsValue << 24) + m_dstId; // Target Address std::unique_ptr rs = TDULC::fromValue(rsValue); TDULC::encode(data, rs.get()); diff --git a/src/host/p25/packet/ControlSignaling.cpp b/src/host/p25/packet/ControlSignaling.cpp index af4f01f7..d27c95f8 100644 --- a/src/host/p25/packet/ControlSignaling.cpp +++ b/src/host/p25/packet/ControlSignaling.cpp @@ -1657,6 +1657,7 @@ void ControlSignaling::writeRF_TDULC_ChanRelease(bool grp, uint32_t srcId, uint3 } lc = std::make_unique(); + lc->setDstId(dstId); writeRF_TDULC(lc.get(), true); if (m_p25->m_enableControl) { diff --git a/src/host/p25/packet/Data.cpp b/src/host/p25/packet/Data.cpp index a3ac34a6..d6be49b4 100644 --- a/src/host/p25/packet/Data.cpp +++ b/src/host/p25/packet/Data.cpp @@ -979,6 +979,7 @@ void Data::clock(uint32_t ms) } std::unique_ptr lc = std::make_unique(); + lc->setDstId(llId); m_p25->m_control->writeRF_TDULC(lc.get(), true); for (uint8_t i = 0U; i < 8U; i++) { m_p25->writeRF_TDU(true); @@ -1053,6 +1054,7 @@ void Data::sndcpReset(uint32_t llId, bool callTerm) } std::unique_ptr lc = std::make_unique(); + lc->setDstId(llId); m_p25->m_control->writeRF_TDULC(lc.get(), true); m_p25->writeRF_Preamble();