[WIP] - 17” LCD LLP mini table
Posted: 08 February 2010 04:00 PM   [ Ignore ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Hi all.
I’ve started a blog to document my work on an MT table, and I’ll also post here what I’m doing. Hope you’ll enjoy it and that someone would find this useful.

-------------------------------------------------------------

I’ve been thinking for a long time about building me a multi-touch setup, and since I don’t have budget for a beamer BUT I do have an old (7 years) LCD that is going to be replaced by a brand new 22″ screen, maybe I should just try to break it open and make something cool with it.

51TSWF5CX5L._SL500_AA280_.jpg

The LCD is a Sony SDM-X82 : 18.1″, 1280×1024, 400:1 contrast ratio, … I first wanted to use it to make a DIY projector, but as it have the Anti-Glare coating, I wanted to try the multitouch first (don’t really want to soak it in water).

I was fortunate enough to find the service manual for this screen on eserviceinfo.com.

I’m not sure how I’m gonna work with the plexyglass, leds, etc… but first let’s gets this baby open.

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 08 February 2010 04:08 PM   [ Ignore ]   [ # 1 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Jan 18th 2010

Opening the screen :
7 years, still working, but I’ll get a better one soon, so let’s get cracking.
IMG_0017.jpg

Already have sound built in. I’ll see if I keep this.
IMG_0018.jpg

IMG_0019.jpg

Buttons board
IMG_0020.jpg

CCFL Inverter
IMG_0021.jpg

Main Board
IMG_0024.jpg

Almost Ready To Go
IMG_0030.jpg

IMG_0031.jpg

IMG_0032.jpg

Still Working
IMG_0035.jpg

Unfortunately, I’m missing a screwdriver, so I was only able to separate all the boards (controller, power supply, etc…) from the screen itself, but not the LCD from the backlighting module. I’m just glad that it’s still working even all torn apart

Oh, and the PS3 eye I bought a few weeks ago has already been modded. I followed peauproductions’ video tutorials to do it but as I’m more of a brute force attacker, I broke the original IR filter. Too bad, some shards of glass went to the trash. I used the floppy disk method, but it is clearly not a good visible light filter. Maybe after I finish the IR panel, I’ll change the filter.
4281978828_ffa0d514de_o.jpg

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 08 February 2010 04:17 PM   [ Ignore ]   [ # 2 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Feb 1st 2010

I just got this brand new old screen :
7001-300x225.jpg

It’s my brother’s old screen that was laying around for quite some time now. NEC LCD1701 : 17″, VGA input only, works fine so far. I might open it this week-end and use it instead of the Sony screen I opened earlier. This one seems to be easier to crack open and I might get access to the backlighting panel more easily.
Oh, and I have a few sketches on Solidworks that might be worth to look at, but I still have to go to some hardware store and see what kind of aluminum U channels are available before finishing my draft schematics.

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 08 February 2010 04:19 PM   [ Ignore ]   [ # 3 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Feb 1st 2010

So we’ve been talking about the hardware part, but what about the software ?

First of all, here’s the deal : I’m a mac addict, but I want my code to be able to run almost anywhere. To achieve this, I plan on using Java (with all the JOGL fun that I want) and/or Processing for fast prototyping. But that’s just for the visual part. All the tracking will be done using an external app (like tbeta aka Community Core Vision) and communicating with the eye candy using the TUIO protocol.

Those are the outlines, but I still have to weight which tracker I’ll use : tbeta, touché, … I may even use tongseng to test my apps (if I write any) before finishing the table. I guess my choice of software will be dependent on which one performs best with my setup (which I’m not sure if it will be a FTIR or a LLP setup, gotta look more into this)

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 08 February 2010 04:22 PM   [ Ignore ]   [ # 4 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Feb 6th 2010

I finally bought the tools (new screwdrivers, yay!) to open the Sony screen. And I have to say that I hate good build quality : glue everywhere, really tight screws, etc… Oh, and I cut a flat cable going from the controller board to the LCD panel, trying to get the glue out of the way. But I was using an exacto knife, so it’s my fault.

I don’t feel terrible about ruining this screen because it had 2 flaws : it was old and used (there was a shadow on the bottom) + it had the infamous FFC issue. A flat cable was going from the controller board to the side of the screen. Maybe I could have found another longer cable to get it out of the way but now that it’s dead, too bad. The backlighting will make an awesome lamp.

Anyway, I opened the NEC LCD1701 I got a few days ago, and this one was a whole lot easier to deal with. I now have a dissassembled LCD, ready to be mounted on a box that I’m still drawing in Solidworks.

1-150x150.jpg 2-150x150.jpg 3-150x150.jpg 4-150x150.jpg

On the last photo, I’m holding the PS3 eye behind the LCD panel, and flashing a remote control in front of it. There’s almost no loss in the amount of IR light the camera can see. Now I’m sure I can continue with this panel, and I don’t need to remove any anti-glare layer or whatever.

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 08 February 2010 04:24 PM   [ Ignore ]   [ # 5 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Feb 7th 2010

LLP_render.jpg

Ok, this render is crappy, but SolidWorks is not really meant to do that.

Anyway, I think I have the final design of my laser “holder”. I have to order some and measure it before finalizing this design. The LCD panel is at the right scale (measured it today), and I sized the Acrylic parts so that they can be laser cut using Ponoko services. This design would cost me around 50$ in Acrylic, laser cutting and shipping. I assumed that the lasers are 12mm in diameter and 30mm in length, but I won’t be cuting the acrylic until I am sure of those dimensions.

But I’m pretty sure you don’t care about those silly details. What you want to see is how the lazors are held in place. Well, there’s nothing revolutionnary here. It’s derived from Ajlovegroves’s tutorial.

assembly.jpg

Two sheets of 3mm Clear Acrylic XT are playing the role of the bread in a sammich while the LCD panel is the meat. The top sheet is cut to let a passage for the laser module. The bottom sheet have one of it’s side with a large cut in order to allow for the ribbon cables connecting the LCD to the controller board to fold over. Two acrylic supports are beneath the bottom sheet and 4 M4×16 screws hold everything together. The laser is held in place by using straps or zip ties going through rectangular holes in the supports and bottom sheet. This should allow for easy rotation of the module. The LCD thickness is around 2/2.5mm, add 3 to this and the laser line should be just above the top sheet.

I hope it will work…

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 08 February 2010 04:31 PM   [ Ignore ]   [ # 6 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Feb 8th 2010

IKEA_ASSEMBLY.jpg

I had some spare time, so I threw this little mockup of the enclosure I want to build. The sides will certainly be closed, and I still have to calculate / measure the eight needed for the cam to see the whole screen. Right now, the “table” is 450mm high.

Today I ordered my lasers from Aixiz : 4x780nm 25mW lasers + 120° line lens + plastic mounts. I’m waiting for my parts before buying the plexyglass, as I have to redraw the plans with the final lasers dimensions.
By the way, peauproduction have a CAD drawing of the lasers (that I couldn’t find on Aixiz website, weird).
Get it here.

I first wanted to buy from peauproduction’s store as he had some nice stuff (like the complete package you can get with the filters and such + the spare PS3 Eye lenses) but I live in France, and the shipping fees were just huge as an elephant (something like 46$).

---------------------------------------------------------------------------------------------------------

I’m not really sure I understand what FOV means, but what I think is that it’s a cone of vision going from the focal plane (lens). We know that the PS3 Eye has a FOV varying between 55 and 76°. I’ll use 76° because when you take the camera apart and remove the IR Filter, you also remove a lens and your camera is out fo focus unless you screw it just a little bit before the 76° mark. Anyway, with my 17″ screen, I have to put the focal point around 285mm below the screen. I may get it a little bit farther, in order to have a margin for detecting the touches.

FOV_1.jpg

FOV_2.jpg

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 09 February 2010 03:39 AM   [ Ignore ]   [ # 7 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Feb 9th 2010

So I just got this old Dell Inspiron 5100 computer. My boss gave it to me and it seems like it works like a charm. I’ll try to install an osx86 distrib or linux on it and see how fast it is. If this computer can do all the tracking + applications, maybe I’ll just stick it inside the table.

dellinspiron5100.jpg

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 12 February 2010 05:00 PM   [ Ignore ]   [ # 8 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Feb 12th 2010

So I’ve been desperatly trying to have the PS3 Eye working under the latest Debian I installed on the Dell Inspiron, but I think that kaswy’s driver isn’t working for my because of the linux kernel version I have (2.6.32).
I was originally going for a debian minimal install with Xfce in order to have the smallest system possible. The OS was eating only 40Mb of RAM.

Right now, I’m installing Xubuntu 9.10. I’ll try again to follow Kawsy’s instructions and eventually, I’ll have a working PS3 Eye under linux.

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 21 February 2010 11:01 AM   [ Ignore ]   [ # 9 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Feb 16th 2010

I’m sorry guys, but it’s gonna be a long story.

As you may have read, I received a free laptop from work. But it’s a semi-old computer : Pentium 4 2.8Ghz, 512Mb RAM, ATI Mobility Radeon 7500C. I wanted to try to use it inside the table, so that I can have an embedded system and just plug an AC outlet.

In short : use a 2.6.31 kernel + patch the PS3 drivers and the unicap lib + recompile CCV using the new unicap lib = awesomeness

To be able to get the most out of it, I decided I’d go with a minimal Linux install. Having an old Windows XP or an osx86 running on this beast would only mean wasting memory on unecessary tasks.

First step : go get a Debian, and install it ! The minimalistic Debian install I had was eating only 40Mb of RAM. I used a net install CD, and when asking for the softwares I wanted to install, I just unchecked everything. Then comes the fun part : installing only what is needed. More on that later.

Unfortunately, there was a problem : it was using the 2.6.32 kernel, and to be able to get the PS3 eye to run under linux and control it’s properties (frame rate, resolution, etc…), you have to patch some drivers. I tried Kaswy’s method with the 2.6.32 kernel but that wasn’t working.

Ok, so let’s try xubuntu. The latest Xubuntu (9.10) is shipped with the 2.6.31 kernel, so this was a good news. Bad news is that the slimest xubuntu I could get was still eating 140Mb of RAM, a hundred more than the Debian I installed a few days ago… Well, I discovered that with this kernel, compiling the PS3 eye drivers was no longer a problem.

Back to the starting block : reinstall your naked Debian, just add a lightweight window manager (I chose LXDE) and be prepared to get really geeky.

Kaswy said that he compiled his patched drivers using the 2.6.31-10 kernel, so let’s go to kernel.org, and download the sources.
Starting now, it’s just a matter of following this tutorial (ubuntu is built upon Debian, so it’s pretty easy to follow). After a few hours of compiling, I get a beautiful “segmentation fault“. Running memtest shows that I have some bad “sectors” around the 480th Mb of my 512Mb module. Ok, let’s do this again, but this time, we’ll restart linux using the mem=450M option. Compile is fine until 1 little source file (some wireless module, I think) have an error. Well, let’s comment the line and relaunch the compile… After maybe 5 or 6 hours, kernel is compiled and installed. woot !

It’s time to get patching. I try to recompile the PS3 eye drivers with my new kernel : all is well. I can now use the videomode option and such. Next, I download the sources for the unicap library v0.9.8, modify a bit Kaswy’s patch to the lib (just changed the path for the files, nothing in the code itself) and compile + install unicap. Eveything is fine : I can see the image from the cam in ucview. Unfortunately, I think the USB ports of the computer are starting to get overcrowded because if I try to run the PS3 eye at 60fps @ 640×480, image gets kind of out of sync.

And here comes the real fun stuff : getting CCV to work. I first tried using the binary build of CCV from nuigroup.com, and it was awful. I got segfaults, I got low framerate, I got a weird bug forcing me to reboot after quitting CCV, …

So let’s get the sources from the SVN and try to use Code::Blocks to build it. I have to say that I don’t like C::B. I don’t know why, but I’m more used to Eclipse (for Java + ActionScript 3) so I wanted to keep the same IDE.

First step was to get openFrameworks (CCV is built on top of oFx) to compile, and here was the real deal. oFx is meant to be used with C::B, so getting it to work with Eclipse + CDT (Eclipse plugin for C and C++ dev) was hard.

I never coded in C++ before, even though I did a bit of Objective-C, and the hardest part of getting oFx/CCV to build was to link all the libraries and sources. I’ll certainly make another post another day about how to get oFx and CCV to build from Eclipse. You have to go through a lot of aptitude install whatever to get all the libs necessary, like gstreamer and such.

I finally had the graphicsExample from oFx to build and run, so I was on a good way. I then merged the code from CCV into what I had for oFx and there was a whole lot more of problems. The worst one was that when I finally had the project to build without error, it wouldn’t launch.

GDB comes to the rescue : after some debugging, I finally see that the problem was coming from ofxGuiButton.cpp. Searching for this file on google, I find a post from Nikolaus Gradwohl on the nuigroup forum (his only post, in fact) saying that you have to change one little line of code.

After that, everything was like heaven : CCV was compiling and it was running fine. With the default settings in config.xml and as I used the patched unicap v0.9.8 lib, I’m now getting 30fps in CCV when in “big size” and 60fps when running in fast mode (space bar). But the best thing is that it’s using only 40 to 60Mb of RAM (for a grand total of max 100Mb including the OS). AND it has been running for almost an hour now. AND it has not crashed yet. The not-so-bright point : 50~60% CPU cycles, that doesn’t let me a lot of room to build the apps I want to display on my MT setup. I haven’t tried to install the proprietary ATI drivers on the machine, and I don’t really know how the GPU is used by CCV, but I’ll try to see if I can balance some of the processing power from the CPU to the GPU.

There’s not a lot of technical details in this post, but I’ll write some kind of step by step later. I think I’ll trash all the stuff I did in Eclipse and restart at 0 to make a really clean project. I’ll get sure to make a lot of screenshots.

Or I may get lazy and do nothing.

Good luck to all of you who wants to get CCV running under Linux wink

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 21 February 2010 11:04 AM   [ Ignore ]   [ # 10 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Feb 21st 2010

I received my 4 780nm 25mW lasers from Aixiz, so I started building the LLP.

Yesterday I went and bought some plexiglas sheets. Unfortunately, they had no 3mm and they couldn’t cut it to size, so I bought one huge 800×1200mm sheet of 2.5mm thick , along with some M4×15 screws, bolts and washers. Protip : score a deep cut in your plexiglas using an exacto knife then just snap it along the mark, it goes smoothly. Using the plans I drew earlier, I cut some space for the lasers and drilled the holes for the screws. Here’s how the final assembly looks like.

LLP_01.jpg
LLP_02.jpg
LLP_03.jpg
LLP_04.jpg
LLP_05.jpg
LLP_06.jpg
LLP_07.jpg
LLP_08.jpg

To power the lasers, I’m using a USB cable that was once used for an external 2.5″ external HDD. This cable is cool because it has 2 USB plugs, if one port doesn’t provide enough current you can plug the second one and double the current. No fancy wiring, just black to black and red to red. The strange cable with a forest of connectors used is something I had laying around, I don’t remember where it came from.

After some really bad results using the floppy disk method to “filter” IR light, I changed and used the Negative Flim method. Here’s the ouput from macam under OSX without touching any parameter.

macam_01.jpg

The thumb is directly on the plexiglass with nothing in between the sheets. The Three other touches are above the LCD panel. I still have to work on the lasers leveling, but it seems it could work. By the way, the LCD wasn’t powered, so I’m not sure it’s not gonna emit a crapload of IR light.

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 22 February 2010 05:43 AM   [ Ignore ]   [ # 11 ]
Rank
Joined  2008-12-29
Total Posts:  6
New Member

Absolutely a great design of your acrylic top with the laser alignment…

Will be folowing this!

GL

Profile
 
 
Posted: 02 March 2010 03:00 AM   [ Ignore ]   [ # 12 ]
Rank
Joined  2010-02-07
Total Posts:  6
New Member

What program do you use to make the design.  It looks awesome.  Excited to see the finished product.
.

Profile
 
 
Posted: 02 March 2010 06:01 AM   [ Ignore ]   [ # 13 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

I did it with SolidWorks, professional CAD software

 Signature 

LLP + LCD Build Log

Profile
 
 
Posted: 02 March 2010 07:59 PM   [ Ignore ]   [ # 14 ]
Avatar
Rank
Joined  2010-01-17
Total Posts:  53
New Member

Sorry I did not write a lot of update, but I just finished writing a 2 parts post about getting CCV to run under Linux
Those are really long posts so I won’t copy/paste it here.
Here are the URLS :
Part 1 / Part 2
Cheers

 Signature 

LLP + LCD Build Log

Profile