The example given in the RepRap Wiki for the Check Sum implied to me that the check sum was not done at the front end of the uart_Rx ISR but after it was buffered. So I did that whole function in the Parser, which of course means that there can be several command lines that are in the buffer before being implemented. So if there is an error I flush these out. I started geting rs errors for lines that all work when manually entered in a Terminal Program. Not sure what is causing that. However I have a question about the fact that when the Host connects, before there is a start, it sends a bunch of commands. These I buffer in the RxBuffer and Parse and implement once start is activated. Then I get a bunch rs (resend outputs). Is my description OK? Should I accept uart inputs before start?
int cs = 0;<o:p></o:p>
for(i = 0; cmd[i] != '*' && cmd[i] != NULL; i++)<o:p></o:p>
cs = cs ^ cmd[i];<o:p></o:p>
cs &= 0xff; // Defensive programming...<o:p></o:p>