Do you remember our article about the difference between hardware and software? Today we should look back at those terms for a moment so we can start talking about Arduino, an open-source hardware platform based on a board that allows to create interactive electronic objects, such as robots or home automation systems. Therefore, when a Codelearn student says he has just started learning Arduino, it means that he’s learning the basics of electronics in order to design, build and program small electronics projects.

Saying that Arduino is an open-source hardware platform means that anyone can create or modify its own Arduino boards from a same base and every creator can freely use it as he wishes, so by using one of these boards people can create different kinds of microcomputers. The same happens with the open-source software offered by the platform, on which everybody can program and create the apps they want to install in their Arduino boards through a specific programming language (although there are other languages that can be used). Thus, the cost of an Arduino project is really low, since it only requires to buy the boards and the electrical connectors that allow to link it to other peripheral devices.

The Arduino board is based on a microcontroller, a circuit where we can save instructions (programming) to create programs which interact with the circuits that we have built on the Arduino board. Every board has different entry and exit ports so it can receive and process all data we send, whether it is from the software’s programming environment or from other elements like keyboards or cameras, but it can also send data to other external devices such as a computer screen or a speaker.

One of the reasons why Arduino is so popular is its flexibility to build a wide variety of projects. In the field of programming and robotics learning, this characteristic forces students playing around with the board and experiment with it so they can learn by doing. In fact, not all Arduino bards are the same: there are different models which share a common basis but have different sizes, forms and colours, so everyone can choose the most suitable one depending on the project he is working on. There are simple boards, complex boards and even boards that are used to enlarge and complement another main board.

Arduino allows us to build projects that range from a small alarm clock to a vending machine, an access system or a security alarm, an automated watering system in our garden or a remote control for any kind of device. We can use this platform to build all those electronic projects that we are able to imagine and design.

Codelearn students, for example, start working with Arduino through simple projects like building a small automated house or building their first robot using electronic components, but they also learn to communicate Arduino with other technologies such as Scratch and AppInventor, so they can create their own game console.