Stap 1: Seriële verbinding
De seriële communicatieprotocol bestaat uit een opdracht 4-byte van de meester (de PC) en een 2-byte-terugkeer van het MCU. Een voorbeeld verzenden-ontvangen actie zou er als volgt uitzien:
PC: '255'-'101 '-' 11'-' 0' A start byte ("255"), gevolgd door de opdracht-gegevens-adres overbrengingen
MCU: '9999'-'0' een ontvangst erkennen ('9999'), gevolgd door de gegevens retourneren.
In het volgende voorbeeld vertelt de MCU digitale uitgang pin 11 laag; instellen de MCU worden geen gegevens, verzamelt, zodat het alleen een '0' als resultaat gegeven.
De opdracht byte is gegoten tot een geheel getal door het MCU, en gesorteerd op een blok eenvoudige switch/case. De gegevensbyte bevat alle relevante gegevens voor de actie met de naam voor door de opdracht, die meestal een pin benaming is. De byte van het adres wordt meestal niet gebruikt, maar wordt toegevoegd voor gebruiksgemak in gevallen waar twee data percelen zijn verplicht om een MCU-functie, zoals PWM (of analogWrite() in Arduino) welke \requires zowel een pin en een waarde. Deze regeling is gemakkelijker en eenvoudiger te coördineren dan een 2-transmissieprotocol voor zulke afwijkende functies.
De software-implementatie is gekoppeld, evenals de Firmware voor de Arduino. Beide sets van code worden voor begrip toegelicht.
(Merk op dat de python-bestand pySerial vereist)