diff --git a/linux/devices/devicedefinitions/PlocSupervisorDefinitions.h b/linux/devices/devicedefinitions/PlocSupervisorDefinitions.h index 312f5c14..ac89c8d4 100644 --- a/linux/devices/devicedefinitions/PlocSupervisorDefinitions.h +++ b/linux/devices/devicedefinitions/PlocSupervisorDefinitions.h @@ -310,8 +310,8 @@ enum class TmtcManStatusCode : uint32_t { BAD_SP_HEADER = 0x608 }; -static constexpr uint16_t APID_MASK_TC = 0x200; -static constexpr uint16_t APID_MASK_TM = 0x400; +static constexpr uint16_t APID_MASK_TC = 0x80; +static constexpr uint16_t APID_MASK_TM = 0x200; static constexpr uint16_t APID_MODULE_MASK = 0x7F; static const uint16_t SEQUENCE_COUNT_MASK = 0xFFF; @@ -520,7 +520,8 @@ class TcBase : public ploc::SpTcBase { } std::memset(spParams.buf + ccsds::HEADER_LEN, 0, TIMESTAMP_LEN); payloadStart = spParams.buf + ccsds::HEADER_LEN + SECONDARY_HEADER_LEN; - payloadStart[supv::PAYLOAD_OFFSET] = serviceId; + spParams.buf[ccsds::HEADER_LEN + SECONDARY_HEADER_LEN - 1] = serviceId; + spParams.creator.setSecHeaderFlag(); return returnvalue::OK; } };