public override void Transmit(Message telemetry) { }
/// <summary> /// Transmit the telemetry message and append appropriate sync and checksum bytes. /// </summary> /// <param name="telemetry"></param> public virtual void Transmit(Message telemetry) { byte[] msgPayload = telemetry.GetRawBytes(); byte[] completeMsg = new byte[msgPayload.Length + MsgHeaderFooterSize]; //First synch byte used to determine if this data is a start of a new msg. completeMsg[0] = SyncByte1; completeMsg[1] = SyncByte2; completeMsg[2] = SyncByte3; msgPayload.CopyTo(completeMsg, 3); byte checksumA = 0; byte checksumB = 0; calculateChecksum(msgPayload, ref checksumA, ref checksumB); //insert checksum values into message to send. completeMsg[completeMsg.Length - 2] = checksumA; completeMsg[completeMsg.Length - 1] = checksumB; port.Write(completeMsg, 0, completeMsg.Length); }