Skip to content



At the end of this self-learning lab, you should be able to:

  • know what is Arduino
  • understand Arduino’s hardware

What is Arduino?

Arduino Uno

Arduino is an open-source platform used for building electronics projects. It consists of Arduino boards and the Arduino software. Arduino boards are able to read inputs - light on a sensor, a finger on a button - and give output - activating a motor, turning on an LED.

Arduino board is a physical programmable circuit board, or simply called a microcontroller (MCU for microcontroller unit). Thanks to its simple and accessible user experience, Arduino has been used in thousands of different projects and applications. The Arduino framework makes it easy for beginners to write code. It uses a dialect of features from C++.

There are many different types of Arduino boards with different characteristics, such as Arduino UNO, Arduino NANO and Arduino MEGA. In this chapter, we will use the Arduino UNO board.


If you are interested in a more detailed view of the electronic components on the Arduino, you can visit to know more about Arduino Uno Board Anatomy.

Goal of this chapter

The goal of this chapter is to have you be familiar with common hardware that you may encounter in the team - various motors and sensors, and how to control and communicate with them.

At the end of this chapter, you should be able to control a Futura pendulum (also called rotational inverted pendulum). A sample video can be seen here.

You will accomplish this by a series of labs. Step by step, each lab will teach you the neccessary skills needed to complete the pendulum control. If you are able to follow and complete all the exercises provided in the labs, you will be able learn the relevant skills to achieve the pendulum action with the hardware provided.

There are "Classwork" in the labs that you should follow. After completing each classwork exercise you should notify our team members and let them review your work. You are required to submit all of your code that you have written for the "Classwork" via github.

Let's get started! :muscle: Please refer to the list of labs on the left sidebar. You should complete each lab in the order specified in the sidebar.