Index: firmware/App/Services/CommBuffers.c =================================================================== diff -u -r85bfe5051e4d2bf67be39d394f96c075b4e52836 -rab432aeb5e140e5b17b149f980063843fcb76290 --- firmware/App/Services/CommBuffers.c (.../CommBuffers.c) (revision 85bfe5051e4d2bf67be39d394f96c075b4e52836) +++ firmware/App/Services/CommBuffers.c (.../CommBuffers.c) (revision ab432aeb5e140e5b17b149f980063843fcb76290) @@ -36,9 +36,6 @@ static U32 activeDoubleBuffer[ NUM_OF_COMM_BUFFERS ]; // for each buffer, which double buffer is being fed right now? static U08 commBuffers[ NUM_OF_COMM_BUFFERS ][ DOUBLE_BUFFERS ][ COMM_BUFFER_LENGTH ]; // each is double buffered to avoid thread contention -static U32 broadcastByteInCount = 0; // TODO - debug - remove these two later -static U32 broadcastByteOutCount = 0; - // ********** private function prototypes ********** static U32 switchDoubleBuffer( COMM_BUFFER_T buffer ); @@ -108,11 +105,6 @@ { U08 *buffPtr; // buffer destination for added data - if ( buffer == COMM_BUFFER_OUT_CAN_HD_BROADCAST ) - { - broadcastByteInCount += len; - } - // set destination pointer to end of active buffer data buffPtr = &commBuffers[ buffer ][ activeBuffer ][ currentActiveBufCount ]; // copy source data to destination buffer @@ -186,11 +178,6 @@ // will return # of bytes consumed result += remNumOfBytes; } - - if ( buffer == COMM_BUFFER_OUT_CAN_HD_BROADCAST ) - { - broadcastByteOutCount += result; - } } else // invalid get size given { Index: firmware/App/Services/FPGA.c =================================================================== diff -u -r1bbf9da32e622975efed00b1a7589387a9829440 -rab432aeb5e140e5b17b149f980063843fcb76290 --- firmware/App/Services/FPGA.c (.../FPGA.c) (revision 1bbf9da32e622975efed00b1a7589387a9829440) +++ firmware/App/Services/FPGA.c (.../FPGA.c) (revision ab432aeb5e140e5b17b149f980063843fcb76290) @@ -80,24 +80,32 @@ typedef struct // TODO - add all sensor readings to this structure per FPGA register map { - U08 bloodFlowMeterCommStatus; - U08 bloodFlowMeterFrameCount; - U16 bloodFlowMeterDeviceStatus; + U08 bloodFlowMeterDataPktCount; + U08 bloodFlowMeterSlowPktCounts; + U08 bloodFlowMeterDeviceStatus; + U08 bloodFlowMeterResponse; F32 bloodFlowLast; - F32 bloodFlowAvg; - F32 bloodFlowMeterSoundSpeed; - F32 bloodFlowMeterAccFlowData; - F32 bloodFlowMeterSignalStrength; - U32 bloodFlowMeterSensorID; - U08 dialysateFlowMeterCommStatus; - U08 dialysateFlowMeterFrameCount; - U16 dialysateFlowMeterDeviceStatus; + U08 dialysateFlowMeterDataPktCount; + U08 dialysateFlowMeterSlowPckCounts; + U08 dialysateFlowMeterDeviceStatus; + U08 dialysateFlowMeterResponse; F32 dialysateFlowLast; - F32 dialysateFlowAvg; - F32 dialysateFlowMeterSoundSpeed; - F32 dialysateFlowMeterAccFlowData; - F32 dialysateFlowMeterSignalStrength; - U32 dialysateFlowMeterSensorID; + U08 bloodFlowMeterErrorCount; + U08 dialysateFlowMeterErrorCount; + U16 bloodOcclusionData; + U08 bloodOcclusionReadCount; + U08 bloodOcclusionErrorCount; + U16 dialysateInOcclusionData; + U08 dialysateInOcclusionReadCount; + U08 dialysateInOcclusionErrorCount; + U16 dialysateOutOcclusionData; + U08 dialysateOutOcclusionReadCount; + U08 dialysateOutOcclusionErrorCount; + U16 arterialPressureData; + U08 arterialPressureReadCount; + U08 arterialPressureErrorCount; + U16 dialysateTempPrimaryData; + U16 dialysateTempBackupData; } FPGA_SENSORS_T; typedef struct // TODO - add all actuator set points to this structure per FPGA register map Index: firmware/App/Services/SystemComm.c =================================================================== diff -u -r6311eb9b65fdeec7a285d25e07f3932ac0fb6cf1 -rab432aeb5e140e5b17b149f980063843fcb76290 --- firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 6311eb9b65fdeec7a285d25e07f3932ac0fb6cf1) +++ firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision ab432aeb5e140e5b17b149f980063843fcb76290) @@ -76,9 +76,6 @@ static BOOL uiIsCommunicating = FALSE; // has UI sent a message since last check static BOOL uiDidCommunicate = FALSE; // has UI every sent a message -static U32 sentCANPacketsCount = 0; // TODO - debug - remove these two flags later -static U32 compCANPacketsCount = 0; - // ********** private function prototypes ********** static void initUARTAndDMA( void ); @@ -253,21 +250,15 @@ // message interrupt is for a transmit message box? if ( TRUE == isCANBoxForXmit( srcCANBox ) ) { - U32 bytesXmitted; - - compCANPacketsCount++; if ( FALSE == canIsTxMessagePending( canREG1, srcCANBox ) ) { - bytesXmitted = transmitNextCANPacket(); + U32 bytesXmitted = transmitNextCANPacket(); + if ( 0 == bytesXmitted ) { signalCANXmitsCompleted(); } } - else - { - compCANPacketsCount--; - } } else if ( TRUE == isCANBoxForRecv( srcCANBox ) ) { @@ -507,17 +498,16 @@ if ( dataSize == CAN_MESSAGE_PAYLOAD_SIZE ) { signalCANXmitsInitiated(); - if ( 0 == canTransmit( canREG1, mBox, data ) ) + if ( 0 != canTransmit( canREG1, mBox, data ) ) { + result = CAN_MESSAGE_PAYLOAD_SIZE; + } + else + { signalCANXmitsCompleted(); // TODO - shouldn't get here, but let's see if we do SET_ALARM_WITH_1_U32_DATA( ALARM_ID_SOFTWARE_FAULT, (U32)mBox ) } - else - { - sentCANPacketsCount++; - result = CAN_MESSAGE_PAYLOAD_SIZE; - } } else { // TODO - shouldn't get here - just testing - set first data to new s/w fault enum later