Using PlatformIO http://docs.platformio.org/en/latest/index.html And Google Protocol Buffers https://developers.google.com/protocol-buffers/docs/overview And C implementation http://koti.kapsi.fi/jpa/nanopb/
Submodules https://github.com/google/protobuf https://github.com/nanopb/nanopb
hardware http://www.dfrobot.com/wiki/index.php?title=Arduino_LCD_KeyPad_Shield_(SKU:_DFR0009)