This circuit is how [John Tsiombikas] makes his cheap 3D shutter glasses work with a Linux machine. It’s not that they were incompatible with Linux. The issue is that only certain video cards have the stereo port necessary to drive the head-mounted hardware.
Shutter glasses block light from one eye at a time, so that different renderings can be shown to create the stereoscopic effect. Since stimulating the muscles in the eye doesn’t actually work, you need to find a way to drive the glasses in perfect time with the video signal. His circuit watches for the V-Sync signal, then uses it to toggle the shutter glasses. Since the hardware has no way of knowing whether the left or right frame is being generated, he included the toggle switch as a user-controlled adjustment. If the 3D isn’t coming together, you’re probably viewing the frames with the wrong eye and need to flip the switch.
There’s really no way to show the effect without trying out the hardware in person. But [John] reports that it works like a charm when used with the OpenGL stereo wrapper.
Finally a good 3d glasses hack! I’ve been waiting for one!
I found glasses specifically designed for Linux, using the USB port for synchronizing and using the GPL Bino player. I’ve bought one and will let you know the results. Anyway for those interested here is the link and it says that it works for both 2D and 3D graphics cards and 60Hz and 120Hz:
http://www.see-3d.com
Awesome. I’ve been wondering if it would be possible to set up a teensy to respond to input from Nvidia’s drivers and report itself as an Nvidia module, and pretty much make older glasses work with the new software. I’ve got some Elsa Revelators that I’d love to get working.
i tried doing a thing with the analog comparator on an atmega328 (on an arduino nano) to read a photo-resistor placed at the corner of your screen. you would need to modify your application (or perhaps the video driver) to blink a little square there, black on one eye and white for the other. when the comparator tripped it would cause an interrupt which would transmit an infrared signal to toggle a pair of wireless edimensional glasses. the comparator worked and, with calibration, i could tell which eye should be blanked, but i never completely got the signal timing right, the glasses were always out of sync and would frequently stutter.
Excellent idea.
I patented that exact thing in 1991.
US Patent #5,245,319 Synchronized Stereoscopic Display System.
I really doubt if anyone will mind you using it.
(I have no idea how long patents last.)
I did it when I was working at Cray Research and we has a 2048×2048 display and couldn’t guarantee exact left/right/left/right frames, so I couldn’t use the VSync idea.
It was super fun at the time. SEGA Genesis glasses or something like that. I still have the hardware.
i had intended to use it for freespace open. the game uses opengl, but nvidia doesnt support its 3d vision on opengl games, unless you buy a quadro card. anyway the game has a lua interpreter which can run a small script every frame, from which i have control over both game cameras, so i can setup eyes, and the ability to draw graphics to the screen every frame, the black/white square to communicate with the hardware.
i got the idea from a video on youtube where a similar technique was used to provide a one way communications interface. the only reason it didnt work was probably because my oscilloscope sucks. its one of those build it yourself things, i dont think i put it together right. and so didnt get a good timing data when i tested the edimensional ir dongle.
Please someone make this into a plug and play for a regualr PC
Nice work. :-) I designed a slightly more complicated version that includes an optional line blanker circuit that can be used to fake an interlaced video mode from a progressive one (it blanks out alternate scanlines, toggling odd/even every frame) which allows you to view row-interleaved 3D. It can be found here – http://benryves.com/products/lcdglasses
I’ve been doing 3d with linux for over a year.
Let the display do the IR blinky signal. XBMC + projector, play 3D content = 3d theater. no hardware hacking required.
Would it be possible using this to show two different desktops at the same time on one monitor so one person only sees left eye desktop image and other only sees right eye image? Or even a video playing and a game?
@ dontknowwho:
Of course it would be, but you may as well just buy a second monitor with as cheap as they are.
If you wanna do it just for the sake of doing it, I am sure it would be no harder than many of the projects posted here.
Many cheap LCD screens can be modified to do 3-D.
The trick here is to synchronise the frame transitions so that the backlight is flashed when a complete image is displayed.
This avoids blurring…
Only works if the LEDs are fast enough, so you have to add a 1K resistor across the strip to make them turn off quickly enough by discharging their internal capacitance.
IS it me or does he not mention what parts he uses? What opamp? what flipflop? flipflop is probably the same as the inspiration 74LS73 I think though.
And a picture of a perfboard but not diagram how he wired it for convenience, sigh.
Funny to see this come along again! I’ve build the same thing 10 years ago for a project in university to use their overpriced sutterglasses with a cheap nVidea card (which didn’t include a shutterglass output).
Altough I think it was even simpler than this. It was build as a pass-though device on VGA (two 15pin connectors: one male and one female) and only used 1 flopflop and a XOR connected to a switch to setup left & right. It abbused an optional 5V line from the VGA port to power itself…
With some reading around the subject I found this doc on the control protocol for various 3D glasses….
http://cmst.curtin.edu.au/local/docs/pubs/2011-17-woods-helliwell-3D-Sync-IR.pdf