Arduino Robust Serial
Robust Arduino Serial is a simple and robust serial communication protocol. It was designed to make two Arduinos communicate, but can also be useful when you want a computer (e.g. a Raspberry Pi) to communicate with an Arduino.
Please read the Medium Article to have an overview of this protocol.
Implementations are available in various programming languages: