Update on code!
Some bugs fixed, including the one mentioned in the video.
It seems I've fixed the bug I described in my video. Turned out to be bigger than I thought.
Its amazing my serial handling code worked at all to be honest.
Turned out when the serial was writing the buffer to send, I was reading off the wrong variable. So the buffer was reading off itsself, and not the text being sent.
Correcting this showed more mistakes. including incorrect escape bytes being placed into the packet stream... And then in the receiving code on the arduino, not properly handling ESC bytes in the checksum portion of the packet. (IE it wasnt at all)
Codes now been corrected and appears to be working as it should (so far, fingers crossed!)
I have updated the code on the github page.