What is Freeside?

Freeside is a Georgia nonprofit corporation, organized to develop a community of coders, makers, artists, and researchers in order to promote collaboration and community outreach. Learn more »

Props and costuming - Building an Ultron helmet

Hello, Freeside readers, and welcome to my first blog post!

My name is Michelle Sleeper, I am a prop and costume builder in Atlanta, working primarily out of Freeside's space. I have been building costumes and plastic space guns since 2001, and have been a member of Freeside since 2013.

My most recent major project was to upgrade a costume I built last year of the Marvel comic's character, Ultron. The costume owner wanted a new and improved helmet, made of cast resin and full of all sorts of lights. It was a big and ambitious project, and I was very excited to get started.




Here's how we got there.

From the outset we decided that we wanted the master sculpt to be 3D printed - but for those of you familiar with 3D printing, you know that extremely large prints are difficult if not impossible to produce. Most often, you will have to break your model up into many different segments, which you then assemble like a 3D jigsaw puzzle. We opted not to do that, and instead outsourced to a professional 3D printing company based in Florida called TheObjectShop. They have a Zcorp 650, which is a very large printer that prints in a plaster like material, which is then hardened with cyanoacrylate AKA super glue.

The resulting print, while expensive, was absolutely phenomenal.



Like all 3D prints, the surface had a texture to it that was unsuitable for our needs. I set about cleaning up the surface to as smooth as I could get it, a process which took about 2 and a half weeks. The process is simple - spray the piece with filler primer, fill any large problem areas with bondo or spot filler, and use increasingly finer grits of sandpaper - but extremely tedious and time consuming. I started at 80 grit to knock down some of the bigger problem areas, and worked my way up to 800 grit wet sanding. The results were a helmet that was nearly flawless.




Now that our master sculpt was completed, we had to create a 2 part jacket mold out of silicone. This would allow us to produce many different copies in urethane resin later down the line. Urethane resin is lighter weight and more sturdy than the brittle plaster 3D print. These are important factors, considering it would be worn for 6-8 hours a day (if not more) and require a bunch of electronics glued and bolted inside of it.
 
To create the 2 part mold, first we have to make a parting wall all the way around the helmet, which will be the interfacing layer where the 2 sides of the silicone molds touch. We use the end of our Xacto knife to create little bumps all along the edge, which are registration keys that help the two halves line up properly.






Once the first half of the silicone mold is applied, we flip the whole thing over, remove the parting wall, and apply a coat of releasing agent before we apply the second half of silicone. The releasing agent is absolutely critical - silicone will not stick to anything except other silicone. Without the releasing agent, we would essentially create a big silicone bowl which would be next to impossible to use for our purposes.





Once both halves of the silicone mold were created and fully cured, we created an outer rigid mother mold. This is used to keep the silicone mold held together, once the master is removed and the mold is hollow. It is also applied in two halves, and like the silicone we use a releasing agent when creating the second half.




To make the hollow casting, we use a technique called rotocasting or slush casting. This is where you pour a bit of your urethane resin into the hollow mold and rotate it around so that it evenly coats all of the surfaces with a thin layer. This is done 4-5 times using several small batches of urethane resin, so that we ensure every surface has an even thickness. Because the mold weighs around 10 to 15 pounds before we put a drop of resin into it, and because each layer requires about 5 minutes of tossing it around, I decided to build handles to form into the mother mold. This makes the mother much easier to hold onto during the already strenuous rotocasting process.

After you are finished casting, it's time to remove the mother and the silicone mold. What you are left with is a perfect reproduction of your master sculpt in a much lighter material. The casting process itself is a bit of a learning curve as every mold will be different. Certain areas will come out to be thinner than others, and the exact amount of material you need to use for each batch will depend on a lot of factors. What this means is that the first few castings will tend to be "duds", meaning they are unsuitable for your ultimate purposes - in our case, a wearable costume.




However, you can still dress up one of these bad casts and stick it on a mannequin to live in the space!



While we were working on sculpting the master and producing the molds, we were also working on the electronic guts that would go into the helmet. Specifically, there would be a set of LEDs set into laser cut acrylic, and a custom made 8 x 24 LED matrix for the mouth.

The eye LEDs are rather simple - I drew up a 2D design to bridge the width of the helmet's eyes, and then cut that out of 2 layers of opaque white acrylic. The inner layer was made of 6mm acrylic which the LEDs were set into and glued into place, and the outer 3mm layer was flat. The results are menacing glowing red eyes.



The mouth LED matrix, on the other hand, is worthy of it's own individual blog post, which I will be putting up later. The short version is that we found and used an Arduino Micro connected to three MAX7219 chips, which are designed to control an 8 x 8 matrix. The matrix had to be designed and wired up by hand, a process which took about 3 weeks of work. After some trial and error with the MAX7219 board kits we used, the whole thing was put together and worked flawlessly. Here is a test video of the center matrix in our temporary holder.



After the matrix was finished, a cover was laser cut out of 1mm clear acrylic and installed into the mouth. The LEDs were transferred into a similar housing for their permanent installation, and all of the boards were put into craft foam holders for protection and installed into the helmet. The results were nothing short of perfect!



At this point the project was finished and ready to be worn, but like any good project it has sparked a whole host of new ideas and "how to do it better"s.

Until next time!

Want to see more photos? Check out the complete build process on my Facebook page.

The JAM: Joy's Art Machine (First Build Recap)

BackgroundThe JAM (Joy's Art Machine) is a machine that distributes art. This project was fully funded by the Alchemy community. We are on track to collect somewhere between 200-300 pieces of art to distribute, including works by Catlanta and Evereman. We are actively collecting works of art, so if you're interested in contributing, you can email Joy at joyogozelec@gmail.com.

The JAM explores two of the 10 core Burning Man principles: Decommodification and Gifting. We express Gifting by distributing art through the machine. Gifting trees are a familiar sight at Burns, but suffer from accumulating trash or trinkets. By gifting art (a gift in itself) we create a sort of on-demand gifting tree. We express Decommodification by not allowing the JAM to accept money. Instead, art is distributed by the machine on a timer. The machine lights up, and you push a button to receive art.


If you're interested in learning more about the project or want to get involved, check out our Meetup calendar for the next meeting or build, or email me at emptyset@freesideatlanta.org.

Last Saturday I worked with Brian on the frame of the front and back 4x8-ft sheets.  We're using a pressure-treated wood, so the frame is going to hold the structure firm since the sheets have a tendency to warp a little.  Pressure-treated wood is also going to require a little more research to figure out what we need for painting.

We decided to start by marking exactly where we wanted to drill holes for the nuts and bolts to go.  We went with a staggered pattern.  We first created a template using a scrap piece of 8-ft long wood, and then scored the angle iron to make our markings.  Every hole is marked, so for the next Build one or two volunteers can simply drill out all the holes.  Essentially, we're creating a kit to assemble the JAM.

After marking all the steel, we made sure to label each piece with "top", "bottom" and whether it was a left or right part (if you face the "front" or "back" side of the machine).  This will help us keep track of where everything needs to go so nothing gets mixed up in assembly.

Then, we put down the left and right frame steel, and put down a 4x8-ft sheet.  We held everything together and then marked off some angle iron to cut for the top and bottom parts of the frame.  Brian also cut out some tabs so that the pieces would sit flush against the sides.

After this, Brian was ready to weld.  He did a few spot welds with the 4x8-ft sheet in place, and then we remove the sheet and completed the rest of the welding.  We know have two frame parts that look like a bed frame!  The JAM is going to be huge.

In other updates, we've sent out an order from Adafruit for the button, Arduino, and LED light strips.  That should arrive in the next week or so, and then prototyping the controller and timer can begin.  At the next build (tonight!), we have holes to drill in the steel frames, prototyping the carousel, shaving an inch off the "side" panels, and research on the paint.  For those that are artistically inclined, we need some help with vector graphics and creating stencils that we'll be using to paint the sides.  There's a little something for everyone!






JAM: Joy's Art Machine - Design Meetup (Recap)

BackgroundThe JAM (Joy's Art Machine) is a machine that distributes art. This project was fully funded by the Alchemy community. We are on track to collect somewhere between 200-300 pieces of art to distribute, including works by Catlanta and Evereman. We are actively collecting works of art, so if you're interested in contributing, you can email Joy at joyogozelec@gmail.com.

The JAM explores two of the 10 core Burning Man principles: Decommodification and Gifting. We express Gifting by distributing art through the machine. Gifting trees are a familiar sight at Burns, but suffer from accumulating trash or trinkets. By gifting art (a gift in itself) we create a sort of on-demand gifting tree. We express Decommodification by not allowing the JAM to accept money. Instead, art is distributed by the machine on a timer. The machine lights up, and you push a button to receive art.


If you're interested in learning more about the project or want to get involved, check out our Meetup calendar for the next meeting or build, or email me at emptyset@freesideatlanta.org.

First off, thanks to everyone who attended!  We had an impressive attendance of both Freeside members and beyond, and there was much information exchanged and discussion.  Rob brought some pizza, and Joy and I brought some chocolate chip cookie dough hummus, spicy black bean hummus, and beer (of course!)


All apologies if I forget exactly who contributed what to the discussion!  Everyone had excellent ideas and really helped us commit to a workable design.

We spent a little time discussing a couple of key components of the project.  First, we discussed the housing itself.  Since we learned that the JAM won't be consumed in flames at the end of the event like we had planned, this meant we had to rethink the materials.  On the upside, this means that we have a lot more liberty to decorate and paint the walls of the JAM (no worries about fumes released from burning paint.)  Eventually, we settled on using 4x8ft sheets of lauan with some kind of frame backing it (somebody suggested using 3/4in steel square tubing).  Zach suggested that door hinges have been used on similar projects (like the Tardis) at past burns with good success, as it's just a matter of dropping the pins back in to secure two walls.  I'm following up with a few other folks via email to see if we can make a final design.

After much discussion related to the use of boxes, after some brainstorming we concluded that using a carousel-style design would be best, both in terms of loading the machine (cutting down on reloading frequency, due to more number of slots or "wedges") and in terms of being able to avoid using boxes altogether.  One of our members, Don suggested the carousel concept.  For art that was at risk of getting tangled in the machine (ex. felt or knit items) we would simply put them in a plastic bag.  The carousel would rotate and the slot would move over to an opening that would allow the art to drop out.

Since the base of the machine is 4x4ft, if we use something like a wheel with diameter of 3.8ft, then this works out to about 23-24 wedges (if the length of the carousel the wedge takes up is about 6in.)  If we maintain a dispense rate of about one wedge per hour, and slow it down in the early morning hours, we can probably look to reload the machine once per day, which is just about ideal for the Alchemy environment.
I spent some time tonight and added a few things to our Adafruit order: LED strips, Arduino, a big red LED button, power supply and connectors.  This should be enough to independently program the timer and button/lighting mechanism.
We're still not completely sure how exactly to drive the carousel, but we have enough to build a prototype that can be operated manually.  Kevin and Edward, who helped build the prototype for the Infinity Portal, threw their hat in to help construct the carousel.

Stay tuned for an announcement about the next meeting!

Steganography 101

Disclaimer: This is a blog post about a CryptoParty presentation, the contents of which should not be construed as official Freeside statements.  Any opinions presented in this blog post by the author do not in any way represent an official endorsement of these opinions by Freeside Technology Spaces, Inc., nor is intended to reflect the views of Freeside and its membership.

Recently, Freeside hosted a CryptoParty where I gave an introductory presentation on steganography.  Like all my CryptoParty presentations, this wasn't very technical, but I did introduce some (very) basic techniques.

The first tool that everyone should know about is exiftool.  exiftool reads and writes to the metadata section of a variety of image formats.  I showed an excellent illustrated example of Exif metadata in the JPEG format, which has some great diagrams which show how a JPEG file's bytes are laid out.  There's also C# .NET code included to extract and modify this data, if perl's not your thing (Note: perl should not be your thing).
There are many uses for Exif metadata.  The most common use is by camera manufacturers.  You may have heard that digital photography can record data and store it into the photo itself.  This is how and where it happens.  It's not just a timestamp, either.  Your camera, especially a smartphone camera, can store information like GPS, your phone firmware version, the OS it's running, model number, IMEI, and other information that can unique identify your camera as the source of the photo.

Facebook, Google, and other social media use this feature to conveniently place the location of where the photo was taken when you upload it to their service.  This is great when you want to let your friends know that the picture of you standing in front of the Grand Canyon was taken at the location of the Grand Canyon (for those friends of yours that don't know what the Grand Canyon looks like).  It's less awesome when you've called in sick to work on Thursday and post a picture of a cool looking bird on Saturday, especially if you work in Atlanta and that bird was on the outskirts of Panama City.  Your employer can put two and two together.

Thankfully, there are tools to strip out metadata from images.  Consider using some before posting to social media!  There's always opt-out, too (you don't have to post everything to Facebook).

You can use exiftool to extract the information from some of the images in this blog post.  For example, with the "Snakes are Awesome" image, we can run the following command at the terminal:

$ exiftool -l snake.jpg
...
User Comment

...

Note: "$2" was removed when I wrote the value to the image, because $2 is a variable in Bash shell and the command was looking to substitute a value for it (which was nothing).

In this way, you can "hide" a URL in a picture.  It's not very well hidden, but a person or software tuned to detect this sort of thing can fish it out.  Still, it's a great way to communicate a "secret" with others that's not immediately obvious.  There's also no reason the data you store in metadata can't be encrypted.

Text steganography is the next step up in hiding information in plain sight.  For the presentation, I demo'd spammimic, an online tool that takes a string and hides in within spam, a fake PGP signature, or even characters that make it look Russian!  Let's say I want to send the message, "The only limit is yourself" - spammimic can make this look like a spam email:
Dear Friend ; Thank-you for your interest in our publication . If you no longer wish to receive our publications simply reply with a Subject: of "REMOVE" and you will immediately be removed from our club ! This mail is being sent in compliance with Senate bill 1627 ; Title 6 , Section 303 ! This is NOT unsolicited bulk mail [...]
The way that works generally is by taking the characters and mapping them to a known snippet of spam.  Note how the punctuation is always space-punctuation-space.  If you know about spammimic, it's not difficult to write some software to detect and test for this sort of thing.  Now, go through your spam folder and see which ones have hidden messages!

So, computers are basically machines that process strings, so anything you do with text is probably easily suited to reverse engineering and therefore, easily detected by three letter government agencies.

What about images within images, man?

There's a very simple technique to hide a zip file within a JPEG or GIF file.  The reason this works is that JPEG/GIF files are interpreted and identified by the header, whereas zip files are read from the end of the file.  So, in browsers and operating systems, the image will be rendered while the zip file remains obscure.

This technique is not without its drawbacks.  For starters, depending on the data, you can really blow up the size of a JPEG or GIF (which are typically less than 500K in size, which is being generous!)  A single PDF file could be 1-2MB.  So, a naive software detector can simply scrape social media sites like Tumblr and Twitter and put aside images in excess of a certain size threshold.  Still, you have to know to look for that.  Most casual human observers will see a picture and think nothing of it.

Here's how to execute the technique:

$ cat taxiderpy_original.jpg >> taxiderpy.jpg
$ zip secret.zip microsoft-spy.pdf
$ cat secret.zip >> taxiderpy.jpg

$ ls -sh1 taxiderpy*
1.6M taxiderpy.jpg
40K taxiderpy_original.jpg

This does nothing more than use the *nix command cat to append the zip file to the end of the image.  In this case, we have appended a PDF file with Microsoft's menu of services to law enforcement to the back of an image of a taxiderpy polar bear.  As you can see from the output of ls, the file size has increased from 40K to 1.6M.

Note: Blogger was able to detect that something was off about the taxiderpy image when attempting to upload it to this post.  To fetch the actual file, download the original presentation.

Extraction is easy - you simply attempt to unzip the JPEG or GIF.  Note that unzip warns about some extraneous data at the start of the file, which is the image, of course:

$ unzip taxiderpy.jpg
Archive: taxiderpy.jpg
warning [taxiderpy.jpg]: 37425 extra bytes at beginning or within zipfile
(attempting to process anyway)
inflating: microsoft-spy.pdf
$ open microsoft-spy.pdf

There's some more advanced techniques that hold up better to closer scrutiny.  For example, the same technique that professional photographers use to include a watermark can be used to hide a URL or other piece of data in a photo.  Video is another great medium to hide information.  In a complex animation or sequence, you could flash some secret text to the screen in a subtle way.  The "key" that the recipient needs to read the data is the exact frame number.

For more good times, come to the next CryptoParty!  We also archive all the past presentations and information discussed at CryptoParty on our wiki.  I'll be trying to get these into blog post format, to fill in the blanks between the slides, as it were.


The Motobrain Story

Motobrain began when I decided my options for a vehicle fuse panel where too limited. I wanted something better. A buddy and I started chatting about what we might want from a fuse block and I started drawing schematics and making prototypes. My first idea was an actual fuse panel that could measure system voltage and total current draw and had fused circuits. It's "killer" feature was that all the outputs were interchangeable so you could select the type of output you wanted. It had card slots and the card slots and the cards I developed with for high side switching, low side switching, USB charging, and analog inputs. It was cool, but not really durable enough for an automotive environment.
 

It was going to be controlled from a dedicated unit wired to the gizmo above. The more I thought that through, the more that was foolish since we all have computers in our pockets already, our smart phones. So I did a full reboot and decided to do a Bluetooth 4 gizmo, that was completely weatherproof. That meant I needed to get rid of the fuses and the interchangeable cards. The most practical card was the high side switching card so I decided to go with those. I designed in 8 channels because it was enough for most setups I could imagine and still was a comfortable size to fit on any vehicle. Motobrain was born.



It has gone through several variations mainly surrounding the signal inputs and how the current and signal actually go in and out of the Motobrain. In the photo above, you can see that system was designed with wires terminated inside the potted electronics. That is an easy way to do it but requires that I supply the wire and that it is right for all the customers needs. That seems like a big "if" to me, so redesigned the output board with screw down terminals and I have finally found the product I want to sell.


Then I needed to figure out how to cast these things. This is not a skill I've ever learned so it took some time to figure it out. At first, I thought I would 3D print the mold in hard plastic, place the electronics in that and then pour in the resin. It seemed like a fine idea. It wasn't. I burned a couple grand on that before I gave up.
 
 
 


I ultimately got pretty good at this technique...



...but this is just not how to do this job though. People kept telling me to make a silicone mold and it will be easy. I fought the idea because I didn't want to learn yet another skill when I was this far down the road. It was necessary though, so I purchased Solidworks and drew up a perfect replica of Motobrain and had it 3D printed.
 

Then I ordered some fancy silicone and cast some fake Motobrains to learn how.


  

When I was finally confident that I figured it out I made some REAL ones.

Here is where we are today. Read the entire story at our blog.


Manual Pick and Place project

I built a pick and place machine so I could build up my Motobrain project easier. I used MDF for the platforms. 12mm rail and linear bearings for the Y and Z axis bearings. THK linear motion guide for the X axis. The Z axis is a piece of carbon fiber tubing attached to a piece of laser cut acrylic. The nipples on the tube are 3D printed. 
The laser cutting was done by OSHStencils.com. The bearings were purchased at Amazon. The 3D printing was done by approto.com.





Lathon 3D Printer

Everyone seems to either want, have or use a 3D printer now a days. I bought my first printer kit in 2012 and I quickly noticed I wanted a one with more capabilities but since all of the high performance models were so expensive I designed my own. Eventually I designed a $4,000 printer that I could sell for $1,400 on KICKSTARTER.



There were a few things that I wanted the printer to have: two nozzles, Bowden extrusion, enclosed build area, and a moving xy gantry. 


The two nozzles seems like an obvious choice for anyone who has printed before simply because it allows you to create way more interesting prints than you could otherwise. For example dissolvable support, multiple colors and multiple materials (which is pretty cool). I did notice on other dual nozzle printers, however, that having two big stepper motors created a massive moving mass so if I wanted any sort of respectable speed I was going to have to go Bowden style.




Another pet peeve I have is a moving y-axis. There are big debates on the RepRap IRC and even in the forums about what is better for the print, a moving Y or Z. I will stand firm on the fact that moving your print rapidly back and forth is a ridiculous idea. It definitely looks cool and makes life easier in some regards, but having a variable moving mass that is semi-molten does not seem like a good idea…

Now that I knew what I wanted to do, I starting creating a CAD model of the overall design of the printer. This wasn't too difficult just time consuming. I used V-Slot for my frame and thankfully they have Sketchup models that anyone can download so it gave me a good starting point. 

 Once I started building the frame it became quickly apparent that extrusions require some effort to get them in tight tolerances for a square frame. This was the process that was recommended by Paul F.

How To Cut 80/20 Extrusions (within 0.002”):

1.      Cut the rough dimension with a band saw
2.      Make square first cut on each side using the mill
3.      Bolt an endstop for the extrusion at the required length to the mill
4.      Cut the first piece. Now that you have an endstop at the length of your first piece all of the subsequent pieces should be the exact (or close) length
5.      Take your second piece make a first pass then flip it butt it up against the endstop and then cut the excess with the mill.

Super square frame on a flat sheet of glass



With my frame done the next step was to create the x and y axis. This was a little bit difficult because I did not just want to copy existing printers. I don’t particularly like the Ultimaker’s X/Y set up even though it does produce great results. I wanted to be a little more creative so I decided I was going to use my frame as the rails for my Y axis. Since I had V-slot already I decided to use it for my X-axis. The details were a little weird to work out, but I think it turned out nicely.
 Building the Z-axis was a little bit more difficult because the print bed was so large and I was concerned about the print bed bending as a cantilever beam. I eventually settled on a design using a tri-point mounting system with V-Rails. For the production model, however, I will change the design to something with less flex. For a production model I would focus on making the whole z-axis assembly of only 2 or 3 pieces to minimize play between the interfaces. After using the printer for several months I think a 4 point mounting system is a better choice because with cyclic heating and cooling the print bed appears to sag in the corners where it isn't supported.
Laser engraved logo on the side wall. Fun Fact: all the radii in
 this design are different ratios to pi
 With the basic mechanics completed it was time to add the print bed, nozzles and enclose the printer. The print bed you will notice is actually white plastic and not glass. This plastic is a plastic from GE called Ultem 2300 and I thank the delta printer google groups because they were definitely helpful in brainstorming ideas for a new print surface. Unfortunately nobody really sells this plastic in small sizes so in small quantities it is really expensive. However, it is an amazing print surface so far I can say that it is great for printing PLA, ABS, HIPS, Carbon Fiber, NinjaFlex and LayWood filament. Nylon really should be printed on Garolite simply because it is impossible to remove from Ultem (I may have destroyed a couple prints proving this).


Enclosing the printer was actually pretty interesting because I got to work with a laser cutter. I laser cut most of the parts based off of my CAD but I ran into trouble when making the top cover. The Bowden tube requires a large amount of room so that it doesn’t break the filament or create too much friction so I need a tall top cover. Initially I made a square box which was pretty ugly, so I figured it needed to round the edges. My first attempt was to learn how to bend acrylic and that didn’t turn out so well….
I spent a day trying to get the acrylic to bend at a 90 degree with a 4” radius. Unfortunately I failed pretty hard but that is what Makerspaces are for, failing and learning!

I did some digging and figured that the best way would be to make the bend out of acrylic a laser cut living hinge and I think it turned out pretty well.


The last part and probably the most interesting was the extruder. I needed an extruder that fit the E3D DMfit connectors and I really wanted it to only have one bolt for ease of use. Actually, the first one I made was very similar to the makerbot extruder, without a tensioning screw, but because I am printing in so many different materials it didn’t work since each material needs a different amount of idler tension. It took around 4 different prototypes until I finally created a mechanism that works.
Overall I think the printer turnout splendidly and it makes some really great prints too. Check out the time lapse of a massive D20 below. There are also many example prints on www.lathon.net and the kickstarter . I really enjoyed this project and I hope I can make LATHON’s for other Makers and engineers because, for us, a 3D printer is just as important as a hammer.





Thermal imaging macro photography on a budget (sort of)

I purchased one of the new FLIR E4 thermal imaging cameras (TIC) a couple weeks back because I am working on a new project called Motobrain. It is an automotive power distribution unit with a nominal current capacity of 100A. For those not in the know, 100A is a TON of current! Because this project is designed to move so much current and will be small I need to understand its thermal characteristics very well. To that end I've been operating the device and taking measurements. What I found is that I just could not get the kind of detail I wanted. The reason is that the resolution of the microbolometer in the FLIR E4 is not very high and the lens does not allow you to get very close to the device under test (DUT). The means that you cannot just zoom in after you take a photo either. So, what is a person to do if they want to take a macro photograph with a consumer grade TIC? Go to Amazon.com of course! I purchased a Gallium Arsenide (GaAs) lens meant for a CO² laser for about $40 and waited patiently for it to arrive (via ox cart it would seem, it took weeks) from China. Then I mounted it up in a highly technical lens mount (a paper CD case cut with scissors and stapled together with the lens inside). This provides me a focus distance of about 2 inches which is great for close up work on a PCB. Different lens sizes will provide different focusing distances. I chose a 50.8mm lens.
The lens.
The lens installed on the TIC
The photo on the left is with the new macro lens attached. The photo on the right shows the previous closest in focus image I could make. Both photos are looking at the same part of the PCB. My lens mount is causing some vignetting which I can fix if I want to bother to make a nicer lens mount on the laser cutter. Honestly I am quite satisfied with the current image quality. If it ain't broke, don't fix it.
The photo on the left shows an SO-8 PowerPak MOSFET glowing nice and warm. You can even see its drain and gate pins. The photo on the right is the same image from the same distance without the lens installed which shows you what it looks like out of focus. This is a significant improvement at a trivial expense compared to the cost of the instrument.
This final image shows the same portion of the PCB as above only with the current flow having just been removed. You can see clearly the temperature gradient as we get further from the MOSFET. Neato!

Special thanks to Mike for the inspiration to do this hack.