Gesture Universal Remote-control

Introduction: Gesture Universal Remote-control

About: Hi,I'm from DFRobot, a dream factory for robo-holics to make a better world.


Lying on the sofa, I am totally addicted to TV shows, my favorite one is Game of Thornes. My little sisters and brothers come back and take the TV control before I recognize, then the Thone is Peppa Pigs… I wish I could have a universal remote control!


One of my favorite things is to eat snacks when reading novels and watching shows. But sometimes it is annoyed to press controls with greasy hands. Hmmm, maybe you do not eat junk food, but fruits, the majority of people would love to eat them. When our hands were stained with fresh fruit juice, it will also inconvenient to take controls. As a senior foodie, I must solve it.

Start right now! Search data and found a new product Gravity: PAJ7620U2 GestureSensor

released by DFRobot. How about making a universal gesture control? During this special period, I have already stayed at home for a couple of weeks. If you are also getting bored, let’s make it together.

With this remote control, we can control the electrical
device by gestures. It also includes custom features, so it is theoretically possible to control all the electrical appliances controlled by the infrared remote control. Now, there is no need to worry about remote-control rob competition.


Step 1: Design Idea

Taking advantage of the ability to recognize multiple gestures of the gesture sensor, and lets the infrared module send a specific encoding (PS: enter to learning setup mode and store the corresponding remote control encoded into the EEPROM of the beetle) to manipulate the appliance once a particular gesture is recognized.

Step 2: Hardware Connection

Majority of these modules has connectors, plug and play,

free from soldering. Such a boon for poor hand-workers! In fact, before I started, I have decided to solder all parts… but to be honest, my work is too ugly…. Then I changed my plan.

Step 3: Programming

I selected Arduino IDE1.8.9 as the main software. You can

download it from and install it accordingly. It is easy to install but hard to debug. I have spent a long time in programming, but you would not have this problem. I have packed it for yours. Once you install the library file and upload “.ino” to hardware, you can just enjoy it.

Now I am shaking my hands to test the gesture sensor, the result is shown in the first image.

It’s fine if it is not connected to the computer, the OLED screen can also display the corresponding action, but the continuous display time is a little short. The code value in the image is the coding of IR be transmitted which is used to control devices. And these gestures correspond to different gesture descriptions.

This gesture sensor has 9 built-in gestures:

Up: wave up (in front of the emitter)

Down: wave down

Right: wave right

Left: wave left

Forward: be close to the sensor and wave

Backward: far away from the sensor and wave

Clockwise: wave clockwise

Anticlockwise: wave anticlockwise/counterclockwise

Wave: wave rapidly

If the gesture sensor captures your actions, the onboard Blue LED in Beetle will flash. Because the example code adopts a 10seconds sleep mode. So, it will lock itself automatically if there is no operation in the 10s. And your gestures may not be recognized by the sensor. Then you can execute” Forward” to back to work.

Why there are IR transmitter and IR receiver? Is it can only be used to control the TV? Is it possible to operate TVs with different codes? Could it be a universal control?

Yes, yes, this remote control is able to control all electrical devices based on the principle of infrared. Ha-ha, not only don’t worry about brother and sister to occupy the TV remote control board, but all electrical appliances with controls are in my control. With it, I can enjoy my master's life now!

As soon as the Wave action is made in the working state, it begins to enter the universal mode setting state, the display will show information as the second image shows.

It means the remote-control is receiving the gesture UP, and

you need to put the original control opposite to the gesture control and define the function of the original control to the corresponding gesture. For example, I want to wave UP and realize volume +. Then I need to take the original TV control to the gesture and press the key” volume +” and wave UP. Once the definition is set, an infrared encode will pops-up. Then you can define the next gesture and so on. In this project, I have defined 8 keys in all.

Step 4: Design the Crust

Choose for a long time, and finally, in a number of shapes,

I choose this shape.

Step 5: Set Size

My philosophy is "sharp", representing a very thin, very scientific and technological sense. The core part is thin, most places are only 9mm thick. How amazing a universal control can reach 9mm thin!

I am not a professional structural designer, and can only roughly set size. After modeling, the 3D printing result is acceptable, as shown below:

There are two files in the zip: the 3dm file and the STL

file. The model STL has two files, corresponding to the upper and lower two parts. Once printed, stick each component with a hot melt. If you want to modify the size setting, you need to download the 3dm file. I am sorry that 3dm file could not be uploaded to here.

Step 6: Install All Parts

Enjoy it!

Be the First to Share


    • Organization Contest

      Organization Contest
    • Micro:bit Contest

      Micro:bit Contest
    • Retro Tech Challenge

      Retro Tech Challenge