Arduino is an open source platform that has their own single board microcontrollers, kits, and Integrated Development Environment (IDE) to build smart devices. Arduino boards are of different types based on size, shape and features such as Nano, Uno, Mini & Mega. Arduino software has a C based programming language that converts the program into assembly code internally and then runs it on the board. The software comes with a compiler, uploader, libraries for the peripheral devices and the code editor.