Using a laser pointer and LED matrix as a 2D Input Device

Student Eiji Hayashi has created a very simple, yet unique form of electronic game based around an Arduino-compatible board. The display is generated using an 8 x 8 LED matrix display – nothing unusual there. However the LEDs also act as the input device by a method which is generally unknown until now. What we do know is when a current is applied to an LED – it lights up. However Eiji demonstrates that when a bright light is applied to an LED, such as that from a laser pointer – the LED generates a small current. This can then be measured using analogue inputs of the Arduino board, therefore giving us a form of input.

By rapidly switching the Arduino pins that are connected to the matrix between input and output types, the LEDs can then operate as a display and also a form of input at a rate which appears to be almost simultaneous. Taking advantage of this, Eiji has created a simple game where you use a laser pointer on the LED matrix to ‘shoot’ pixel aliens, and other controls. Watch the following video for his demonstration:

Laser Command from Eiji Hayashi on Vimeo.


Using this method is very simple, and the size of any possible matrix is only limited by the number of analogue inputs on your microcontroller. For example – you can have an 8×8 matrix with an Arduino Mini or Nano board – or using an Arduino Mega you could have a larger 16×16 matrix. So get yourself a laser pointer, then for all the details including schematic and Arduino sketches head over to Eiji’s website here.



  1. You really make it seem really easy along with your presentation however I find this topic to be actually something which I feel I would by no means understand. It seems too complex and very broad for me. I am taking a look ahead on your subsequent put up, I will try to get the hang of it!

Leave a Reply

Your email address will not be published. Required fields are marked *