>Here is my question: How do I write the code so that >the Slave knows which byte is the "command" byte and >which byte is a "data" byte? How many commands do you need, and what range of data bytes do you need? Can you organise things so that if the MSB bit is set (or reset if more appropriate) then the byte is a command byte. Another way is to have a minimum time gap between messages, but that will involve the slave having what amounts to a timeout timer. -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu