>Are there any 'standard' CRCs like that, or better methods for error >detection in short blocks? Or are there mathematical reasons why CRCs >don't work well for shorter data streams (I suspect there are, but can't >quite figure it out...) Nigel have a look at the ECC methods used for error correcting memory. Effectively these do the same as what you want (error correct over a word of memory). You may need to dig into the innards of the algorithm in ECC chips, but my memories of it is that there is nothing especially difficult with it. -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.