Books on how to implement ASCII command protocol for uC using sequence numbers and XOR error correction?

Apr 28, 2012 2 Replies

i come accross a half duplex ASCII protocol that uses following message format again and again: [STX][dev.addr.][sequence number][message/commands...][ETX][checksum]


not only in industrial rs485 devices, but also in this consumer device:

formatting link


so if this protocol is so widely adopted, why can't i find informations about it.. what is it called? how does one implement such a protocol...


i wanna use this kind of protocol with my own uC projects...



i definitely like it's conceptual simplicity, compared to other protocols..


i like this Sequence Number/Repeat Flag thing...



The sequence number is a single byte that conveys both a sequence number (legal values: 0 to 7) and a bit-flag indicating that the command block is being repeated due to a communications breakdown. The sequence number is used as an identity stamp for each command block


this question is the only valuable information i could find... How do you design a serial command protocol for an embedded system?


is there a book about the design and implemention of ASCII protocols for uC use?


--------------------------------------- Posted through

formatting link


w.kaleidescape.com/go/control-protocol

It's called ASCII.

You enclose fixed length message blocks with Start of Text (STX) and End of Text (ETX) and checksum it to avoid collisions. I've use it with multi-drop single wire serial long time ago. Might use it again.

Just do it. No license fee needed.

There are hundreds (if not thousand) protocols with STXxxxxxxETXbcc/crc syntax.

Without further information, it is hard to tell which one is used. If this syntax is used for binary protocols, typically some DLL xxx sequences are used to escape some protocol characters.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required