Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -ra7bf3ca23ea37a61000379facae628a31b3ecc59 -r05e516dc17597cee29c89e5eee25caed055f1151 --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision a7bf3ca23ea37a61000379facae628a31b3ecc59) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 05e516dc17597cee29c89e5eee25caed055f1151) @@ -94,6 +94,14 @@ U32 fillToVolumeMl; U32 drainToVolumeMl; } RESERVOIR_DATA_T; + +typedef struct +{ + F32 cpi; + F32 cpo; + F32 cd1; + F32 cd2; +} CONDUCTIVITY_DATA_T; typedef struct { @@ -661,6 +669,43 @@ return result; } + + +/************************************************************************* + * @brief + * The broadcastConductivityData function sends out conductivity data. + * @details + * Inputs : none + * Outputs : conductivity data msg constructed and queued + * @param inlet : water inlet conductivity data. + * @param outlet : water outlet conductivity data. + * @return TRUE if msg successfully queued for transmit, FALSE if not + *************************************************************************/ +BOOL broadcastConductivityData( F32 inlet, F32 outlet, F32 cd1, F32 cd2 ) +{ + BOOL result; + MESSAGE_T msg; + U08 *payloadPtr = msg.payload; + CONDUCTIVITY_DATA_T payload; + + // create a message record + blankMessage( &msg ); + msg.hdr.msgID = MSG_ID_DG_CONDUCTIVITY_DATA; + msg.hdr.payloadLen = sizeof( CONDUCTIVITY_DATA_T ); + + payload.cpi = inlet; + payload.cpo = outlet; + payload.cd1 = cd1; + payload.cd2 = cd2; + + memcpy( payloadPtr, &payload, sizeof( CONDUCTIVITY_DATA_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_DG_BROADCAST, ACK_NOT_REQUIRED ); + + return result; +} + // *********************************************************************** // **************** Message Handling Helper Functions ********************