Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r468292c78916bae95676d263c7259cba965ba147 -r7dae221794a30c403c06d90e12f3ab28830dffbe --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 468292c78916bae95676d263c7259cba965ba147) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 7dae221794a30c403c06d90e12f3ab28830dffbe) @@ -1024,21 +1024,16 @@ * @param size the size of active alarms list * @return TRUE if msg successfully queued for transmit, FALSE if not *************************************************************************/ -BOOL sendActiveAlarmsList( BOOL accepted, U32 reason, U32 *alarmList, U32 size ) +BOOL sendActiveAlarmsList( ACTIVE_ALARM_LIST_RESPONSE_PAYLOAD_T alarmListPayload ) { MESSAGE_T msg; - U08 *payloadPtr = msg.payload; // Create a message record blankMessage( &msg ); msg.hdr.msgID = MSG_ID_HD_ACTIVE_ALARMS_LIST_REQUEST_RESPONSE; - msg.hdr.payloadLen = sizeof( BOOL ) + sizeof( U32 ) + size; + msg.hdr.payloadLen = sizeof( ACTIVE_ALARM_LIST_RESPONSE_PAYLOAD_T ); - memcpy( payloadPtr, &accepted, sizeof( U32 ) ); - payloadPtr += sizeof( U32 ); - memcpy( payloadPtr, &reason, sizeof( U32 ) ); - payloadPtr += sizeof( U32 ); - memcpy( payloadPtr, alarmList, size ); + memcpy( &msg.payload, &alarmListPayload, sizeof( ACTIVE_ALARM_LIST_RESPONSE_PAYLOAD_T ) ); // Serialize the message (w/ sync, CRC, and appropriate CAN padding) and add serialized message data to appropriate comm buffer return serializeMessage( msg, COMM_BUFFER_OUT_CAN_HD_2_UI, ACK_REQUIRED ); @@ -1594,13 +1589,16 @@ { BOOL result; MESSAGE_T msg; + DG_SAMPLE_WATER_CMD_REQUEST_T sampleCmd; + sampleCmd.cmd = (U32)cmd; + // Create a message record blankMessage( &msg ); msg.hdr.msgID = MSG_ID_DG_SAMPLE_WATER_CMD_REQUEST; - msg.hdr.payloadLen = sizeof( SAMPLE_WATER_CMD_T ); + msg.hdr.payloadLen = sizeof( DG_SAMPLE_WATER_CMD_REQUEST_T ); - memcpy( &msg.payload, &cmd, sizeof( SAMPLE_WATER_CMD_T ) ); + memcpy( &msg.payload, &sampleCmd, sizeof( DG_SAMPLE_WATER_CMD_REQUEST_T ) ); // Serialize the message (w/ sync, CRC, and appropriate CAN padding) and add serialized message data to appropriate comm buffer result = serializeMessage( msg, COMM_BUFFER_OUT_CAN_HD_2_DG, ACK_REQUIRED );