diff --git a/README.md b/README.md index 0baccba..a1c5020 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,14 @@ -# Example Arduino Code For My Serial Communications Protocol +# Example Arduino Code For The Serial Communications Protocol +This is an Arduino example/library of my serial communications protocol which implements checksums, acknowledge and repeat commands to normal serial communication, while still keeping the end user experience simple and intuitive. + +## Command Packet Contents +Bellow is an illustration of a command packet which is sent out by the library. + +![image](docs/CommandPacket.png) + +Each command packet consists of an instructions packet, a checksum and an end bit, with each part being seperated by a separator bit. The istructions packet consists of a command and a data part, which are again separated by a bit. In the current form of the protocol the separator bit is a `#` and the terminator bit is a `@`. + +An example command would look something like this `ERR#Something went wrong#4324@`. In the above example we are sending a command `ERR` with the arguments of `Something went wrong` and the `4324` is an auto generated checksum. + +All the data is currently being transmitted in plain-text, however in future versions of the library they will be encoded in hex and sent that way. \ No newline at end of file diff --git a/docs/CommandPacket.png b/docs/CommandPacket.png new file mode 100644 index 0000000..0dde70f Binary files /dev/null and b/docs/CommandPacket.png differ