position detection techniques?

Hi everybody!

First poster here, so please excuse lingo mistakes…

We are currently involved in a light tagging project using a Wii controller. You can read more about it here http://mysite.saeamsterdam.com/~500440, if you want. It works great ‘in the lab’, but we found that having the Wii controller read the IR data in a live situation is prone to interference, and also limits the user a lot in their movements. Now we’re looking for a different way of reading out where the controller is held on an xy grid. We thought of different techniques (camera tracking, high freq range sensors), but they all come with drawbacks (interference/cpu intensive and a whole new technical ballpark, respectively). We can pretty much attach or place anything to or in our controller. Somehow I feel there should be an easier way for this, that we’re missing, because we don’t know how to look for it (if that makes any sense)…

I know this is not directly Arduino related, but I thought there might be some sages out there that wouldn’t mind shedding their light on this.

If you have any ideas or further questions, please post!



Hi Joris,

The link doesn’t work so I can only guess what you want to do but one suggestion would be to combine the infra-red position data with accelerometer output from something like a nunchuck. The accelerometer data should be less susceptible to interference but it will quickly drift over time (you would be deriving position from acceleration and the errors will mount up quickly). But the infra-red data could be used to compensate for the drift so the two together may give you what you need. Its pretty easy to prototype, arduino code for this can be found in the playground so perhaps worth a try.

BTW, I presume you have seen the tracking stuff here: Johnny Lee's website has moved

Hi Mem

Thanks for your quick reply. Since the site does appear to be down (grrrr) I’ll explain what we’ve done. We’ve mounted the Wii controller into an old empty spraycan. Pressing the cap and moving the can will result in a line on the screen, which can be projected on a wall. Instant light tagging (well, instant after it’s run through some Pure Data and Quartz Composer spaghetti mayhem). Now the problem we have is that we’re bouncing the IR light through a hole in the can, onto a little mirror, into the Wii controller’s camera (since it has sit upright to fit in the can). This makes for a very weak signal and a controller that only operates within a very narrow area.

So we really want to do without the IR altogether (among others, it started picking up LEDs from the midicontrollers from a band that was playing). I played around with your suggestion of the accelearator data, but indeed without the IR it goes off the mark pretty quickly. In fact it reads different values at different angles (which is weird because it shouldn’t)

Basically what we’re wondering is, is if there are any other ways of getting the x/y position of the controller into a computer. Ideal case would be to fit something inside the can that can be registered by a sensor, if such a thing is possible. But we’re open to any ideas (high freq range sensors, RFID, cam tracking). We’d love to hear pros and cons from a community that probably has experience with these kind of things.

If it involves getting our feet wet with Arduino, al the better. It sounds like we’ll be needing one of those babies for future projects anyway…

Thanks again.


My best guess would be accelerometers + compass like Andrew Magill did with his orientation aware camera.
But I doubt you can have your X/Y positionning just with that, or you’ll have to become an accelerometer god