First of all, I'm primarily a software guy, so excuse my ignorance in this area.

What I am trying to do is detect the position and uniqueness of an object (say a small wooden cube) that is placed on a display.

I have looked into different touch screen technologies, and I'm not having any luck so far.

The only thing I can come up with so far is putting an NFC or RFID tag in the cube, and have several NFC readers under an eink display to triangulate the position of the tag. The problem is I need the system to be able to detect multiple objects locations at once, and determine their uniqueness. It also needs to be fairly accurate, so I'm assuming I would need quite a few NFC readers for this to have anywhere near a decent resolution.

I was thinking NFC because I can determine uniqueness, and eink because it is cheap, but I'm open to any new ideas.

Any help would be appreciated.


2 Answers 2


NFC, Bluetooth, WiFi, etc isn't going to work. At least not with the Electrical Engineering skills of a mere mortal. I suggest that you think outside the box, so to speak.

A capacitive touch (captouch) screen might work, but would require significant changes to the existing software/firmware. Changes that might be beyond what a captouch screen manufacturer will be willing to tell you what/how to do it. Even so, here's how it works...

Normal Captouch is done with a microcontroller directly connected to the sensors. It scans the matrix, and builds up a 2-dimensional array of capacitiance values. It then processes that matrix to figure out things like the position of various fingers and converts that to gesture data which it sends via I2C or USB to the main CPU.

What you want is the raw matrix of capacitance values. To get that, you have to reprogram the microcontroller to send it to the main CPU instead of the gesture data. This is much easier said than done! The difficulty is going to be getting the information from the captouch manufacturer; ideally firmware source code and instructions on how to compile and download it. The second problem is that many (but not all) companies that make captouch microcontrollers will often not give support to people who are buying less than US$1mil/year from them.

There is also a risk that blocks of wood and other objects won't have enough of a capacitive response for the captouch sensors to detect. They are generally more sensitive than what we're used to, because their sensitivity is often turned down for normal finger type applications. But I cannot say if they are going to be sensitive enough for your requirements.

But let's say that you work past all of these issues... Then you have to identify the objects. In this case you will have to do it by shape and "captouch response". You could tell the difference between a wood and plastic cube because one would measure a higher capacitance. Or the difference between a cube and a moon from the shape itself.

Now, let's assume that the captouch thing doesn't pan out. The only other option that I can think of is by using a webcam. I am assuming that your screen is horizontal, like a table, so you can place things on it without them falling off. In this case, place a camera on the ceiling above the screen. Then, detect the objects in the camera image. Combine it with some software that displays calibration patterns on the screen.

Honestly, if I were designing this system, I would go straight to the camera version. I have developed captouch hardware and software and it is a pain in the #^@%&. The software itself isn't hard, but dealing with chip manufacturers is a pain, dealing with screen manufacturers is a pain. And dealing with buggy libraries and such is a pain. Not to mention that the odds of you getting assistance for either the chip/screen manufacture is almost zero.

  • \$\begingroup\$ Thanks for such a detailed response. A camera isn't an option for me right now. If I was to go with your first option with the capacitive touchscreen, how would I go about beginning to research how to do this? Do you have any suggestions for reading material? \$\endgroup\$ Commented Aug 12, 2013 at 7:30
  • \$\begingroup\$ @rmaloney3 If you want the captouch option, your best bet is to find an already made screen that you can hack the MCU (otherwise you'd have to make your own screen, which is super hard). This is basically a research project (and still hard). After that, you go to the MCU mfg web site and start reading up on how they do thing. Read app notes, source code, etc. There are few to no books that would be useful for this. \$\endgroup\$
    – user3624
    Commented Aug 12, 2013 at 13:40

On a raster-scanned screen (such as an old CRT) you could da this with a photodiode, noting when the light source disappeared (just "sit" the black level up a bit to ensure it never gets completely dark!) Time since horizontal sync pulse gives you the X axis position; scan lines since Vsync gives you the Y axis.

As you didn't specify the display type I will claim this is a valid answer!


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.