# HG changeset patch # User paul # Date 2016-04-04 08:07:01 # Node ID c3197ff831df5057bdd145a4efd94ded0618661f # Parent 1f3d7ce688e982a378d739596c8e3f8972f40b9d ICD 4.0 taken into account diff --git a/TC_types.h b/TC_types.h --- a/TC_types.h +++ b/TC_types.h @@ -93,6 +93,16 @@ typedef struct unsigned char set5; unsigned char set6; unsigned char set7[8]; + unsigned char set8_cp_rpw_sc_rw1_f1[4]; + unsigned char set8_cp_rpw_sc_rw1_f2[4]; + unsigned char set8_cp_rpw_sc_rw2_f1[4]; + unsigned char set8_cp_rpw_sc_rw2_f2[4]; + unsigned char set8_cp_rpw_sc_rw3_f1[4]; + unsigned char set8_cp_rpw_sc_rw3_f2[4]; + unsigned char set8_cp_rpw_sc_rw4_f1[4]; + unsigned char set8_cp_rpw_sc_rw4_f2[4]; + unsigned char set9_spare; + unsigned char set9_rw_f_flags; unsigned char spare1[2]; unsigned char spare2[2]; unsigned char spare3[2]; @@ -108,23 +118,6 @@ typedef struct unsigned char spare13[2]; unsigned char spare14[2]; unsigned char spare15[2]; - unsigned char spare16[2]; - unsigned char spare17[2]; - unsigned char spare18[2]; - unsigned char spare19[2]; - unsigned char spare20[2]; - unsigned char spare21[2]; - unsigned char spare22[2]; - unsigned char spare23[2]; - unsigned char spare24[2]; - unsigned char spare25[2]; - unsigned char spare26[2]; - unsigned char spare27[2]; - unsigned char spare28[2]; - unsigned char spare29[2]; - unsigned char spare30[2]; - unsigned char spare31[2]; - unsigned char spare32[2]; unsigned char crc[2]; } Packet_TC_LFR_UPDATE_INFO_t; @@ -232,4 +225,21 @@ typedef struct } Packet_TC_LFR_DUMP_KCOEFFICIENTS_t; +typedef struct +{ // the CCSDS header is added by LPPMON + unsigned char packetID[2]; + unsigned char packetSequenceControl[2]; + unsigned char packetLength[2]; + // DATA FIELD HEADER + unsigned char ccsdsSecHeaderFlag_pusVersion_ack; + unsigned char serviceType; + unsigned char serviceSubType; + unsigned char sourceID; + unsigned char spare_sy_lfr_pas_filter_enabled; + unsigned char sy_lfr_pas_filter_modulus; + unsigned char sy_lfr_pas_filter_nstd; + unsigned char sy_lfr_pas_filter_offset; + unsigned char crc[2]; +} Packet_TC_LFR_LOAD_PAS_FILTER_t; + #endif // TC_TYPES_H diff --git a/ccsds_types.h b/ccsds_types.h --- a/ccsds_types.h +++ b/ccsds_types.h @@ -73,38 +73,40 @@ #define TC_TYPE_TIME 9 // TC SUBTYPES -#define TC_SUBTYPE_RESET 1 -#define TC_SUBTYPE_LOAD_COMM 11 -#define TC_SUBTYPE_LOAD_NORM 13 -#define TC_SUBTYPE_LOAD_BURST 19 -#define TC_SUBTYPE_LOAD_SBM1 25 -#define TC_SUBTYPE_LOAD_SBM2 27 -#define TC_SUBTYPE_DUMP 31 -#define TC_SUBTYPE_ENTER 41 -#define TC_SUBTYPE_UPDT_INFO 51 -#define TC_SUBTYPE_EN_CAL 61 -#define TC_SUBTYPE_DIS_CAL 63 -#define TC_SUBTYPE_LOAD_K 93 -#define TC_SUBTYPE_DUMP_K 95 -#define TC_SUBTYPE_LOAD_FBINS 91 -#define TC_SUBTYPE_UPDT_TIME 129 +#define TC_SUBTYPE_RESET 1 +#define TC_SUBTYPE_LOAD_COMM 11 +#define TC_SUBTYPE_LOAD_NORM 13 +#define TC_SUBTYPE_LOAD_BURST 19 +#define TC_SUBTYPE_LOAD_SBM1 25 +#define TC_SUBTYPE_LOAD_SBM2 27 +#define TC_SUBTYPE_DUMP 31 +#define TC_SUBTYPE_ENTER 41 +#define TC_SUBTYPE_UPDT_INFO 51 +#define TC_SUBTYPE_EN_CAL 61 +#define TC_SUBTYPE_DIS_CAL 63 +#define TC_SUBTYPE_LOAD_K 93 +#define TC_SUBTYPE_DUMP_K 95 +#define TC_SUBTYPE_LOAD_FBINS 91 +#define TC_SUBTYPE_LOAD_PAS_FILTER_PAR 97 +#define TC_SUBTYPE_UPDT_TIME 129 // TC LEN -#define TC_LEN_RESET 12 -#define TC_LEN_LOAD_COMM 14 -#define TC_LEN_LOAD_NORM 22 -#define TC_LEN_LOAD_BURST 14 -#define TC_LEN_LOAD_SBM1 14 -#define TC_LEN_LOAD_SBM2 14 -#define TC_LEN_DUMP 12 -#define TC_LEN_ENTER 20 -#define TC_LEN_UPDT_INFO 110 -#define TC_LEN_EN_CAL 12 -#define TC_LEN_DIS_CAL 12 -#define TC_LEN_LOAD_K 142 -#define TC_LEN_DUMP_K 12 -#define TC_LEN_LOAD_FBINS 60 -#define TC_LEN_UPDT_TIME 18 +#define TC_LEN_RESET 12 +#define TC_LEN_LOAD_COMM 14 +#define TC_LEN_LOAD_NORM 22 +#define TC_LEN_LOAD_BURST 14 +#define TC_LEN_LOAD_SBM1 14 +#define TC_LEN_LOAD_SBM2 14 +#define TC_LEN_DUMP 12 +#define TC_LEN_ENTER 20 +#define TC_LEN_UPDT_INFO 110 +#define TC_LEN_EN_CAL 12 +#define TC_LEN_DIS_CAL 12 +#define TC_LEN_LOAD_K 142 +#define TC_LEN_DUMP_K 12 +#define TC_LEN_LOAD_FBINS 60 +#define TC_LEN_LOAD_PAS_FILTER_PAR 16 +#define TC_LEN_UPDT_TIME 18 // PACKET CODES #define TM_CODE_K_DUMP 0xb5600b00 // 181 (0xb5) ** 96 (0x60) ** 11 (0x0b) ** 0 (0x00) @@ -243,7 +245,7 @@ enum apid_destid{ #define PACKET_LENGTH_TC_EXE_ERROR (24 - CCSDS_TC_TM_PACKET_OFFSET) #define PACKET_LENGTH_TC_EXE_CORRUPTED (32 - CCSDS_TC_TM_PACKET_OFFSET) #define PACKET_LENGTH_HK (136 - CCSDS_TC_TM_PACKET_OFFSET) -#define PACKET_LENGTH_PARAMETER_DUMP (84 - CCSDS_TC_TM_PACKET_OFFSET) +#define PACKET_LENGTH_PARAMETER_DUMP (88 - CCSDS_TC_TM_PACKET_OFFSET) #define PACKET_LENGTH_K_DUMP (3920 - CCSDS_TC_TM_PACKET_OFFSET) // SCIENCE ASM #define PACKET_LENGTH_TM_LFR_SCIENCE_ASM_F0_1 (3230 - CCSDS_TC_TM_PACKET_OFFSET) // 32 * 25 * 4 + 30 => 32 bins (32 + 32 + 24 ), 3 packets @@ -672,8 +674,8 @@ typedef struct { // hk_lfr_ahb_ unsigned char hk_lfr_ahb_correctable; unsigned char hk_lfr_ahb_uncorrectable; - // spare - unsigned char parameters_spare; + // reaction wheel frequency + unsigned char hk_lfr_sw_rw_f_flags; } Packet_TM_LFR_HK_t; typedef struct { @@ -738,6 +740,12 @@ typedef struct { unsigned char sy_lfr_fbins_f2_word3[4]; unsigned char sy_lfr_fbins_f2_word4[4]; + // PAS FILTER PARAMETERS + unsigned char spare_sy_lfr_pas_filter_enabled; + unsigned char sy_lfr_pas_filter_modulus; + unsigned char sy_lfr_pas_filter_nstd; + unsigned char sy_lfr_pas_filter_offset; + // SPARE unsigned char source_data_spare; } Packet_TM_LFR_PARAMETER_DUMP_t; diff --git a/fsw_params_nb_bytes.h b/fsw_params_nb_bytes.h --- a/fsw_params_nb_bytes.h +++ b/fsw_params_nb_bytes.h @@ -42,6 +42,12 @@ #define NB_BYTES_PER_FREQ_MASK 16 #define NB_BYTES_PER_FBINS_MASK 4 +// TC_LFR_LOAD_PAS_FILTER_PAR +#define DATAFIELD_POS_SY_LFR_PAS_FILTER_ENABLED 0 +#define DATAFIELD_POS_SY_LFR_PAS_FILTER_MODULUS 1 +#define DATAFIELD_POS_SY_LFR_PAS_FILTER_NSTD 2 +#define DATAFIELD_POS_SY_LFR_PAS_FILTER_OFFSET 3 + // TC_LFR_LOAD_KCOEFFICIENTS #define NB_BYTES_PER_FLOAT 4 #define DATAFIELD_POS_SY_LFR_KCOEFF_FREQUENCY 0 // 10 - 10