First of all, this disassembly method work for every laser pointer, and even those that it does work with, there’s still a possibility of damage. I used a package of 3 lasers like
this one from Amazon (no longer available – this single green laser pointer seems to be the same type), which gives you three tries one try to successfully disassemble it. The video should explain well enough how to take one apart:
If the end use is to control the laser light automatically, such as in my servo light-graffiti device, controlling the laser directly with a microcontroller is fairly straightforward. It does, however, involve a few steps. First, I soldered one side of the switch to another, as shown below, permanently closing the connection. After this, it’s a matter of replacing the power that would normally come from the battery with a microcontroller output.
In the disassembled laser in the pictures below, the negative lead is hooked to the spring that generally touches the negative battery side. The positive lead is hooked to the metal strip that touches the laser housing normally as in the video. Unlike the video, the button is shorted out with solder, so it doesn’t really do anything and it’s free to be automatically controlled.
If your laser takes a small enough amount of power, like small red lasers, the output can directly control the laser as in the aforementioned light graffiti device.
However, if your microcontroller doesn’t have enough current output to power the laser directly, or if the voltage level is off, you’ll have to use a transistor or relay to bypass your controller current limit. Some variation of the circuit below should work with a transistor, but note that you may have to modify the resistor values to get the desired brightness. Note that you can sometimes run a laser at higher than the rated voltage, but it may burn out after a while.
For some reason that I still haven’t figured out, the laser comes on when the output is off and vice versa. This can be corrected programatically, but if anyone has a good answer to why this is happening, please let me know in the comments! I’m a mechanical engineer by training, so transistors are very much at the edge of my knowledge.
I’ve been using lasers with the pyMCU (see my “servo-powered light graffiti post) and Richard, pyMCU’s founder, was nice enough to provide me with this illustration, and help with the project! He’s a site sponsor so I have to say nice things, but his “customer” service has been really excellent.