"Cannot implicitly convert type 'int' to 'byte'.  An explicit conversion exists (are you missing a cast)" error

This will generat the error:


	TxData[ByteIndex++] = (byte)TagIdCharacter[0] | 0x80;	

Its because the result of the IOR operation does not result in a byte, so you need to use parenthesis:


	TxData[ByteIndex++] = (byte)(TagIdCharacter[0] | 0x80);