/*
 * exo_tctm_ipc.h
 *
 *  Created on: Dec 9, 2023
 *      Author: Invcuser_75
 */

#ifndef INCLUDES_EXO_TCTM_IPC_H_
#define INCLUDES_EXO_TCTM_IPC_H_

#define TM_SRC_PS                   TM_SRC_PLD_SRVR///< TM Source ID configuration value for PS

/**
 * @brief TC source ID enumeration
 */
typedef enum
{
    TC_SRC_GS  = 1,
    TC_SRC_MFCC,
    TC_SRC_EPS,
    TC_SRC_COMMS_S,
    TC_SRC_COMMS_X,
    TC_SRC_PLD_SRVR,
    TC_SRC_EDGE,
    TC_SRC_PLD_TC,
    TC_SRC_PLD_AI,
    TC_SRC_PLD_NET,
    TC_SRC_PLD_ZES,
    TC_SRC_PLD_SL,
    TC_SRC_COMMS_U,
    TC_SRC_SDR_APP

}e_tc_src_id;

/**
 * @brief TC destination ID enumeration
 */
typedef enum
{
    TC_DST_OBC = 129,
    TC_DST_ADCS,
    TC_DST_EPS,
    TC_DST_COMMS_S,
    TC_DST_COMMS_X,
    TC_DST_PLD_SRVR,
    TC_DST_EDGE,
    TC_DST_PLD_TC,
    TC_DST_PLD_SW,
    TC_DST_PLD_NET,
    TC_DST_PLD_ZES,
    TC_DST_PLD_SL,
    TC_DST_FTM_OTSU = 141,
    TC_DST_FTM_DBGLOG,
    TC_DST_FTM_OBC_COMMS,
    TC_DST_FTM_OBC_EPS,
    TC_DST_FTM_OBC_ADCS,
    TC_DST_COMMS_U,
    TC_DST_SDR_APP,
    TC_DST_FTM_PS_COMMS,
    TC_DST_TEST_LAYER = 149

}e_tc_dst_id;

/**
 * @brief TM source ID enumeration
 */
typedef enum
{
    TM_SRC_OBC = 129,
    TM_SRC_ADCS,
    TM_SRC_EPS,
    TM_SRC_COMMS_S,
    TM_SRC_COMMS_X,
    TM_SRC_PLD_SRVR,
    TM_SRC_EDGE,
    TM_SRC_PLD_TC,
    TM_SRC_PLD_AI,
    TM_SRC_PLD_NET,
    TM_SRC_PLD_ZES,
    TM_SRC_PLD_SL,
    TM_SRC_FTM_OTSU = 141,
    TM_SRC_FTM_DBGLOG,
    TM_SRC_FTM_USR3,
    TM_SRC_FTM_USR4,
    TM_SRC_FTM_USR5,
    TM_SRC_COMMS_U,
    TM_SRC_SDR_APP

}e_tm_src_id;

/**
 * @brief TM Destination ID enumeration
 */
typedef enum
{
    TM_DST_GS  = 1,
    TM_DST_MFCC,
    TM_DST_EPS,
    TM_DST_COMMS_S,
    TM_DST_COMMS_X,
    TM_DST_PLD_SRVR,
    TM_DST_EDGE,
    TM_DST_PLD_TC,
    TM_DST_PLD_AI,
    TM_DST_PLD_NET,
    TM_DST_PLD_ZES,
    TM_DST_PLD_SL,
    TM_DST_COMMS_UHF,
    TM_DST_SDR_APP

}e_tm_dst_id;



/**
 * @brief
 */
typedef enum
{
    SCH_DEST_EPS 	 = 1,   //sat_hw_ch_s
    SCH_DEST_PS  	 = 2,   //conops_sch_sch_ps_evnt_s
    SCH_DEST_ADCS    = 3,   //conops_sch_adcs_evnt_s
    SCH_DEST_OTSU    = 4,   //conops_sch_adcs_evnt_s
    SCH_DEST_SBAND	 = 5
}conops_sch_dest_id_e;

/*!
 *  @brief This enum holds the enumeration values of TC and TM ID
 */
typedef enum _tc_tm_id
{
    // TODO - Enumeration value to be updated after discussion with team


    // File Transfer
    TC_FTCI = 100,
    TM_FTSR = 101,
    TC_FTDS = 102,
    TC_FTFCI = 103,

    TM_FTCI = 104,
    TC_FTSR = 105,
    TM_FTDS = 106,
    TM_FTFCI = 107,

    // TTY Debug
    TC_TTY_START = 116,
    TM_TTY_START = 116,

    TC_TTY_DEBUG = 117,
    TM_TTY_DEBUG = 117,

    TC_TTY_END = 118,
    TM_TTY_END = 118,

    // EPS
    TC_SET_CONV_BOARD_PARM = 200,
    TM_SET_CONV_BOARD_PARM = 200,

    TC_GET_CONV_BOARD_PARM = 201,
    TM_GET_CONV_BOARD_PARM = 201,

    TC_SET_BATT_BOARD_PARM =202,
    TM_SET_BATT_BOARD_PARM =202,

    TC_GET_BATT_BOARD_PARM =203,
    TM_GET_BATT_BOARD_PARM =203,

    TC_SET_OUT_CHNL_ENB =204,
    TM_SET_OUT_CHNL_ENB =204,

    TC_SET_OUT_CHNL_CUR_LMT =205,
    TM_SET_OUT_CHNL_CUR_LMT =205,

    TC_GET_OUT_CHNL_PARM =206,
    TM_GET_OUT_CHNL_PARM =206,

    TC_SET_EPS_MODE_CFG = 207,
    TM_SET_EPS_MODE_CFG = 207,

    TC_GET_EPS_MODE_CFG =208,
    TM_GET_EPS_MODE_CFG =208,

    TC_GET_EPS_ALERT_INFO = 209,
    TM_GET_EPS_ALERT_INFO = 209,
#if 0
    TC_GET_EPS_VAR_VAL = 210,
    TM_GET_EPS_VAR_VAL = 210,
#endif
    TC_SET_EPS_CTRL_CHNL_ST = 211,
    TM_SET_EPS_CTRL_CHNL_ST = 211,

    TC_SET_EPS_CTRL_DEV_TMR = 212,
    TM_SET_EPS_CTRL_DEV_TMR = 212,

    TC_SET_EPS_BTRY_CTRL_CH_MAP = 213,
    TM_SET_EPS_BTRY_CTRL_CH_MAP = 213,

    TC_GET_EPS_BTRY_CTRL_CH_MAP = 214,
    TM_GET_EPS_BTRY_CTRL_CH_MAP = 214,

    TC_GET_EPS_DEV_HW_STS = 215,
    TM_GET_EPS_DEV_HW_STS = 215,

    TC_SET_EPS_BTRY_VOLT_THRSHLD=216,
    TM_SET_EPS_BTRY_VOLT_THRSHLD=216,

    TC_EPS_FW_UPDATE = 235,
    TM_EPS_FW_UPDATE = 235,

    TC_GET_EPS_FW = 236,
    TM_GET_EPS_FW = 236,
#if 0

    TC_PWR_CTRL_THRUSTER = 214,
    TM_PWR_CTRL_THRUSTER = 214,

    TC_PWR_CTRL_EDGE_BOARD = 215,
    TM_PWR_CTRL_EDGE_BOARD = 215,
#endif

    TC_SET_SSD_SLOT_SELC = 217,
    TM_SET_SSD_SLOT_SELC = 217,

    TC_SSD_HEAT_COIL_ENABLE = 218,
    TM_SSD_HEAT_COIL_ENABLE = 218,

    TC_EPS_GET_BUFFER = 221,
    TM_EPS_GET_BUFFER = 221,

    TC_EPS_HEALTH_STS = 222,
    TM_EPS_HEALTH_STS = 222,

    TC_EPS_GET_CRC = 230,
    TM_EPS_GET_CRC = 230,


    TC_SET_EPS_SIM_EXPOSURE_TYPE = 231,
    TM_SET_EPS_SIM_EXPOSURE_TYPE = 231,

    TC_SET_EPS_SIM_CH_CRNT = 232,
    TM_SET_EPS_SIM_CH_CRNT = 232,

    TC_SET_EPS_SIM_BTRY_VOLT = 233,
    TM_SET_EPS_SIM_BTRY_VOLT = 233,

    TC_SET_EPS_SIM_BTRY_TEMP = 234,
    TM_SET_EPS_SIM_BTRY_TEMP = 234,

	TC_ALERT_FLAG_OVR_CUR_ERR_HANDLE = 237,
	TM_ALERT_FLAG_OVR_CUR_ERR_HANDLE = 237,

	TC_EPS_MCU_RST = 238,
	TM_EPS_MCU_RST = 238,

	TC_SET_EPS_COM_TIMEOUT=239,
	TM_SET_EPS_COM_TIMEOUT=239,

	TC_GET_EPS_COM_TIMEOUT=240,
	TM_GET_EPS_COM_TIMEOUT=240,

    TC_NVM_COMMIT =250,
    TM_NVM_COMMIT =250,

    TC_NVM_COMMIT_PRDCTY_TIM_CFG=251,
    TM_NVM_COMMIT_PRDCTY_TIM_CFG=251,

    TC_GET_SSD_SLOT_SELEC=252,
    TM_GET_SSD_SLOT_SELEC=252,

    TC_GET_SSD_HEAT_COIL_STS=253,
    TM_GET_SSD_HEAT_COIL_STS=253,

    TC_SET_SSD_HEAT_COIL_PRDCTY=254,
    TM_SET_SSD_HEAT_COIL_PRDCTY=254,

    TC_GET_SSD_HEAT_COIL_PRDCTY=255,
    TM_GET_SSD_HEAT_COIL_PRDCTY=255,

    TC_GET_OBC_NVM_REVISION_NUM = 256,
    TM_GET_OBC_NVM_REVISION_NUM = 256,

    TC_SET_COMMS_TX_CFG =300,
    TM_SET_COMMS_TX_CFG =300,
    TC_SET_COMMS_TX_CFG_FREQ =301,
    TM_SET_COMMS_TX_CFG_FREQ=301,
    TC_SET_COMMS_TX_CFG_TYPE=302,
    TM_SET_COMMS_TX_CFG_TYPE=302,
    TC_SET_COMMS_TX_CFG_RATE=303,
    TM_SET_COMMS_TX_CFG_RATE=303,
    TC_SET_COMMS_TX_CFG_ROLLOFF=304,
    TM_SET_COMMS_TX_CFG_ROLLOFF=304,
    TC_SET_COMMS_TX_CFG_POUT=305,
    TM_SET_COMMS_TX_CFG_POUT=305,
    TC_SET_COMMS_TX_CFG_ALC_MODE=306,
    TM_SET_COMMS_TX_CFG_ALC_MODE=306,
    TC_SET_COMMS_TX_CFG_RS=307,
    TM_SET_COMMS_TX_CFG_RS=307,
    TC_SET_COMMS_TX_CFG_CC=308,
    TM_SET_COMMS_TX_CFG_CC=308,
    TC_SET_COMMS_TX_CFG_RAND=309,
    TM_SET_COMMS_TX_CFG_RAND=309,
    TC_SET_COMMS_TX_CFG_CRC=310,
    TM_SET_COMMS_TX_CFG_CRC=310,
    TC_SET_COMMS_TX_CFG_IDLETIME=311,
    TM_SET_COMMS_TX_CFG_IDLETIME=311,
    TC_SET_COMMS_TX_CFG_SIZE=312,
    TM_SET_COMMS_TX_CFG_SIZE=312,
    TC_SET_COMMS_TX_CFG_ID=313,
    TM_SET_COMMS_TX_CFG_ID=313,
    TC_SET_COMMS_TX_CFG_CRYPTO=314,
    TM_SET_COMMS_TX_CFG_CRYPTO=314,
    TC_SET_COMMS_TX_CFG_PA_TEMPLIMIT=315,
    TM_SET_COMMS_TX_CFG_PA_TEMPLIMIT=315,
    TC_SET_COMMS_ASM_CFG=316,
    TM_SET_COMMS_ASM_CFG=316,
    TC_SET_COMMS_RX_CFG = 319,
    TM_SET_COMMS_RX_CFG = 319,
    TC_SET_COMMS_RX_CFG_FREQ=320,
    TM_SET_COMMS_RX_CFG_FREQ=320,
    TC_SET_COMMS_RX_CFG_TYPE=321,
    TM_SET_COMMS_RX_CFG_TYPE=321,
    TC_SET_COMMS_RX_CFG_RATE=322,
    TM_SET_COMMS_RX_CFG_RATE=322,
    TC_SET_COMMS_RX_CFG_ROLLOFF=323,
    TM_SET_COMMS_RX_CFG_ROLLOFF=323,
    TC_SET_COMMS_RX_CFG_AFC=324,
    TM_SET_COMMS_RX_CFG_AFC=324,
    TC_SET_COMMS_RX_CFG_RS=325,
    TM_SET_COMMS_RX_CFG_RS=325,
    TC_SET_COMMS_RX_CFG_CC=326,
    TM_SET_COMMS_RX_CFG_CC=326,
    TC_SET_COMMS_RX_CFG_RAND=327,
    TM_SET_COMMS_RX_CFG_RAND=327,
    TC_SET_COMMS_RX_CFG_CRC=328,
    TM_SET_COMMS_RX_CFG_CRC=328,
    TC_SET_COMMS_RX_CFG_SIZE=329,
    TM_SET_COMMS_RX_CFG_SIZE=329,
    TC_SET_COMMS_RX_CFG_ID=330,
    TM_SET_COMMS_RX_CFG_ID=330,
    TC_SET_COMMS_RX_CFG_CRYPTO=331,
    TM_SET_COMMS_RX_CFG_CRYPTO=331,
    TC_SET_COMMS_BCH_CFG=332,
    TM_SET_COMMS_BCH_CFG=332,
    TC_COMMS_SBAND_BEACON_CFG=333,
    TM_COMMS_SBAND_BEACON_CFG=333,
    TC_COMMS_SBAND_BEACON_START=334,
    TM_COMMS_SBAND_BEACON_START=334,
    TC_COMMS_SBAND_BEACON_STOP=335,
    TM_COMMS_SBAND_BEACON_STOP=335,
    TC_SET_COMMS_SYS_CFG = 340,
    TM_SET_COMMS_SYS_CFG = 340,
    TC_SET_COMMS_ERR_CFG=341,
    TM_SET_COMMS_ERR_CFG=341,
    TC_SET_COMMS_BOOT_CFG=342,
    TM_SET_COMMS_BOOT_CFG=342,
    TC_SET_COMMS_GWDT_CFG=343,
    TM_SET_COMMS_GWDT_CFG=343,
    TC_SET_COMMS_CAN_CFG=344,
    TM_SET_COMMS_CAN_CFG=344,
    TC_SET_COMMS_UART_CFG=345,
    TM_SET_COMMS_UART_CFG=345,
    TC_SET_COMMS_CSP_CFG=346,
    TM_SET_COMMS_CSP_CFG=346,
    TC_SET_COMMS_NET_CFG=347,
    TM_SET_COMMS_NET_CFG=347,
    TC_GET_COMMS_TX_CFG = 350,
    TM_GET_COMMS_TX_CFG = 350,
    TC_GET_COMMS_TX_CFG_FREQ=351,
    TM_GET_COMMS_TX_CFG_FREQ=351,
    TC_GET_COMMS_TX_CFG_TYPE=352,
    TM_GET_COMMS_TX_CFG_TYPE=352,
    TC_GET_COMMS_TX_CFG_RATE=353,
    TM_GET_COMMS_TX_CFG_RATE=353,
    TC_GET_COMMS_TX_CFG_ROLLOFF=354,
    TM_GET_COMMS_TX_CFG_ROLLOFF=354,
    TC_GET_COMMS_TX_CFG_POUT=355,
    TM_GET_COMMS_TX_CFG_POUT=355,
    TC_GET_COMMS_TX_CFG_ALC_MODE=356,
    TM_GET_COMMS_TX_CFG_ALC_MODE=356,
    TC_GET_COMMS_TX_CFG_RS=357,
    TM_GET_COMMS_TX_CFG_RS=357,
    TC_GET_COMMS_TX_CFG_CC=358,
    TM_GET_COMMS_TX_CFG_CC=358,
    TC_GET_COMMS_TX_CFG_RAND=359,
    TM_GET_COMMS_TX_CFG_RAND=359,
    TC_GET_COMMS_TX_CFG_CRC=360,
    TM_GET_COMMS_TX_CFG_CRC=360,
    TC_GET_COMMS_TX_CFG_IDLETIME=361,
    TM_GET_COMMS_TX_CFG_IDLETIME=361,
    TC_GET_COMMS_TX_CFG_SIZE=362,
    TM_GET_COMMS_TX_CFG_SIZE=362,
    TC_GET_COMMS_TX_CFG_ID=363,
    TM_GET_COMMS_TX_CFG_ID=363,
    TC_GET_COMMS_TX_CFG_CRYPTO=364,
    TM_GET_COMMS_TX_CFG_CRYPTO=364,
    TC_GET_COMMS_TX_CFG_PA_TEMPLIMIT=365,
    TM_GET_COMMS_TX_CFG_PA_TEMPLIMIT=365,
    TC_GET_COMMS_TX_CFG_FRAMES=366,
    TM_GET_COMMS_TX_CFG_FRAMES=366,
    TC_GET_COMMS_TX_CFG_PWR_FWD=367,
    TM_GET_COMMS_TX_CFG_PWR_FWD=367,
    TC_GET_COMMS_TX_CFG_PWR_RFL=368,
    TM_GET_COMMS_TX_CFG_PWR_RFL=368,
    TC_GET_COMMS_RX_CFG=369,
    TM_GET_COMMS_RX_CFG=369,
    TC_GET_COMMS_RX_CFG_FREQ=370,
    TM_GET_COMMS_RX_CFG_FREQ=370,
    TC_GET_COMMS_RX_CFG_TYPE=371,
    TM_GET_COMMS_RX_CFG_TYPE=371,
    TC_GET_COMMS_RX_CFG_RATE=372,
    TM_GET_COMMS_RX_CFG_RATE=372,
    TC_GET_COMMS_RX_CFG_ROLLOFF=373,
    TM_GET_COMMS_RX_CFG_ROLLOFF=373,
    TC_GET_COMMS_RX_CFG_AFC=374,
    TM_GET_COMMS_RX_CFG_AFC=374,
    TC_GET_COMMS_RX_CFG_RS=375,
    TM_GET_COMMS_RX_CFG_RS=375,
    TC_GET_COMMS_RX_CFG_CC=376,
    TM_GET_COMMS_RX_CFG_CC=376,
    TC_GET_COMMS_RX_CFG_RAND=377,
    TM_GET_COMMS_RX_CFG_RAND=377,
    TC_GET_COMMS_RX_CFG_CRC=378,
    TM_GET_COMMS_RX_CFG_CRC=378,
    TC_GET_COMMS_RX_CFG_SIZE=379,
    TM_GET_COMMS_RX_CFG_SIZE=379,
    TC_GET_COMMS_RX_CFG_ID=380,
    TM_GET_COMMS_RX_CFG_ID=380,
    TC_GET_COMMS_RX_CFG_CRYPTO=381,
    TM_GET_COMMS_RX_CFG_CRYPTO=381,
    TC_GET_COMMS_RX_CFG_FRAMES=382,
    TM_GET_COMMS_RX_CFG_FRAMES=382,
    TC_GET_COMMS_RX_CFG_DETECTED=383,
    TM_GET_COMMS_RX_CFG_DETECTED=383,
    TC_GET_COMMS_RX_CFG_RSSI=384,
    TM_GET_COMMS_RX_CFG_RSSI=384,
    TC_GET_COMMS_RX_CFG_FREQERR=385,
    TM_GET_COMMS_RX_CFG_FREQERR=385,
    TC_GET_COMMS_RX_CFG_SYMERR=386,
    TM_GET_COMMS_RX_CFG_SYMERR=386,
    TC_GET_COMMS_RX_CFG_EBN0=387,
    TM_GET_COMMS_RX_CFG_EBN0=387,
    TC_GET_COMMS_RX_CFG_CARRIER_LOCK=388,
    TM_GET_COMMS_RX_CFG_CARRIER_LOCK=388,
    TC_GET_COMMS_RX_FRAME_LOCK=389,
    TM_GET_COMMS_RX_FRAME_LOCK=389,
    TC_GET_COMMS_SYS_CFG=390,
    TM_GET_COMMS_SYS_CFG=390,
    TC_GET_COMMS_BOOT_ACTIVATE=391,
    TM_GET_COMMS_BOOT_ACTIVATE=391,
    TC_GET_COMMS_BOOT_CFG=392,
    TM_GET_COMMS_BOOT_CFG=392,
    TC_GET_COMMS_GWDT_CFG=393,
    TM_GET_COMMS_GWDT_CFG=393,
    TC_GET_COMMS_CAN_CFG=394,
    TM_GET_COMMS_CAN_CFG=394,
    TC_GET_COMMS_UART_CFG=395,
    TM_GET_COMMS_UART_CFG=395,
    TC_GET_COMMS_CSP_CFG=396,
    TM_GET_COMMS_CSP_CFG=396,
    TC_GET_COMMS_NET_CFG=397,
    TM_GET_COMMS_NET_CFG=397,
    TC_GET_COMMS_TM_INFO=398,
    TM_GET_COMMS_TM_INFO=398,
    TC_GET_COMMS_RX_TM_INFO=399,
    TM_GET_COMMS_RX_TM_INFO=399,
    TC_GET_COMMS_TX_TM_INFO=400,
    TM_GET_COMMS_TX_TM_INFO=400,
    TC_COMMS_LOAD_CFG=401,
    TM_COMMS_LOAD_CFG=401,
    TC_COMMS_SAVE_CFG=402,
    TM_COMMS_SAVE_CFG=402,
    TC_COMMS_RESET_CFG=403,
    TM_COMMS_RESET_CFG=403,
    TC_COMMS_LOCK_CFG=404,
    TM_COMMS_LOCK_CFG=404,
    TC_COMMS_UNLOCK_CFG=405,
    TM_COMMS_UNLOCK_CFG=405,
    TC_COMMS_ERASE_CFG=406,
    TM_COMMS_ERASE_CFG=406,
    TC_COMMS_FW_CFG=407,
    TM_COMMS_FW_CFG=407,
    TC_COMMS_CUSTOM_TX=408,
    TM_COMMS_CUSTOM_TX=408,
    TC_COMMS_RESERVED=409,
    TM_COMMS_RESERVED=409,
    TC_COMMS_INITIAL_SYNC=410,
    TM_COMMS_INITIAL_SYNC=410,
    TC_COMMS_BEACON_TX=411,
    TM_COMMS_BEACON_TX=411,
    TC_SBAND_GET_TM_ALL=412,
    TM_SBAND_GET_TM_ALL=412,
    TC_SBAND_GET_TM_STORE=413,
    TM_SBAND_GET_TM_STORE=413,
    TC_GET_COMMS_CSP_TM_INFO=414,
    TM_GET_COMMS_CSP_TM_INFO=414,
    TC_GET_COMMS_ASM_CFG=415,
    TM_GET_COMMS_ASM_CFG=415,
    TC_GET_COMMS_BCH_CFG=416,
    TM_GET_COMMS_BCH_CFG=416,
    TC_GET_COMMS_BEACON_CFG=417,
    TM_GET_COMMS_BEACON_CFG=417,
    TC_COMMS_RX_SEL_CFG=418,
    TM_COMMS_RX_SEL_CFG=418,
    TC_COMMS_RX_SEL_DSB=419,
    TM_COMMS_RX_SEL_DSB=419,
    TC_SBAND_SET_IDLE_CFG = 450,
    TM_SBAND_SET_IDLE_CFG = 450,
    TC_SBAND_SET_RESET=451,
    TM_SBAND_SET_RESET=451,
    TC_SBAND_SET_START_RF_RCV=452,
    TM_SBAND_SET_START_RF_RCV=452,
    TC_SBAND_SET_RF_XMT_DATA=453,
    TM_SBAND_SET_RF_XMT_DATA=453,
    TC_SBAND_SET_DVBS2_CONF=454,
    TM_SBAND_SET_DVBS2_CONF=454,
    TC_SBAND_SET_IP_ADR_SAVE=455,
    TM_SBAND_SET_IP_ADR_SAVE=455,
    TC_SBAND_SET_IP_ADR=456,
    TM_SBAND_SET_IP_ADR=456,
    TC_SBAND_GET_IP_ADR=457,
    TM_SBAND_GET_IP_ADR=457,
    TC_SBAND_GET_FLAGS_CONF=458,
    TM_SBAND_GET_FLAGS_CONF=458,
    TC_SBAND_SET_FLAGS_CONF=459,
    TM_SBAND_SET_FLAGS_CONF=459,
    TC_SBAND_SET_VERSION=460,
    TM_SBAND_SET_VERSION=460,
    TC_SBAND_GET_VERSION=461,
    TM_SBAND_GET_VERSION=461,
    TC_SBAND_SET_DEVICE_CONF=462,
    TM_SBAND_SET_DEVICE_CONF=462,
    TC_SBAND_GET_DEVICE_CONF=463,
    TM_SBAND_GET_DEVICE_CONF=463,
    TC_SBAND_GET_FEATURE_SELECT=464,
    TM_SBAND_GET_FEATURE_SELECT=464,
    TC_SBAND_GET_COMMS_TM_INFO=465,
    TM_SBAND_GET_COMMS_TM_INFO=465,
    TC_SBAND_GET_XPA_INF=466,
    TM_SBAND_GET_XPA_INF=466,
    TC_SBAND_SET_PROD_KEY=467,
    TM_SBAND_SET_PROD_KEY=467,


    TC_GET_PROC_UTIL_INFO =500,
    TM_GET_PROC_UTIL_INFO =500,

    TC_GET_MEM_UTIL_INFO = 501,
    TM_GET_MEM_UTIL_INFO = 501,

    TC_GET_FTM_SAVECONTEXT_STS = 502,
    TM_GET_FTM_SAVECONTEXT_STS = 502,

    TC_OBC_MEM_DOWLOAD = 503,
    TM_OBC_MEM_DOWLOAD = 503,

    // Interface
    TC_SET_UART_INTF_PARM = 509,
    TM_SET_UART_INTF_PARM = 509,

    TC_GET_UART_INTF_PARM = 510,
    TM_GET_UART_INTF_PARM = 510,

    TC_SET_USB_INTF_PARM = 511,
    TM_SET_USB_INTF_PARM = 511,

    TC_GET_USB_INTF_PARM = 512,
    TM_GET_USB_INTF_PARM = 512,

    TC_SET_I2C_INTF_PARM = 513,
    TM_SET_I2C_INTF_PARM = 513,

    TC_GET_I2C_INTF_PARM = 514,
    TM_GET_I2C_INTF_PARM = 514,

    TC_SET_CAN_INTF_PARM = 515,
    TM_SET_CAN_INTF_PARM = 515,

    TC_GET_CAN_INTF_PARM = 516,
    TM_GET_CAN_INTF_PARM = 516,

    TC_SET_ETH_INTF_PARM = 517,
    TM_SET_ETH_INTF_PARM = 517,

    TC_GET_ETH_INTF_PARM = 518,
    TM_GET_ETH_INTF_PARM = 518,

    TC_SET_SPI_INTF_PARM = 519,
    TM_SET_SPI_INTF_PARM = 519,

    TC_GET_SPI_INTF_PARM = 520,
    TM_GET_SPI_INTF_PARM = 520,

    // Sensors
    TC_SET_TEMP_SNS_CFG = 524,
    TM_SET_TEMP_SNS_CFG = 524,

    TC_GET_TEMP_SNS_CFG = 525,
    TM_GET_TEMP_SNS_CFG = 525,

    TC_SET_IMU_CFG = 526,
    TM_SET_IMU_CFG = 526,

    TC_GET_IMU_CFG = 527,
    TM_GET_IMU_CFG = 527,

    TC_SET_THRUST_CTRL_CFG = 528,
    TM_SET_THRUST_CTRL_CFG = 528,

    TC_GET_THRUST_CTRL_CFG = 529,
    TM_GET_THRUST_CTRL_CFG = 529,

    TC_SET_GPIO_EXP_CFG = 530,
    TM_SET_GPIO_EXP_CFG = 530,

    TC_GET_GPIO_EXP_CFG = 531,
    TM_GET_GPIO_EXP_CFG = 531,

    TC_SET_DIG_THERM_CFG = 532,
    TM_SET_DIG_THERM_CFG = 532,

    TC_GET_DIG_THERM_CFG = 533,
    TM_GET_DIG_THERM_CFG = 533,

    TC_SET_PWR_MON_CFG = 534,
    TM_SET_PWR_MON_CFG = 534,

    TC_GET_PWR_MON_CFG = 535,
    TM_GET_PWR_MON_CFG = 535,

    TC_SET_VOLT_CTRL_MON_CFG = 536,
    TM_SET_VOLT_CTRL_MON_CFG = 536,

    TC_GET_VOLT_CTRL_MON_CFG = 537,
    TM_GET_VOLT_CTRL_MON_CFG = 537,

    TC_SET_PWR_SEQ_MON_CFG =538,
    TM_SET_PWR_SEQ_MON_CFG =538,

    TC_GET_PWR_SEQ_MON_CFG = 539,
    TM_GET_PWR_SEQ_MON_CFG = 539,

    TC_SET_DATA_LOG_CFG = 540,
    TM_SET_DATA_LOG_CFG = 540,

    TC_GET_DATA_LOG_CFG =541,
    TM_GET_DATA_LOG_CFG =541,

    // Payload Server Power Controls
    TC_PS_PWR_OFF = 543,
    TM_PS_PWR_OFF = 543,

#if 0
    TC_PS_PWR_ON = 542,
    TM_PS_PWR_ON = 542,


    TC_PLD_HW_PWR_ON = 544,
    TM_PLD_HW_PWR_ON = 544,

    TC_PLD_HW_PWR_OFF = 545,
    TM_PLD_HW_PWR_OFF = 545,
#endif
    TC_PLD_VM_PWR_ON = 545,
    TM_PLD_VM_PWR_ON = 545,

    TC_PLD_VM_PWR_OFF = 546,
    TM_PLD_VM_PWR_OFF = 546,

    TC_CONOPS_SCH_LUT_CFG = 547,
    TM_CONOPS_SCH_LUT_CFG = 547,

    TC_CONOPS_SCH_LUT_RUN_CTRL= 548,
    TM_CONOPS_SCH_LUT_RUN_CTRL= 548,

    TC_CONOPS_SCH_STS_INFO = 549,
    TM_CONOPS_SCH_STS_INFO = 549,

    TC_SET_CUR_TIME = 550,
    TM_SET_CUR_TIME = 550,

    TC_OBC_SOFT_RESET =551,
    TM_OBC_SOFT_RESET =551,

    TC_OTSU_GET_VERSION = 552,
    TM_OTSU_GET_VERSION = 552,




    TC_OBC_IPCC_TEST = 553,
    TM_OBC_IPCC_TEST = 553,

    TC_MEMD = 554,
    TM_MEMD = 554,
#if 0
    TC_PWR_CTRL_SBAND = 555,
    TM_PWR_CTRL_SBAND = 555,

    TC_PWR_CTRL_XBAND = 556,
    TM_PWR_CTRL_XBAND = 556,

    TC_PWR_CTRL_ADCS = 557,
    TM_PWR_CTRL_ADCS = 557,
#endif

    TC_GET_SENSOR_DATA = 560,
    TM_GET_SENSOR_DATA = 560,

    TC_SAT_BTRY_VOLT_RAN=565,
    TM_SAT_BTRY_VOLT_RAN=565,

    TC_XBAND = 566,
    TM_XBAND = 566,

    TC_PS_STAGED_TC = 561,
    TM_PS_STAGED_TC = 561,

    TC_LOG_THREAD_BUF_DOWNLOAD = 562,
    TM_LOG_THREAD_BUF_DOWNLOAD = 562,

    TC_FTDB   = 563,
    TM_FTDR    = 564,

    TC_DEFERRED_STRG = 565,
    TM_DEFERRED_STRG = 565,

    TC_EXTRNL_MEM_TEST = 570,
    TM_EXTRNL_MEM_TEST = 570,

    TC_SNS_THRSLD_STS = 571,
    TM_SNS_THRSLD_STS = 571,

    TC_GET_OBC_SW_STS = 575,
    TM_GET_OBC_SW_STS = 575,

    TC_NVM = 576,
    TM_NVM = 576,

    TC_TM_MNGR_GS_CONTACT = 577,
    TM_MNGR_GS_CONTACT = 577,

    TC_SET_MIN_REBOOT_TIME=580,
    TM_SET_MIN_REBOOT_TIME=580,

    TC_GET_CUR_TIME=581,
    TM_GET_CUR_TIME=581,

    TC_TCTM_DEQUEUE=582,
    TM_TCTM_DEQUEUE=582,

    TC_GET_SYS_UPTIME=583,
    TM_GET_SYS_UPTIME=583,

    TC_SET_RADIO_MODULE_ID=584,
    TM_SET_RADIO_MODULE_ID=584,

    TC_LOG_DOWNLOAD_BLOCKS=585,
    TM_LOG_DOWNLOAD_BLOCKS=585,

    TC_LOG_LEVEL_FILTER_CONFIG=586,
    TM_LOG_LEVEL_FILTER_CONFIG=586,

    TC_READ_LOG_INFO=587,
    TM_READ_LOG_INFO=587,

    TC_LOG_DOWNLOAD_BACKUP_BLOCKS=588,
    TM_LOG_DOWNLOAD_BACKUP_BLOCKS=588,


    TC_ERR_HANDLER=590,
    TM_ERR_HANDLER=590,

    TC_ERR_HANDLER_READ_FAULTS=590,
    TM_ERR_HANDLER_READ_FAULTS=590,

    TC_ERR_HANDER_READ_GROUP_ERROR_STATUS=591,
    TM_ERR_HANDER_READ_GROUP_ERROR_STATUS=591,

    TC_ERR_HANDLER_GET_ERROR_HISTORY=592,
    TM_ERR_HANDLER_GET_ERROR_HISTORY=592,

    TC_ERR_HANDLER_RUN_BIST=593,
    TM_ERR_HANDLER_RUN_BIST=593,

    TC_GET_TCTM_DBG_INFO = 594,
    TM_GET_TCTM_DBG_INFO = 594,

    TC_TEST_GPIO=900,
    TM_TEST_GPIO=900,

    TC_TEST_SENSOR=901,
    TM_TEST_SENSOR=901,

    TC_TEST_GPIO_EXP =902,
    TM_TEST_GPIO_EXP =902,

    TC_SPI_UART_CONV_TEST =903,
    TM_SPI_UART_CONV_TEST =903,

    TC_ES_BRD_SELECT = 904,
    TM_ES_BRD_SELECT = 904,

    TC_PS_BRD_SELECT = 905,
    TM_PS_BRD_SELECT = 905,

    TC_ADC_SELECT = 906,
    TM_ADC_SELECT = 906,

	TC_IO_BRD_SELECT = 907,
	TM_IO_BRD_SELECT = 907,

	TC_PS_SSD_BRD_SELECT = 908,
	TM_PS_SSD_BRD_SELECT = 908,

	TC_ES_SSD_BRD_SELECT = 909,
	TM_ES_SSD_BRD_SELECT = 909,

	TC_AUTO_SENSOR_TEST = 910,
	TM_AUTO_SENSOR_TEST = 910,

	TC_I2C_ADXL345_TEST = 911,
	TM_I2C_ADXL345_TEST = 911,

	TC_UART_TX_RX_TEST = 912,
	TM_UART_TX_RX_TEST = 912,

	TC_CAN_TX_RX_TEST = 913,
	TM_CAN_TX_RX_TEST = 913,

	TC_SPI_ADXL345_TEST = 914,
	TM_SPI_ADXL345_TEST = 914,

	TC_GPS_GET_3D_POSITION_VELOCITY = 950,
    TM_GPS_GET_3D_POSITION_VELOCITY = 950, // Cartesian position and velocity

    TC_GPS_COMPUTE_TLE = 951,
    TM_GPS_COMPUTE_TLE = 951, // Cartesian position and velocity

    TC_GPS_GET_LOCATION_INFO = 952,
    TM_GPS_GET_LOCATION_INFO = 952,

    TC_GPS_GET_NMEA_GPGGA=953,
    TM_GPS_GET_NMEA_GPGGA=953, //gga

    TC_GPS_GET_NMEA_GPRMC=954,
    TM_GPS_GET_NMEA_GPRMC=954, //rmc

    TC_GPS_GET_DATE_TIME=955,
    TM_GPS_GET_DATE_TIME=955, //zda

    TC_GPS_SET_TIME_SYNC_PRDCTY = 956,
    TM_GPS_SET_TIME_SYNC_PRDCTY = 956,

    TC_GPS_GET_TIME_SYNC_PRDCTY = 957,
    TM_GPS_GET_TIME_SYNC_PRDCTY = 957,

    TC_SYNC_GPS_TIME = 958,
    TM_SYNC_GPS_TIME = 958,

    TC_GPS_GET_GPS_TIME_INFO = 959,
    TM_GPS_GET_GPS_TIME_INFO = 959,

    TC_OBC_GET_CPU_STATS=603,
    TM_OBC_GET_CPU_STATS=603,

    TC_GET_PS_TEMP=610,
    TM_GET_PS_TEMP=610,

    TC_GET_PS_TIME=611,
    TM_GET_PS_TIME=611,

    TC_GET_MCU_CHIP_INFO=612,
    TM_GET_MCU_CHIP_INFO=612,

    TC_GET_MCU_EXT_MEM_INFO=613,
    TM_GET_MCU_EXT_MEM_INFO=613,


    TC_GET_MCU_EXT_PHERIPHARL_INFO=615,
    TM_GET_MCU_EXT_PHERIPHARL_INFO=615,

    TC_GET_MCU_RST_INFO=616,
    TM_GET_MCU_RST_INFO=616,

    TC_GET_MCU_INT_MEM_INFO=617,
    TM_GET_MCU_INT_MEM_INFO=617,

    TC_GET_MCU_INT_PHERIPHARL_INFO=618,
    TM_GET_MCU_INT_PHERIPHARL_INFO=618,

    TC_SET_CONTROL_FLAG_TM_BUFFER=619,
    TM_SET_CONTROL_FLAG_TM_BUFFER=619,

    TC_COMMS_UHF_GET_TM_INFO=800,
    TM_COMMS_UHF_GET_TM_INFO=800,
    TC_COMMS_UHF_SET_CFG=801,
    TM_COMMS_UHF_SET_CFG=801,
    TC_COMMS_UHF_SET_TX_CFG=802,
    TM_COMMS_UHF_SET_TX_CFG=802,
    TC_COMMS_UHF_GET_TX_CFG=803,
    TM_COMMS_UHF_GET_TX_CFG=803,
    TC_COMMS_UHF_SET_RX_CFG=804,
    TM_COMMS_UHF_SET_RX_CFG=804,
    TC_COMMS_UHF_GET_RX_CFG=805,
    TM_COMMS_UHF_GET_RX_CFG=805,
    TC_COMMS_UHF_SET_TX_PKT_CFG=806,
    TM_COMMS_UHF_SET_TX_PKT_CFG=806,
    TC_COMMS_UHF_GET_TX_PKT_CFG=807,
    TM_COMMS_UHF_GET_TX_PKT_CFG=807,
    TC_COMMS_UHF_SET_RX_PKT_CFG=808,
    TM_COMMS_UHF_SET_RX_PKT_CFG=808,
    TC_COMMS_UHF_GET_RX_PKT_CFG=809,
    TM_COMMS_UHF_GET_RX_PKT_CFG=809,
    TC_COMMS_UHF_SET_PWR_CFG=810,
    TM_COMMS_UHF_SET_PWR_CFG=810,
    TC_COMMS_UHF_GET_PWR_CFG=811,
    TM_COMMS_UHF_GET_PWR_CFG=811,
    TC_COMMS_UHF_BEACON_CFG=812,
    TM_COMMS_UHF_BEACON_CFG=812,
    TC_COMMS_UHF_BEACON_TX_ST=813,
    TM_COMMS_UHF_BEACON_TX_ST=813,
    TC_COMMS_UHF_BEACON_TX_STOP=814,
    TM_COMMS_UHF_BEACON_TX_STOP=814,
    TC_COMMS_UHF_BEACON_DATA=815,
    TM_COMMS_UHF_BEACON_DATA=815,
    TC_COMMS_UHF_FW_CFG=816,
    TM_COMMS_UHF_FW_CFG=816,
    TC_COMMS_UHF_FW_CFG_ACTIVATE=817,
    TM_COMMS_UHF_FW_CFG_ACTIVATE=817,
    TC_COMMS_UHF_CSP_TM_INFO=818,
    TM_COMMS_UHF_CSP_TM_INFO=818,
    TC_COMMS_UHF_GET_TM_STORE=819,
    TM_COMMS_UHF_GET_TM_STORE=819,
    TC_COMMS_UHF_INITIAL_SYNC=820,
    TM_COMMS_UHF_INITIAL_SYNC=820,
    TC_COMMS_UHF_GET_FW_STS=821,
    TM_COMMS_UHF_GET_FW_STS=821,

    TC_SET_COMMS_TM_DLREQ=620,
    TM_SET_COMMS_TM_DLREQ=620,
    TC_SET_SDR_CFG=850,
    TM_SET_SDR_CFG=850,
    TC_GET_SDR_CFG=851,
    TM_GET_SDR_CFG=851,
    TC_SET_SDR_STS=852,
    TM_SET_SDR_STS=852,
    TC_GET_SDR_STS=853,
    TM_GET_SDR_STS=853,
    TC_SET_SDR_TMR_CFG=854,
    TM_SET_SDR_TMR_CFG=854,
    TC_GET_SDR_TMR_CFG=855,
    TM_GET_SDR_TMR_CFG=855,
    TC_SET_SDR_RX_RSSI_CFG=856,
    TM_SET_SDR_RX_RSSI_CFG=856,
    TC_GET_SDR_RX_RSSI_CFG=857,
    TM_GET_SDR_RX_RSSI_CFG=857,
    TC_SET_SDR_TM_CFG=858,
    TM_SET_SDR_TM_CFG=858,
    TC_GET_SDR_TM_CFG=859,
    TM_GET_SDR_TM_CFG=859,
    TC_SET_SDR_SENS_CFG=860,
    TM_SET_SDR_SENS_CFG=860,
    TC_GET_SDR_SENS_CFG=861,
    TM_GET_SDR_SENS_CFG=861,
    TC_SET_SDR_OVER_RULE_CFG=862,
    TM_SET_SDR_OVER_RULE_CFG=862,
    TC_GET_SDR_OVER_RULE_CFG=863,
    TM_GET_SDR_OVER_RULE_CFG=863,

    TC_SET_SDR_SCH_BEACON_CFG=864,
    TM_SET_SDR_SCH_BEACON_CFG=864,
    TC_GET_SDR_SCH_BEACON_CFG=865,
    TM_GET_SDR_SCH_BEACON_CFG=865,

    TC_GET_HEALTH_METRICS = 621,
    TM_GET_HEALTH_METRICS = 621,

    TC_CHNGE_QUEUE_PRIORITY=622,
    TM_CHNGE_QUEUE_PRIORITY=622,

    TC_CHNGE_MODULE_PRIORITY=623,
    TM_CHNGE_MODULE_PRIORITY=623,

    TC_PRINT_MEM_LEAK=624,
    TM_PRINT_MEM_LEAK=624,


    TC_OTSU_CURRENT_STATUS = 626,
    TM_OTSU_CURRENT_STATUS = 626,

    TC_OTSU_SEND_FW_UPDATE_BOOT_CFG = 627,
    TM_OTSU_SEND_FW_UPDATE_BOOT_CFG = 627,

    TC_OTSU_INTEGERATION_TEST_CMD = 628,
    TM_OTSU_INTEGERATION_TEST_CMD = 628,

    TC_OTSU_GET_FW_UPDATE_STS = 629,
    TM_OTSU_GET_FW_UPDATE_STS = 629,

    TC_OTSU_GET_BOOT_CFG_INFO = 630,
    TM_OTSU_GET_BOOT_CFG_INFO = 630,



    TC_OTSU_READ_GSCONATCT_WAIT_TIME = 631,
    TM_OTSU_READ_GSCONATCT_WAIT_TIME = 631,


    TC_OTSU_SET_GSCONATCT_WAIT_TIME = 632,
    TM_OTSU_SET_GSCONATCT_WAIT_TIME = 632,

    TC_OTSU_READ_BOOTABLE_BLT1 = 633,
    TM_OTSU_READ_BOOTABLE_BLT1 = 633,

    TC_OTSU_READ_BOOTABLE_BLT2 = 634,
    TM_OTSU_READ_BOOTABLE_BLT2 = 634,

    TC_OTSU_GET_NVM_FW_VERSION = 635,
    TM_OTSU_GET_NVM_FW_VERSION = 635,

    TC_OTSU_NOTIFICATION = 636,
    TM_OTSU_NOTIFICATION = 636,

    TC_HM_TEST_CASE_REQ = 4000,
    TM_HM_TEST_CASE_REQ = 4000,

    TC_TM_MAX_ID = 5000,
    
        TC_THRUSTER_SET_MODE = 1000,
        TM_THRUSTER_SET_MODE = 1000,

        TC_THRUSTER_GET_MODE = 1001,
        TM_THRUSTER_GET_MODE = 1001,

        TC_THRUSTER_SET_FIRING_DURATION = 1002,
        TM_THRUSTER_SET_FIRING_DURATION = 1002,

        TC_THRUSTER_GET_FIRING_DURATION = 1003,
        TM_THRUSTER_GET_FIRING_DURATION = 1003,

        TC_THRUSTER_GET_INPUT_POWER_CONSMP = 1004,
        TM_THRUSTER_GET_INPUT_POWER_CONSMP = 1004,

        TC_THRUSTER_SET_RADIATOR_TEMP_LIMIT = 1005,
        TM_THRUSTER_SET_RADIATOR_TEMP_LIMIT = 1005,

        TC_THRUSTER_GET_RADIATOR_TEMP_LIMIT = 1006,
        TM_THRUSTER_GET_RADIATOR_TEMP_LIMIT = 1006,

        TC_THRUSTER_SET_TANK_PRESSURE_LIMIT = 1007,
        TM_THRUSTER_SET_TANK_PRESSURE_LIMIT = 1007,

        TC_THRUSTER_GET_TANK_PRESSURE_LIMIT = 1008,
        TM_THRUSTER_GET_TANK_PRESSURE_LIMIT = 1008,

        TC_THRUSTER_GET_REMAINING_PROPELLANT = 1009,
        TM_THRUSTER_GET_REMAINING_PROPELLANT = 1009,

        TC_THRUSTER_GET_ONBOARD_TEMPERATURE = 1010,
        TM_THRUSTER_GET_ONBOARD_TEMPERATURE = 1010,
        
           /*
           TC_THRUSTER_GET_ACTIVE_STATUS = 1011,
           TM_THRUSTER_GET_ACTIVE_STATUS = 1011,
           */

}tc_tm_id_e;

/**
 * @brief IPC/ITC message ID enumeration
 */
typedef enum
{
	IPC_MIN_ID =TC_TM_MAX_ID,
    OBC_EPS_DEV_STS_RSP = IPC_MIN_ID + 1,
    OBC_EPS_HEALTH_CHECK_REQ,
    OBC_SBAND_INIT_REQ,  /* INIT refers to resume state */
    OBC_SBAND_DEINIT_REQ,/* DEINIT refers to suspend state */
    OBC_SBAND_HEALTH_CHECK_REQ,
    OBC_SBAND_DL_HEALTH_REQ,
    OBC_XBAND_INIT_REQ,
    OBC_XBAND_DEINIT_REQ,
    OBC_XBAND_IPCC_RCV_RSP,
    OBC_UHF_INIT_REQ,  /* INIT refers to resume state */
    OBC_UHF_DEINIT_REQ,/* DEINIT refers to suspend state */
    OBC_UHF_HEALTH_CHECK_REQ,
    OBC_ADCS_INIT_REQ,
    OBC_ADCS_DEINIT_REQ,
    OBC_ADCS_TIME_SYNC_REQ,
    OBC_ADCS_GPS_INIT_IND,
    OBC_ADCS_GPS_DEINIT_IND,
    OBC_ADCS_THRUST_INIT_IND,
    OBC_ADCS_THRUST_DEINIT_IND,
    OBC_ADCS_HEALTH_CHECK_REQ,
    OBC_ADCS_PERIODIC_CB,
    OBC_PLD_SERVER_INIT_REQ,
    OBC_PLD_SERVER_DEINIT_REQ,
    OBC_OTSU_INIT_REQ,
    OBC_OTSU_DEINIT_REQ,
    OBC_OTSU_SHUTDOWN_RSP,
    OBC_FTP_INIT_REQ,
    OBC_FTP_DEINIT_REQ,
    OBC_TC_TM_INIT_REQ,
    OBC_TC_TM_DEINIT_REQ,
    OBC_TC_TM_BUFFER_REQ,
    OBC_TC_TM_BUFFER_RSP,
    OBC_TC_TM_ENQUEUE_REQ,
    OBC_TC_TM_ENQUEUE_RSP,
    OBC_TC_TM_ENQUEUE_FRONT_REQ,
    OBC_TC_TM_ENQUEUE_FRONT_RSP,
    OBC_TC_TM_DL_BUFFER_REQ,
    OBC_TC_TM_DL_BUFFER_RSP,
    OBC_TC_TM_FLUSH_QUEUE_REQ,
    OBC_TC_TM_FLUSH_QUEUE_RSP,
    OBC_TC_TM_QUEUE_RESIZE_REQ,
    OBC_TC_TM_QUEUE_RESIZE_RSP,
    OBC_TC_TM_CHNG_QUEUE_PRIORITY_REQ,
    OBC_TC_TM_CHNG_QUEUE_PRIORITY_RSP,
    OBC_TC_TM_DEL_QUEUE_REQ,
    OBC_TC_TM_DEL_QUEUE_RSP,
    OBC_TC_TM_CHNG_SUB_MOD_PRIORITY_REQ,
    OBC_TC_TM_CHNG_SUB_MOD_PRIORITY_RSP,
    OBC_HM_TEST_CASE_RSP,
    OBC_SCH_INIT_REQ,
    OBC_SCH_DEINIT_REQ,
    OBC_SCH_INIT_SYNC_TIME_REQ,
    OBC_SCH_STOP_SYNC_TIME_REQ,
    OBC_ZES_INIT_REQ,
    OBC_ZES_DEINIT_REQ,
    OBC_SEN_INIT_REQ,
    OBC_SEN_DEINIT_REQ,
    OBC_SEN_HEALTH_CHECK_REQ,
    OBC_SDR_APP_MH_RSP,
    OBC_SDR_APP_BAT_CH_IND,
    OBC_TMR_EXPRY_EVNT,

    EPS_OBC_DEV_STS_IND = IPC_MIN_ID + 200,
    EPS_OBC_BAT_STS_IND,
    EPS_SDR_APP_MH_RSP,
	EPS_SET_CHNL_STATE,
	EPS_FW_UPT_TC,

	ADCS_OBC_INIT_RSP = IPC_MIN_ID + 400,
    ADCS_OBC_DEINIT_RSP,
    ADCS_OBC_ERROR_IND,
    ADCS_SDR_APP_MH_RSP,
    ADCS_SCH_COMMAND,
    ADCS_SCH_FALLBACK,

	PLD_SERVER_OBC_INIT_RSP = IPC_MIN_ID + 600,
    PLD_SERVER_OBC_DEINIT_RSP,
    PLD_SERVER_OBC_ERROR_IND,

	OTSU_OBC_INIT_RSP = IPC_MIN_ID + 800,
    OTSU_OBC_DEINIT_RSP,
    OTSU_OBC_ERROR_IND,
    OTSU_OBC_SHUTDOWN_REQ,
    OTSU_SBAND_FW_IND,
    OTSU_SBAND_SYNC_REQ,
    OTSU_UHF_FW_IND,
    OTSU_UHF_SYNC_REQ,

	TC_TM_OBC_INIT_RSP = IPC_MIN_ID + 1000,
    TC_TM_OBC_DEINIT_RSP,
    TC_TM_OBC_ERROR_IND,
    TC_TM_SBAND_ST_RSP,
    TC_TM_SBAND_STOP_RSP,
    TC_TM_UHF_ST_RSP,
    TC_TM_UHF_STOP_RSP,
	TC_TM_STORAGE_TM_DLREQ,
	TM_STORAGE_FLUSH_REQ,

	SCH_OBC_INIT_RSP = IPC_MIN_ID + 1200,
    SCH_OBC_DEINIT_RSP,
    SCH_OBC_ERROR_IND,
    SCH_OBC_INIT_SYNC_TIME_RSP,
    SCH_SBAND_GS_ST_IND,
    SCH_SBAND_GS_STOP_IND,
    SCH_UHF_GS_ST_IND,
    SCH_UHF_GS_STOP_IND,
	TC_SCH_LUT_TC_TRIG,
	TC_SCH_PS_TRIG,

	SEN_OBC_INIT_RSP = IPC_MIN_ID + 1400,
    SEN_OBC_DEINIT_RSP,
    SEN_SDR_APP_MH_RSP,

	GPS_LOC_NTF_TMR_EXPRY = IPC_MIN_ID + 1600,
    GPS_TLE_NTF_TMR_EXPRY,
    GPS_TIME_SYNC_TMR_EXPRY,
    GPS_SDR_APP_MH_RSP,
    GPS_COMPUTE_TLE_RSP,

    OTSU_INIT_STATE = IPC_MIN_ID + 1800,
    OTSU_TCTM_SERVICE,
    OTSU_FW_DWNLD,
    OTSU_INTEG_TEST,
    OTSU_GS_SYNC_RCV,
    OTSU_GS_SYNC_TIMEOUT_SCH,
    OTSU_GS_SOFT_RESET_RQST,
    OTSU_GS_CONTACT_TIMER_CALBACK_SERVICE,
	OTSU_SCHBOOT_TIMEOUT_SCH,
    OTSU_START_SHUTDOWN_PROC,
    OTSU_OBC_HANDSHAKE_DONE,
    OTSU_INITIATE_FW_UPDATE,
    OTSU_FALLBACK_CORRUPT_TEST,
    OTSU_SCHBOOT_TIMEOUT_BYOTSU,
    OTSU_INVALID_STATE,

	ERR_HANDLER_ITC_MSG_ERROR = IPC_MIN_ID + 2000,
    ERR_HANDLER_ITC_MSG_ERRCLR,
    ERR_HANDLER_ITC_MSG_TCTM,
    ERR_HANDLER_ITC_MSG_PERIODIC_FAULT,
	ERR_HDLR_TMR_EXPRY_EVNT,

    SDR_APP_OBC_MH_REQ = IPC_MIN_ID + 2200,
    SDR_APP_EPS_MH_REQ,
    SDR_APP_ADCS_MH_REQ,
    SDR_APP_SEN_MH_REQ,
    SDR_APP_GPS_MH_REQ,
    SDR_APP_UHF_MH_REQ,
	SDR_APP_UHF_BEACON_DATA_IND,
	SDR_APP_UHF_FW_CFG_START_REQ,
	SDR_APP_UHF_FW_CFG_STOP_REQ,
    SDR_APP_SDR_CTRL_SDR_CFG_REQ,
    SDR_APP_SDR_CTRL_MODE_CFG_REQ,
    SDR_APP_SDR_CTRL_TMR_CFG_REQ,
    SDR_APP_SDR_CTRL_RSSI_CFG_REQ,
    SDR_APP_SDR_CTRL_TM_CFG_REQ,
    SDR_APP_SDR_CTRL_SENS_CFG_REQ,
    SDR_APP_SBAND_MH_REQ,
	SDR_APP_SBAND_BEACON_DATA_IND,
	SDR_CTRL_SDR_APP_SDR_CFG_RSP,
    SDR_CTRL_SDR_APP_MODE_CFG_RSP,
    SDR_CTRL_SDR_APP_TMR_CFG_RSP,
    SDR_CTRL_SDR_APP_RSSI_CFG_RSP,
    SDR_CTRL_SDR_APP_TM_CFG_RSP,
    SDR_CTRL_SDR_APP_SENS_CFG_RSP,
    SDR_RADIO_ID_OVR_RULE_CFG,
    SDR_APP_SDR_CTRL_GPASS_CFG,
    SDR_CTRL_SDR_APP_GPASS_CFG_RSP,

	SBAND_SDR_APP_MH_RSP = IPC_MIN_ID + 2400,
	SBAND_SDR_APP_BAT_STS_REQ,
	SBAND_OBC_INIT_RSP,
    SBAND_OBC_DEINIT_RSP,
    SBAND_OBC_ERROR_IND,
    SBAND_OBC_GROUND_SYNC_IND,
    SBAND_OBC_HEALTH_CHECK_REQ,
    SBAND_TC_TM_ST_REQ,
    SBAND_TC_TM_STOP_REQ,
    SBAND_TC_TM_TX_CMPLT,
    SBAND_OTSU_PING_CMPLT,
    SBAND_INIT_SYNC_TIMER_EXP,
    SBAND_IQS_TX_WIN_OFF,
    SBAND_REINIT_TMR_EXP,
    SBAND_TM_PERIODIC_READ,
    SBAND_RX_ON_TIMER_EXP,
    SBAND_SDR_APP_BEACON_DATA_REQ,
    SBAND_FW_CFG_REQ,
    SBAND_FW_CFG_START_REQ,
    SBAND_FW_CFG_STOP_REQ,
    SBAND_FW_CFG_UPD_IND,
    SBAND_FW_CFG_END_IND,
    SBAND_UNKNOWN_TC_TM_HDLR,
    SBAND_TX_WIN_ON_REQ,
	SBAND_TX_PERIODIC_TIMER_EXP,
	SBAND_TX_PERIODIC_BEACON_TMR_EXP,
	SBAND_REP_TMR_EXP,
    SBAND_RESET_CFG,
    SBAND_PROD_KEY_CFG,
    SBAND_GET_FEATURE_SELECT,
    SBAND_GET_DEVICE_CFG,
    SBAND_SET_RESET,
	SBAND_SET_DEVICE_CFG,
    SBAND_SET_DEVICE_CFG_RX_ON,
    SBAND_SET_DEVICE_CFG_TX_ON,
    SBAND_SET_DEVICE_CFG_RX_TX_ON,
    SBAND_SET_RX_RCV_CFG,
    SBAND_SET_IP_ADR_CFG,
    SBAND_CMD_TMR_EXP,
    SBAND_CFG_END_IND,

	UHF_SDR_APP_MH_RSP = IPC_MIN_ID + 2600,
	UHF_SDR_APP_BAT_STS_REQ,
	UHF_OBC_INIT_RSP,
    UHF_OBC_DEINIT_RSP,
    UHF_OBC_ERROR_IND,
    UHF_OBC_GROUND_SYNC_IND,
    UHF_OBC_HEALTH_CHECK_REQ,
    UHF_TC_TM_ST_REQ,
    UHF_TC_TM_STOP_REQ,
    UHF_TC_TM_TX_CMPLT,
    UHF_OTSU_PING_CMPLT,
    UHF_TX_PERIODIC_BEACON_TMR_EXP,
	UHF_TX_PERIODIC_TIMER_EXP,
	UHF_UART_CMD_RSP,
    UHF_UART_CMD_RSP_TIMEOUT,
    UHF_TM_PERIODIC_READ,
    UHF_RX_SHORT_TIMER_EXP,
    UHF_RX_LONG_TIMER_EXP,
    UHF_SDR_APP_BEACON_DATA_REQ,
    UHF_FW_CFG_START_REQ,
    UHF_FW_CFG_STOP_REQ,
    UHF_FW_CFG_UPD_IND,
    UHF_FW_CFG_END_IND,
    UHF_INIT_SYNC_TIMER_EXP,
	UHF_REP_TMR_EXP,
    UHF_CMD_TMR_EXP,

	XBAND_OBC_INIT_RSP = IPC_MIN_ID + 2800,
    XBAND_OBC_DEINIT_RSP,
    XBAND_OBC_ERROR_IND,
    XBAND_OBC_IPCC_SEND_REQ,

}e_ipc_msg_id;

#endif /* INCLUDES_EXO_TCTM_IPC_H_ */
