Arduino® to rozszerzony mikrokontroler typu open source, który jest programowany przy użyciu języka opartego na okablowaniu. Jego środowisko programistyczne opiera się jednak na Processing — darmowym, dostępnym do pobrania języku programowania, który jest powszechnie używany do generowania grafiki komputerowej i złożonych wizualizacji danych. Szkice, zwane również programami, wbudowane w Processing i języku Arduino® używają rozszerzenia pliku Processing Development Environment (PDE). Ponadto szkice Processing i Arduino® mogą komunikować się ze sobą, zapewniając dwukierunkową kontrolę nad szkicami Processing i sprzętem Arduino®.
Komunikacja może być jednokierunkowa lub dwukierunkowa między środowiskami Processing i Arduino®. Na przykład dane ze szkicu przetwarzania mogą być używane do sterowania sprzętem podłączonym do mikrokontrolera Arduino® lub dane z mikrokontrolera mogą być używane do sterowania funkcjonalnością szkicu przetwarzania. Alternatywnie oba środowiska mogą wpływać na siebie jednocześnie. Niektóre przykłady projektów Processing i Arduino® obejmują użycie potencjometrów do sterowania kolorem obiektu wyświetlanego przez szkic Processing oraz użycie zdarzeń kliknięcia myszą ze szkicu Processing do sterowania serią diod elektroluminescencyjnych (LED).
Języki Processing i Arduino® komunikują się ze sobą za pomocą kodu i portu uniwersalnej magistrali szeregowej (USB), który emuluje i wyświetla się jako port szeregowy komputera. Aby skonfigurować dwukierunkową komunikację między mikrokontrolerem a przetwarzaniem lub sterować przetwarzaniem za pomocą Arduino®, użytkownicy piszą szkice w obu językach. Szkic Processing szuka portu szeregowego podłączonego do Arduino®, podczas gdy kod mikrokontrolera odbiera i przesyła dane z wejść i wyjść Arduino®. Zapewnia to hobbystom całkowitą kontrolę nad swoimi projektami.
Dostępna bezpłatna biblioteka Arduino® do przetwarzania pozwala użytkownikom kontrolować Arduino® za pomocą danych z przetwarzania bez pisania kodu dla mikrokontrolera. Zamiast tego na płytkę ładowany jest standardowy program, a użytkownik wpisuje kod w szkicu Przetwarzanie. Napisany kod zazwyczaj wykonuje następujące funkcje: znajduje i otwiera port szeregowy podłączony do Arduino®, przechowuje dane z mikrokontrolera w zmiennych i wykorzystuje dane do sterowania różnymi parametrami, takimi jak rozmiar lub kolor obiektu, w Przetwarzanie szkicu.
Osoby uczące się pracy z Arduino® i Processing mogą znaleźć przykładowe szkice w środowisku programistycznym Arduino®. Te szkice są dostarczane z każdym pobraniem aplikacji, a użytkownicy zazwyczaj mogą je uruchamiać bez pisania dodatkowego kodu. Twórcy Arduino® udostępniają również w pełni skomentowany kod Processing i Arduino® online.