diff --git a/fsw/platform_inc/to_lab_msgids.h b/fsw/platform_inc/to_lab_msgids.h index 120201f..8e05323 100644 --- a/fsw/platform_inc/to_lab_msgids.h +++ b/fsw/platform_inc/to_lab_msgids.h @@ -30,11 +30,17 @@ #define _to_lab_msgids_h_ -#define TO_LAB_CMD_MID 0x1880 -#define TO_LAB_SEND_HK_MID 0x1881 +#define TO_LAB_CMD_MID_VALUE 0x1880 +#define TO_LAB_SEND_HK_MID_VALUE 0x1881 +#define TO_LAB_HK_TLM_MID_VALUE 0x0880 +#define TO_LAB_DATA_TYPES_MID_VALUE 0x0881 + +#define TO_LAB_CMD_MID CFE_SB_MSGID_LITERAL(TO_LAB_CMD_MID_VALUE ) +#define TO_LAB_SEND_HK_MID CFE_SB_MSGID_LITERAL(TO_LAB_SEND_HK_MID_VALUE ) +#define TO_LAB_HK_TLM_MID CFE_SB_MSGID_LITERAL(TO_LAB_HK_TLM_MID_VALUE ) +#define TO_LAB_DATA_TYPES_MID CFE_SB_MSGID_LITERAL(TO_LAB_DATA_TYPES_MID_VALUE) + -#define TO_LAB_HK_TLM_MID 0x0880 -#define TO_LAB_DATA_TYPES_MID 0x0881 #endif /* _to_lab_msgids_h_ */ diff --git a/fsw/platform_inc/to_lab_sub_table.h b/fsw/platform_inc/to_lab_sub_table.h index 7e77eb4..5175ad9 100644 --- a/fsw/platform_inc/to_lab_sub_table.h +++ b/fsw/platform_inc/to_lab_sub_table.h @@ -49,11 +49,13 @@ static TO_subscription_t TO_SubTable[] = { +#ifdef jphfix /* CFS App Subscriptions */ - {TO_LAB_HK_TLM_MID, {0,0}, 4}, - {TO_LAB_DATA_TYPES_MID, {0,0}, 4}, - {CI_LAB_HK_TLM_MID, {0,0}, 4}, - {SAMPLE_APP_HK_TLM_MID, {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(TO_LAB_HK_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(TO_LAB_DATA_TYPES_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CI_LAB_HK_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(SAMPLE_APP_HK_TLM_MID_VALUE), {0,0}, 4}, +#endif #if 0 /* Add these if needed */ @@ -65,18 +67,18 @@ static TO_subscription_t TO_SubTable[] = #endif /* cFE Core subscriptions */ - {CFE_ES_HK_TLM_MID, {0,0}, 4}, - {CFE_EVS_HK_TLM_MID, {0,0}, 4}, - {CFE_SB_HK_TLM_MID, {0,0}, 4}, - {CFE_TBL_HK_TLM_MID, {0,0}, 4}, - {CFE_TIME_HK_TLM_MID, {0,0}, 4}, - {CFE_TIME_DIAG_TLM_MID, {0,0}, 4}, - {CFE_SB_STATS_TLM_MID, {0,0}, 4}, - {CFE_TBL_REG_TLM_MID, {0,0}, 4}, - {CFE_EVS_LONG_EVENT_MSG_MID, {0,0}, 32}, - {CFE_ES_SHELL_TLM_MID, {0,0}, 32}, - {CFE_ES_APP_TLM_MID, {0,0}, 4}, - {CFE_ES_MEMSTATS_TLM_MID, {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_ES_HK_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_EVS_HK_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_SB_HK_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_TBL_HK_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_TIME_HK_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_TIME_DIAG_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_SB_STATS_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_TBL_REG_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_EVS_LONG_EVENT_MSG_MID_VALUE), {0,0}, 32}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_ES_SHELL_TLM_MID_VALUE), {0,0}, 32}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_ES_APP_TLM_MID_VALUE), {0,0}, 4}, + {CFE_SB_MSGID_WRAP_VALUE(CFE_ES_MEMSTATS_TLM_MID_VALUE), {0,0}, 4}, {TO_UNUSED, {0,0}, 0}, {TO_UNUSED, {0,0}, 0}, diff --git a/fsw/src/to_lab_app.c b/fsw/src/to_lab_app.c index 0dc644a..6e50ec6 100644 --- a/fsw/src/to_lab_app.c +++ b/fsw/src/to_lab_app.c @@ -214,7 +214,7 @@ void TO_LAB_init(void) /* Subscriptions for TLM pipe*/ for (i=0; (i < (sizeof(TO_SubTable)/sizeof(TO_subscription_t))); i++) { - if(TO_SubTable[i].Stream != TO_UNUSED ) + if(CFE_SB_IsValidMsgId(TO_SubTable[i].Stream)) status = CFE_SB_SubscribeEx(TO_SubTable[i].Stream, TO_LAB_Global.Tlm_pipe, TO_SubTable[i].Flags, @@ -223,7 +223,7 @@ void TO_LAB_init(void) if (status != CFE_SUCCESS) CFE_EVS_SendEvent(TO_SUBSCRIBE_ERR_EID,CFE_EVS_EventType_ERROR, "L%d TO Can't subscribe to stream 0x%x status %i", __LINE__, - TO_SubTable[i].Stream,(int)status); + CFE_SB_MsgIdToValue(TO_SubTable[i].Stream),(int)status); } /* @@ -286,22 +286,22 @@ void TO_LAB_process_commands(void) MsgId = CFE_SB_GetMsgId(MsgPtr); /* For SB return statuses that imply a message: process it. */ - switch (MsgId) + if (CFE_SB_MsgId_Equal(MsgId, TO_LAB_CMD_MID)) { - case TO_LAB_CMD_MID: - TO_LAB_exec_local_command(MsgPtr); - break; - - case TO_LAB_SEND_HK_MID: - TO_LAB_SendHousekeeping((const CCSDS_CommandPacket_t *)MsgPtr); - break; - - default: - CFE_EVS_SendEvent(TO_MSGID_ERR_EID,CFE_EVS_EventType_ERROR, - "L%d TO: Invalid Msg ID Rcvd 0x%x",__LINE__,MsgId); - break; + TO_LAB_exec_local_command(MsgPtr); + } + else if (CFE_SB_MsgId_Equal(MsgId, TO_LAB_SEND_HK_MID)) + { + TO_LAB_SendHousekeeping((const CCSDS_CommandPacket_t *)MsgPtr); + } + else + { + CFE_EVS_SendEvent(TO_MSGID_ERR_EID,CFE_EVS_EventType_ERROR, + "L%d TO: Invalid Msg ID Rcvd 0x%x",__LINE__, + CFE_SB_MsgIdToValue(MsgId)); } break; + default: /* Exit command processing loop if no message received. */ return; @@ -483,11 +483,12 @@ int32 TO_LAB_AddPacket(const TO_LAB_AddPacket_t *data) if(status != CFE_SUCCESS) CFE_EVS_SendEvent(TO_ADDPKT_ERR_EID,CFE_EVS_EventType_ERROR, "L%d TO Can't subscribe 0x%x status %i",__LINE__, - pCmd->Stream, (int)status); + (unsigned int)CFE_SB_MsgIdToValue(pCmd->Stream), + (int)status); else CFE_EVS_SendEvent(TO_ADDPKT_INF_EID,CFE_EVS_EventType_INFORMATION, "L%d TO AddPkt 0x%x, QoS %d.%d, limit %d",__LINE__, - pCmd->Stream, + (unsigned int)CFE_SB_MsgIdToValue(pCmd->Stream), pCmd->Flags.Priority, pCmd->Flags.Reliability, pCmd->BufLimit); @@ -510,10 +511,12 @@ int32 TO_LAB_RemovePacket(const TO_LAB_RemovePacket_t *data) if(status != CFE_SUCCESS) CFE_EVS_SendEvent(TO_REMOVEPKT_ERR_EID,CFE_EVS_EventType_ERROR, "L%d TO Can't Unsubscribe to Stream 0x%x on pipe %d, status %i",__LINE__, - pCmd->Stream, TO_LAB_Global.Tlm_pipe, (int)status); + (unsigned int)CFE_SB_MsgIdToValue(pCmd->Stream), + TO_LAB_Global.Tlm_pipe, (int)status); else CFE_EVS_SendEvent(TO_REMOVEPKT_INF_EID,CFE_EVS_EventType_INFORMATION, - "L%d TO RemovePkt 0x%x",__LINE__, pCmd->Stream); + "L%d TO RemovePkt 0x%x",__LINE__, + (unsigned int)CFE_SB_MsgIdToValue(pCmd->Stream)); ++TO_LAB_Global.HkBuf.HkTlm.Payload.CommandCounter; return CFE_SUCCESS; } /* End of TO_LAB_RemovePacket() */ @@ -530,14 +533,14 @@ int32 TO_LAB_RemoveAll(const TO_LAB_RemoveAll_t *data) for (i=0; (i < (sizeof(TO_SubTable)/sizeof(TO_subscription_t))); i++) { - if (TO_SubTable[i].Stream != TO_UNUSED ) + if (CFE_SB_IsValidMsgId(TO_SubTable[i].Stream)) { status = CFE_SB_Unsubscribe(TO_SubTable[i].Stream, TO_LAB_Global.Tlm_pipe); if(status != CFE_SUCCESS) CFE_EVS_SendEvent(TO_REMOVEALLPTKS_ERR_EID,CFE_EVS_EventType_ERROR, "L%d TO Can't Unsubscribe to stream 0x%x status %i", __LINE__, - TO_SubTable[i].Stream, (int)status); + CFE_SB_MsgIdToValue(TO_SubTable[i].Stream), (int)status); } } @@ -546,13 +549,13 @@ int32 TO_LAB_RemoveAll(const TO_LAB_RemoveAll_t *data) if(status != CFE_SUCCESS) CFE_EVS_SendEvent(TO_REMOVECMDTO_ERR_EID,CFE_EVS_EventType_ERROR, "L%d TO Can't Unsubscribe to cmd stream 0x%x status %i", __LINE__, - TO_LAB_CMD_MID, (int)status); + CFE_SB_MsgIdToValue(TO_LAB_CMD_MID), (int)status); status = CFE_SB_Unsubscribe(TO_LAB_SEND_HK_MID, TO_LAB_Global.Cmd_pipe); if (status != CFE_SUCCESS) CFE_EVS_SendEvent(TO_REMOVEHKTO_ERR_EID,CFE_EVS_EventType_ERROR, "L%d TO Can't Unsubscribe to cmd stream 0x%x status %i", __LINE__, - TO_LAB_CMD_MID, (int)status); + CFE_SB_MsgIdToValue(TO_LAB_CMD_MID), (int)status); CFE_EVS_SendEvent(TO_REMOVEALLPKTS_INF_EID,CFE_EVS_EventType_INFORMATION, "L%d TO Unsubscribed to all Commands and Telemetry", __LINE__); diff --git a/fsw/src/to_lab_app.h b/fsw/src/to_lab_app.h index e9a3590..9509e0e 100644 --- a/fsw/src/to_lab_app.h +++ b/fsw/src/to_lab_app.h @@ -47,7 +47,7 @@ /*****************************************************************************/ #define TO_TASK_MSEC 500 /* run at 2 Hz */ -#define TO_UNUSED 0 +#define TO_UNUSED CFE_SB_MSGID_RESERVED #define cfgTLM_ADDR "192.168.1.81" #define cfgTLM_PORT 1235