Thursday, March 27, 2008

Different Tack

Well, after hack-a-day posted a version of the project I'd been working on, I decided I needed to do something new and unique. I think that thanks to al's suggestion (and a little sluthing on my own) I'm going to go for broke and try to incorporate some form of stereographic projection into it for a true 3d feeling, as well as incorporate the IR headset, instead of into a set of glass, into a set of behind the head earphones, and incorporate true stereographic sound as well.

That's a virtual environment. All that I'd need left to do would be to figure out how to do is wire bluetooth into your brains..... er I mean handle tactile input/output.

Anyway, while things've been slow going as work has been insane, I've got a bunch of idea's percolating, I really like playing with LED's and I have some ambitious things I'd like to do with them.

Thursday, March 20, 2008

How to Make Electric Origami

We'll take a quick break to update with a little filler. I've fallen a little behind with this project due to illness. This seems to be quite an interesting little project. Something fun you can do on a budget that yields impressive results. I would love to see someone make 1000 of these like they do with the peper cranes and then arrange them in some manner.

"This little LED-lit cube is much more than just a paper lantern: It's a translucent and flexible thin-film electronic circuit that hooks up a battery to an LED, limber enough to be folded into an origami box. And the coolest thing about circuits like these? You can make them at home."

read more | digg story

Friday, March 14, 2008

When software enters the picture

I took a cursory glance at the code projects provided as samples to go along with the Wiimote projects. It turns out there is good news and there is better news. One thing Johnny Lee neglected to mention in his online video tutorial were the config files that need to be set up, as well as the initialization that needs to be done once you've deployed the hardware. It turns out (and not unexpectedly) that the software that process the rig is very sensitive to relative positions of objects. So you need to specify the distance between the 2 points on your emitter (something in which my setup must vary from either the [standard] Wii Sensor Bar, or Johnny's Goggles [now that has a nice ring for a product name...]) you also need to initialize the vertical centerpoint. You also need to instruct the program as to whether the Wii-mote is above or below the screen. One thing that I did find interesting was that you never had to initilize your distance from the screen.

The rest of the good news comes from the fact that this doesn't look like complete gibberish to me. It'll take me a good handful of learning regarding whatever graphics package I go with (and that'll take research into which is the best/most portable) and it'll take me a little bit to remember all my trig/ELA, but it doesn't seem daunting.

Once again I hit a hardware wall. I'd not expected to run into that issue quite as soon again. Without a second Wii-mote all I can do is develop an environment that you can "look" into, but n ot simultaneously interact with. However this does free me up some time to think about "alternative" peripherals. Perhaps a series of additional "positional" sensors that detect hip movement, or shoulder twisting. Adding in gloves that provide force feedback.

In reality little of this would require a Wii-mote and I could engage in a lot of these projects (and have a lot of fun) without the use of a Nintendo branded product. But they provide such a nice platform of hardware for such an afordable price that I really can't say no. The other major issue I face is my complete lack of ability to fabricate housings. I can prototype and do the electrical/software design, but I've got nothing to put it on. I know some guys who do custom fab with a laser cnc, and I might know someone who could get me access to a cnc, but it doesn't change the fact that in the end I really end up paying for whatever I'm doing.

Thursday, March 13, 2008

V. 2.0 Complete

Well the new circuit was a success, although it wound up costing much more than expected. It did however double the range off of v. 1 and it seems like it made it much less sensitive to positional variation of the emitter. (Eg, it works better for a wider range of angles)

Final schematic was 6 IR LED's wired in series with a 15 ohm resistor all on a 9V battery. I upped the voltage to keep current down and it also allowed me to leverage parts I already had.

Parts list
4 IR-LED's 1.99 (each)
1 pack 9v battery clips 1.99
1 set breadboard jumprers 7
1 pack 22 ohm resistors .99 (Picked these up only since a lot of the equations I'd been working out seemed to require this resistor, this was not an immediate need)
1 button, on-off, spst switch 1.99 (I think)
1 9v battery ?

I did however get to test the rig on the projection screen and it works great. We did uncover one major problem. The angle between the camera and the emitter has to be on a virtually horizontal plane both to each other and to the axes of motion. Now that would usually mean you'd have to hang the wii mote on the level at eye level, which is far from optimal (unles you've got a CRT that already stands at eye level in which it's moot) but for a projection environment, or in the case of your having to view it from a laptop the odds of getting the wii mote in such a favorable position are slim. This needs to be adapted for.

However, with funding being essentially out for this phase, I will attempt the finger tracking demo next, just as proof of concept and then we're going under the hood boys and going to see if we can't make these little babies useful.

Wednesday, March 12, 2008

Just a few potential upgrades...

Spent some time thinking, and noodling out some of the kinks. I think I can boost the range on the system by building an array of IR-LED's. Granted this'll probably no longer fit in those spiffy glasses (At least without some serious mod. Still worth thinking about though.) Yet that'll fit kinda neatly into my plans. I'll be demo-ing the system tonight down in Geneseo hopefully w/ a projector rather than with my laptop.

So I'm also thinking about mounting them in a Cyclops-esque visor, simply for cool factor that and it'll leave me room to add additional components. Also contemplating (purely for form, no function at all) adding "bouncing" red LEDs for that Cylon feel.

On top of all that, I'm looking at either eye tracking, or finger tracking, ideally both. I'm going to have to look more into that.

But today's project is to double the range on the head tracking. I've got the schematics all sketched out, now all I need to do is buy the parts.

Parts List:
1 9V clip
6 IR LED's
1 15 ohm resistor (should be 18, but 15 should be OK)
1 breadboard
1 push button switch
1 pack misc lengths wire.

Total cost: <$20 (at radio shack)

Tuesday, March 11, 2008

Success!

Well this has to have been the easiest part. Even with my un-optomized version, I have a working proto-type. The range on the IR sensor can't be more than a yard or two, and getting the blue-tooth to reliably recognize the Wii-Mote is still proving a bit challenging. But we have a working proto-type. I figure a trip to Radioshack at lunch tomorrow on my break aught to give me the parts to up the output on the LED's (Hrm... perhaps if I use a block of 4 instead of a single one it'll increase the range, thus letting me hook the system up to a projection system...) But I'll lay it out now.

1). Wii Mote : Cost: $40
2). Misc. Parts from Radio Shack $15
3). Blue Tooth Dongle for PC $30

Final cost for project: 85 + tax.

Now if you could've waited, or shopped around a bit more you might've been able to save a few bucks (or if you own a mac with blue tooth already built in *grumble grumble*) but I wanted it now. So now some time will go into optomizing the throw length as that'll be required for the next phase. Finger tracking!

Short Circuit??

Ok, well I've been out of physics for 2 years, and I've been out of high-school physics where I probably did this last for 4 years, so I can honestly say that my mind has slipped a lot when it comes to simple circuit design. I'm pretty sure the guy at Radio Shack last night sold me the wrong parts, but that's not too bad only a dollar or two wasted on this endeavor.

What it boils down to is this. Until I can get myself a pair of swanky built in glasses with IR Led's I'm going to need to find a way to get around it. Not owning a wii, I can't even just hold the sensor bar on top my head. So my solution is to build one. I've got all the components I think I need (with perhaps the proper current limiting resistor) and now it's time to crunch the numbers.

My IR LEDs are supposed to run on 1.2 v forward current, and 100mA of current. For the time being I'm looking at running the whole suite off of 3v. Possibly because I think that I can get most watch style batteries in 3 volts and anything less seems very difficult to work with.

So with a little number crunching on my part (and a lot on the internets part) I came up with that with a single strategically positioned resistor I should be able to cause a 1.5v drop across the LED's with the proper current. Somewhere along the way, the internet disagreed. I'm going to run my numbers again tomorrow and see where I went wrong, but I'm almost certain I got it correct. So at the moment with everything wired in series. 3v DC from 2 AA 1 15Ohm resistor and 2 IR LED's we're getting a signal that the Wii can read. We have component 3 in its infancy.

I want to decrease the dispersal on the LED's since we're not trying to light the world. I also want to optimize the intensity on the LED's because I strongly feel that we're running really low on the efficency scale.

There was an interesting idea suggested the other night by the guy at radioshack. Something that bears merit to investigate. He had mentioned that eyes reflect IR (hence Red eye and such) and that it would be possible to leverage that fact to build an eye tracking system. I'm calling in my buddy from Hopkin's who's kept up with this to see if there's any merit in it. After that come the health concerns.

Monday, March 10, 2008

We have ignition!

Ok folks,
The majority of the hardware has been acquired and some of the software testing has been done. I'd bet I can get a working copy of the head tracking software up by Friday evening at the latest.
Only hangups so far: Make sure you know what you need if you're going to build your own sensor-bar/clip on IRLed units. I went to Radio shack and realized I didn't know how to push the right amount of current through the device.

The salesman (while being very excited to my cause, handed me an equation that had been done, flat out wrong. I double checked it when I got home so all is well, no parts lost but some returns must be made.

The USB-Bluetooth interface works like a charm. Took a little wheedling to get the Wiimote to talk perfectly with my system but that was all over with in about 10 minutes. I've verified that it is indeed talking with a 3rd party library called WiimoteLib v1.2.1 . There sample application sheds some serious light on what the Wiimote can and is doing every second. It's remarkable really. Such a small, rugged, ergonmic device with so complex underpinnings.

I've gone with C#.NET as my language choice, not because I think it's the best, but because I know it best and all of my readily accessable testing gear will be the .NET framework. I do intend to develop for Linux and Mac X, yet that's a longer term goal. I need to get as much of this up and running as quickly as possible if only so I can maintain my own momentum.

There was another glimmer of hope. Supposedly RIT's robotics team is already working on similar projects. I'm hoping to set up a face to face with them at some point so we can combine ideas and hopefully learn from each other. As I've said, I've got an extreme deficit of manpower. So anyone who wants to help me on this little foray into the unkown I would love to hear from.

Sunday, March 9, 2008

Manifesto!

Welcome all,
My name is Michael Kaplan and I'm former student at SUNY Geneseo. I'm currently studying Radiographic Technologies over at Monroe Community College and getting ready to get on the train out of dodge and head on to aquire my MD.

Yet, it appears the computer geek within me is long from dead and is in fact acquiring some nasty fangs. After having heard about it on the blogosphere for about a year now, I thought it was my turn to start hacking on the Wii. So with no previous experience other than my own personal knowledge of C#, .Net, Java, you usual web based 3 and 4 letter acronym languages and markups I'm going to attempt a string of technical demonstrations that all hopefully lead up to a project with surprising real world applications.

Right out of the basket we've got a great pair of technologies handed to us courtesy of Johnny Chung Lee.
Another huge shout out goes to Brian Peek and his Managed Libraries for Nintendo's Wiimote
He has written one of the most popular jump off points for all these zany creations.

I'm going to investigate right out of the box the head tracking and the finger tracking projects. I can see some incredible applications of those technologies, and I'm not the only one whose spotted them. Seems I'm jumping into this game about a year late. Still, doesn't mean I can't either do it better or with more injinuity.

I'm hoping to break out Microsofts latest breed of tricks "Silverlight" and leverage that to make development pretty and easy. *tries not to laugh* I'm also hoping I can make this run via webservices, I would really like to see this utilized over the internet via web services. I just keep finding a fresh idea around every corner I look.