SPI sąsaja siunčiama ir gaunama informacija turi atitikti tam tikrą protokolą, kuris realizuotas rpi – Arduino programose. Informacijos užklausėjas (Master) visada yra rpi. Komandos struktūra sudaryta iš Pradžios baito (PB), komandos baito (KB), paketo ilgio (DI), duomenų sekos (INFORMACIJA) ir kontrolinės sumos (KS) bei liekamojo baito(KB).
PB – CB – DI – INFORMACIJA – KS – KB
PB yra visada vienodas ir yra 0x81 (HEX formatas).
CB aprašo komandos tipą. Šiuo metu naudojam dvi komandas: 0xA8 – analoginių reikšmių nuskaitymas ir 0xA9 – apkrovos kreivės reikšmių siuntimas.
DI sudaro INFORMACIJA baitų sekos skaičių.
KS yra kontrolinė suma apimanti baitus nuo SB iki KS imtinai. Ji turi būti lygi 0xFF.
KB yra ‘kvailas’ baitas (angl. dummy), kuris leidžia priimti gaunamo paketo kontrolinę sumą. Tai yra todėl, kad siunčiamas paketas lydimas gaunamo paketo. T.y siuntimo metu yra gaunama informacija. Kadangi gaunamas paketas yra tokio pat ilgio, tai priimamo paketo kontrolinės sumos baitas gaunamas tuo metu, kai siunčiamo paketo KS baitas jau išėjo, o siuntėjas dar turi išsiųsti kontrolinės sumos baitą
MySQL’e komanda saugoma HEX formate
Dabar sudarytos dvi komandos