So you think you want an accelerometer

A couple of servers are down at the moment here at work, so my usual news-site stumbling revealed this little gem of an article:

In it, the author describes how university professors use a bluetooth interface to a Wii remote to calculate positioning of a pendulum based upon the accelerometer and IR sensor output of the Wii.

A Wii remote retails for $39.99 and includes all 3 axes of output data plus and IR sensor data you can use as a (dynamic, non-static!) reference point:
http://www.bestbuy.com/site/olspage.jsp?skuId=8054464&st=wii&lp=6&type=product&cp=1&id=1158316638167

The accelerometer that comes with the kit of parts costs $30 if you buy 1000 of them at a time and includes a single-axis sensor with a signal processor that determines the difference based upon the sensor’s never-to-change initial state.
http://www.analog.com/en/prod/0%2C2877%2CADXRS150%2C00.html#price

For a second, let’s ignore the fact that currently there exists no bluetooth interface for our current robot controller. It is possible that in the future we will be able to interface to it in a much more intuitive and/or complex manner than we have now.

I do believe that the future holds a bit more for COTS (commercial off-the-shelf) products than anyone has realized. Would you go for the Wii for it’s 3-axes + IR sensor for an extra $40 or are you happy with a generic, single-interface design that’s provided for us every year? I ask this question with on-robot feedback control loops in mind rather than a human-robot interface controller.

i never even thought of using it as feedback on the robot. ive always pictured it as a method of operator control. thanks for the heads up

Jesse,
This is a great topic of discussion. What other COTS items are you thinking of? Assuming that we may have an improved interface in the future what would be on your wishlist? Furthermore, what capabilities/functions would you want the control system to have? With rumors of a substantial change, I think the powers that be at FIRST are probably perusing threads like these for ideas to incorporate into the next generation control system. We should let it be known what we’re hoping for since we’re the end user.
-wayne

what advantage is there to using a Wii remote rather than a traditional accelerometer? It seems like a good idea if you want a pre-packaged/read-to use accelerometer for experiments… but for robots it seems more costly and we are probably willing to do some soldering and wiring …

Sony SIXAXIS controllers allow you to do the same, but you can disable the radio and communicate via USB. Greg Marra and I were developing a system to control OI inputs via a Wiimote (with a BT enabled laptop as the middle man) but the project fell through due to lack of interest and the fact that it was a hacky solution to a non-existent problem.

I also had the idea to use these controllers paired with an elegant software package to have an onboard Inertial Navigation System. Since I probably won’t complete this, feel free to steal the idea.

If there’s ever a game where we want to control the roll/pitch, or 2-/3-dimensional planar position of a manipulator, I believe it’s easier done with something similar to the wiiremote than by using the traditional accelerometer. Traditionally, robots I’ve seen use the accelerometer to determine robot position relative to its origin – but what if we could instead provide enough feedback to control a manipulator that’s on the robot? Perhaps there’s too much shaking on the end of a manipulator, but I’ve seen some creative dampening methods used this year.

Cost-wise it could perhaps save you the cost of potentiometers, limit switches (though they’re still a good safety mechanism), and/or range finders if you use those such things to position your manipulators. Another example (not related to robotics) is that the cheapest 120mW+ lasers come from DVD burners rather than buying them non-bulk from a supplier (behold my new mini maglite!).

Time-wise if we grew to understand the interface I believe the time-cost savings could become exponential so long as we nail down the proper assumptions about the wii-remote or any other 3-axis accelerometer. While our current accelerometer is already mapped out & coded with our current RC, it could simply be a matter of time before the Wii could be interfaced as well.

Don’t forget the fact that use of the Wii Remote would have been illegal in all games up to and including 2007 since it is a wireless device. Though it’s possible this will change in the future, it’s probably not likely (already enough complaints about radio problems during matches, I’m sure the refs don’t want to hear “Team X’s Wii Remote caused our robot to freak out and lose the match!”).

Not to be calling anybody out but it would have been legal any year as long as wireless devices go…Who said you must use the blue tooth. The data has to be sent to the blue tooth transmitter somehow. Now the question is whether you want to spend the time reverse engineering the device. Also if you go with the latter option you need to see if the time you spend on the device is worth the money you save. Even if you do use blue tooth. There is blue tooth support for the 07 controller, you need to go buy something to interface to the controller though. (there is support for anything, just not all of it is built in :wink: )

EDIT: Or better yet…Just take the sensors out. unless they have that weird hard thermal plastic stuff on it. And even if it is SMD just do hot air rework on it. You can easily make your own PCB.

-John

It seems to me that there is no way to talk to a Wii Remote other than Bluetooth right now. Since the CPU and Bluetooth radio are all implemented on the same IC good luck removing the Bluetooth while retaining any of the rest of the functionality. I guess you could theoretically write new code for the 8051 core and burn it into the EEPROM, but that’s a lot of work given my next piece of information below:

EDIT: Or better yet…Just take the sensors out. unless they have that weird hard thermal plastic stuff on it. And even if it is SMD just do hot air rework on it. You can easily make your own PCB.

Just buy this instead which is the exact same accelerometer that is used in the Wii Remote, ready to interface to, and cheaper ($35).

All that said, I do think that interfacing to this remote is a nifty non-competition project, though. I’ve been toying with the idea of picking one of these up for a while now just to play with it.

EVERY time I walk into an store I spend about 20 minutes around the controllers. I pick them up, walk around, and decide I don’t want them, and pick them up and the cycle continues…I have planned [as I did the last 5 visits] that I will pick one up and leave with one next time I leave the store. If only I can follow through… lol. :rolleyes:

Fantastic find Dave, I’ll research a bit into it.

Wow, I guess I was wrong! I didn’t even know the CPU and the Blue tooth transmitter were on the same IC. I never even knew they made ICs like that. Well You could still probably take out the sensor. But I guess you can disregard my previous post all together! I guess maybe I should start asking the Daves before I post :stuck_out_tongue: (yes more then one Dave)

-John

I believe the wii uses a ST Micro chip and not a Analog Devices. If I got the right chip, the output is digital SPI or I2C. Not good for our current RC or OI. Freescale, Analog devices, STM have analog 3 axis chips that would be of more use to our current electronics. There are several break out boards available from the manufactures or third parties. Most of the new chips are not in very friendly surface mount packages. Also most are lower voltage devices. Another problem to overcome.

The guys at Spark Fun tore one apart and identified it as the ADXL330. I suppose it’s possible that Nintendo changed to a different vendor at some point but I doubt it.

I based my statement on a press release from ST Micro. Maybe there are more than one version and supply for the wii controller accelerometer or ST was ditched at the last minute. Any way the board Dave posted would be easier to work with than hacking a controller.
ST does sell a development kit and break out boards for their 3 axis accelerometers. It might be worth the investment for serious development. Software is included to display capture and filter the output by a usb connected PC.

i thought the wiimote did direction and rotation. according to this it does http://www.wiili.org/index.php/Motion_analysis

just thought i would bring that up

That page clearly says that the Wii remote contains only a 3-axis accelerometer, and does not directly measure rotational motion. It does explain how one may infer angular orientation to some extent based on the constant force of gravity, and maybe you misinterpreted that to mean it has actual rotation sensors.

ah…ok. thanks for the information

http://www.nintendowiinews.net/Blogs/News/hqs/blr_4292.aspx

That link verifies Dave’s earlier post. Unfortunately that post was made in 2006. SOOOOOO I resorted to Wikipedia… sigh I’ve been trying to cut back /sigh anyways they verify Dave’s post as well, and if people browse Wikipedia as much as I do, the page would be changed within seconds of any announcement or notice in change of the part.

If the Wii remote is anything like the original Xbox, there are several manufacturing plants and not all of them use the exact same parts. Look up “hacking the xbox” to see how S/N-dependant installing Linux on an Xbox really is. The serial number not only tells you the date, but also the place, mfg. assembly line #, etc, which also infers to which DVD reader you have, PIC16F encryptor algorithm, etc.