Thanks so much for your responses, Scott and ericthegeek..
I found the problem, it was a bad ground on my RS485 driver chip!
I did try adding a delay after sending the packet before enabling the receive, but that was allright, I am waiting till the Tx buffer is empty first.
Anyway, I still have the question about the checksum initialization.
ericthegeek, I understand what you said that 6 * 0xFF is the same as adding the header bytes, but the header isn't supposed to be included in the discovery response checksum! I am now getting a "MUTE" instruction addressed to my UID after discovery after initially setting the checksum to zero.
Thanks again, this is a great forum!
|