using System.Collections.Generic;
private static string STX = @"3032";
public static void Main()
var hex = "303235312e303130313033";
private static string LRC(string dataAsHex)
foreach (var c in SplitToChars(dataAsHex.Replace(STX,"")))
checksum ^= Convert.ToByte(c);
return checksum.ToString("X2");
static IEnumerable<char> SplitToChars(string str)
return Enumerable.Range(0, str.Length / 2).Select(i => Convert.ToChar(int.Parse(str.Substring(i * 2, 2), System.Globalization.NumberStyles.HexNumber)));