Index: firmware/App/Services/Reservoirs.c =================================================================== diff -u -r97e0100921ccad633b39b509a93a7237e4d80446 -r1463d830cefd58198bfc6d4ae3775ad0f2eb1d0b --- firmware/App/Services/Reservoirs.c (.../Reservoirs.c) (revision 97e0100921ccad633b39b509a93a7237e4d80446) +++ firmware/App/Services/Reservoirs.c (.../Reservoirs.c) (revision 1463d830cefd58198bfc6d4ae3775ad0f2eb1d0b) @@ -34,8 +34,9 @@ // ********** private definitions ********** #define MIN_RESERVOIR_VOLUME_ML 0 ///< Minimum reservoir volume in mL. -#define MAX_RESERVOIR_VOLUME_ML 2000 ///< Maximum reservoir volume in mL. -#define DEFAULT_FILL_VOLUME_ML 1700 ///< Default fill volume for treatment in mL. +#define MAX_RESERVOIR_VOLUME_ML 2000 ///< Maximum reservoir volume in mL. TODO reservoir volume +#define DEFAULT_FILL_VOLUME_ML 1700 ///< Default fill volume for treatment in mL. TODO Normal Fill + // TODO get the other normal fill #define MAX_FILL_VOLUME_ML MAX_RESERVOIR_VOLUME_ML ///< Maximum fill volume in mL. #define DEFAULT_DRAIN_VOLUME_ML 0 ///< Default drain volume in mL. #define MAX_DRAIN_VOLUME_ML MAX_RESERVOIR_VOLUME_ML ///< Maximum drain volume in mL. Index: firmware/App/Services/SystemComm.c =================================================================== diff -u -r3d131237935eb36e56e0d057a713430e31dc6405 -r1463d830cefd58198bfc6d4ae3775ad0f2eb1d0b --- firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 3d131237935eb36e56e0d057a713430e31dc6405) +++ firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 1463d830cefd58198bfc6d4ae3775ad0f2eb1d0b) @@ -1010,6 +1010,7 @@ case MSG_ID_REQUEST_FW_VERSIONS: handleFWVersionCmd( message ); + handleDGSerialNumberRequest( message ); break; case MSG_ID_DG_SWITCH_RESERVOIR_CMD: @@ -1056,6 +1057,10 @@ handleUIClockSyncRequest( message ); break; + case MSG_ID_UI_REQUEST_SERVICE_INFO: + handleDGServiceScheduleRequest( message ); + break; + // NOTE: This case must be last case MSG_ID_DG_TESTER_LOGIN_REQUEST: handleTesterLogInRequest( message ); Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -rc0160362dc799802ec589d5b6cf4c2bd1face77e -r1463d830cefd58198bfc6d4ae3775ad0f2eb1d0b --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision c0160362dc799802ec589d5b6cf4c2bd1face77e) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 1463d830cefd58198bfc6d4ae3775ad0f2eb1d0b) @@ -829,6 +829,68 @@ /*********************************************************************//** * @brief + * The handleDGSerialNumberRequest function handles a request for DG serial + * number request. + * @details Inputs: none + * @details Outputs: message handled, response constructed and queued + * for transmit. + * @param message a pointer to the message to handle. + * @return none + *************************************************************************/ +void handleDGSerialNumberRequest( MESSAGE_T *message ) +{ + MESSAGE_T msg; + DG_SYSTEM_RECORD_T system = getDGSystemRecord(); + U08 *payloadPtr = msg.payload; + + // Create a message record + blankMessage( &msg ); + msg.hdr.msgID = MSG_ID_DG_SERIAL_NUMBER; + + // Add 1 byte for null terminator + msg.hdr.payloadLen = MAX_TOP_LEVEL_SN_CHARS + 1; + + // Fill message payload + memcpy( payloadPtr, &system.topLevelSN, MAX_TOP_LEVEL_SN_CHARS ); + payloadPtr += MAX_TOP_LEVEL_SN_CHARS; + *payloadPtr = 0; + + // Serialize the message (w/ sync, CRC, and appropriate CAN padding) and add serialized message data to appropriate comm buffer + serializeMessage( msg, COMM_BUFFER_OUT_CAN_DG_2_UI, ACK_REQUIRED ); +} + +/*********************************************************************//** + * @brief + * The handleDGServiceScheduleRequest function handles a request for DG + * service information. + * @details Inputs: none + * @details Outputs: message handled, response constructed and queued for + * transmit. + * @param message a pointer to the message to handle. + * @return none + *************************************************************************/ +void handleDGServiceScheduleRequest( MESSAGE_T *message ) +{ + MESSAGE_T msg; + DG_SERVICE_RECORD_T payload = getDGServiceRecord(); + U08 *payloadPtr = msg.payload; + + // Create a message record + blankMessage( &msg ); + msg.hdr.msgID = MSG_ID_DG_SERVICE_SCHEDULE_DATA; + msg.hdr.payloadLen = sizeof( U32 ) + sizeof( U32 ); + + // Fill message payload + memcpy( payloadPtr, &payload.lastServiceEpochDate, sizeof( U32 ) ); + payloadPtr += sizeof( U32 ); + memcpy( payloadPtr, &payload.serviceIntervalSeconds, sizeof( U32 ) ); + + // Serialize the message (w/ sync, CRC, and appropriate CAN padding) and add serialized message data to appropriate comm buffer + serializeMessage( msg, COMM_BUFFER_OUT_CAN_DG_2_UI, ACK_REQUIRED ); +} + +/*********************************************************************//** + * @brief * The broadcastConductivityData function sends out conductivity data. * @details Inputs: none * @details Outputs: conductivity data message constructed and queued Index: firmware/App/Services/SystemCommMessages.h =================================================================== diff -u -rc0160362dc799802ec589d5b6cf4c2bd1face77e -r1463d830cefd58198bfc6d4ae3775ad0f2eb1d0b --- firmware/App/Services/SystemCommMessages.h (.../SystemCommMessages.h) (revision c0160362dc799802ec589d5b6cf4c2bd1face77e) +++ firmware/App/Services/SystemCommMessages.h (.../SystemCommMessages.h) (revision 1463d830cefd58198bfc6d4ae3775ad0f2eb1d0b) @@ -144,6 +144,12 @@ // MSG_ID_REQUEST_FW_VERSIONS void handleFWVersionCmd( MESSAGE_T *message ); +// MSG_ID_REQUEST_FW_VERSIONS +void handleDGSerialNumberRequest( MESSAGE_T *message ); + +// MSG_ID_UI_REQUEST_SERVICE_INFO +void handleDGServiceScheduleRequest( MESSAGE_T *message ); + // MSG_ID_DG_SWITCH_RESERVOIR_CMD void handleSwitchReservoirCmd( MESSAGE_T *message ); Index: firmware/dg_build_history.txt =================================================================== diff -u --- firmware/dg_build_history.txt (revision 0) +++ firmware/dg_build_history.txt (revision 1463d830cefd58198bfc6d4ae3775ad0f2eb1d0b) @@ -0,0 +1,10 @@ +************************************************************************************************ +Bamboo Build Number: +Bamboo Build Date: +Bug Fixes: DEN-8819 fixed load cells inaccurate value beyond 3rd decimal overriding values. +New Feature: None +Known Bugs: Fans RPM monitor and Temperature sensors ADC range check are disabled for further +investigations +Changes: Added calibration to flow sensor, temeperature sensors, pressure sensors, conductivity +sensors, drain line volume, reservoirs, and acid and bicarb constants +************************************************************************************************ \ No newline at end of file