Choosing a packet terminator, what do you use?

What happens at point 4 now?

You have to resynch...somehow.

If your data is binary I see no really valid method of resynching with the data stream using any combination of terminator values. This is one good thing (the only good thing IMO) of using ASCII-only data.

In my case the sequence number is just another check. I recently dropped it BTW but it's still on the cards.

The fundamental problem is resynching with the data stream. I do this (caveat, untested just designed) by waiting for an idle line of 16 bit times that indicates an inter-frame break. The timing is very important though and in fact I have a dedicated processor to handle the low level interface.

I assume that you are doing a multi-drop protocol otherwise you wouldn't be having these issues.

I have spent a lot of time designing such a protocol to be used as a robust "commercial grade" protocol and just recently dropped it for a point-to-point ring topology because of perceived (by me that is) reliability issues.

What's you application and how robust does it have to be?


Rob