Introduction: Adeept Laser Harp Kit for Arduino

The Adeept Laser Harp Kit is a harp without strings, with bright laser beams used instead. You only need to pluck the laser beams to play a piece of music as done with strings.

Step 1: Components List

Step 2: About the Adeept Laser Harp Kit


The Adeept Laser Harp Kit is a harp without strings, with bright laser beams used instead. You only need to pluck the laser beams to play a piece of music as done with strings.


1. When you switch on the laser harp, it's in the state of standby. Only three button modules and the power indicator of the speaker module are on.

2. In the standby state, press and hold the white button for 3s, then the laser and the RGB LED light up. So the harp is turned on. Press and hold the button for another 3s, the laser and RGB LED will dim. The harp will return to standby.

3. When the harp is on, press the white button and the LED will turn to red. Now the harp is in the bass of C chord. Block the laser beam left to right and the harp will ring different bass sounds when the light changes colors.

4. When the harp is on, press the blue button, the light will turn to green and the harp is in the alto. Block the beams, the harp will make different alto sounds with the light changing colors.

5. When the harp is on, press the red button, the light will shine blue and the harp is in the soprano. Block the beams, the harp will make different soprano sounds with the light changing colors

7. When the harp is on, turn it upside down and it will turn to the standby state. Turn it back again and it's switched on.

8. Adjust the volume of the speaker. Rotate the R3 potentiometer on the speaker module to adjust the volume.

Step 3: Assembly

Step 4: Software & Hardware

What is Arduino?

Arduino is an open-source electronics platform based on easy-to-use hardware and software. Arduino boards are able to read inputs - light on a sensor, a finger on a button, or a Twitter message - and turn it into an output - activating a motor, turning on an LED, publishing something online. You can tell your board what to do by sending a set of instructions to the microcontroller on the board. To do so you use the Arduino programming language (based on Wiring), and the Arduino Software (IDE), based on Processing.

Over the years Arduino has been the brain of thousands of projects, from everyday objects to complex scientific instruments. A worldwide community of makers - students, hobbyists, artists, programmers, and professionals - has gathered around this open-source platform, their contributions have added up to an incredible amount of accessible knowledge that can be of great help to novices and experts alike.

Arduino was born at the Ivrea Interaction Design Institute as an easy tool for fast prototyping, aimed at students without a background in electronics and programming. As soon as it reached a wider community, the Arduino board started changing to adapt to new needs and challenges, differentiating its offer from simple 8-bit boards to products for IoT applications, wearable, 3D printing, and embedded environments. All Arduino boards are completely open-source, empowering users to build them independently and eventually adapt them to their particular needs. The software, too, is open-source, and it is growing through the contributions of users worldwide.

Why Arduino?

Thanks to its simple and accessible user experience, Arduino has been used in thousands of different projects and applications. The Arduino software is easy-to-use for beginners, yet flexible enough for advanced users. It runs on Mac, Windows, and Linux. Teachers and students use it to build low cost scientific instruments, to prove chemistry and physics principles, or to get started with programming and robotics. Designers and architects build interactive prototypes, musicians and artists use it for installations and to experiment with new musical instruments. Makers, of course, use it to build many of the projects exhibited at the Maker Faire, for example. Arduino is a key tool to learn new things. Anyone - children, hobbyists, artists, programmers - can start tinkering just following the step by step instructions of a kit, or sharing ideas online with other members of the Arduino community.

How Should I Use Arduino?

If you are a beginner with Arduino, Arduino learning kits on our website would be a prefect step into this fantastic field!

One type of Arduino board are used in this kit: Adeept UNO R3 board


The Arduino/Genuino Uno board can be powered via the USB connection or with an external power supply. The power source is selected automatically.

External (non-USB) power can come either from an AC-to-DC adapter (wall-wart) or battery. The adapter can be connected by plugging a 2.1mm center-positive plug into the board's power jack. Leads from a battery can be inserted in the GND and Vin pin headers of the POWER connector.

The board can operate on an external supply from 6 to 20 volts. If supplied with less than 7V, however, the 5V pin may supply less than five volts and the board may become unstable. If using more than 12V, the voltage regulator may overheat and damage the board. The recommended range is 7 to 12 volts.

The power pins are as follows:

Vin. The input voltage to the Arduino/Genuino board when it's using an external power source (as opposed to 5 volts from the USB connection or other regulated power source). You can supply voltage through this pin, or, if supplying voltage via the power jack, access it through this pin.

5V. This pin outputs a regulated 5V from the regulator on the board. The board can be supplied with power either from the DC power jack (7 - 12V), the USB connector (5V), or the VIN pin of the board (7-12V). Supplying voltage via the 5V or 3.3V pins bypasses the regulator, and can damage your board. We don't advise it.

3V3. A 3.3 volt supply generated by the on-board regulator. Maximum current draw is 50 mA.

GND. Ground pins.

IOREF. This pin on the Arduino/Genuino board provides the voltage reference with which the microcontroller operates. A properly configured shield can read the IOREF pin voltage and select the appropriate power source or enable voltage translators on the outputs to work with 5V/3.3V.

Input and Output

Each of the 14 digital pins on the Uno can be used as an input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 5 volts. Each pin can provide or receive 20 mA as recommended operating condition and has an internal pull-up resistor (disconnected by default) of 20-50k ohm. A maximum of 40mA is the value that must not be exceeded on any I/O pin to avoid permanent damage to the microcontroller.

In addition, some pins have specialized functions:

Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data. These pins are connected to the corresponding pins of the ATmega8U2 USB-to-TTL Serial chip.

External Interrupts: 2 and 3. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.

PWM: 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output with the analogWrite() function.

SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI communication using the SPI library.

LED: 13. There is a built-in LED driven by digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it's off.

TWI: A4 or SDA pin and A5 or SCL pin. Support TWI communication using the Wire library.

The Uno has 6 analog inputs, labeled A0 through A5, each of which provide 10 bits of resolution (i.e. 1024 different values). By default they measure from ground to 5 volts, though is it possible to change the upper end of their range using the AREF pin and the analogReference() function.

There are a couple of other pins on the board:

AREF. Reference voltage for the analog inputs. Used with analogReference().

Reset. Bring this line LOW to reset the microcontroller. Typically used to add a reset button to shields which block the one on the board.

Arduino Software (IDE)

Arduino Software (IDE) is used to write and upload the
code for Arduino Board. First, install Arduino software (IDE): visit Download the corresponding installation program according to your operating system. If you are a Windows user, please select the “Windows Installer” to download and install the driver correctly.

After the download completes, run
the installer. For Windows users, there may pop up an installation dialog box of the driver during the installation. Please agree the installation when it appears.

After installation is completed, an Arduino software shortcut will be generated on the desktop. Run the IDE.

Step 5: Install Library

After the library is installed successfully, you can find the MsTimer2.ZIP library under Sketch->Include Library

Step 6: Upload Program

After the preparations above, next we will upload the program (example sketches provided) to the Adeept UNO R3 board.

Open the program provided for the control board, the file “AdeeptLaserHarp.ino”.

Connect the Arduino UNO R3 board to the PC. Select Tool -> Board “Arduino/Genuino Uno”, and Port - > COM5. Also here is COM5, assigned to the Uno, but it can be COM1, COM2, COM3...