How I replaced the driver board of 3D shutter glasses to run an experiment on my own strabismus
May 31, 2026
A few years ago, I had a rather far-fetched idea. A bit of a half-baked scheme, but one I eventually decided was worth trying. It'll take a minute to explain, so please bear with me.
Since I was a small child, I've had strabismus - my eyes haven't lined up right. They've been crossed at a fixed angle of about 15 degrees. I did vision therapy as a kid, and it helped somewhat, but I was told I'd never fix it without surgery. I can somewhat fuse the two images, but my depth perception is cruddy. I normally use my left eye for looking at stuff, but can switch back and forth between eyes on command. My eyes are physically fine, the issue is purely with the control loop in my brain.
Oddly enough, though I have 20/20 vision in both eyes, my reading speed with my left eye is more than double that with my right. With my right eye, I constantly lose my place and struggle to scan the lines correctly. I lack the muscle memory to scan my eyes across the page correctly. We often think of reading as intellectually matching squiggles to words, but believe me, it's also a motor skill.
I figured I needed some way to retrain the control loop aiming my eyes at things. Patching one eye at a time could help me use each individually, but not together. I thought if I could get my eyes pointed at the same thing, my brain might take a hint. I decided that if I could block the vision to each eye alternately, I would be forced to constantly jump my eyes 15 degrees back and forth once a second or so. For obvious reasons, this would be annoying and inefficient. I reckoned that after a few hours, muscle fatigue would set in, and hopefully my eyes would just keep pointing at what I was looking at as the other eye took a turn. Then I could open a window where both eyes could see between the times I blacked them out, and perhaps learn how to fuse the images properly.
I didn't think I had an especially high likelihood of success. My eye doctor said I would probably just give myself a headache. My cursory review of the relevant research literature revealed a few studies on patching one eye, then the other, but little on higher-frequency alternation and strabismus with a fixed deviation angle. My attempts to review the literature also left me drowning in unfamiliar jargon and left me hopelessly confused. Despite this, I decided I'd give it a shot. If I succeeded, I'd have a neat case study to write up, and if I failed, it would still be a fun project.
There were some multi-hundred-dollar research setups that existed for this sort of thing, but I'm a broke college student. So I went to Amazon and bought a cheap pair of liquid crystal shutter glasses for $23 or so. Before the tech went out of fashion, these were used for watching 3D movies at home. The lenses are liquid crystal cells that go dark in an alternating pattern, synced up with the framerate as the TV alternates between two images. All I needed to do was to turn the speed down by 60 or so times.
Unfortunately, the glasses I bought used some proprietary wireless protocol for that syncing. Inside was a PCB full of chips I couldn't identify, with a 65mAh LiPo battery behind it. I couldn't even read off the waveforms used to drive the LC cells, as I had no source for the glasses to sync with, and they were inert absent such a source.
I desoldered the lenses from the glasses and used a function generator to determine what voltage (4V) was needed to darken the lenses. Then I designed a replacement PCB to fit neatly into the space the old one had occupied.
I used an ATtiny404 microcontroller driving an H-bridge to generate the necessary 2kHz AC waveforms. I didn't have the vertical clearance for most kinds of connectors, so I broke out the programming interface as 0.1" spaced pads and pressed standard header pins to the board to program it. I'm not sure what the standard method is for solving this problem, but this design worked really well. I implemented battery management circuitry to protect and charge the battery, and a buck-boost converter to efficiently produce 4V no matter the state of charge. I tried to minimize power consumption to maximize battery life via low-power MCU modes, disabling the H-bridge when it wasn't needed, and selecting power ICs with low idle current. I measured the position of the button, charging LED, mounting holes, and micro-USB port on the old board and kept them on the new one. Space was tight when I laid out and routed the PCB, so I had to relocate the reference designators to the back side. Looking back, it would probably have been worth it to pay for a 4-layer board instead of squeezing my traces onto 2 layers.
I 3D printed a dummy copy of the designed board to check dimensions and everything fit perfectly. I ordered the boards via JLCPCB's PCBA service for about $60. This was my first project with primarily SMD components, and I lacked the tools to solder it by hand. I saved a great deal of time slogging through the ATtiny datasheet by leveraging AI to help write the firmware. I used some kludgy workarounds because I couldn't find the root cause of a bug causing the MCU to lock up, but got it working in the end.
While the electronics I designed worked near perfectly, I didn't get the optical performance I was hoping for and was quite disappointed. In particular, the contrast ratio between the light and dark lenses was far lower than I wanted. Thus, the dark state functions more like a sunglasses lens than an eye patch. Additionally, the opacity depended highly on the light's angle of incidence. I swapped the left and right lenses so that the highest contrast was at the point where my eyes overlap, but it's still possible to keep looking at the same object with only my left eye as the lens cycles from light to dark and back. I suspect this is a consequence of me buying cheap, low-quality 3D glasses to start with. I'd assumed that to avoid one eye's image bleeding into the other the original engineers would need a quite dark lens state. Either these glasses were worse than I thought from the start, or I neglected to take into account that the eye measures light logarithmically and is quite sensitive. Not checking the optical performance of these liquid crystal cells sooner was a major error.
I've been giving the glasses a try despite the optical issues. I have not yet worn the glasses very much - only for about an hour so far. My vision alternates like I wanted, and I noticed mild eye strain. My eyes feel like they used to after certain vision therapy exercises. It takes a surprising amount of concentration to keep my eyes pointed at what I'm trying to look at. The polarization makes it impossible to use my computer monitor. Nothing exciting yet; the two biggest effects thus far are that these glasses are really annoying and that they make me look ridiculous. I'll update this section as I test the glasses further.
Honestly, this project was more about doing electronics than fixing my vision. After I finished the technical aspects and the lens opacity was not what I had hoped, my estimated chances of success have fallen and I've had trouble maintaining interest. There's still a chance that the glasses will have the desired effect. Even if they don't, this was a great project. I hit the flow state so hard I accidentally worked until 3 AM and then dreamed about datasheets. I learned to check that my hardware will fulfill my requirements before I spend a week building a PCB. I got a bit more experience with KiCAD and learned how to design for automated assembly. I learned how to select parts from the thousands of options available. (Who am I kidding, I usually just sorted by the number in stock and picked from the top dozen options; when I'm doing nothing unusual, what's good enough for everybody else is probably good enough for me.) This project was a bit less well-trodden than my last one (the keyboard). It was fun to make something with fewer tutorials to work from. And hey, I might have given somebody another good story about the weird type of students you'll run across in the engineering building.