Arduino Based USB Paper Gesture Mouse

2,469

36

12

Posted

Introduction: Arduino Based USB Paper Gesture Mouse

Please vote for me in the conests

I have always been pretty amazed by the Capacitive sensor library of Arduino, It makes me feel like a super human, I can make any non conductive material to act like a touch enabled controller for various use cases, So here I thought of controlling my PC with the power of Capacitive Sensors and build a mouse using an Arduino Pro Micro and some home built Capacitive Sensors and a sheet of paper, So let's start...

Step 1: Material Required to Build Something Awesome!

(You can get a cheap deal for these components on AliExpress but I would only recommend that if you can wait for more than 30 days for the item to be delivered.)

  • An Arduino Pro Micro or A Leonardo.
  • 5x 1MΩ Resistors.
  • Single strand insulated wire.
  • A Bread Board(Or you can directly solder all the components on a PCB).
  • A Sheet of foil paper.
  • Electrical tape.
  • 2x A4 size paper sheets.
  • A Printer.
  • Lots of love and enthusiasm for DIY ❤️??(Mandatory).

Step 2: Making the Capacitive Sensors.

  • Cut 5 pieces of aluminium foil. 2 pieces of size(70 X 35)MM, 2 pieces of size(36 X 86)MM and 1 piece of size(150 X 19)MM (Or you can simply print the back side layout provided in the next step on a fresh sheet of paper and cut the aluminium foil sheet using the printed layout as template) I don't have a Cricut Maker but I think that if I had one it would have made this step easy as pie and I hope I win the Paper contest and win a Cricut Maker ❤️.
  • Add a wire to each of the foil using an electrical tape.
  • Our sensors are now complete, so let's move on to the next step...

Step 3: Making the Paper Mouse

  1. In the Paper_Mouse.zip file attached bellow, you can find 2 design files in it, print them on both the sides of an A4 size sheet of paper (The name of the design files are according to how they are supposed to be printed i.e. The file which is supposed to be printed on the front side consists of the keyword "(Front)" in it's file name and the file which is supposed to be printed on the back consists of the keyword "(Back)" in it's file name).
  2. Stick the Capacitive Sensors we made in the previous step according to their size on the back side of the printed A4 size sheet using the electrical tape.

Step 4: Setting Up the Arduino to Wrap Up the Awesome Work!

Connecting The Pins

  • Plug in the 1MΩ resistors to the following pins: (4 , 2) (5 , 3) (8 , 6) (9 , 7) (15 , 16) As shown in the image above.
  • Connect all the Capacitive sensors to the following pins:
  1. Top Sensor to Pin- 2.
  2. Right Sensor to Pin- 3.
  3. Left Sensor to Pin- 6.
  4. Bottom Sensor to Pin- 7.
  5. Select Sensor to Pin- 16.

Setting Up The Code

Extract the Paper_Mouse.zip file, Edit the code if you make any changes with the pins else keep it as it is and upload the code on to your Arduino Pro micro Or Leonardo board.

Step 5: Finally Testing Our Awesome Work!

Step 6: Known Issues and Future Capabilities (To Make This Awesome Work Even Better)

Known Issues:-

  • After uploading the code when we replug the USB sometimes, the Paper Mouse begins to respond very slowly(Like, really very slow!) and if we re-upload the code it starts to respond normally back again.
  • The paper sometimes moves here and there along with user's finger which oftenly gets very annoying (Possible solution: We can stick the bottom of the A4 sheet to an ivory sheet or some other heavier object.)

Future Capabilities:-

  • 4 more sensors can be added for all 8 directions(i.e. Top, Top Right, Right, Bottom Right, Bottom, Bottom Left, Left, Top Left) to make the mouse more user friendly.
  • 2 Sensors can be added in the middle to add the scroll feature.
  • Right Click button can also be added(Actually I forgot to do that?).
  • A matrix arrangement of Sensors can be used to implement all these features together which would use lesser pins and lesser wires.
  • We can add bluetooth capability to make the whole system wireless (This video by Evan Kale can be helpful to achieve this goal.)
  • The wires and Arduino should be hidden.
  • The design can be further improved but I like mine to be minimalistic.

I hope to come up with a newer version of the Paper Mouse to overcome all the issues and with added features as discussed above, ASAP.

And Please vote for me in the Paper Contest so that I can win a CricutMaker and come up with better and high end projects.

(Please drop in your comments below and let me know how can I overcome these issues or if you have some other suggestions)

Share

    Recommendations

    • Spotless Contest

      Spotless Contest
    • Microcontroller Contest

      Microcontroller Contest
    • Space Challenge

      Space Challenge
    user

    We have a be nice policy.
    Please be positive and constructive.

    Tips

    Questions

    7 Comments

    Got to make one of these. I already have a little arduino project with an IR range sensor that sends WIndow L and hence locks the computer when I walk away. Regarding the issue with wandering paper, I wondered if something could be done with a paper laminator

    you have done a great job! I will definitely vote for you. All the best! <3

    Thank you saberxjaisal

    Wow Great innovation thanks for your efforts

    Thank you so much AmarjitV

    Very nice but you're statement "I can make any non conductive material to act like a touch enabled controller" isn't possible... The material must be conductive to act like a touch enabled controller!!

    Thank you so much Floris!❤️ By the way, You can actually do that... In fact that is what I did here, I made a paper to act like a touchpad mouse. and that is possible because we are using an aluminium foil as a capacitive sensor (Here's a video to describe that). Also as quoted by the official website of Arduino...

    "Capacitive sensing may be used in any place where low to no force human touch sensing is desirable. An Arduino and the library may be used to sense human touch through more than a quarter of an inch of plastic, wood, ceramic or other insulating material (not any kind of metal though), enabling the sensor to be completely visually concealed. A capacitive sensor covered with paper or other insulator also acts as fairly good (human touch) pressure sensor with an approximately logarithmic response. In this regard it may surpass force sensing resistors in some applications."

    The link to which can be found here.

    (Please correct me if I am wrong anywhere.)