La programació d'Arduino és la programació d'un microcontrolador. Això era una mica més dels enginyers electrònics, però Arduino ho ha estés a tot el públic. Arduino ha socialitzat la tecnologia.
Programar *Arduino consisteix a traduir a línies de codi les tasques automatitzades que volem fer llegint dels sensors i en funció de les condicions de l'entorn programar la interacció amb el món exterior mitjançant uns actuadors.
Arduino proporciona un entorn de programació senzill i potent per a programar, però a més inclou les eines necessàries per a compilar el programa i “cremar” el programa ja compilat en la memòria flaix del microcontrolador.
Per a poder comunicar-nos amb la nostra placa i enviar-li les ordres, cal fer-ho a traves del IDE d’Arduino“ Integrated Development Environment" ("Entorn de Desenrotllament Integrat").
Amb este programari podem introduir el codi mitjançant ordres basades en un llenguatge de programació d’alt nivell com és el llenguatge C.
El problema és que el seu codi, encara que senzill, és molt poc intuïtiu i complicat per a poder començar. Són necessaris llavors algun tipus d'entorn que facilite la programació, a l'estil scratch, que no servix per a esta plataforma directament.
Visualino és una d'estes opcions, però basada en Google Blockly i que facilita molt la programació.
No obstant això, tant si programem amb Visualino o amb altres opcions, sempre caldrà tenir instal·lat el IDE d’Arduino en el nostre ordinador per a poder comunicar-nos amb la placa.
ArduinoBlocks és una plataforma online d'ús lliure i gratuït per a robòtica educativa que permet la programar en Arduino de manera visual a través de blocs. Esta plataforma ha estat desenvolupada pel professor Juanjo López.