Index: firmware/App/Services/SystemCommMessages.c =================================================================== diff -u -r43949bb09b178239911c2e46c6555bc31289090f -rfef2e486f7165f6a22617a3b0535f938967b1aee --- firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision 43949bb09b178239911c2e46c6555bc31289090f) +++ firmware/App/Services/SystemCommMessages.c (.../SystemCommMessages.c) (revision fef2e486f7165f6a22617a3b0535f938967b1aee) @@ -3288,18 +3288,17 @@ if ( 0 == message->hdr.payloadLen ) { - U32 test = 0; // Fill message payload memcpy( payloadPtr, &service.lastServiceEpochDate, sizeof( U32 ) ); payloadPtr += sizeof( U32 ); - test = service.lastServiceEpochDate + service.serviceIntervalSeconds; - memcpy( payloadPtr, &test, sizeof( U32 ) ); + service.serviceIntervalSeconds = ( 0 == service.lastServiceEpochDate ? 0 : service.serviceIntervalSeconds ); + memcpy( payloadPtr, &service.serviceIntervalSeconds, sizeof( U32 ) ); payloadPtr += sizeof( U32 ); memcpy( payloadPtr, &dgData.dgServiceRecord.lastServiceEpochDate, sizeof( U32 ) ); payloadPtr += sizeof( U32 ); - test = dgData.dgServiceRecord.lastServiceEpochDate + dgData.dgServiceRecord.serviceIntervalSeconds; - memcpy( payloadPtr, &test, sizeof( U32 ) ); - //memcpy( payloadPtr, &dgData.dgServiceRecord.serviceIntervalSeconds, sizeof( U32 ) ); + dgData.dgServiceRecord.serviceIntervalSeconds = ( 0 == dgData.dgServiceRecord.lastServiceEpochDate ? 0 : + dgData.dgServiceRecord.serviceIntervalSeconds ); + memcpy( payloadPtr, &dgData.dgServiceRecord.serviceIntervalSeconds, sizeof( U32 ) ); } // Serialize the message (w/ sync, CRC, and appropriate CAN padding) and add serialized message data to appropriate comm buffer